এটি কি এনপি-সম্পূর্ণ সমস্যা হতে পারে?


10

নিম্নলিখিত সমস্যার বিবৃতি বিবেচনা করুন:

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

প্রাথমিক অবস্থা: 37

প্লেয়ার 1 বিয়োগ 16. রাজ্য: 21

প্লেয়ার 2 বিয়োগ 8। রাষ্ট্র: 13

প্লেয়ার 1 বিয়োগ করে 4. রাজ্য: 9

প্লেয়ার 2 বিয়োগ 9। রাষ্ট্র: 0

প্লেয়ার 2 জয়!

এমন একটি প্রোগ্রাম লিখুন যা প্রাথমিক অবস্থা দিয়েছে, একটি অনুকূল পদক্ষেপ দেয়, অর্থাত্ এমন একটি যা গেমটি জয়ের দিকে পরিচালিত করার গ্যারান্টিযুক্ত। যদি কোনও সম্ভাব্য পদক্ষেপ আপনাকে বিজয়ী অবস্থানে নিয়ে যেতে না পারে, -১ এ ফিরে আসুন।

এই সমস্যাটি ডায়ামিক প্রোগ্রামিং ব্যবহার করে সিউডো-পলিনোমিয়াল সময়ে সমাধান করা যেতে পারে । ধারণা মাত্র দৈর্ঘ্যের একটি অ্যারের ভরাট করা হয় এন (যেখানে n হল কোন পদক্ষেপ বিশালাকার জিতে অনুকূল প্যাচসমূহ সঙ্গে নিচ প্রাথমিক অবস্থায়), বা -1। এটি O (n * sqrt (n)) নেবে যেহেতু প্রতিটি সংখ্যার জন্য আমাদের প্রতিটি সম্ভাব্য নিখুঁত বর্গক্ষেত্রের চেয়ে ছোটটি বিয়োগ করা বিবেচনা করা উচিত (তাদের মধ্যে ~ sqrt (n) রয়েছে)। যাইহোক, এটি একটি সিউডো-বহুভিত্তিক রানটাইম জটিলতা যেহেতু রানটাইম আসলে বাইনারি ইনপুটটির আকারের সাথে সংখ্যার সাথে সংখ্যার সাথে সংখ্যার (সংখ্যাটি উপস্থাপন করতে ব্যবহৃত বিটগুলির #) তাত্পর্যপূর্ণভাবে স্কেল করে।

এই সমস্যাটি সমাধানের জন্য কেউ কি বহুপদী অ্যালগরিদম সম্পর্কে ভাবতে পারেন? যদি না হয়, এটি এনপি-সম্পূর্ণ হতে পারে? কেন?


1
কৌতূহলের বাইরে, কেন আপনি বিশেষত জিজ্ঞাসা করছেন এটি এনপি-সম্পূর্ণ কিনা? (ব্যক্তিগতভাবে, আমি অনুমান করতাম যে এটি এনপি
তেও

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

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

@ ইউভালফিল্মাস উইকিপিডিয়া অনুসারে এই প্যাটার্নটির কোনও ज्ञিত সূত্র নেই ( ওইআইএসে ক্রম A030193 )
মার্টিন কোপস

ঠিক আছে, আমি এই তথ্য সহ একটি উত্তর পোস্ট করতে যাচ্ছি। এছাড়াও দেখুন A224839।
যুবাল ফিল্মাস

উত্তর:


6

গ্রাউন্ডি মান 1, A224839 থাকা পজিশনের ক্রম হিসাবে পজিশনের হারের ক্রম OEIS, A030193 তে পাওয়া যাবে । এনসাইক্লোপিডিয়া বিভিন্ন প্রাসঙ্গিক নিবন্ধ উদ্ধৃত করে। সম্ভবত তাদের মধ্যে কিছু অনুক্রমের অ্যালগরিদমগুলি ক্রমটি গণনার জন্য আলোচনা করেছেন।


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

3
ঠিক আছে, এটি যথেষ্ট হবে না, তবে এটি একটি ভাল শুরু হবে। সম্ভবত আপনি কোনও অবস্থানের জয়ের স্থিতি গণনা করতে সক্ষম হতে কিছুটা অন্তর্দৃষ্টি অর্জন করবেন। প্লাস, কোন অবস্থানটি হারাচ্ছে তা স্থির করা কঠিন তা প্রমাণ করে যে কোনও যুক্তিসঙ্গত সিদ্ধান্তের সংস্করণে বলা হয়েছে যে আপনার সমস্যাটি এনপি-হার্ড রয়েছে বলে প্রমাণ করার পক্ষে যথেষ্ট।
যুবাল ফিল্ম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.