কোন ম্যাজিক বুলেট আছে; এনপি-কঠোরতার প্রমাণগুলি শক্ত। তবে, এই জাতীয় সমস্ত প্রমাণের জন্য একটি সাধারণ কাঠামো রয়েছে is অনেক ছাত্র যারা দ্বারা NP-কঠোরতা প্রমাণাবলী নিয়ে সংগ্রাম সম্পর্কে বিভ্রান্ত কি তারা কাজ করা, যা স্পষ্টত এটা অসম্ভব জিনিসটা করে তোলে অনুমিত করছি কিভাবে এটা করতে। সুতরাং এনপি-হার্ড কোনও সমস্যা প্রমাণ করার জন্য এখানে কী করা উচিত।
প্রথমত, আপনি কেবল গৃহকর্ম না করা পর্যন্ত আপনাকে সিদ্ধান্ত নিতে হবে কোন এনপি-হার্ড সমস্যাটি আপনার সমস্যার জন্য হ্রাস করতে পারে । এটি মূলত "গন্ধ" এর প্রশ্ন। 3 নম্বর প্রদর্শিত হয় সমস্যা বিবৃতি কোথাও থেকে হ্রাস চেষ্টা করুন বা বা । (হ্যাঁ, আমি সিরিয়াস।) আপনার সমস্যা একটি অনুকূল subsequence বা বিন্যাস বা পথ খুঁজে বের জড়িত থাকে, তাহলে থেকে কমানোর চেষ্টা করুন বা । যদি আপনার সমস্যাটি একটি নির্দিষ্ট সম্পত্তি সহ ক্ষুদ্রতম উপসেটের জন্য জিজ্ঞাসা করে, চেষ্টা করুন ; যদি এটি একটি নির্দিষ্ট সম্পত্তি সহ বৃহত্তম উপসেটের জন্য জিজ্ঞাসা করে, চেষ্টা করুন3SAT3Color3PartitionHamiltonianCycleHamiltonianPathCliqueIndependentSet। আপনার সমস্যা সমতলে কিছু কাজ জড়িত থাকে, তাহলে চেষ্টা বা । ইত্যাদি। আপনার সমস্যা যদি কোনও কিছুর মতো "গন্ধ" না পায়, বা সম্ভবত আপনার সেরা বাজি।PlanarCircuitSATPlanarTSP3SATCircuitSAT
একথাও ঠিক যে, আপনি ইতিমধ্যে জানা প্রয়োজন অবিকল কিভাবে এই সব সমস্যার সংজ্ঞায়িত করা হয় , এবং সহজ সমস্যা থেকে ভাল কমানো। সুতরাং হিসাবে ফলে শীতল শেষ চেহারা হতে পারে, আমি থেকে হ্রাস সুপারিশ করি না বা বা বা ।MinesweeperTetrisOneCheckersMoveSuperMarioBros
দ্বিতীয়ত, আসল হ্রাস। এক্স সমস্যাটি কমাতে (আপনি যা জানেন তিনি এনপি-হার্ড) ওয়াই সমস্যাটি হ্রাস করতে (আপনি যেটিকে প্রমান করার চেষ্টা করছেন সেটি এনপি-হার্ড, আপনার একটি অ্যালগরিদম বর্ণনা করতে হবে যা এক্সের একটি স্বেচ্ছাসেবী উদাহরণকে Y এর আইনী দৃষ্টান্তে রূপান্তর করে you হ্রাস অ্যালগরিদম এক্স-ইনস্ট্যান্সের প্রতিটি "বৈশিষ্ট্য" এর সাথে নির্দিষ্ট কিছু করা দরকার; প্রতিটি "বৈশিষ্ট্য" এর আউটপুট অংশকে সাধারণত গ্যাজেট বলা হয় ।
তবে একটি বৈশিষ্ট্য কি? এটি X এর উপর নির্ভর করে example উদাহরণস্বরূপ:
উদাহরণ রূপান্তর করতে আপনার প্রতিটি ভেরিয়েবলের জন্য এবং ইনপুট সূত্রে প্রতিটি অনুচ্ছেদের জন্য একটি গ্যাজেট প্রয়োজন। প্রতিটি পরিবর্তনশীল গ্যাজেটের দুটি "স্টেটস" থাকা উচিত যা "সত্য" এবং "মিথ্যা" সাথে মিলে যায়। প্রতিটি ক্লজ গ্যাজেটের একাধিক "স্টেটস" থাকা উচিত, যার প্রতিটিই কোনওভাবে সেই ধারাটির অন্তত একটি আক্ষরিককে সত্য হতে বাধ্য করে। (রাজ্যগুলি হ্রাস অ্যালগরিদমের আউটপুট অংশ নয়।)3SAT
রূপান্তর করতে আপনার প্রতিটি এবং ইনপুট গ্রাফের প্রতিটি প্রান্তের জন্য একটি গ্যাজেট এবং তিনটি রঙ নির্ধারণ করার জন্য অন্য গ্যাজেটের প্রয়োজন।3Color
an এর উদাহরণটি রূপান্তর করতে আপনার প্রতিটি ইনপুট, প্রতিটি তারের জন্য এবং ইনপুট সার্কিটের প্রতিটি গেটের জন্য একটি গ্যাজেট প্রয়োজন।PlanarCircuitSat
গ্যাজেটের প্রকৃত ফর্ম সমস্যা y, আপনি হ্রাস করছি উপর নির্ভর করে করা । উদাহরণস্বরূপ, যদি আপনি গ্রাফগুলি সম্পর্কে কোনও সমস্যা হ্রাস করেন তবে আপনার গ্যাজেটগুলি ছোট ছোট সাবগ্রাফ হবে; উইকিপিডিয়া নিবন্ধ দেখুন। আপনি যদি শিডিয়ুলিং সম্পর্কে কোনও সমস্যা হ্রাস করছেন তবে প্রতিটি গ্যাজেটটি নির্ধারিত কাজের জন্য একটি সেট হবে। আপনি যদি মারিও সম্পর্কে কোনও সমস্যা হ্রাস করছেন তবে প্রতিটি গ্যাজেট ব্লক এবং ইট এবং কোওপাসের সেট হবে।
উভয় সমস্যা একই ধরণের অবজেক্টে জড়িত থাকলে এটি বিভ্রান্ত হতে পারে। উদাহরণস্বরূপ, এক্স এবং ওয়াই উভয়ই যদি গ্রাফগুলি নিয়ে সমস্যা হয় তবে আপনার অ্যালগরিদম একটি গ্রাফকে (এক্স এর উদাহরণ) একটি ভিন্ন গ্রাফে (ওয়াইয়ের একটি উদাহরণ) রূপান্তরিত করতে চলেছে। আপনার স্বরলিপিটি বিজ্ঞতার সাথে চয়ন করুন, যাতে আপনি এই দুটি গ্রাফকে বিভ্রান্ত না করেন। আমি কালি বিভিন্ন রং ব্যবহার করার জন্য দৃ strongly়ভাবে সুপারিশ।
অবশেষে, আপনার হ্রাস অ্যালগরিদম অবশ্যই তিনটি বৈশিষ্ট্য সন্তুষ্ট করতে হবে:
এটি বহুপক্ষীয় সময়ে চলে। (এটি সাধারণত সহজ।)
যদি আপনার হ্রাস অ্যালগরিদমকে ইনপুট হিসাবে এক্সের একটি ইতিবাচক উদাহরণ দেওয়া হয় তবে এটি আউটপুট হিসাবে ওয়াইয়ের ইতিবাচক উদাহরণ তৈরি করে ।
যদি আপনার হ্রাস অ্যালগরিদম আউটপুট হিসাবে ওয়াইয়ের একটি ইতিবাচক উদাহরণ উত্পন্ন করে, তবে এটি অবশ্যই ইনপুট হিসাবে এক্সের একটি ইতিবাচক উদাহরণ দেওয়া উচিত ।
এখানে একটি গুরুত্বপূর্ণ সূক্ষ্মতা আছে। তোমার হ্রাস অ্যালগরিদম শুধুমাত্র এক দিক কাজ করে থেকে এক্স দৃষ্টান্ত থেকে ওয়াই দৃষ্টান্ত কিন্তু অ্যালগরিদম সঠিক প্রতিপাদন উভয় নির্দেশাবলী মধ্যে রূপান্তর সম্পর্কে যুক্তি প্রয়োজন। আপনাকে অবশ্যই মনে রাখতে হবে যে আপনার হ্রাস অ্যালগরিদমটি X এর প্রদত্ত উদাহরণটি ইতিবাচক বা নেতিবাচক কিনা তা বলতে পারে না — যেটির জন্য বহুপদী সময়ে এনপি-হার্ড সমস্যা সমাধানের প্রয়োজন হবে!
এটাই কি । কিভাবে মাত্র অনুশীলন দিয়ে আসে।