আমি একটি পদার্থবিজ্ঞান ব্যাকগ্রাউন্ড থেকে এসেছি এবং আমি কোয়ান্টাম কম্পিউটিং - বিশেষত কীভাবে তাদের প্রোগ্রাম করবেন তা অনুসরণ করতে আগ্রহী। কীভাবে শুরু করবেন সে সম্পর্কে কোনও গাইডেন্স খুব সহায়ক হবে।
আমি একটি পদার্থবিজ্ঞান ব্যাকগ্রাউন্ড থেকে এসেছি এবং আমি কোয়ান্টাম কম্পিউটিং - বিশেষত কীভাবে তাদের প্রোগ্রাম করবেন তা অনুসরণ করতে আগ্রহী। কীভাবে শুরু করবেন সে সম্পর্কে কোনও গাইডেন্স খুব সহায়ক হবে।
উত্তর:
আপনি ভক্সেক্সড ডে ভিয়েনা 2018 এর মতো কোয়ান্টাম কম্পিউটারগুলির সাথে পরিচিতি দিয়ে শুরু করতে পারেন - এটি প্রোগ্রামিং ব্যাকগ্রাউন্ডযুক্ত লোকদের জন্য, তবে কোয়ান্টাম মেকানিক্সের পূর্বের জ্ঞান কম। এর পরে আপনি আইবিএম কোয়ান্টাম এক্সপেরিয়েন্সে বা মাইক্রোসফ্ট কোয়ান্টাম ডেভলপমেন্ট কিটের গাইডগুলি পরীক্ষা করে দেখতে পারেন ।
এছাড়াও, ইউটিউবে প্রচুর ভিডিও রয়েছে, উদাহরণস্বরূপ, এটি আপনাকে বিষয়টিকে আরও গভীরভাবে বুঝতে সহায়তা করতে পারে।
আমি মনে করি কোয়ান্টাম প্রোগ্রামারদের অবশ্যই কোয়ান্টাম পদার্থবিজ্ঞান এবং লিনিয়ার বীজগণিত সম্পর্কে জানা প্রয়োজন হবে না। এগুলি অবশ্যই এমন জিনিস যা কোয়ান্টাম প্রোগ্রামার জ্ঞানকে বিস্তৃত করতে সহায়তা করবে তবে তাদের পূর্বশর্ত হিসাবে বিবেচনা করা উচিত নয়।
তবুও, একটি উদীয়মান কোয়ান্টাম প্রোগ্রামারকে সহায়তা করার সর্বাধিক সংস্থানগুলি লিনিয়ার বীজগণিত অনুমানের সাথে শুরু করে। যেগুলি বেশিরভাগই QISKit- এ ফোকাস করে না, আইবিএমের কোয়ান্টাম ডিভাইসের SDK (এবং তাদের কয়েকটি লিখেছিলেন)।
আপনি যে সহজ প্রোগ্রামটি নিয়ে আসতে পারেন তা হ'ল 'হ্যালো ওয়ার্ল্ড'। কোয়ান্টাম কম্পিউটারের জন্য আপনি কীভাবে এটি করেন? আমার প্রস্তাবটি ইমোটিকনগুলির একটি সুপারপজিশন ।
কোয়ান্টাম প্রোগ্রামিংয়ে আপনি একবার "হ্যালো ওয়ার্ল্ড" ছাড়িয়ে গেলে আপনি আরও জটিল কিছু করতে চাইবেন। প্রায়শই লোকেরা সহজ গেমস তৈরি করে। সুতরাং একটি কোয়ান্টাম কম্পিউটারের সাথে এটি করা যাক। আমি ব্যাটেলশিপ করেছি ।
আপনি এবং কোয়ান্টাম প্রোগ্রামিং এর আরও অনেকগুলি উদাহরণ কিউএসকিট টিউটোরিয়ালে পাবেন । আমি মনে করি যে নতুন কোয়ান্টাম প্রোগ্রামারদের পক্ষে সম্ভবত কী করা যায় এবং কীভাবে করা যায় তা দেখার সেরা জায়গা এটি।
পাইকুইল পাইথনের একটি ওপেন সোর্স কোয়ান্টাম প্রোগ্রামিং লাইব্রেরি। আপনি প্রোগ্রামিং দ্বারা শিখেন কোয়ান্টাম কম্পিউটিংয়ের সাথে ডকুমেন্টেশনের একটি হাত রয়েছে। এটি কোনও পদার্থবিজ্ঞানের পটভূমি ধরে নি।
এখানে মূল বিষয়ের কয়েকটি লিঙ্ক রয়েছে:
কিউসিসের পেছনের তত্ত্বটি বুঝতে কোয়ান্টাম মেকানিক্সকে পুরোপুরি বোঝার দরকার নেই। আমি গণিত বিএসসি / প্রোগ্রামার এবং আমি বিষয়টি সম্পর্কে পড়লাম এবং পুরানো এডএক্স কিউসি কোর্সটিও করেছি (দুর্ভাগ্যক্রমে এটি উপলভ্য নয়, তবে অন্যান্য রয়েছে)। আমি মনে করি আমি বলতে পারি যে আমি কিউসির সংক্ষেপণটি বুঝতে পারি, তবে আমি কোয়ান্টাম মেকানিক্স সম্পর্কে কিছুই জানি না।
মূল অংশটি হ'ল কোয়ান্টাম কম্পিউটিংয়ে বেশিরভাগ লিনিয়ার বীজগণিত ব্যবহার করা হয়, যা গণিতের উপর ভিত্তি করে সাধারণত ইঞ্জিনিয়ারিং / কম্পিউটার বিজ্ঞানের স্নাতক অধ্যয়নতে শেখানো হয়। এটি বাস্তব কোয়ান্টাম মেকানিক্সের সাথে তুলনা করুন যা অসীম-মাত্রিক জায়গাগুলি ব্যবহার করে (বা আপনি চাইলে কার্যকরী বিশ্লেষণ)।
যদি আপনি এই স্নাতক গণিত বিষয়গুলির সাথে স্বাচ্ছন্দ্য বোধ করেন তবে আপনি সাসকিন্ডের কোয়ান্টাম মেকানিক্সগুলি পরীক্ষা করতে পারেন : তাত্ত্বিক ন্যূনতম - এটি আসলে 'রিয়েল' কোয়ান্টাম মেকানিক্স সম্পর্কে নয়, এটি বেশিরভাগ জিনিসই যা QC এর জন্য কার্যকর। বিটিডাব্লু পুরো তাত্ত্বিক ন্যূনতম বইয়ের সিরিজটি এমন লোকদের উদ্দেশ্যে করা হয়েছে যারা কিছু গণিত জানেন (যেমন কম্পিউটার বিজ্ঞানী, বা ইঞ্জিনিয়ারিং মেজর), এবং পদার্থবিজ্ঞান সম্পর্কে আরও জানতে চান। অনলাইনে প্রচুর কোর্স রয়েছে, উদাহরণস্বরূপ, এডএক্স-এ নতুন কোর্স রয়েছে, তবে আমি সেগুলির কোনও করিনি, তাই আমি কোনওটির জন্য সুপারিশ করতে পারি না।
আপনি যদি কিউ # , পাইকুইল এবং কিউআইএসকিটের মতো বিভিন্ন কোয়ান্টাম প্রোগ্রামিং ফ্রেমওয়ার্কগুলিতে কীভাবে কোয়ান্টাম সার্কিটগুলি লিখতে চান তা অতিক্রম করতে চান , তবে আমি লস অ্যালোমাস ন্যাশনাল ল্যাবরেটরি থেকে প্রারম্ভিকদের জন্য কোয়ান্টাম অ্যালগরিদম বাস্তবায়ন শিরোনাম সহ এই সাম্প্রতিক কাগজটির সর্বাধিক সুপারিশ করছি । আইবিএম কিউ এক্সপেরিয়েন্সের সাথে কোয়ান্টাম সার্কিট হিসাবে বিভিন্ন কোয়ান্টাম অ্যালগরিদমগুলির পাশাপাশি তাদের ওরাকলগুলি এবং নির্দিষ্ট সাব্রোটিনগুলিকে কীভাবে সংকলন এবং প্রয়োগ করতে হয় তা বোঝার জন্য এটি একটি দুর্দান্ত উত্স। আমি আপনাকে পূর্বোক্ত প্রোগ্রামিং ফ্রেমওয়ার্কগুলির যে কোনও একটিতে এগুলি বাস্তবায়নের পরামর্শ দিচ্ছি এবং আপনি যাবার সাথে সাথে কৌতুকপূর্ণ-কৌতুকপূর্ণ বিশদটি শিখবেন।
কোয়ান্টাম কম্পিউটারগুলি তথাকথিত কোয়ান্টাম সার্কিটগুলি (প্রতিনিধিত্বমূলক প্রোগ্রামিং ভাষাগুলি) দ্বারা প্রোগ্রাম করা হয়। এগুলি কোয়ান্টাম গেটস এবং সেই সাথে কোয়ান্টাম বিট (কুইটস) তারা কাজ করে এমন তথ্যগুলির একটি ক্রম।
কোয়ান্টাম গেটগুলি সম্পর্কে আপনার কেবলমাত্র জেনে রাখা দরকার এটি হ'ল তারা ঘূর্ণন উপস্থাপন করে (একটি উচ্চতর মাত্রিক স্থান, তথাকথিত হিলবার্ট স্পেসে)। সুতরাং তারা বিপর্যয়যোগ্য: কোয়ান্টাম কম্পিউটারগুলি বিপরীতমুখী যুক্তি দিয়ে প্রোগ্রাম করা হয়।
সাধারণ ডায়রাক স্বরলিপিতে 2-কুইট সিস্টেমের জন্য) একটি সহগ হিসাবে বা তথাকথিত সম্ভাবনার প্রশস্ততা হিসাবে একটি জটিল সংখ্যা পায়। ভিত্তি ভেক্টরগুলি অরথোগোনাল এবং রাজ্যের হিলবার্ট স্পেস বিস্তৃত, সম্ভাব্য প্রশস্ততা এতে স্থানাঙ্ক হিসাবে দেখা যেতে পারে। এটি সেই চিত্র যা কোয়ান্টাম গেটগুলি প্রভাব ঘূর্ণায়মান। আপনি দেখতে পাবেন যে পদার্থবিদরা প্রায়শই একক কুইট সিস্টেমের জন্য ব্লচ গোলকটি আলাদা চিত্র ব্যবহার করেন, যেখানে কোয়ান্টাম গেটগুলিও ঘূর্ণন ঘটায় (তবে কখনও কখনও বৃহত্তর কোণে বা সেই চিত্রটিতে পুরোপুরি বাদ দেওয়া হয়)।
সমস্ত প্রচলিত যুক্তি একটি কোয়ান্টাম কম্পিউটার দ্বারা প্রথমে বিপরীতমুখী যুক্তিতে প্রকাশের মাধ্যমে প্রয়োগ করা যেতে পারে (যার জন্য অ্যাসিলা বিট লাগতে পারে)। ক্লাসিকাল নট গেটটি এক্স কোয়ান্টাম গেটের সাথে মিলে যায় তবে ধ্রুপদী ক্ষেত্রে যেমন একমাত্র 1-বিট বিপরীত গেটগুলি পরিচয় এবং নট গেট নয়, একটি কোয়ান্টাম কম্পিউটারে চারটি অনুরূপ গেট রয়েছে (এক্স, ওয়াই, জেড) ঘূর্ণন অনুসারে ব্লচ গোলক, এবং পরিচয়)। আরও, আপনার ঘূর্ণন থাকতে পারে যা কেবলমাত্র এই দ্বারগুলি কত দূরে ঘুরবে তার একটি ভগ্নাংশের সাহায্যে আবর্তিত হয়; কয়েকটি বিশেষ আকর্ষণীয়গুলির বিশেষ নাম এবং সংক্ষিপ্তসার রয়েছে যেমন হাদামারড গেট বা এইচ গেট যা সমস্ত রাজ্যের সমান সুপারপজিশন তৈরি করে।
দুর্ভাগ্যক্রমে, প্রারম্ভিক কোয়ান্টাম সফ্টওয়্যার ইঞ্জিনিয়ারদের সম্ভবত তারা যে কোয়ান্টাম কম্পিউটার হার্ডওয়্যার ব্যবহার করবে তা সম্পর্কে কিছুটা জানতে হবে: কোয়ান্টাম গেটের কার্যকর ঘূর্ণনের নির্বিচারে এবং ক্রমাগত চয়নযোগ্য কোণগুলির কারণে, কোয়ান্টাম কম্পিউটারগুলিতে এক ধরণের এনালগ উপাদান রয়েছে যা অগত্যা ত্রুটিগুলি তৈরি করে (এবং শারীরিক কোয়ান্টাম কম্পিউটারগুলির মধ্যে আরও বেশি ত্রুটি উত্স রয়েছে)। এটির সাথে মোকাবিলা করার একটি উপায় রয়েছে, কোয়ান্টাম ত্রুটি সংশোধন যা ত্রুটিগুলি বিবেচনা করে এবং আবদ্ধ ত্রুটিগুলির সাথে নির্বিচারে জটিল গণনাগুলি অর্জন করতে (আদর্শভাবে) তাদের মধ্যে সবচেয়ে সম্ভবত বিচক্ষণতা সংশোধন করে। তবে অপ্টিমাইজেশনের অর্থ সম্ভবত কোয়ান্টাম ত্রুটি সংশোধন করার একটি পছন্দ সহ একটি কোয়ান্টাম কম্পিউটার নির্দিষ্ট কোয়ান্টাম গেটে বা অন্যদের তুলনায় এমনকি অ্যালগরিদমে আরও উপযুক্ত হবে,