এই সমস্যাটি ভার্টেক্স কভার থেকে হ্রাস দ্বারা এনপি-হার্ড।
প্রান্তবিন্দু কভার সমস্যা, আমরা গ্রাফ দেওয়া হয় এবং একটি সংখ্যা , এবং আমাদের কাজের নির্ধারণ কিনা কিছু উপসেট সর্বাধিক এর থেকে ছেদচিহ্ন যেমন যে প্রতিটি প্রান্ত ঘটনা তে কমপক্ষে একটি ভার্টেক্সে । (সমতুল্য: প্রতিটি প্রান্তকে বেশিরভাগ কোণে মোছার মাধ্যমে হত্যা করা কি সম্ভব ?)আর ইউজি = ( ভ, ই)RইউV E U G rRভীইইউজিR
প্রথমত, পার্টিশন মধ্যে অসংলগ্ন করা সাব-সেট নির্বাচন প্রতিটি উপাদান বরাদ্দ সমতূল্য ঠিক এক সম্ভব লেবেলগুলি। হ্রাস মৌলিক ধারণা একটি লেবেল তৈরি করা প্রতিটি প্রান্তবিন্দু জন্য মধ্যে , এবং "অনুমতি দিন" প্রতিটি প্রান্ত শুধুমাত্র তার এন্ড পয়েন্ট সংশ্লিষ্ট দুই লেবেলের এক নিম্নলিখিত অর্থে, সংযুক্ত করার উদ্দেশ্যে প্রয়োজনীয় করার প্রস্তাব দেন: প্রান্ত একটি সংশ্লিষ্ট বরাদ্দ অন্য প্রান্তগুলিকে একই লেবেলটি নির্ধারিত করা যেতে পারে তার ক্ষেত্রে কোনও লেবেল (জেনুইন) সীমাবদ্ধতার পরিচয় দেয় না, যখন কোনও আন-প্রাসঙ্গিক লেবেলে একটি প্রান্ত নির্ধারণ করে অন্য কোনও প্রান্তকে একই লেবেল নির্ধারিত করা আটকা দেয় - অবশ্যই সংখ্যাটি ধাক্কা দেওয়ার প্রভাব রয়েছে যা প্রয়োজনীয় স্বতন্ত্র লেবেলগুলির।এস এ এস এস জে ভি জ ভিএকজনগুলিএকজনগুলিএসঞবনামঞভী
ভার্টেক্স কভারের একটি উদাহরণ থেকে আপনার সমস্যার একটি উদাহরণ তৈরি করতে :( জি , আর )( এ , ক , স )( জি , আর )
- তে সেট করুনআর একটি উপাদান তৈরি মধ্যে প্রতিটি প্রান্ত জন্য মধ্যে । (এই জোড়গুলি পূর্ণসংখ্যা হিসাবে ভাবা যেতে পারে ; এগুলির মধ্যে যে কোনও দ্বিপক্ষীয় কাজ করবে))| E | ( i , j ) এ ভি আই ভি জে ই 1 , … , কেট| ই|(i,j)AvivjE1,…,k
- সেট থেকেযদি বা ; অন্যথায়, থেকে 1 সেট করুন। | E | d = b d = c a ( b , c ) , da(b,c),d|E|d=bd=ca(b,c),d
- সেট ।s=r
যদি শুধু লেবেল বাছাই: প্রান্তবিন্দু কভার হ্যা-উদাহরণস্বরূপ, তারপর এটি দেখতে যে আপনার সমস্যা মাত্র-নির্মাণ উদাহরণস্বরূপ একটি হ্যা-উদাহরণস্বরূপ হয় সহজ ছেদচিহ্ন সংশ্লিষ্ট কোন সমাধান , এবং প্রান্তে প্রতিটি প্রান্তের এর সাথে সংশ্লিষ্ট উপাদান নির্ধারণ করুন যে কোনও একটিতে বা লেবেল বাছাই করা হয়েছিল (উভয় লেবেল যদি নেওয়া হয় তবে নির্বিচারে চয়ন করুন)। এই সমাধানটি সাবসেটগুলি ব্যবহার করে এবং এটি বৈধ কারণ একমাত্র force এর সাথে সংশ্লিষ্ট forS ঞ বনাম ঞ ইউ বনাম খ বনাম গ ∈ ই ( খ , গ ) ∈ একজন এস খ এস গ গুলি একটি আমি ঞ | E |(G,r)SjvjUvbvc∈E(b,c)∈ASbScsaij চেয়ে বেশি প্রতিরোধের (অ-) প্রভাব রয়েছে এমন লেবেলগুলি প্রান্তগুলি একই লেবেল বরাদ্দ করা হচ্ছে।|E|
এটি এখনও রয়ে গেছে যে আপনার সমস্যার একটি ইয়েস-উদাহরণ বোঝায় যে মূল ভার্টেক্স কভারের ইয়েস-উদাহরণ। এটি কিছুটা জটিল, যেহেতু থেকে পর্যন্ত একটি বৈধ সমাধান সাধারণভাবে একটি প্রান্ত নির্ধারণ করতে পারে একটি অ- সহকারী লেবেল , অর্থাত্, , যার অর্থ আমরা পারব না অগত্যা একটি বৈধ সমাধান থেকে একটি বৈধ প্রান্তের কভার "পঠিত" ।( জি , আর ) ওয়াই এক্স ( আই , জ ) এস এম এম ∉ { আই , জে } ইউ ওয়াইX=(A,a,s)(G,r)YX(i,j)Smm∉{i,j}UY
যাইহোক, অ-সঙ্গতিপূর্ণ লেবেল নির্ধারণের ক্ষেত্রে উচ্চ ব্যয় থাকে যা সমাধানের কাঠামোটিকে মারাত্মকভাবে সীমাবদ্ধ করে: যখনই একটি প্রান্ত এমন একটি লেবেল বরাদ্দ করা হয় , , সত্য সহ যে নিশ্চিত করে যে এটি অবশ্যই এই লেবেলটি নির্ধারিত একমাত্র প্রান্ত হতে হবে । সুতরাং, যেকোন সমাধানে যেমন একটি অ-অনুসারে-লেবেলযুক্ত প্রান্ত , আমরা বিকল্প সমাধান করতে পারি :এস এম এম ∉ { আমি , ঞ } একটি ( আমি , ঞ ) , মি = 1 ওয়াই ( আমি , ঞ ) ↦ এস এম ওয়াই '(i,j)Smm∉{i,j}a(i,j),m=1Y(i,j)↦SmY′
- ইচ্ছামত নতুন লেবেল চয়ন জন্য পারেন হতে বা । ( আই , জ ) এস আই এস জেSz(i,j)SiSj
- এই নতুন লেবেলটি বরাদ্দ করুনযদি এটি একটি অবৈধ সমাধানের ফলাফল করে তবে এটি অবশ্যই কারণ অন্য এক প্রান্ত , already ইতোমধ্যে লেবেলটি । যে ক্ষেত্রে, সেট ইন এবং ধাপে 1 এ যান।( i ′ , j ′ ) z ∉ { i ′ , j ′ } S z ( i , j ) = ( i ′ , j ′ )(i,j)(i′,j′)z∉{i′,j′}Sz(i,j)=(i′,j′)
উপরের অ্যালগরিদমটি দুটি উপায়ে একটিতে শেষ করতে হবে: হয় একটি নতুন লেবেল পাওয়া যায় যা কোনও বৈপরীত্যের পরিচয় দেয় না, বা একটি শীর্ষ চক্রের সন্ধান পাওয়া যায়। পূর্ববর্তী ক্ষেত্রে, সেট সহ একটি বৈধ নতুন সমাধান পাওয়া যায়, তবে পরবর্তী ক্ষেত্রে সেটগুলির সাথে একটি বৈধ নতুন সমাধান পাওয়া যায়; যে কোনও উপায়ে, আমরা সংশ্লিষ্ট লেবেলে অন্তত আরও একটি প্রান্ত নির্ধারিত একটি বৈধ নতুন সমাধান তৈরি করেছি । এই সম্পূর্ণ প্রক্রিয়াটি পুনরাবৃত্তি করার পরেবার, আমরা একটি কার্যকর সমাধান নেই উত্পাদিত হবে যা থেকে মূল প্রান্তবিন্দু কভার সমস্যার একটি সমাধান করতে বন্ধ পড়তে হবে। এস - 1 এস | E | ওয়াই "Szs−1s|E|Y′′
এই নির্মাণটি স্পষ্টত বহু বহু সময়ের, সুতরাং এটি অনুসরণ করে যে আপনার সমস্যা এনপি-হার্ড।