অবিচ্ছিন্ন সমস্যা অবিচ্ছিন্ন সময়ে সমাধানযোগ্য?


14

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

অন্যদিকে, আমরা যদি কিছুটা বেশি শক্তিশালী (এবং আরও বাস্তবসম্মত) ইউনিট-ব্যয়ের র‌্যাম মডেল গ্রহণ করি, যার মধ্যে O(logn) -বিম্ব সংখ্যার প্রাথমিক ক্রিয়াকলাপগুলি একক পদক্ষেপ হিসাবে গণনা করা হয়, তবে আমরা অযৌক্তিক সমাধান করতে সক্ষম হতে পারি কর্ম, এমনকি ধ্রুবক সময়। এখানে একটি উদাহরণ:

উদাহরণ: পূর্ণসংখ্যা n,k,l,d , প্রতিটি O(logn) বিট দ্বারা বাইনারি বিন্যাসে দেওয়া

প্রশ্ন: একটি n ভারটেক্স গ্রাফের কি এমন উপস্থিত রয়েছে যে এর ভার্টেক্স সংযোগটি k , এর প্রান্ত সংযোগটি l এবং তার সর্বনিম্ন ডিগ্রি d ?

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

উপপাদ্য: চলুন পূর্ণসংখ্যার হও। নীচের শর্তগুলির মধ্যে একটি সন্তুষ্ট হলে এবং কেবলমাত্রভার্টেক্স সংযোগের কে , প্রান্ত সংযোগ l , এবং সর্বনিম্ন ডিগ্রি ডি সহএকটি এন- ভারটেক্স গ্রাফরয়েছে existsn,k,l,dnkld

  • , 0kld<n/2
  • 12d+2nkl=d<n1
  • k=l=d=n1.

যেহেতু এই শর্তগুলি স্থির সময়ে (ইউনিট-ব্যয় র‌্যাম মডেলটিতে) পরীক্ষা করা যায়, তত্ত্বটি এই মডেলটিতে একটি ধ্রুবক সময় অ্যালগরিদম বাড়ে।

প্রশ্ন: ধ্রুবক সময় অ্যালগরিদমের আরও কিছু অনাহুত উদাহরণ কী কী?


6
একটি সম্ভাব্য পরীক্ষণযোগ্য প্রমাণ গণনা যাচাই করা হয়?
ডেভিড এপস্টিন

6
আপনার উদাহরণটি সময় বলে মনে করবেন না । আপনার ইনপুটটির দৈর্ঘ্য মি = হে ( লগ এন ) রয়েছে , সেক্ষেত্রে সাধারণ শব্দ র‌্যাম কেবলমাত্র এক ধাপে ( লগ এম ) -বিশ্লেষের অনুমতি দেয় । (বিকল্পটি হ'ল ইনপুট দৈর্ঘ্যের সাথে আনুপাতিক শব্দযুক্তকরণের অনুমতি দেওয়া, তবে সেই ক্ষেত্রে কেউ অনেক "ধ্রুবক-সময়" অ্যালগরিদমের নাম রাখতে পারে ...) আপনি দৈর্ঘ্যের একটি স্ট্রিং যুক্ত করার চেষ্টা করতে পারেনO(1)m=O(logn)O(logm) আমি ঐ সংখ্যার পর, কিন্তু তারপর( 1 ) এ ফর্ম্যাটটি কীভাবে চলবে তা দেখুন নাnO(1)সময়: মনে হয় আপনাকে পরীক্ষা করতে হবে (বাইনারি অনুসন্ধানের মাধ্যমে বলুন) মোট স্ট্রিংয়ের দৈর্ঘ্য প্রকৃতপক্ষে , যার জন্য লগ এন সময় প্রয়োজন। Ω(logn)logn
রায়ান উইলিয়ামস

4
আমি মনে করি ডেভিড এপস্টিনের পরামর্শটি আরও আকর্ষণীয় দিক নির্দেশ করেছে: র্যান্ডমাইজড ও (1) -কালীন অ্যালগরিদম বিবেচনা করে। কমপক্ষে সেই ক্ষেত্রে, আপনি আশা করতে পারেন যে প্রতিটি ইনপুট বিট অ্যালগরিদমের কমপক্ষে একটি সম্ভাব্য রানে অ্যাক্সেস করা হয়েছে।
রায়ান উইলিয়ামস

4
এলোমেলোভাবে হে (1) -কালীন অ্যালগরিদমের একটি সাধারণ উদাহরণ আনুমানিক মধ্যম (আনুমানিক এই অর্থে যে এটি ইনপুটটিকে প্রায় 50-50 বিভক্ত করবে) is সহজভাবে এলোমেলোভাবে ইনপুট থেকে 1000000 উপাদান বাছাই করুন, তাদের মধ্যম গণনা করুন এবং এটি আউটপুট করুন।
Jukka Suomela

5
আমি আপনাকে প্রশ্ন করতে পছন্দ করি তবে আপনার উদাহরণের অপূর্ণতা এটি একটি গাণিতিক উপপাদ্যের উপর নির্ভর করে। এটি সীমাতে ঠেলাতে আপনি বলতে পারেন: উদাহরণ পজিটিভ পূর্ণসংখ্যার প্রশ্নটি এমন একটি এনটাইটেল এন > 2 এর মতো x n + y n = z n (উত্তরটি সত্য বা মিথ্যা)। ঠিক আছে, সত্যিই একটি ধ্রুবক সময় অ্যালগরিদম আছে কারণ উত্তরটি সর্বদা মিথ্যা, তবে এটি আপনার পছন্দ মতো উদাহরণ নয়। x,y,zn>2xn+yn=zn
জে.ই.

উত্তর:


6

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


5

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

সবচেয়ে সহজ এবং মৌলিক সংমিশ্রিত গেমগুলির মধ্যে একটি হল নিম: একটিতে ধীরে ধীরে শিমের গাদা থাকে এবং একটি একক চালাতে আপনি একটি গাদা থেকে অনেকগুলি মটরশুটি সরিয়ে ফেলতে পারেন, হয় জিততে বা হারাতে (নিয়মের পছন্দ অনুসারে) আপনি যদি শেষ শিমটি নেন আপনি যদি বুলিয়ান বুলিয়ান জোর অপারেশনগুলি (যেমন / সি / সি ++ / জাভা / ইত্যাদির মতো প্রোগ্রামিং ভাষায় অপারেটর) মঞ্জুরি দেন তবে সর্বোত্তম কৌশলটি ধ্রুবক সময়ে গণনা করা যায়? এটি কি আপনার মডেলটিতে স্থির সময়ের অ্যালগরিদম?

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

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


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

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