এর সংজ্ঞা কি


247

আমি কম্পিউটিং এবং জটিলতা সম্পর্কে একটি কোর্সে আছি এবং এই পদগুলির অর্থ কী তা বুঝতে অক্ষম।

আমি শুধু জানি যে এনপি হ'ল এনপি-সম্পূর্ণর একটি উপসেট, যা এনপি-হার্ডের একটি উপসেট, তবে তারা আসলে কী বোঝায় তা আমার কোনও ধারণা নেই। উইকিপিডিয়াও তেমন কোনও সাহায্য করে না, কারণ ব্যাখ্যাগুলি এখনও কিছুটা উচ্চ স্তরের।


6
এটি একটি আনুষ্ঠানিক সংজ্ঞা সহ একটি আনুষ্ঠানিক বিষয়। আমি সর্বাধিক "সাধারণ" ব্যাখ্যাগুলির অভাব রয়েছে বলে খুঁজে পেয়েছি। আপনার যদি সংজ্ঞাটি বুঝতে সমস্যা হয়, আপনি জটিলতা তত্ত্ব সম্পর্কে কোন শ্রেণিতে কী করছেন? (গুরুতর প্রশ্ন।) উপায় দ্বারা, উইকিপিডিয়া টিসিএসের জন্য খুব ভাল রেফারেন্স নয়।
রাফায়েল

17
আপনারা যা কিছু জানেন তা সত্য নয়: এনপিসি (এনপি সম্পূর্ণ) অন্য কোনও উপায়ে নয়, এনপির একটি উপসেট। সম্পূর্ণতা সর্বদা ক্লাসের একটি উপাদান হিসাবে সমস্যাটি সম্পূর্ণরূপে অন্তর্ভুক্ত থাকে। অধিকন্তু এনপি এনপি-হার্ডের উপসেট নয়, যেহেতু এনপি-র প্রতিটি সমস্যাই কঠিন নয়।
ফ্রেফএল

5
@ফ্রাফল: "এনপি-র প্রতিটি সমস্যাই কঠিন নয়" - যা এখনও দেখানো বাকি।
রাফেল

2
@ রাফেল: এটি আপনার ব্যবহারের হ্রাসের ধরণের উপর নির্ভর করে। আমি বহুপদী সময় অনেক এক কমানোর চিন্তা, যেখানে NPC
ফ্রেফএল

উত্তর:


364

আমি মনে করি উইকিপিডিয়া নিবন্ধগুলি P , NP এবং P বনাম NP বেশ ভাল। এখনও এখানে আমি যা বলব হল: পার্ট আমি , পার্ট II

[আমি কিছু প্রযুক্তিগত বিশদ যা আপনি চাইলে এড়াতে পারেন তা আলোচনা করতে বন্ধনীগুলির মধ্যে মন্তব্যগুলি ব্যবহার করব]]


প্রথম খণ্ড

সিদ্ধান্ত সমস্যা

বিভিন্ন ধরণের গণ্য সমস্যা রয়েছে। তবে কম্পিউটেশনাল জটিলতা তত্ত্বের কোর্সের ভূমিকাতে সিদ্ধান্ত সমস্যার দিকে মনোনিবেশ করা আরও সহজ , উদাহরণস্বরূপ এমন সমস্যা যেখানে উত্তরটি হ্যাঁ বা না হয়। অন্যান্য ধরণের গণনামূলক সমস্যা রয়েছে তবে তাদের নিয়ে বেশিরভাগ সময় সিদ্ধান্তগুলি সম্পর্কিত সমস্যা সম্পর্কিত প্রশ্নগুলিতে হ্রাস করা যেতে পারে। তবুও সিদ্ধান্ত সমস্যা খুব সহজ। সুতরাং গণ্য জটিলতা তত্ত্বের কোর্সের একটি ভূমিকা হিসাবে আমরা সিদ্ধান্ত সমস্যার অধ্যয়নের দিকে আমাদের মনোযোগ নিবদ্ধ করি।

উত্তরগুলির হ্যাঁ রয়েছে এমন ইনপুটগুলির উপসেট সহ আমরা কোনও সিদ্ধান্তের সমস্যা চিহ্নিত করতে পারি। এই স্বরলিপি সরলীকৃত এবং আমাদের লিখতে পারবেন xQ স্থানে Q(x)=YES এবং xQ স্থানে Q(x)=NO

আর একটি দৃষ্টিভঙ্গি হ'ল আমরা একটি সেটে সদস্যতার প্রশ্ন সম্পর্কে কথা বলছি । এখানে একটি উদাহরণ:

সিদ্ধান্ত সমস্যা:

ইনপুট: একটি প্রাকৃতিক সংখ্যা x ,
প্রশ্ন: x একটি সমান সংখ্যা?

সদস্যপদ সমস্যা:

ইনপুট: প্রাকৃতিক সংখ্যা x ,
প্রশ্ন: কি x মধ্যে Even={0,2,4,6,} ?

আমরা ইনপুটটিতে হ্যাঁ উত্তরটি ইনপুট গ্রহণ হিসাবে গ্রহণ করি এবং ইনপুট প্রত্যাখ্যান হিসাবে কোনও ইনপুটতে NO উত্তরকে উল্লেখ করি ।

সিদ্ধান্তের সমস্যার জন্য আমরা অ্যালগরিদমগুলিতে নজর দেব এবং সেগুলি গণনাযোগ্য সংস্থান ব্যবহারে সেই অ্যালগরিদমগুলি কতটা দক্ষ তা নিয়ে আলোচনা করব । অ্যালগরিদম এবং গণনার সংস্থানসমূহের মাধ্যমে আমরা কী বুঝি তা আনুষ্ঠানিকভাবে সংজ্ঞায়নের পরিবর্তে সি এর মতো ভাষায় প্রোগ্রামিং করা থেকে আপনার অন্তর্নিবেশের উপর নির্ভর করব।

[মন্তব্যসমূহ: ১) আমরা যদি আনুষ্ঠানিকভাবে এবং সুনির্দিষ্টভাবে সবকিছু করতে চাইলে আমাদের কাছে একটি অ্যালগরিদম এবং গণ্য সংস্থানসমূহের ব্যবহার দ্বারা আমরা কী বোঝাতে চাইছি তা স্পষ্টভাবে সংজ্ঞায়িত করার জন্য আমাদের স্ট্যান্ডার্ড টুরিং মেশিন মডেলের মতো গণনার একটি মডেল ঠিক করতে হবে । ২. আমরা যদি মডেলগুলি সরাসরি পরিচালনা করতে পারে না এমন বস্তুর উপরে গণনার বিষয়ে কথা বলতে চাই, তবে মেশিন মডেল হ্যান্ডেল করতে পারে এমন বস্তু হিসাবে আমাদের তাদের এনকোড করা দরকার, উদাহরণস্বরূপ, যদি আমরা টুরিং মেশিন ব্যবহার করি তবে আমাদের প্রাকৃতিক সংখ্যা এবং গ্রাফের মতো বিষয়গুলি এনকোড করতে হবে বাইনারি স্ট্রিং হিসাবে।]


P = জন্য দক্ষ আলগোরিদিম সমস্যাখোঁজাসলিউশন

