গ্রোভারের অ্যালগরিদম এবং জটিলতার ক্লাসগুলির সাথে এর সম্পর্ক?


12

আমি গ্রোভারের অ্যালগরিদম সম্পর্কে বিভ্রান্ত হয়ে পড়ছি এবং এটি জটিলতার ক্লাসগুলির সাথে সংযোগ রয়েছে।

গ্রোভার এর এলগরিদম খুঁজে বের করে এবং উপাদান একটি ডাটাবেসের মধ্যে এন = 2 এন (যেমন যে ( ) = 1 ) এর সাথে উপাদানের ~ kN=2nf(k)=1 ওরাকলকে কল করে।

N=2n/2

সুতরাং আমাদের নিম্নলিখিত সমস্যা আছে:

সমস্যা: ডাটাবেজে একটি খুঁজুন যেমন f ( কে ) = 1kf(k)=1

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

তদতিরিক্ত গ্রোভারের অ্যালগরিদম সাবরুটিন হিসাবে ব্যবহার করা যেতে পারে। আমি বেশ কয়েকটি জায়গায় পড়েছি যে গ্রোভারের অ্যালগরিদম জটিলতা ক্লাসকে কোনও সমস্যা পরিবর্তন করে না - এটি দেখার কি কোনও যুক্তিযুক্ত উপায় আছে?


\text{}জটিলতা ক্লাসের নাম লেখার জন্য ব্যবহার বিবেচনা করুন । উদাহরণস্বরূপ \text{NP}বা\text{BQP}
সঁচায়ন দত্ত

1
আমি নিশ্চিত আপনি এখানে কি জিজ্ঞাসা করছি। অ্যালগরিদমগুলি জটিল ক্লাসের সদস্য হতে পারে না, কারণ জটিলতা ক্লাসগুলিতে গণনার সমস্যা থাকে। আপনি কি জিজ্ঞাসা করছেন যে প্রশ্নটিতে বর্ণিত সমস্যাটি একটি 'জ্ঞাত' জটিলতা শ্রেণিতে অন্তর্ভুক্ত রয়েছে বা এর জন্য সম্পূর্ণ? আপনি কি জিজ্ঞাসা করছেন যে গ্রোভারের অ্যালগরিদমের 'আবিষ্কার' জ্ঞাত জটিলতা শ্রেণীর মধ্যে সম্পর্কের উপর একটি উপপাদ্যকে নিয়ে যায়? পরিষ্কার করে বলো.
বিচ্ছিন্ন টিকটিকি

উত্তর:


6

সারসংক্ষেপ

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

সম্পর্কের সমস্যার জটিলতা

যেমন আপনি লক্ষ্য করেছেন, গ্রোভারের সমস্যা একটি অনুসন্ধান সমস্যা সমাধান করে , যা জটিলতার সাহিত্যে কখনও কখনও একটি সম্পর্ক সমস্যা হিসাবেও পরিচিত । এটি হ'ল এটি নিম্নলিখিত ধরণের সমস্যা:

সাধারণ অনুসন্ধান সমস্যার কাঠামো।
একটি ইনপুট এবং একটি বাইনারি সম্পর্ক আর দেওয়া হয়েছে , এমন একটি y খুঁজে পাবেন যা আর ( x , y ) রাখে।xRyR(x,y)

জটিলতা শ্রেণীর FP এবং FNP ধরনের সমস্যা, যেখানে বিশেষ এক ক্ষেত্রে যেখানে আগ্রহী পরিপ্রেক্ষিতে সংজ্ঞায়িত করা হয় সর্বাধিক দৈর্ঘ্য দৈর্ঘ্য একটি বহুপদী ফাংশন এক্স , এবং যেখানে সম্পর্ক আর ( এক্স , Y ) নিজেই করতে পারেন দৈর্ঘ্য মধ্যে কিছু বহুপদী দ্বারা বেষ্টিত করা সময়ের মধ্যে নির্ণিত করা ( এক্স , Y )yxR(x,y)(x,y)

বিশেষত: 'ডাটাবেস অনুসন্ধান' সমস্যার উদাহরণ যার জন্য গ্রোভারের অনুসন্ধান সাধারণত প্রয়োগ করা হয় তা নীচে বর্ণিত হতে পারে।

কাঠামোগত অনুসন্ধান
প্রদত্ত একটি ইনপুট ওরাকল এমন যে | একটি | = | একটি | ( একটি ) কিছু ফাংশন জন্য: { 0 , 1 } মি{ 0 , 1 } , খুঁজুন একটি Y যেমন যে হে | Y | 0 = | Y | 1O:H2m+1H2m+1O|a|b=|a|bf(a)f:{0,1}m{0,1}yO|y|0=|y|1

এখানে, ওরাকল নিজেই সমস্যাটির ইনপুট: এটি এর ভূমিকা পালন করে এবং আমরা যে সম্পর্কটি গণনা করছি তা হ'ল আর ( , ওয়াই )x

