এই সমস্যাটি সমাধান করার জন্য একটি পদ্ধতিকে হবে পূর্ণসংখ্যার লিনিয়ার প্রোগ্রামিং (আইএলপি) ব্যবহার করা। আসুন সমস্যা সিদ্ধান্ত সংস্করণ সাজসরঁজাম: প্রদত্ত , সেখানে চুক্তি একই রঙ ছেদচিহ্ন একটি উপায় আকারের একটি DAG পেতে হয় ≤ ট ?ট≤ কে
এটি স্ট্যান্ডার্ড কৌশলগুলি ব্যবহার করে আইএলপি উদাহরণ হিসাবে প্রকাশ করা যেতে পারে। আমাদের আসল গ্রাফের প্রতিটি ভার্টেক্সের রঙ দেওয়া হয়েছে। আমি আপনাকে পরামর্শ দিচ্ছি যে আমরা একটি লেবেল সঙ্গে প্রতিটি প্রান্তবিন্দু লেবেল ; একই লেবেলযুক্ত এবং একই রঙযুক্ত সমস্ত উল্লম্ব চুক্তিবদ্ধ হবে। সুতরাং, সিদ্ধান্তের সমস্যাটি হয়ে ওঠে: একটি লেবেল উপস্থিত রয়েছে কি, যেমন সমস্ত একই রঙের একই-লেবেল শীর্ষকে চুক্তিবদ্ধ করার মাধ্যমে একটি ডিএজি পাওয়া যায়?{ 1 , 2 , … , কে }
একটি পূর্ণসংখ্যা রৈখিক প্রোগ্রাম হিসাবে এই প্রকাশ, একটি পূর্ণসংখ্যা পরিবর্তনশীল পরিচয় করিয়ে প্রতিটি প্রান্তবিন্দু জন্য বনাম , প্রান্তবিন্দু উপর ট্যাগ প্রতিনিধিত্ব করতে বনাম । বৈষম্য যোগ করুন 1 ≤ ℓ বনাম ≤ ট ।ℓবনামবনামবনাম1 ≤ ℓবনাম≤ কে
পরবর্তী পদক্ষেপটি চুক্তিযুক্ত গ্রাফটি অবশ্যই একটি ডিএজি হতে হবে তা প্রকাশ করা। লক্ষ্য করুন যে, যদি উপরে উল্লিখিত ফর্ম একটি লেবেল করা, সাধারণত্ব ক্ষতি ছাড়া যেমন একটি লেবেল যেখানে লেবেল সংকুচিত গ্রাফে একটি টপোলজিকাল সাজানোর (প্রবৃত্ত অস্তিত্ব আছে হল অর্থাত, যদি আগে বসেছে W সংকুচিত গ্রাফে, তারপর বনাম 'র ট্যাগ ডাব্লু এর লেবেল থেকে ছোট )। সুতরাং, মূল গ্রাফের প্রতিটি প্রান্ত v → w এর জন্য, আমরা সীমাবদ্ধতা যুক্ত করব যেগুলির মধ্যে v এবং w একই লেবেল এবং একই রঙ রয়েছে, অন্যথায় ভি'র লেবেল ডাব্লু এর লেবেলের চেয়ে ছোট । বিশেষত, প্রতিটি প্রান্তের জন্য vবনামWবনামWv → wবনামWবনামW প্রাথমিক গ্রাফে যেখানে V , W একই রঙ আছে, বৈষম্য যোগ ℓ বনাম ≤ ℓ W । প্রতিটি প্রান্তের জন্য v → w যেখানে v , w এর বিভিন্ন বর্ণ রয়েছে, সেখানে অসমতা যুক্ত করুন ℓ v < ℓ w ।v → wv , wℓবনাম≤ ℓWv → wv , wℓবনাম< ℓW
এখন দেখুন এই সংখ্যার লিনিয়ার প্রোগ্রামটির কোনও সম্ভাব্য সমাধান আছে কিনা। কেবলমাত্র যদি লেবেলিং পছন্দসই ফর্মের হয় (যেমন, সমস্ত একই বর্ণের একই-লেবেলের উল্লম্বগুলি চুক্তি করে একটি ডিএজি পাওয়া যায়) তবে একটি সম্ভাব্য সমাধান হবে। অন্য কথায়, একটি সম্ভবপর সমাধান হবে যদি এবং কেবল যদি সেখানে আকারের একটি DAG মূল গ্রাফ চুক্তি একটি উপায় । আমরা কোনও পূর্ণসংখ্যার লিনিয়ার প্রোগ্রামিং সলভার ব্যবহার করতে পারি; আইএলপি সলভার যদি আমাদের একটি উত্তর দেয়, তবে আমাদের মূল সিদ্ধান্ত সমস্যার একটি উত্তর আছে।≤ কে
অবশ্যই, এটি বহুবারের মধ্যে সম্পূর্ণরূপে গ্যারান্টিযুক্ত নয়। কোন গ্যারান্টি আছে। যাইহোক, আইএলপি সলভারগুলি বেশ ভাল পেয়েছে। আমি প্রত্যাশা করব যে, একটি যুক্তিসঙ্গত আকারের গ্রাফের জন্য, আপনি একটি শালীন সুযোগ পেয়েছেন যে কোনও আইএলপি সল্ভর উপযুক্ত সময়ে এই সমস্যাটি সমাধান করতে সক্ষম হতে পারে।
এটি একটি স্যাট উদাহরণ হিসাবে এনকোড করা এবং একটি স্যাট সমাধানকারী ব্যবহার করাও সম্ভব। আমি জানি না যে এটি আরও কার্যকর হবে কিনা। যদিও আইএলপি সংস্করণটি সম্পর্কে চিন্তা করা সম্ভবত সহজ।
(আমি আশা করি এটি ঠিক আছে I
আপডেট (10/21): দেখে মনে হচ্ছে যে এই ফর্মের আইএলপিগুলি লৌকিক সময়ে সমাধান করা যেতে পারে, টপোলজিক্যালি সাজানো ক্রমে ডিএজি প্রক্রিয়াকরণ করে এবং প্রতিটি শীর্ষবিন্দুর জন্য লেবেলের নীচের অংশের সন্ধান করে। এটি আমার সমাধান সম্পর্কে সন্দেহজনক: আমি কোথাও ভুল করেছি?