ধরে নিন যে দক্ষ অ্যালগরিদম বলতে আলগোরিদিমগুলি সর্বাধিক বহু পরিমাণে গণনা সংস্থান ব্যবহার করে। প্রধান সম্পদ আমরা যত্নশীল খারাপ-ক্ষেত্রে দেখা যায় সময় চলমান ইনপুট আকার থেকে সম্মান সঙ্গে আলগোরিদিম, প্রাথমিক বিষয় একটি আলগোরিদিম আকারের একটি ইনপুট লাগে সংখ্যা অর্থাত n । এর একটি ইনপুট আকার x হয় n যদি এটা লাগে n করার জন্য দোকানের কম্পিউটার মেমরি -bits x , যে ক্ষেত্রে আমরা লিখতে |x|=n । সুতরাং দক্ষ অ্যালগরিদম বলতে আমাদের বোঝায় অ্যালগরিদমগুলি যে বহুপথের সবচেয়ে খারাপ অবস্থায় চলেছে

ধৃষ্টতা যে বহুপদী সময় আলগোরিদিম দক্ষ আলগোরিদিম স্বজ্ঞাত ধারণা ক্যাপচার হিসাবে পরিচিত হয় গুড থিসিস । দক্ষতার সাথে সমাধানযোগ্য সমস্যাগুলির জন্য P সঠিক মডেল কিনা এবং অনুশীলন এবং সম্পর্কিত সমস্যাগুলিতে দক্ষতার সাথে কী গণনা করা যেতে পারে বা P তা গ্রহণ করবে কিনা তা আমি এই পর্যায়ে আলোচনা করব না । আপাতত এই ধারণাটি গ্রহণের জন্য উপযুক্ত কারণ রয়েছে তাই আমাদের উদ্দেশ্যে আমরা ধরে নিই যে এটি কেস। আপনি গুড থিসিস গ্রহণ না করেন তাহলে এটা কি আমি নীচে ভুল লিখতে দেখা যায় না, শুধু আমরা নষ্ট হয়ে যাবে স্বজ্ঞা বাস্তবে দক্ষ গণনার সম্পর্কে। আমি মনে করি জটিলতার তত্ত্ব সম্পর্কে শিখতে শুরু করা এমন ব্যক্তির পক্ষে এটি একটি সহায়ক অনুমান।

P হ'ল সিদ্ধান্তগত সমস্যার শ্রেণি
যাদক্ষতার সাথে সমাধান করা যায়,অর্থাত্ সিদ্ধান্ত সংক্রান্ত সমস্যাগুলির মধ্যে যা বহু-কালীন অ্যালগরিদম রয়েছে।

আরও আনুষ্ঠানিকভাবে, আমরা বলি একটি সিদ্ধান্তের QP ইফ যদি হয় in

একটি কার্যকর অ্যালগরিদম A যেমন
সমস্ত ইনপুট x ,

  • যদি Q(x)=YES তবে A(x)=YES ,
  • যদি Q(x)=NO তারপর A(x)=NO

আমি কেবল A(x)=Q(x) লিখতে পারি তবে আমি এটি এইভাবে লিখি যাতে আমরা এটিকে NP সংজ্ঞার সাথে তুলনা করতে পারি ।


NPপ্রফেস / শংসাপত্র / সাক্ষিদেরযাচাই করারজন্য এন পি = দক্ষ অ্যালগরিদমের সাথে সমস্যা

কখনও কখনও আমরা একটি সিদ্ধান্ত সমস্যা উত্তর খুঁজে বের করার কোনো কার্যকর উপায় জানি না, তবে যদি কেউ আমাদের উত্তর বলে এবং আমাদের একটি দেয় প্রমাণ আমরা দক্ষতার সঙ্গে করতে পারেন যাচাই যে উত্তর যদি এটি একটি কিনা দেখতে প্রমাণ পরীক্ষা করে সঠিক বৈধ প্রমাণ । এই জটিলতা ক্লাস NP পিছনে ধারণা ।

যদি প্রমাণটি খুব দীর্ঘ হয় তবে এটি সত্যিই দরকারী নয়, কেবল প্রুফটি পড়তে খুব বেশি সময় লাগতে পারে এটি বৈধ কিনা তা পরীক্ষা করে দেখুন। আমরা চাইচ্ছি যে যাচাইকরণের জন্য প্রয়োজনীয় সময়টি মূল ইনপুটটির আকারে যুক্তিসঙ্গত হোক, প্রদত্ত প্রমাণের আকার নয়! এর মানে কি আমরা আসলেই যা চাই অবাধ দীর্ঘ প্রমাণাদি কিন্তু নয় সংক্ষিপ্ত প্রমাণাদি। মনে রাখবেন যে যদি ভেরিফায়ারটির চলমান সময়টি মূল ইনপুটটির আকারে বহুপদী হয় তবে এটি কেবলমাত্র প্রমাণের বহুবচনীয় অংশটি পড়তে পারে। সুতরাং সংক্ষেপে আমরা বহুত্বগত আকারের মানে ।

আমি যখনই "প্রুফ" শব্দটি ব্যবহার করি তখনই আমি "সংক্ষিপ্ত প্রমাণ" শব্দটি ব্যবহার করি on

এখানে এমন একটি সমস্যার উদাহরণ রয়েছে যা আমরা কীভাবে দক্ষতার সাথে সমাধান করতে জানি না তবে আমরা দক্ষতার সাথে প্রমাণগুলি যাচাই করতে পারি:

দেশভাগের
ইনপুট: প্রাকৃতিক সংখ্যার একটি সসীম সেট S ,
প্রশ্ন: এটা সম্ভব পার্টিশন হয় S দুই সেটে A এবং B ( AB=S এবং AB= )
যেমন যে মধ্যে সংখ্যার যোগফল A সমান B ( xAx=xBx ) এর সংখ্যার যোগফল ?

যদি আমি আপনাকে S থাকি এবং আপনাকে জিজ্ঞাসা করি যে আমরা এটিকে দুটি সেটে বিভক্ত করতে পারি যেগুলির পরিমাণগুলি সমান, আপনি এটি সমাধান করার জন্য কোনও কার্যকরী অ্যালগরিদম জানেন না। আপনি সম্ভবত সংখ্যাগুলিকে দুটি সেটে বিভক্ত করার সমস্ত সম্ভাব্য উপায়গুলি চেষ্টা করবেন যতক্ষণ না আপনি কোনও বিভাজন সন্ধান করতে পারেন যেখানে অঙ্কগুলি সমান হয় বা যতক্ষণ না আপনি সমস্ত সম্ভাব্য পার্টিশন চেষ্টা করেছেন এবং কোনওটি কাজ করেনি। যদি তাদের কেউ কাজ করে তবে আপনি হ্যাঁ বলবেন, অন্যথায় আপনি না বলবেন।

কিন্তু আছে ব্যাখ্যা মূলকভাবে তাই এটি অনেক সময় নিতে হবে অনেক সম্ভব পার্টিশন। তবে আমি আপনাকে দুটি এবং A এবং B সেট দিলে আপনি সহজেই পরীক্ষা করতে পারেন যে পরিমাণগুলি সমান এবং যদি A এবং BS বিভাজন হয় । মনে রাখবেন যে আমরা দক্ষতার সাথে অঙ্কগুলি গণনা করতে পারি।

আমি আপনাকে যে A এবং B এর জুটি দিচ্ছি তা হ্যাঁ উত্তরের প্রমাণ। আপনি আমার প্রমাণটি দক্ষতার সাথে আমার প্রমাণটি দেখে এবং এটি বৈধ প্রমাণ কিনা তা পরীক্ষা করে দক্ষতার সাথে যাচাই করতে পারেন । যদি উত্তরটি হ্যাঁ হয় তবে এর একটি বৈধ প্রমাণ রয়েছে এবং আমি এটি আপনাকে দিতে পারি এবং আপনি এটি দক্ষতার সাথে যাচাই করতে পারেন। উত্তর যদি না হয় তবে এর কোনও বৈধ প্রমাণ নেই। সুতরাং আমি আপনাকে যা যা দিচ্ছি তা পরীক্ষা করে দেখতে পারেন এটি কোনও বৈধ প্রমাণ নয়। উত্তরটি হ্যাঁ, এমন কোনও অবৈধ প্রমাণ দিয়ে আমি আপনাকে ঠকাতে পারি না। মনে রাখবেন যে প্রমাণটি যদি খুব বড় হয় তবে এটি যাচাই করতে অনেক সময় লাগবে, আমরা এটিটি ঘটতে চাই না, তাই আমরা কেবল দক্ষ প্রমাণাদি, অর্থাত্ প্রমাণগুলির মধ্যে যত্নশীল যা বহুবর্ষীয় আকারের।

