ডয়চেসের অ্যালগরিদমে কীভাবে কোয়ান্টাম ওরাকলটি প্রয়োগ করব?


13

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



প্রতিবার পরীক্ষা চালানোর সময় এলোমেলোভাবে কেন এটিকে বেছে নেবেন না? এইভাবে আপনি জানতে পারবেন না।
ডাফটউইলি

@ ডেফটওয়ুলি আপনি কি প্রতিটি সিমুলেশনে এলোমেলোভাবে কোনও ফাংশন বাছাইয়ের কথা উল্লেখ করছেন? কোয়ান্টাম ওরাকলের মাধ্যমে প্রয়োজনীয় ফাংশনটি তৈরি করতে কম্পিউটারটিকে জানতে হবে যে ইনপুটযুক্ত ফাংশনের আউটপুটগুলি কী তা কম্পিউটারকে জানতে হবে।
জ্যাক সেরোনি 30:38

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

@ ড্যাফটওয়ুলি আপনি যদি কোনও এলোমেলো ক্রিয়াকলাপের কোনও সম্পত্তি গণনা করেন তবে কেন কেবল তাত্ক্ষণিকভাবে একটি এলোমেলো আউটপুট তৈরি করবেন না?
নরবার্ট শুচ

উত্তর:


9

এখানে দুটি প্রশ্ন আছে। প্রথমটি আপনাকে কোডটিতে বাস্তবে এটি কীভাবে বাস্তবায়িত করতে পারে জিজ্ঞাসা করে এবং দ্বিতীয়টি আপনাকে জিজ্ঞাসা করে যে আপনি কোনটি ওরাকলটি দিয়ে যাচ্ছেন তা যদি বোঝা যায়।

বাস্তবায়ন

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

operation IsBlackBoxConstant(blackBox: ((Qubit, Qubit) => ())) : (Bool)
{
    body
    {
        mutable inputResult = Zero;
        mutable outputResult = Zero;

        // Allocate two qbits
        using (qbits = Qubit[2])
        {
            // Label qbits as inputs and outputs
            let input = qbits[0];
            let output = qbits[1];

            // Pre-processing
            X(input);
            X(output);
            H(input);
            H(output);

            // Send qbits into black box
            blackBox(input, output);

            // Post-processing
            H(input);
            H(output);

            // Measure both qbits
            set inputResult = M(input);
            set outputResult = M(output);

            // Clear qbits before release
            ResetAll(qbits);
        }

        // If input qbit is 1, then black box is constant; if 0, is variable
        return One == inputResult;
    }
}

আলোচ্য বিষয়টি কি?

অনুসন্ধান জটিলতা

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

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

এটি লক্ষ করা উচিত যে একটি সম্ভাব্য শাস্ত্রীয় অ্যালগোরিদম বিদ্যমান যা ডয়েচ-জোসজা সমস্যাটি than এর চেয়ে কম প্রশ্নগুলিতে এলোমেলোভাবে ওরাকল ইনপুট স্যাম্পল করে সমাধান করে: যদি ওরাকল ইনপুট বিবেচনা না করে একই মান আউটপুট অবিরত করে, ওরাকল ধ্রুবক হওয়ার সম্ভাবনা খুব দ্রুত বৃদ্ধি পায়। এর অর্থ ডয়চে-জোসজা কোয়ান্টাম আধিপত্য / সুবিধা সমস্যার পক্ষে ভাল প্রার্থী নয়, যার ফলে ...2এন-1

বাস্তব বিশ্বে অ্যাপ্লিকেশন

আপনি যদি কোনও জটিলতা তাত্ত্বিক না হন তবে আপনি সম্ভবত কোয়েরি জটিলতার বিষয়ে খুব বেশি মনোযোগ দিচ্ছেন না এবং পরিবর্তে জানতে চান যে ডয়েশ ওরাকল সমস্যাটি এমন কোনও "নিয়ম নয়" বিশ্বে কেন গুরুত্বপূর্ণ যেখানে আপনাকে কালো বাক্সের ভিতরে দেখার সুযোগ রয়েছে। অরাকল সমস্যাটি যেমন একটি নন-ওরাকল সমস্যা হিসাবে পরিপূর্ণ তা বিশ্লেষণ করার চেষ্টা করা, এবং আমি বিশ্বাস করি না যে কেউ যখন আপনাকে ওরাকল সার্কিট বিশ্লেষণ করার অনুমতি দেওয়া হয় তখন ডয়চ ওরেकल সমস্যার জন্য সর্বোত্তম ধ্রুপদী অ্যালগরিদমের প্রশ্নটি কেউ সমাধান করেছে। আপনি ভাবতে পারেন - বিশ্লেষণ করার কী আছে? সম্ভাব্য মাত্র চারটি সার্কিট! আসলে এটি আরও জটিল।