R(O,y)[O|y|0=|y|1][f(y)=1].

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

  • ধরুন যে ইনপুট ফাংশন একটি ডেটাবেস (যেমন সমস্যা মাঝে মাঝে বর্ণনা করা হয়েছে), যেখানে ডাটাবেসের সাথে প্রতিটি প্রবেশ কিছু দৈর্ঘ্য হিসাবে প্রদান করা হয় N যদি পুরো ডাটাবেস বর্ণনা করার জন্য ব্যবহৃত স্ট্রিং x এর দৈর্ঘ্য হয় তবে ডাটাবেসটিতে N = n / এন্ট্রি রয়েছে। এটা তোলে বিস্তারিত প্রতিটি অনুসন্ধান দ্বারা সম্পূর্ণ ডাটাবেস অনুসন্ধান করতে তারপর সম্ভব এন ক্রমানুসারে এন্ট্রি, এবং স্টপ যদি আমরা একটি এন্ট্রি খুঁজে Y যেমন যে ( Y ) = 1 । ধরুন যে ডাটাবেসের প্রতিটি ক্যোয়ারিতে ও এর মতো কিছু লাগে (nxN=n/Nyf(y)=1 সময়, এই পদ্ধতিটি সময়ের মধ্যে বন্ধ হয়ে যায় হে ( এন লগ এন ) ( এন লগ এন ) , যাতে সমস্যাটিএফপিতে থাকেO(logN)O(logn)O(NlogN)O(nlogn)

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

  • x{0,1}ny{0,1}mO:H2m+1H2m+1|y|bmΩ(logn)xf:{0,1}m{0,1}mO(n)f(y)y{0,1}mO

    f(y)(x,y)O(p(n))n=|x|OO(p(n)2m) O(p(n)2n)n

nxOxN=n/NnxONO(2n/2)O(N)

সম্পর্কের সমস্যা থেকে সিদ্ধান্ত জটিলতা

সম্পর্কের সমস্যা থেকে সিদ্ধান্তের সমস্যাগুলি পাওয়ার সহজ সরল উপায় রয়েছে, যা এনপি- কমপ্লিট সমস্যাগুলির তত্ত্ব থেকে সুপরিচিত : অনুসন্ধান সমস্যাটিকে একটি বৈধ সমাধানের অস্তিত্বের প্রশ্নে পরিণত করতে।


xRy:R(x,y)

R

xx কাঠামোগত অনুসন্ধানের সমাধান যা আসলে সমাধান খুঁজে না পেয়েই এটি করে, যদিও এটি কীভাবে এমনভাবে করা যায় যা সাধারণভাবে সন্ধানের চেয়ে কোনও সুবিধা সরবরাহ করে তা সাধারণভাবে পরিষ্কার নয়।

ওরাকল জটিলতা

OxO

OnOnx

O
x=111n

  • y{0,1}n

  • একটি আছে কিনা তা নির্ধারণ করুনy{0,1}n

O|y|0=|y|1

NPOFNPOBQPOFBQPO

O

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


2

nmn

m2n/2m2n1

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


" পদার্থবিজ্ঞানীরা এই ধারণার কাছে আবেদন করতে চান যে এটি এখনও জানা যায় না এমন একটি ঘনঘটিত গতিবেগ " ... আপনি কি " এখনও বহুত্বীয় গতিবেগ " লিখতে চেয়েছিলেন ?
GL

না, এটি প্রকৃতপক্ষে একটি ক্ষতিকারক গতিবেগ (এক্সফোনেনশিয়াল রানটাইমটিকে কোনও অবিস্মরণীয় হিসাবে রূপান্তর করার পক্ষে যথেষ্ট নয়)।
পিরামিডগুলি

2

n

NP

f(x)x{0,1}nxf(x)=1pxmpoly(n)g(x,px)=1f(x)=1g(x,px)poly(n)

আমাকে কয়েকটি উদাহরণ দেওয়া যাক (সম্ভবত আপনি এখানে যা চেয়েছিলেন এটিই কি ?):

  • f(x)xxf(x)g(x,px)=f(x)

  • f(x)xx=72px=(8,9)g(x,p)x

  • G1G2xf(x)pxG1G2g(x,px)pxG1G2

  • xf(x)pxg(x,px)

NPPP

PNPNPPPNP

NPxpxm=poly(n)g(x,px)=1O(2mpoly(m))g(x,px)=1pxO(2m/2poly(m))। এটি ব্যাপকভাবে দ্রুত, তবে চলমান সময়টি বহুপদী বা আরও খারাপ কিছু কিনা তা নির্ধারণে পরিবর্তন হয় না; এটি বহু-কালীন অ্যালগরিদমে পরিণত হয়নি। উদাহরণস্বরূপ, গ্রাফ isomorphism সমস্ত সম্ভাব্য ক্রমবিন্যাস অনুসন্ধান করতে হবে। মাইনসুইপারকে অনাবৃত স্কোয়ারগুলিতে মাইনগুলির সমস্ত সম্ভাব্য কার্যভার সন্ধান করতে হবে।

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


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

f(x)

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

-1

ডাটাবেস সম্পর্কে ভুলে যান। গ্রোভারের অ্যালগরিদম বুলিয়ান সন্তুষ্টি সমস্যার সমাধান করে , যথা:

n10

সমস্যাটি এনপি-সম্পূর্ণ হিসাবে পরিচিত।


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

2
অজ্ঞ বা ট্রোলিং ডাউনভোটিংয়ের কারণে আমি আর এই ফোরামে অবদান রাখব না।

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