কখনও কখনও লোকেরা " প্রমাণ " এর জায়গায় " শংসাপত্র " বা " সাক্ষী " ব্যবহার করে ।

দ্রষ্টব্য আমি আপনাকে প্রদত্ত ইনপুট x এর উত্তর সম্পর্কে পর্যাপ্ত তথ্য দিচ্ছি যাতে আপনি উত্তরটি দক্ষতার সাথে খুঁজে পেতে এবং যাচাই করতে পারেন। উদাহরণস্বরূপ, আমাদের বিভাজনের উদাহরণে আমি আপনাকে উত্তরটি বলি না, আমি আপনাকে কেবল একটি পার্টিশন দিই, এবং আপনি এটি বৈধ কিনা তা পরীক্ষা করতে পারেন। নোট করুন যে আপনাকে নিজের উত্তরটি যাচাই করতে হবে, আমি যা বলি তা সম্পর্কে আপনি বিশ্বাস করতে পারবেন না। তাছাড়া আপনি কেবল আমার প্রমাণের সঠিকতা পরীক্ষা করতে পারেন । আমার প্রমাণটি বৈধ হলে এর অর্থ হ্যাঁ হ্যাঁ। তবে আমার প্রমাণটি যদি অবৈধ হয় তবে এর অর্থ এই নয় যে উত্তরটি কোনও নয়। আপনি দেখেছেন যে একটি প্রমাণ অবৈধ ছিল, কোনও বৈধ প্রমাণ নেই not আমরা হ্যাঁ প্রমাণের কথা বলছি। আমরা কোনও প্রমাণের বিষয়ে কথা বলছি না।

একটি উদাহরণ তাকান: A={2,4} এবং B={1,5} একটি প্রমাণ যে S={1,2,4,5} দুই সেটে সমান অঙ্কের সঙ্গে বিভক্ত করা যেতে পারে। আমাদের শুধু A এবং B এর সংখ্যাগুলি যোগ করতে হবে এবং ফলাফলগুলি সমান কিনা তা দেখতে হবে এবং A , BS বিভাজন কিনা তা পরীক্ষা করে দেখুন ।

যদি আমি আপনার দেওয়া A={2,5} এবং B={1,4} , আপনি চেক করবে এবং দেখ যে আমার প্রমাণ অবৈধ। এর অর্থ উত্তরটি হ'ল নয়, এর অর্থ এই যে এই নির্দিষ্ট প্রমাণটি অবৈধ ছিল। এখানে করা আপনার টাস্ক হয় না উত্তর খুঁজে, কিন্তু শুধুমাত্র যদি প্রমাণ দেওয়া হয় বৈধ কিনা চেক করতে।

এটি একটি শিক্ষার্থীর মতো যা একটি পরীক্ষায় একটি প্রশ্ন সমাধান করে এবং একজন অধ্যাপক উত্তর সঠিক কিনা তা পরীক্ষা করে দেখছেন। :) (দুর্ভাগ্যক্রমে প্রায়শই শিক্ষার্থীরা তাদের উত্তরের যথার্থতা যাচাই করতে পর্যাপ্ত তথ্য দেয় না এবং অধ্যাপকদের তাদের বাকী আংশিক উত্তর অনুমান করতে হয় এবং সিদ্ধান্ত নিতে হয় যে তাদের আংশিক উত্তরের জন্য শিক্ষার্থীদের কত নম্বর দেওয়া উচিত, সত্যিই এটি বেশ কঠিন কাজের)।

আশ্চর্যজনক বিষয়টি হ'ল একই পরিস্থিতিটি আমরা সমাধান করতে চাই এমন আরও অনেক প্রাকৃতিক সমস্যার ক্ষেত্রে প্রযোজ্য: প্রদত্ত একটি সংক্ষিপ্ত প্রমাণ কার্যকর হলে আমরা কার্যকরভাবে যাচাই করতে পারি, তবে উত্তরটি খুঁজে পাওয়ার কোনও কার্যকর উপায় আমরা জানি না । এই কেন জটিলতা বর্গ প্রেরণা NP হয় অত্যন্ত আকর্ষণীয় (যদিও এই এটা সংজ্ঞায়িত করার সূত্রপাত ছিল না)। আপনি যা-ই করুন (কেবল সিএসে নয়, গণিত, জীববিজ্ঞান, পদার্থবিজ্ঞান, রসায়ন, অর্থনীতি, পরিচালনা, সমাজবিজ্ঞান, ব্যবসা, ...) এ আপনি এই শ্রেণিতে পড়া গণনাগত সমস্যার মুখোমুখি হবেন। NP চেক আউট এ কতগুলি সমস্যা দেখা দেয় তার একটি ধারণা পেতেএনপি অপ্টিমাইজেশন সমস্যার একটি সংকলন । প্রকৃতপক্ষে আপনার প্রাকৃতিক সমস্যাগুলি খুঁজে পেতে খুব সমস্যা হবে যা NP । এটা সহজ আশ্চর্যজনক।

NP হ'ল সমস্যাগুলির শ্রেণি যাঁর দক্ষ ভেরিফায়ার রয়েছে, অর্থাত্
একটি বহুপদী সময় অ্যালগরিদম রয়েছে যা প্রদত্ত সমাধানটি সঠিক কিনা তা যাচাই করতে পারে।

আরো আনুষ্ঠানিকভাবে, আমরা বলতে একটি সিদ্ধান্ত সমস্যা Q হয় NP iff

ভেরিফায়ার নামে একটি দক্ষ অ্যালগরিদম V যা
সমস্ত ইনপুটগুলির জন্য x ,

  • যদি Q(x)=YES তবে একটি প্রমাণ y যা V(x,y)=YES ,
  • যদি Q(x)=NO সকল প্রমাণাদি জন্য y , V(x,y)=NO

আমরা বলি যে কোনও উত্তরদাতা উত্তর না থাকলে কোনও প্রমাণ গ্রহণ না করে যদি একটি যাচাইকারী সাউন্ড হয়। অন্য কথায়, উত্তরটি সত্যই যদি উত্তর না হয় তবে একটি প্রমাণ যাচাইয়ের জন্য সাউন্ড ভেরিফায়ারকে ট্রিক করা যায় না। কোন মিথ্যা ইতিবাচক।

একইভাবে, আমরা বলি যে কোনও উত্তরদাতা হ্যাঁ যখন কমপক্ষে একটি প্রমাণ গ্রহণ করে তবে একটি যাচাইকারী সম্পূর্ণ । অন্য কথায়, একটি সম্পূর্ণ যাচাইকারী উত্তর হ্যাঁ হওয়ায় নিশ্চিত হতে পারে।

পরিভাষাটি লজিক এবং প্রুফ সিস্টেম থেকে আসে । আমরা কোনও মিথ্যা বিবৃতি প্রমাণের জন্য সাউন্ড প্রুফ সিস্টেমটি ব্যবহার করতে পারি না। সমস্ত সত্য বিবৃতি প্রমাণের জন্য আমরা একটি সম্পূর্ণ প্রুফ সিস্টেম ব্যবহার করতে পারি।