যদি আমরা ওয়ান-বিট ডয়েচ ওরাকেলের সহজ উপস্থাপনাটি দেখি তবে গেটটি নির্মাণটি নিম্নরূপ:

পরিচয়:সি1,0

আলোচনা:এক্স0সি1,0

:আমি4

ধ্রুবক -১:এক্স0

যাইহোক, এগুলি কোনওভাবেই ওরাকলগুলি বাস্তবায়নের একমাত্র উপায় নয়। এগুলি সবই কয়েক হাজার, হাজার, এমনকি কয়েক মিলিয়ন লজিক গেট ব্যবহার করে আবারও লেখা যায়! এই সমস্ত লজিক গেটগুলির সংশ্লেষিত প্রভাবটি যা গুরুত্বপূর্ণ তা উপরের সাধারণ নির্মাণের সমান। কনস্ট্যান্ট -১ এর নিম্নলিখিত বিকল্প বাস্তবায়ন বিবেচনা করুন:

এইচ0জেড0এইচ0

দেখা যাচ্ছে যে কোনও ইনপুটের জন্য আপনি যে কোনও সময় দিতে পারেন:

এইচ0জেড0এইচ0|ψ=এক্স0|ψ

এটি ম্যাট্রিক্সের গুণনের সাহচর্যতার কারণে। আপনি যদি জন্য প্রকৃত ম্যাট্রিক এবং সেগুলি একসাথে গুন করেন, আপনি :এইচ0জেড0এইচ0এক্স0

এইচ0জেড0এইচ0=[121212-12][100-1][121212-12]=[0110]=এক্স0

তাহলে আমাদের আছে:

(এইচ0(জেড0(এইচ0|ψ)))=(((এইচ0জেড0)এইচ0)|ψ)=এক্স0|ψ

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

Historicalতিহাসিক ও শিক্ষাগত কারণে গুরুত্বপূর্ণ

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


গটম্যান-নিল জিনিস না হওয়া পর্যন্ত আমি তোমার সাথে ছিলাম। আপনি কেন আপনার জটিল সার্কিটকে (i) এক-কুইট গেট এবং (ii) স্ট্যাবিলাইজার গেটের মধ্যে সীমাবদ্ধ রাখবেন?
নর্বার্ট শুচ

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

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

আপনি সঠিক, আমি আরও কিছু পরে সার্কিট হ্রাস জিনিস নিয়ে গবেষণা করব তারপর গোটেসম্যান-নিলের ভূমিকা স্পষ্ট করার জন্য আমার পোস্টটি আপডেট করব।
এইহেলওয়ার

রবিন কোঠারীকে ইমেলের মাধ্যমে কিছু প্রশ্ন জিজ্ঞাসা করার পরে আমি আমার উত্তর আপডেট করেছি ।
এইহেলওয়ার

3

ওরাকলটি এমনভাবে তৈরি করার কোনও উপায় নেই যা ডয়চেসের অ্যালগরিদমের বিন্দুকে পরাভূত করবে না - সে কারণেই এটি একটি ওরাকল ভিত্তিক অ্যালগরিদম।

এক্স(এক্স)(0)=(1)

(এক্স)1এক্সএন(এক্স)Y(এক্স+ +Y)=(এক্স)(এক্স)

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

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



2

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

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

স্বীকার করা যায়, এরপরেও এটির একটি সমস্যা রয়েছে যা ঘন ঘন ওরাকল অ্যালগরিদমগুলির রয়েছে: একটি মানুষ পরীক্ষার বাস্তবায়ন এবং যে ওরাকল পাস করেছে তা দেখতে পারে এবং কোন ওরাকলটি প্রয়োগ করা হয়েছে তা নির্ধারণ করে উত্তরটি বের করতে পারে। দ্যাফটওয়ুলির পরামর্শ অনুসারে ওরাকল পছন্দটি এলোমেলো করে এটিকে মোকাবেলা করা যেতে পারে।


1

আমি মনে করি যে ahelwerউত্তরটি অ্যালগরিদমের জটিলতা সম্পর্কে আমরা যেভাবে চিন্তা করি সেগুলির কয়েকটি স্পর্শ করে। যাইহোক - আমাদের জিজ্ঞাসা করতে ইচ্ছুক প্রকৃত বিশ্বে আক্ষরিক অর্থে "ওরাকেল" না থাকায় আপনি ভাবতে পারেন যে আমরা কেন ক্যোয়ারী জটিলতা বা ওরাকলসের ধারণা সম্পর্কে উদ্বিগ্ন হব। আমি এ সম্পর্কে কিছুটা দৃষ্টিকোণ দেওয়ার চেষ্টা করব এবং বিশেষত আপনি কীভাবে "প্রতীক" বলে মনে করছেন এমন কোনও উপায়ে আপনার মনে হচ্ছে না এমন "Deutsch – জোসজা ওরাকল" তৈরির উপায় সম্পর্কে কীভাবে ভাবতে চেষ্টা করতে পারেন তা বর্ণনা করার চেষ্টা করব।

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