ভেরিফায়ার V দুটি ইনপুট পান,

  • x :Q এবং এরজন্য মূল ইনপুট
  • y :Q(x)=YES জন্য প্রস্তাবিত প্রমাণ।

মনে রাখবেন যে, আমরা চাই V আকার সুদক্ষ হতে x । তাহলে y একটি বড় প্রমাণ যাচাইকারী পড়তে সক্ষম হতে হবে শুধুমাত্র একটি বহুপদী অংশ এর y । এজন্য আমাদের প্রমাণগুলি সংক্ষিপ্ত হওয়া দরকার। তাহলে y সংক্ষিপ্ত উক্তি যে V মধ্যে কার্যকরী x বলে যে হিসাবে একই V মধ্যে কার্যকরী x এবং y (কারণ আকার y এর আকার একটি নির্দিষ্ট বহুপদী দ্বারা বেষ্টিত x )।

সংক্ষেপে বলা যায়, দেখানোর জন্য একটি সিদ্ধান্ত যে Q রয়েছে NP আমরা একটি দিতে হবে দক্ষ যাচাইকারী অ্যালগরিদম যা শব্দ এবং সম্পূর্ণ

.তিহাসিক দ্রষ্টব্য: icallyতিহাসিকভাবে এটি NP এর মূল সংজ্ঞা নয় । আসল সংজ্ঞা নন-ডিস্ট্রিমেন্টিক ট্যুরিং মেশিন যা বলে তাকে ব্যবহার করে । এই মেশিনগুলি কোনও প্রকৃত মেশিন মডেলের সাথে সামঞ্জস্য করে না এবং অভ্যস্ত হওয়া কঠিন (কমপক্ষে যখন আপনি জটিলতা তত্ত্ব সম্পর্কে শিখতে শুরু করেন)। আমি পড়েছি যে অনেক বিশেষজ্ঞরা মনে করেন যে তারা ভেরিফায়ার সংজ্ঞাটিকে মূল সংজ্ঞা হিসাবে ব্যবহার করেছেন এবং এমনকি এন পি এর জায়গায় VP (বহুবর্ষীয় সময়ে যাচাইযোগ্য) নামকরণ করেছিলেন wouldNP যদি তারা গণনা সংক্রান্ত জটিলতার তত্ত্বটি ভোরের দিকে ফিরে যায়। ভেরিফায়ার সংজ্ঞাটি আরও প্রাকৃতিক, ধারণাগতভাবে বোঝা সহজ এবং সমস্যাগুলি দেখানোর জন্য ব্যবহার করা সহজ NP


PNP

সুতরাং আমাদের কাছে P = দক্ষ দ্রবণযোগ্য এবং NP = দক্ষতার সাথে যাচাইযোগ্য । সুতরাং P=NP যদি সমস্যাগুলি দক্ষতার সাথে যাচাই করা যায় তবে সেগুলি কার্যকরভাবে সমাধান করা যায় এমন সমস্যাগুলির মতো same

নোট করুন যে P যে কোনও সমস্যা NP তেও রয়েছে , অর্থাত্ যদি আপনি সমস্যার সমাধান করতে পারেন তবে প্রদত্ত প্রমাণ সঠিক কিনা তা যাচাইও করতে পারবেন: যাচাইকারী কেবল প্রমাণটিকে উপেক্ষা করবেন!

এটি কারণ আমাদের এটির প্রয়োজন নেই, যাচাইকারী নিজেই উত্তরটি গুণতে পারে, এটি সিদ্ধান্ত নিতে পারে যে কোনও উত্তর ছাড়া উত্তর হ্যাঁ বা না হয়। যদি উত্তরটি না হয় তবে আমরা জানি যে কোনও প্রমাণ থাকতে হবে না এবং আমাদের যাচাইকারী প্রতিটি প্রস্তাবিত প্রমাণকে প্রত্যাখ্যান করবে। যদি উত্তরটি হ্যাঁ হয় তবে তার একটি প্রমাণ থাকা উচিত এবং বাস্তবে আমরা প্রমাণ হিসাবে কোনও কিছুই গ্রহণ করব।

[আমরা আমাদের যাচাইকারীকে কেবলমাত্র তাদের কিছু গ্রহণ করতে পারি, এটিও ঠিক আছে, যতক্ষণ না আমাদের যাচাইকারী সমস্যাটির জন্য ভেরিফায়ার সঠিকভাবে কাজ করে তা কমপক্ষে একটি প্রমাণ গ্রহণ করেন]]

এখানে একটি উদাহরণ:

যোগফল
ইনপুট: একটি তালিকা n+1 স্বাভাবিক সংখ্যার a1,,an , এবং s ,
প্রশ্ন: হয় Σi=1nai=s ?

সমস্যা হয় P কারণ আমরা সংখ্যার যোগফল এবং তারপর সঙ্গে এটি তুলনা করতে পারবেন s , আমরা ফিরে হ্যাঁ, যদি তারা সমান, এবং কোন যদি তারা নয়।

সমস্যাটি NP তেও আছে । ভেরিফায়ার V বিবেচনা করুন যা একটি প্রমাণ এবং যোগফলের যোগফল পায় gets এটা অ্যালগরিদম মতো একই ভাবে কাজ করে P যে আমরা উপরে বর্ণিত। এটি Sum এর জন্য একটি কার্যকর যাচাইকারী।

মনে রাখবেন যে সামের জন্য অন্যান্য দক্ষ যাচাইকারী রয়েছে এবং তাদের মধ্যে কিছু তাদের দেওয়া প্রমাণ ব্যবহার করতে পারে। তবে আমরা ডিজাইন করা একটি না এবং এটিও ঠিক। যেহেতু আমরা যোগফলের জন্য একটি কার্যকর যাচাইকারী দিয়েছি সমস্যাটি NP । একই কৌতুক অন্যান্য সমস্ত সমস্যার জন্য কাজ করে P তাই PNP


NPNPExpTime

NPNP

আমাদের বিভাজনের উদাহরণে, আমরা সমস্ত সম্ভাব্য পার্টিশন চেষ্টা করে দেখি এবং এর যে কোনও একটিতে যোগফল সমান কিনা।

m2m

NPNPExpTimeNPPSpace

NPPNPNP

NP=PNP

NPNP

NPNPNPPNP

NPNP


লোয়ার পাউন্ডগুলি প্রমাণ করা বেশ কঠিন মনে হচ্ছে

NP

দুর্ভাগ্যক্রমে নিম্ন সীমা প্রমাণ করার কাজটি খুব কঠিন। আমরা এমনকি প্রমাণ করতে পারি না যে এই সমস্যাগুলির জন্য রৈখিক সময়ের চেয়ে বেশি প্রয়োজন ! একাকী তাত্পর্যপূর্ণ সময় প্রয়োজন।

লিনিয়ার-সময় নিম্ন সীমা প্রমাণ করা বরং সহজ: অ্যালগরিদম সর্বোপরি ইনপুটটি পড়তে হবে। সুপার-লিনিয়ার নিম্ন সীমানা প্রমাণ করা সম্পূর্ণ আলাদা গল্প। আমরা যে ধরণের অ্যালগোরিদম বিবেচনা করছি সে সম্পর্কে আরও বিধিনিষেধের সাথে সুপার-লিনিয়ার নিম্ন সীমানা প্রমাণ করতে পারি, উদাহরণস্বরূপ তুলনা ব্যবহার করে অ্যালগোরিদমকে বাছাই করা, তবে আমরা এই বিধিনিষেধগুলি ছাড়াই নিম্ন-সীমানা জানি না।

একটি সমস্যার উপরের সীমাটি প্রমাণ করার জন্য আমাদের কেবলমাত্র একটি ভাল পর্যাপ্ত অ্যালগরিদম ডিজাইন করতে হবে। এ জাতীয় অ্যালগরিদম নিয়ে আসতে প্রায়শই জ্ঞান, সৃজনশীল চিন্তাভাবনা, এমনকি দক্ষতারও প্রয়োজন।

তবে একটি কম বাউন্ড প্রমাণের তুলনায় টাস্কটি যথেষ্ট সহজ। আমাদের দেখতে হবে যে কোনও ভাল অ্যালগরিদম নেই । এমন নয় যে আমরা এই মুহূর্তে কোনও ভাল পর্যাপ্ত অ্যালগরিদম জানি না , তবে কোনও ভাল অ্যালগরিদম উপস্থিত নেই যে কেউ কখনও ভাল অ্যালগরিদম নিয়ে আসে না । এক মিনিটের জন্য চিন্তা করুন যদি আপনার আগে না থাকে তবে আমরা কীভাবে এরকম অসম্ভব ফল প্রদর্শন করতে পারি ?

1=0

দেখাতে হবে যে একটি সমস্যা কম আবদ্ধ, অর্থাত্ প্রমাণ প্রয়োজন সমাধানের জন্য কিছু সময়ের, যার মানে প্রমাণ করতে হবে যে আছে আমরা কোনোঅ্যালগরিদম, এমনকি খুব জ্ঞানসম্পন্ন যেগুলি এখনও জানে না, দ্রুত সমস্যাটি সমাধান করতে পারে না। এমন অনেক বুদ্ধিমান ধারণা রয়েছে যা আমরা জানি (লোভী, ম্যাচিং, ডায়নামিক প্রোগ্রামিং, লিনিয়ার প্রোগ্রামিং, সেমিডেফিনাইট প্রোগ্রামিং, সম-অফ-স্কোয়ার্স প্রোগ্রামিং এবং আরও অনেক বুদ্ধিমান ধারণা) এবং এমন আরও অনেক রয়েছে যা আমরা এখনও জানি না। একটি অ্যালগরিদম বা অ্যালগোরিদম ডিজাইনের একটি নির্দিষ্ট ধারণা কার্যকর করার পক্ষে যথেষ্ট নয়, এমনকি তাদের সম্পর্কে আমাদের এখনও জানা উচিত নয়, এমনকি আমরা এখনও তাদের সম্পর্কে জানি না, এমনকি সেগুলিও কখনও জানতে পারে না! এবং এগুলি একটি সমস্তকে একটি অ্যালগোরিদমে একত্রিত করতে পারে, সুতরাং আমাদের তাদের সংমাগুলিও বাতিল করতে হবে। দেখানোর দিকে কিছু অগ্রগতি হয়েছে যে কিছু ধারণা শক্ত সমাধান করতে পারে নাNPসমস্যাগুলি, যেমন লোভী এবং এর এক্সটেনশানগুলি কাজ করতে পারে না, এবং ডায়নামিক প্রোগ্রামিং অ্যালগরিদম সম্পর্কিত কিছু কাজ রয়েছে এবং লিনিয়ার প্রোগ্রামিংয়ের বিশেষ পদ্ধতিতে কিছু কাজ রয়েছে। তবে এগুলি আমরা যে বুদ্ধিমান ধারণাগুলি সম্পর্কে জানি তা বাতিল করার কাছাকাছিও নয় (যদি আপনি আগ্রহী হন তবে গণনার সীমাবদ্ধ মডেলগুলিতে নিম্ন-সীমা অনুসন্ধান করুন)।


বাধা: নিম্ন কোট হয় প্রমাণ করা কঠিন

অন্যদিকে আমাদের গাণিতিক ফলাফল রয়েছে যা বাধা বলে যা বলে যে একটি নিম্ন-সীমাবদ্ধ প্রমাণ যেমন এবং এই জাতীয় হতে পারে না এবং এ জাতীয় প্রায় সমস্ত কৌশল যা আমরা নিম্ন সীমাটি প্রমাণ করতে ব্যবহার করেছি! প্রকৃতপক্ষে অনেক গবেষক আলেকজান্ডার রাজারবাভ এবং স্টিভেন রুডিচের প্রাকৃতিক প্রমাণ বাধা ফলাফলের পরে নিম্ন সীমা প্রমাণ করতে কাজ ছেড়ে দিয়েছেন । দেখা যাচ্ছে যে নির্দিষ্ট ধরণের নিম্ন-সীমাবদ্ধ প্রমাণগুলির অস্তিত্ব হ'ল ক্রিপ্টোগ্রাফিক সিউডোর্যান্ডম সংখ্যা জেনারেটর এবং অন্যান্য অনেক ক্রিপ্টোগ্রাফিক সরঞ্জামগুলির নিরাপত্তাহীনতা বোঝায়।

আমি প্রায় বলছি কারণ সাম্প্রতিক বছরগুলিতে মূলত রায়ান উইলিয়ামসের কিছু অগ্রগতি হয়েছে যা বুদ্ধিমানভাবে প্রতিবন্ধকতার ফলাফলগুলি সরিয়ে দিতে সক্ষম হয়েছে, এখনও পর্যন্ত ফলাফলগুলি গণনার খুব দুর্বল মডেলের জন্য এবং সাধারণ বহু-কালীন অ্যালগরিদমকে অস্বীকার করা থেকে অনেক দূরে are ।

NP

[অন্যদিকে, রায়ান উইলিয়ামসের কাজ দেখায় যে নিম্ন সীমানা প্রমাণ করার এবং উপরের সীমানা প্রমাণ করার মধ্যে ঘনিষ্ঠ যোগাযোগ রয়েছে। আপনি আগ্রহী হলে আইসিএম ২০১৪ এ তাঁর আলোচনা দেখুন ]]


হ্রাস: সাব্রুটিন / ওরাকল / ব্ল্যাক বক্স হিসাবে অন্য একটি সমস্যা ব্যবহার করে একটি সমস্যা সমাধান করা

হ্রাসের ধারণাটি খুব সহজ: একটি সমস্যা সমাধানের জন্য, অন্য সমস্যার জন্য একটি অ্যালগরিদম ব্যবহার করুন।

nSumSum

সমস্যা:

nx1,,xn
i=1nxi

হ্রাস অ্যালগরিদম:

  1. s=0
  2. i1n
    s=Sum(s,xi)
  3. s

SumSumSumSum

এটি হ্রাস যা মূলত তা হ'ল: ধরে নিন যে কোনও সমস্যার জন্য আমাদের কাছে অ্যালগরিদম রয়েছে এবং এটি অন্য সমস্যা সমাধানের জন্য এটি ওরাকল হিসাবে ব্যবহার করুন। এখানে দক্ষ মানে দক্ষ এটি ধরে নেওয়া দক্ষ যে সময়ের একটি ইউনিটে ওরাকল উত্তর দেয়, অর্থাত্ আমরা ওরাকেলের প্রতিটি সম্পাদনকে একটি পদক্ষেপ গণনা করি।

যদি ওরাকল একটি বৃহত্তর জবাব দেয় তবে আমাদের এটি পড়তে হবে এবং এটি কিছুটা সময় নিতে পারে, সুতরাং ওরাকল আমাদের যে উত্তর দিয়েছে তা পড়তে আমাদের যে সময় লাগে তা গণনা করা উচিত । একইভাবে ওরাকল থেকে প্রশ্ন লেখার / প্রশ্ন করার জন্য। কিন্তু ওরাকল তাত্ক্ষণিকভাবে কাজ করে, অর্থাত্ আমরা ওরাকল থেকে প্রশ্ন জিজ্ঞাসা করার সাথে সাথে ওরাকল আমাদের জন্য উত্তর একটি সময়ের মধ্যে লিখে দেয় writes ওরাকল যে সমস্ত কাজ করে সেগুলি একটি একক পদক্ষেপ গণনা করা হয়, তবে এটি আমাদের প্রশ্ন লিখতে এবং উত্তর পড়তে সময় নেয় না।