ওরাকলস সম্পর্কে একটি স্বজ্ঞাত

ওরাকল এর ধারণাটি আমরা কীভাবে কম্পিউটারের সমস্যাগুলি নিয়ে কথা বলি তা সরল করার অনুমতি দেওয়ার একটি উপায়।

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

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

ওরাকলগুলি সম্পর্কে এটি অন্যতম প্রধান বিষয়: যখন আপনি সমস্যা সম্পর্কে সীমাবদ্ধ তথ্য সরবরাহ করেন, তখন তারা আপনাকে গণনার মডেলগুলি কীভাবে সমস্যাগুলি সমাধান করতে পারে বা করতে পারে না সে সম্পর্কে কথা বলতে দেয় ।

অ-ওরাকল সমস্যাগুলি সমাধান করতে ওরাকল অ্যালগরিদম ব্যবহার করা

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

আপনি তাদের কোন কার্য সম্পাদন করেন? - আপনি সেগুলিতে যে কোনও ক্রিয়াকলাপের জন্য উত্তরটির প্রতি আগ্রহী সেগুলি সম্পাদন করুন।

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

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

শেষ অবধি, কিছু সমাধান করার জন্য আপনার কাছে কোয়ান্টাম অ্যালগরিদম রয়েছে তার অর্থ এই নয় যে কোনও সমস্যা সমাধানের জন্য এটি সর্বোত্তম উপায় arily এটি অবশ্যই ডয়চে-জোসজা অ্যালগরিদমের ক্ষেত্রে সত্য: এমনকি ওরাকল সেটিংয়েও এলোমেলো ব্যবহার করা প্রায় ঠিক ততটাই ভাল এবং আমাদের কাছে এখনও বড় নির্ভরযোগ্য কোয়ান্টাম কম্পিউটার নেই বলে দেওয়া আরও ভাল! তবে আবার ...

ওরাকল "প্রয়োগ" "

ডয়চ – জোসজা অ্যালগরিদম বাস্তবায়নের উদ্দেশ্য " হ্যালো, ওয়ার্ল্ড! " বাস্তবায়নের সমান - একটি চাপ না দেওয়া সমস্যা সমাধানের জন্য নয়, তবে এমন একটি সরঞ্জাম ব্যবহার করে অনুশীলন করা যা আপনি প্রত্যাশা করেন যে অন্য কাজগুলি করার জন্য দরকারী হবে।

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

সুতরাং কিভাবে আপনার ওরাকল বাস্তবায়ন সম্পর্কে যাওয়া উচিত?

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

(এক্স)=(এক্স,R)R(এক্স,R)এক্সR, এবং যেখানে এটি ক্লাসিকভাবে কীভাবে সমাধান করা যায় তা স্পষ্ট নয়, এটি অপ্রয়োজনীয়।

  • (এক্স,R)=এক্সRএক্স,R{0,1}এন(এক্স,R)(এক্স)(এক্স)R0

  • এটি অনুমানযোগ্য যে উপরের নির্মাণটি কিছুটা ধীরে ধীরে বিস্তৃত / অবলম্বন করা যেতে পারে, এমন একটি নির্মাণ প্রাপ্তির জন্য যা ধ্রুবক ক্রিয়াকলাপ বা ভারসাম্যপূর্ণ ক্রিয়াকলাপের মূল্যায়ন করার গ্যারান্টিযুক্ত এবং যেখানে এই দুটির মধ্যে কোনটি ঘটে তা সুস্পষ্ট বা এমনকি কঠিন নয় - তবে আমি করতে পারি ' এই মুহুর্তে কীভাবে ভেবে দেখবেন না।

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

টি এল; ডিআর

  • আপনি যে কোনও ওরাকলকে 'মূল্যায়ন' করছেন তা নিয়ে ঘামবেন না।

  • যদি আপনি কোনও কিছুর জন্য ঘাম ঝরান তবে কেবল চিন্তিত হোন যে ফাংশনের প্রকৃত বিবরণ কোনও কোয়ান্টাম কম্পিউটার ছাড়াই সহজেই একই সমস্যার সমাধান করতে পারে।

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

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