কারণ আমরা ওরাকল কীভাবে কাজ করে তা যত্নশীল না তবে কেবল এটির উত্তরগুলি কীভাবে ফিরে আসে সে সম্পর্কে আমরা একটি সরলীকরণ করতে পারি এবং তার জন্য একটি অ্যালগরিদমের জায়গায় ওরাকলকেই সমস্যা বলে মনে করি। অন্য কথায়, ওরাকলটি যদি অ্যালগোরিদম না হয় তবে আমরা যত্ন নিই না, কীভাবে ওরাকলগুলি এর উত্তরগুলি নিয়ে আসে তা আমরা যত্ন করি না।

Sum

আমরা একটি ওরাকল থেকে একাধিক প্রশ্ন জিজ্ঞাসা করতে পারি, এবং প্রশ্নগুলি পূর্বনির্ধারিত হওয়ার দরকার নেই: আমরা একটি প্রশ্ন জিজ্ঞাসা করতে পারি এবং উত্তরটির ভিত্তিতে যে ওরাকল রিটার্নটি আমরা নিজেরাই কিছু গণনা সম্পাদন করি এবং তারপরে আমরা যে উত্তর পেয়েছি তার উপর ভিত্তি করে অন্য প্রশ্ন জিজ্ঞাসা করতে পারি আগের প্রশ্ন

এটি দেখার আর একটি উপায় এটি ইন্টারেক্টিভ গণনা হিসাবে এটি সম্পর্কে চিন্তা করা । ইন্টারেক্টিভ গণনা নিজেই বড় বিষয় তাই আমি এটিতে এখানে প্রবেশ করব না তবে আমি মনে করি এই হ্রাসের এই দৃষ্টিকোণটি উল্লেখ করা সহায়ক হতে পারে।

AOAO

উপরে যে হ্রাসটি আমরা উপরে আলোচনা করেছি তা হ্রাসের সর্বাধিক সাধারণ রূপ এবং এটি ব্ল্যাক-বাক্স হ্রাস (ওরফে অরাকল হ্রাস , টুরিং হ্রাস ) নামে পরিচিত ।

আরও আনুষ্ঠানিকভাবে:

QOQTO
Ax
Q(x)=AO(x)

AOQ

AQTPOT

তবে হ্রাস অ্যালগরিদম যেভাবে ওরাকলটির সাথে যোগাযোগ করে আমরা তাতে কিছু বিধিনিষেধ আরোপ করতে চাই। বেশ কয়েকটি বিধিনিষেধ রয়েছে যা অধ্যয়ন করা হয় তবে সবচেয়ে কার্যকর সীমাবদ্ধতা হ'ল একে বলা হয় বহু-ওয়ান হ্রাস (ওরফে ম্যাপিং হ্রাস )।

xy

আরও আনুষ্ঠানিকভাবে,

QOQmO
Ax
Q(x)=O(A(x))

QmPO

NPANPBANP

PNPNP


পোস্টটি দীর্ঘ হয়ে গেছে এবং একটি উত্তরের সীমা ছাড়িয়েছে (30000 অক্ষর)। আমি উত্তর দ্বিতীয় খণ্ডে চালিয়ে যাব ।



4
@ কাভেঃ এটি একটি দুর্দান্ত পোস্ট, ধন্যবাদ আমি ক্লাসে এই বিভাগের আগে সিদ্ধান্ত গ্রহণযোগ্যতা করেছি, তবে অনির্বাচিততা প্রমাণ করার বিষয়ে আমার বোঝার ক্ষেত্রে আমি কিছুটা পিছিয়ে আছি। যদিও জটিলতার সাথে আমার বোঝার অভাবের সাথে এটির কিছু আছে কিনা তা আমি জানি না।
এজেন্ট 154

5
আমি ইন্ট্রো লেভেল (সিপসারের সহ) আরও উন্নত পর্যন্ত অনেক জটিলতার বই পড়েছি। আমার বিমূর্ত গণিতে সমস্যা নেই (যেমন আমি ল্যাং-এর বীজগণিতটি পড়তে পেরেছি)। এনপি বনাম পি.কে ব্যাখ্যা করার জন্য এই উত্তরটি সবচেয়ে ভাল I আমি আপনাকে এটি পোলিশ করতে আরও সময় ব্যয় করার এবং এটির বক্তৃতা নোটগুলি তৈরি করার পরামর্শ দিচ্ছি। এটি অনেক লোককে সহায়তা করতে পারে।
scaaahu

@ এসসিএাহু, দয়া করে মন্তব্য করার জন্য এবং পরামর্শগুলির জন্য আপনাকে ধন্যবাদ। আমি শীঘ্রই এটি সম্পূর্ণ এবং পোলিশ করার পরিকল্পনা করছি।
কাভেহ

10
এই উত্তরটি একটি রেফারেন্স উত্তর হিসাবে করা উচিত। ভবিষ্যতের সমস্ত বেসিক পি / এনপি টাইপ প্রশ্নগুলির প্রথমে এটি উল্লেখ করা উচিত। খুব তরল বর্ণনা!
পরেশ

179

দ্বিতীয় খণ্ড

প্রথম ভাগ থেকে অব্যাহত ।

পূর্ববর্তীটি একটি উত্তরে অনুমোদিত সর্বোচ্চ অক্ষরের সংখ্যা (30000) ছাড়িয়েছে তাই আমি এটিকে দুটি ভাঙছি।

NP NP

PNPNPNP

এখন কখনও কখনও আমরা বলতে চাই যে একটি সমস্যা সমাধান করা কঠিন । তবে আমরা উপরে উল্লিখিত হিসাবে আমরা এই উদ্দেশ্যে নিম্ন-সীমা ব্যবহার করতে পারি না: তাত্ত্বিকভাবে এগুলি হ'ল আমরা যা প্রমাণ করতে চাই, তবে বাস্তবে আমরা নিম্ন সীমানা প্রমাণ করতে খুব বেশি সফল হতে পারি নি এবং সাধারণভাবে আমরা যেমন উল্লেখ করেছি তেমন প্রমাণ করা শক্ত নয় উপরে। এখনও কি কোনও উপায় বলা যায় যে কোনও সমস্যার সমাধান করা কঠিন ?

NPNP

আপেক্ষিক অসুবিধা হিসাবে হ্রাস

ABAB

ABAB

MBABMBANBMBNMNA

P

NPNP

NPNP

NPNP
NPNP

ANP

ANP
NPBBABmPA

NPNPNPNP

NPNP

(দুই অন্য সমস্যা যে মানুষ প্রচুর শিল্পে ব্যবহারিক ব্যবহারের জন্য তাদের জন্য তাদের আলগোরিদিম নিখুঁত কাজ হয় পূর্ণসংখ্যা প্রোগ্রামিং এবং কনস্ট্রেইন্ট অর্থাৎ সন্তুষ্টি সমস্যা । আপনার সমস্যা এবং দৃষ্টান্ত এইসব এক বেশী ভালো সঞ্চালন পারে জন্য অপ্টিমাইজ করা আলগোরিদিম যত্নশীল উপর নির্ভর করে অন্যদের।)

NP
NP

NP

NPNP

NPNPNPNPNPNP হার্ড (অর্থাত্ কোনও বহুপদী সময় অ্যালগোরিদম নেই)।

এখন প্রশ্নগুলি হ'ল:

  • NP

  • আমরা কি তাদের কাউকে চিনি?

NPNPNPNP

NPExpTimeNPNP

p¬p

NPNP

ANPABBNPNPAABNPB

NPNPNP

NPNP

SATNPSATSubsetSumNPSATSubsetSum

NP

NP

দ্রষ্টব্য: নীচের অংশটি প্রথম পড়ার ক্ষেত্রে কিছুটা প্রযুক্তিগত হতে পারে।

NP


Vxtk
YESkVxtNO

UniVerNP

VNPxVxUniVer
tkVxVx

tttk

NPUniVerNP


MxMt
YESMxYEStNOYESt

CPt

Interpreter

UniVerNPMxtkcckInterpreterMYESxct

SATNP

UniVerNPUniVerNP

NPSAT

SAT


φ
YESφNO

SATNP


লিখতে হবে ...

NP

NP

NP

PNP

এরপর কি? এখান থেকে কোথায় যাব?


6
আমি আশা করি আমি একাধিকবার উত্সাহ দিতে পারলাম, উত্তর দেওয়ার জন্য এত প্রচেষ্টা করার জন্য আপনাকে ধন্যবাদ!
ফিঙ্গলফিন

2
বাহ, অসাধারণ নিবন্ধ! আমি সত্যিই ঘোষিত অংশগুলির অপেক্ষায় রয়েছি, বিশেষত "যদি আপনাকে এনপি-সম্পূর্ণ সমস্যার সমাধান করতে হয় তবে কী করবেন?"
টোবিয়াস হারমান

5
@ xci13 আপনি করতে পারেন! প্রথম অংশটি উঁচু করুন;)
ভিন্স এমি

4
আমি আপনার অ্যাকাউন্ট দুটিই আপ-ভোট দেওয়ার জন্য এখানে একটি অ্যাকাউন্ট তৈরি করেছি!
ভূত_স_ই_কোড

6
@ কাভেঃ কি এই আশ্চর্যজনকভাবে লেখা নিবন্ধটি শেষ করার কোনও পরিকল্পনা আছে?
গ্যাব

26

দরকারী বেশি উল্লিখিত উত্তর, আমি আপনাকে সুপারিশ অত্যন্ত "দেখার জন্য : পি বনাম দ্বারা NP সমস্যা বিয়ন্ড গণনা দ্বারা" মাইকেল Sipser । আমি মনে করি এই ভিডিওটি কম্পিউটার বিজ্ঞানের শীর্ষস্থানীয় শিক্ষামূলক ভিডিও হিসাবে সংরক্ষণাগারভুক্ত করা উচিত!

উপভোগ করুন!


মজার বিষয় হল, আমার পাঠ্যপুস্তক তাঁরই। এটি কোনও ভয়াবহ বই নয়, তবে এটি কিছু পছন্দসই হতে পারে।
এজেন্ট 154

8

স্ট্যাক ওভারফ্লোতে আমার অনুরূপ প্রশ্নের অনুলিপি করা:

প্রযুক্তিবিদ না পেয়ে পি ভি এনপি এবং এই জাতীয় ব্যাখ্যা করার সহজতম উপায় হ'ল "একাধিক পছন্দ সমস্যাগুলির সাথে" শব্দের সমস্যাগুলির সাথে তুলনা করা।

আপনি যখন "শব্দ সমস্যা" সমাধান করার চেষ্টা করছেন তখন আপনাকে সমাধানটি স্ক্র্যাচ থেকে খুঁজে নিতে হবে। আপনি যখন "একাধিক পছন্দ সমস্যাগুলি" সমাধান করার চেষ্টা করছেন তখন আপনার একটি পছন্দ রয়েছে: হয় আপনি "শব্দ সমস্যা" হিসাবে এটি সমাধান করুন, বা আপনার দেওয়া প্রতিটি উত্তর প্লাগ ইন করার চেষ্টা করুন এবং উপযুক্ত প্রার্থীর উত্তরটি বেছে নিন।

এটি প্রায়শই ঘটে থাকে যে "একাধিক পছন্দ সমস্যা" সম্পর্কিত "শব্দের সমস্যা" এর তুলনায় অনেক সহজ: পরীক্ষার্থীর উত্তরগুলি স্থির করে এবং সেগুলি খাপ খায় কিনা তা যাচাইয়ের জন্য সঠিক উত্তর খুঁজে পাওয়ার চেয়ে কম প্রচেষ্টা প্রয়োজন হতে পারে।

এখন, আমরা যদি বহুবচনের সময় "সহজ" লাগে সেই প্রচেষ্টাটিকে সম্মত করি তবে ক্লাস পি "ইজিতে সহজ শব্দগুলির" সমন্বিত থাকে এবং ক্লাস এনপি "সহজ একাধিক পছন্দ সমস্যা" নিয়ে গঠিত।

পি ভি। এনপির সারমর্মটি প্রশ্ন: "শব্দের সমস্যা হিসাবে সহজ কোন সহজ মাল্টিপল পছন্দ সমস্যা আছে কি"? অর্থাৎ, এমন কোনও সমস্যা রয়েছে যার জন্য কোনও প্রদত্ত উত্তরের বৈধতা যাচাই করা সহজ তবে স্ক্র্যাচ থেকে উত্তরটি খুঁজে পাওয়া কঠিন?

এখন যেহেতু আমরা এনপি কী তা স্বজ্ঞাতভাবে বুঝতে পারি, আমাদের আমাদের স্বজ্ঞাকে চ্যালেঞ্জ জানাতে হবে। দেখা যাচ্ছে যে "একাধিক পছন্দসই সমস্যাগুলি" রয়েছে যা কিছুটা অর্থে, তাদের মধ্যে সবচেয়ে কঠিন: যদি এই "সকলের মধ্যে সবচেয়ে কঠিন" সমস্যার মধ্যে একটির সমাধান পাওয়া যায় তবে তিনি সকলের সমাধান খুঁজে পেতে সক্ষম হবেন এনপি সমস্যা! কুক 40 বছর আগে এটি আবিষ্কার করলে এটি সম্পূর্ণ আশ্চর্য হয়ে আসে। এই "এগুলির মধ্যে সবচেয়ে কঠিন" সমস্যাগুলি এনপি-হার্ড নামে পরিচিত। যদি আপনি তাদের একটির কাছে একটি "শব্দ সমস্যার সমাধান" খুঁজে পান তবে আপনি স্বয়ংক্রিয়ভাবে প্রতিটি "সহজ একাধিক পছন্দ সমস্যা" এর "শব্দ সমস্যার সমাধান" পেয়ে যাবেন!

অবশেষে, এনপি-সম্পূর্ণ সমস্যাগুলি হ'ল একই সাথে এনপি এবং এনপি-হার্ড। আমাদের উপমা অনুসরণ করে, তারা একযোগে "একাধিক পছন্দ সমস্যা হিসাবে সহজ" এবং "শব্দ সমস্যা হিসাবে এগুলির মধ্যে সবচেয়ে কঠিন"।


এখন যেহেতু আমরা এনপি কী তা স্বজ্ঞাতভাবে বুঝতে পারি, আমাদের আমাদের স্বজ্ঞাকে চ্যালেঞ্জ জানাতে হবে। দেখা যাচ্ছে যে এখানে "একাধিক পছন্দের সমস্যা" রয়েছে - আপনি কি সেখানে "শব্দ সমস্যা" বোঝাতে চেয়েছিলেন? আমি তাই মনে করি, কারণ সমস্ত এনপি সমস্যা সংজ্ঞা অনুসারে "একাধিক পছন্দ" হিসাবে সহজ।
দিমিত্রি গ্রিগরিয়েভ

লাইন দ্বারা দেখা যাচ্ছে যে "একাধিক পছন্দসই সমস্যাগুলি" রয়েছে যা কিছুটা অর্থে, এগুলির মধ্যে সবচেয়ে কঠিন আমার অর্থ এইটি প্রমাণিত হয়েছিল যে এনপি সমস্যাগুলি রয়েছে যেগুলি কিছুটা অর্থে এগুলির মধ্যে সবচেয়ে কঠিন । এই এনপি সমস্যাগুলি সংজ্ঞা অনুসারে প্রকৃতপক্ষে সহজ একাধিক পছন্দ সমস্যা , তবে সেগুলি শব্দ সমস্যা হিসাবেও সবচেয়ে কঠিন them স্ট্যান্ডার্ড উদাহরণটি স্যাট 3: এটি একাধিক পছন্দের সমস্যা হিসাবে সহজ তবে শব্দের সমস্যা হিসাবে শক্ত।
মাইকেল

7

এর মধ্যে সর্বাধিক সহজলভীর পি, বহুপক্ষীয় সময়ে সমাধানযোগ্য সমস্যাগুলি এখানে।

তারপরে এনপি আসে। নন-ডিসট্রিম্যানটিক ট্যুরিং মেশিনে বহুপদী সময়ে সমাধানযোগ্য সমস্যাগুলি এখানে belongs

কঠোরতা এবং সম্পূর্ণতা হ্রাস সঙ্গে। সময় সমস্যা হয় কঠিন একটি বর্গ সি যদি সি প্রত্যেক সমস্যা উ: করতে হ্রাস তাহলে সমস্যা হয় দ্বারা NP জন্য কঠিন , বা দ্বারা NP-হার্ড যদি এন পি প্রতিটি সমস্যা উ: করতে হ্রাস করা

অবশেষে, একটি সমস্যা সম্পূর্ণ একটি বর্গ সি জন্য যদি তা না হয় সি এবং হার্ড আপনার যদি সি জন্য, সমস্যা হল দ্বারা NP জন্য সম্পূর্ণ , অথবা দ্বারা NP-সম্পূর্ণ যদি এন পি প্রতিটি সমস্যা থেকে কমে আসে এবং একটি দ্বারা NP হয় ।

এনপির ব্যাখ্যায় যোগ করতে, কোনও সমস্যা এনপি-তে থাকে এবং কেবলমাত্র (ডিস্ট্রিমেন্টিক) বহুবর্ষীয় সময়ে কোনও সমাধান যাচাই করা যায়। আপনার জানা কোনও এনপি-সম্পূর্ণ সমস্যা বিবেচনা করুন, স্যাট, ক্লিক্যু, সাবসেট স্যুম, ভার্টেক্স কভার ইত্যাদি you যদি আপনি "সমাধান পান", আপনি বহুগুণে তার যথার্থতা যাচাই করতে পারবেন। এগুলি হল, শ্রদ্ধাবোধের জন্য, ভেরিয়েবলগুলির জন্য সত্য অ্যাসাইনমেন্ট, সম্পূর্ণ সাবগ্রাফ, সংখ্যার উপসেট এবং শীর্ষ প্রান্ত যা সমস্ত প্রান্তকে প্রাধান্য দেয়।


6

বেসিকগুলির জন্য, পি বনাম এনপি এবং কম্পিউটেশনাল কমপ্লেক্সिटी চিড়িয়াখানার ভিডিওটি বোঝার জন্য পুরোপুরি সহজ বলে মনে হচ্ছে।

একটি সমস্যার সত্যই বড় সংস্করণ সহ কম্পিউটারের জন্য :

পি সমস্যা

সমাধান করা সহজ (রুবিক্স কিউব)

এনপি সমস্যা

শক্ত - তবে উত্তরগুলি পরীক্ষা করা সহজ (সুডোকু)

সম্ভবত এগুলি আসলেই পি সমস্যা তবে আমরা এটি জানি না ... পি বনাম এনপি

দ্বারা NP-সম্পূর্ণ

প্রচুর এনপি সমস্যাগুলি একই সমস্যার মধ্যে ফোটে (সুডোকু তালিকার একজন নবাগত)।

এক্সপি সমস্যা

সত্যিই শক্ত (দাবাতে সেরা পরবর্তী পদক্ষেপ)

এনপি-হার্ড সমস্যা

সম্পাদনা করুন: এনপি-হার্ড ভিডিওতে ভালভাবে ব্যাখ্যা করা হয়নি (এটি সব গোলাপী বিট), উইকিপিডিয়ায় এনপি-হার্ড ইউলার ডায়াগ্রাম এ সম্পর্কে আরও পরিষ্কার।

ভিডিও সংক্ষিপ্তসার

ব্ল্যাকবোর্ড এলিউর ডায়াগ্রামগুলি পি, এনপি, এনপি-সম্পূর্ণ, এক্সপি এবং এনপি-হার্ড

উইকিপিডিয়া এনপি-হার্ড ইউলার ডায়াগ্রাম

পি, এনপি, এনপি-সম্পূর্ণ, এবং এনপি-হার্ড এর এসভিজি এলিউর ডায়াগ্রাম


0

পি , এনপি , এনপি-সম্পূর্ণ এবং এনপি-হার্ড জটিলতা ক্লাস, তাদের সমাধানের জন্য অ্যালগোরিদমিক জটিলতা অনুসারে সমস্যাগুলি শ্রেণিবদ্ধ করে। সংক্ষেপে, তারা তিনটি বৈশিষ্ট্যের উপর ভিত্তি করে:

জটিলতা ক্লাস টেবিল

বহুবর্ষীয় সময়ে সমাধানযোগ্য: এমন সিদ্ধান্তগত সমস্যার সংজ্ঞা দেয় যেগুলি একটি ডিস্ট্রিমেন্টিক টিউরিং মেশিন (ডিটিএম) দ্বারা বহুগুণ পরিমাণ গণনার সময় ব্যবহার করে সমাধান করা যায়, অর্থাৎ এটির চলমান সময়টি অ্যালগরিদমের জন্য ইনপুটটির আকারের একটি বহুপদী অভিব্যক্তিতে আবদ্ধ থাকে। বিগ-ও স্বরলিপি ব্যবহার করে এবার জটিলতা হিসাবে সংজ্ঞায়িত করা হয়েছে O(n ^ k), যেখানে এন ইনপুট এবং কা ধ্রুবক সহগের আকার।

বহুপক্ষীয় সময়ে সমাধান যাচাইযোগ্য: সিদ্ধান্ত সমস্যার সংজ্ঞা দেয় যার জন্য একটি প্রদত্ত সমাধানটি ডিটিএম দ্বারা বহুগুণ পরিমাণ গণনার সময় ব্যবহার করে যাচাই করা যেতে পারে, যদিও সঠিক সমাধানটি পেতে বেশি সময় প্রয়োজন হতে পারে।

বহুবারের সময়ে যে কোনও এনপি সমস্যা হ্রাস করে : সিদ্ধান্তগুলির সমস্যাগুলি সংজ্ঞা দেয় যার সমাধানের জন্য অ্যালগোরিদমগুলি বহু-কালীন অনুবাদ পদক্ষেপের পরে যে কোনও এনপি সমস্যা সমাধানের জন্য ব্যবহার করা যেতে পারে।


আমি সম্প্রতি এই বিষয়ে একটি নিবন্ধ লিখেছি আরও বিশদ সরবরাহ সহ, এনপি-সমস্যাটিকে এনপি-হার্ড সমস্যায় হ্রাস করার জন্য কোড বিক্ষোভ সহ: সমস্যার জটিলতা ক্লাস

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.