স্যাট, সিপি, এসএমটি, (অনেকাংশে) এএসপি সমস্ত সমন্বিত অপটিমাইজেশন সমস্যার একই সেট নিয়ে কাজ করে। যাইহোক, তারা বিভিন্ন সমস্যা থেকে এবং বিভিন্ন সরঞ্জামবাক্স সহ এই সমস্যাগুলি নিয়ে আসে। এই পার্থক্যগুলি মূলত প্রতিটি পদ্ধতির কীভাবে অনুসন্ধানের জায়গার অনুসন্ধান সম্পর্কে তথ্য গঠন করে in আমার কাজের সাদৃশ্যটি হ'ল স্যাট মেশিন কোড, অন্যটি উচ্চ স্তরের ভাষা।
সিএসপিগুলির কাঠামোগত তত্ত্ব সম্পর্কে আমার থিসিস কাজের উপর ভিত্তি করে , আমি বিশ্বাস করেছি যে এই সমস্ত দৃষ্টান্তগুলিকে একত্রিত করার জন্য এবং তারা কীভাবে পৃথক হয় তা বোঝার জন্য "ক্লজ স্ট্রাকচার" ধারণাটি প্রয়োজনীয়। একটি স্যাট উদাহরণের প্রতিটি ধারা একটি নিষিদ্ধ আংশিক কার্যনির্বাহী প্রতিনিধিত্ব করে; মতো একটি ধারাটি আংশিক কার্যনির্বাহীকরণ নিষিদ্ধ করে যা একই সাথে এবং কে মিথ্যা এবং করে সত্য। সম্মিলিত অপ্টিমাইজেশান সমস্যার ক্লজ স্ট্রাকচার হ'ল কিছু উপযুক্ত এনকোডিং ব্যবহার করে একটি স্যাট উদাহরণ হিসাবে এটির প্রতিনিধিত্ব। যাইহোক, ক্লজ কাঠামো সব অন্তর্ভুক্তx1∨x2¯¯¯¯¯∨x3{(x1,0),(x2,1),(x3,0)}x1x3x2নিষিদ্ধ আংশিক কার্যনির্বাহী, শুরুতে দেওয়া বিষয়গুলিই নয়। ক্লজ স্ট্রাকচারটি সাধারণত সরাসরি হেরফের করার জন্য খুব বড়: সাধারণত এটির ভেরিয়েবলের সংখ্যায় কমপক্ষে ক্ষতিকারক আকার থাকে এবং এটি অসীম হতে পারে। অতএব, ক্লজ কাঠামো সীমিত পরিমাণের জায়গার সাথে আনুমানিক করতে হবে। স্যাট / সিপি / এসএমটি / এএসপি অন্তর্নিহিত ধারাটির কাঠামোর একটি আরও কম-বেশি অন্তর্নিহিত উপস্থাপনা বজায় রাখা এবং আপডেট করুন। এটি সম্ভব কারণ কারণ যদি একটি আংশিক অ্যাসাইনমেন্ট ক্লজ স্ট্রাকচারে রয়েছে বলে জানা যায়, তবে এর থেকে বোঝা যায় যে আরও অনেক ধারা রয়েছে। উদাহরণস্বরূপ, উপরের স্যাট ধারাটি যে কোনও আংশিক এটি উপসেট হিসাবে অন্তর্ভুক্ত করতে নিষেধ করেছে, তাই এবংx1∨x2¯¯¯¯¯∨x3∨x4x1∨x2¯¯¯¯¯∨x3∨x4¯¯¯¯¯∨x5 সমস্তই সেই উদাহরণের দফা কাঠামোতে রয়েছে।
সমাধানের সেটটি সংকীর্ণ করতে এবং এই সেটটি খালি কিনা তা নির্ধারণে সহায়তা করার জন্য ক্লজ কাঠামোর একটি আনুমানিকতা রাখা হয়। অনুসন্ধানের সময় কিছু আংশিক অ্যাসাইনমেন্ট কোনও সমাধানে অন্তর্ভুক্ত না হয়ে যেতে পারে (এমনকি তারা স্বতন্ত্রভাবে উদাহরণের প্রতিটি প্রতিবন্ধকতাগুলি পূরণ করেও)। এগুলি নোগুড নামে পরিচিত , ("মিঃ জিএনইউ") স্টলম্যান এবং সুসমান প্রবর্তিত একটি শব্দ । একটি নোগুড ধারাটি ক্লজ স্ট্রাকচারের মধ্যে রয়েছে এবং সমাধানের সন্ধান থেকে ছাঁটাই করা যায় এমন অনেকগুলি অনুচ্ছেদের সংক্ষিপ্ত প্রতিনিধিত্ব হিসাবে ক্লজ স্ট্রাকচারের একটি সান্নিধ্যে অন্তর্ভুক্ত করা যেতে পারে। আনুমানিক ক্লজ স্ট্রাকচারে নোগড যুক্ত করা সমস্ত সমাধান বজায় রাখে তবে সেই সমাধানগুলি আরও ভাল করে আনতে পারে। সুতরাং অনুসন্ধানের অগ্রগতির সাথে সাথে আনুমানিক ক্লজ কাঠামোটি সাধারণত পরিবর্তিত হয়। তদ্ব্যতীত, সংযোজক অপ্টিমাইজেশান পদ্ধতির একটিতে সমস্যাটি যেভাবে মডেল করা হয়েছে তা ক্লজ স্ট্রাকচারকে প্রায়শই উল্লেখযোগ্যভাবে প্রভাবিত করে। উদাহরণস্বরূপ, প্রজেকশনাল ভেরিয়েবলগুলি বা মতো পয়েন্টের মতো অন্তরগুলিকে উপস্থাপন করতে পারেx≤5x=5। সুতরাং ক্লজ স্ট্রাকচারের একক (আক্ষরিক) কী উপস্থাপন করে তার উপর নির্ভর করে একটি একক সাধারণ ধারা কাঠামো নেই তবে প্রতিটি প্রতিনিধিত্বমূলক প্রতিনিধির সাথে সম্পর্কিত।
নির্ধারিত প্রোগ্রামিং (সিপি) traditionতিহ্যগতভাবে একটি এআই শৃঙ্খলা ছিল, সময়সূচী, সময়সীমাবদ্ধকরণ এবং সংহত সমস্যাগুলির উপর দৃষ্টি নিবদ্ধ করে এবং অতএব ভেরিয়েবলগুলির জন্য কেন্দ্রীয় ভূমিকা রয়েছে যা কেবল দুটি মানের চেয়ে বেশি নিতে পারে (তবে সাধারণত কেবল চূড়ান্তভাবে অনেকগুলি)। সিপি দক্ষ অনুসন্ধানের উপর জোর দিয়েছে এবং প্রচলিত অ্যাপ্লিকেশন দ্বারা অনুপ্রাণিত হয়ে all-different
(ইনজেকটিভিটি) সীমাবদ্ধতায় কেন্দ্রীয় ভূমিকা দিয়েছে , তবে অন্যান্য অনেক ধরণের বাধাগুলির জন্য দক্ষ প্রচারকারীও বিকাশ করেছে। সিপির আনুষ্ঠানিক সংজ্ঞাগুলি কমপক্ষে মন্টানারি এর 1974 এর কাগজ নেটওয়ার্কের সীমাবদ্ধতার পরে থেকেই রয়েছেপূর্ববর্তীরা আরও আগে ফিরে আসার সাথে। ইতিহাসের এই ওজনটি গত দশকে কাঁচা পারফরম্যান্সে সিপি পিছনে পিছনে পিছনে অবদান রাখতে পারে। সিপি ক্লাসিকভাবে ভেরিয়েবলের জন্য সক্রিয় ডোমেনগুলির একটি সেটের মাধ্যমে ক্লজ স্ট্রাকচারের পরিপূরকটির একটি আনুমানিক পরিমাণ বজায় রাখে। উদ্দেশ্যটি হল সক্রিয় ডোমেনগুলি থেকে মানগুলি অপসারণ করা, প্রার্থীর মানগুলি ভেরিয়েবলগুলিতে নির্ধারিত করার চেষ্টা করার পরে এবং প্রয়োজনে ব্যাকট্র্যাকিংয়ের মাধ্যমে ক্লজ কাঠামোটি অন্বেষণ করা।
সন্তুষ্টিযোগ্যতা মডুলো তত্ত্বগুলি (এসএমটি) যাচাইকরণ সম্প্রদায় থেকে বেরিয়ে এসেছিল। এসএমটি সলভারের প্রতিটি তত্ত্ব সম্ভাব্য অসীম অনেকগুলি স্যাট ধারাগুলির অন্তর্নিহিত প্রতিনিধিত্ব করে। এসএমটির সাথে ব্যবহৃত তত্ত্বগুলি এবং সিপিতে ব্যবহৃত সীমাবদ্ধতাগুলি তাদের বিভিন্ন historicalতিহাসিক প্রয়োগগুলি প্রতিফলিত করে। এসএমটি বিবেচনা করে এমন বেশিরভাগ তত্ত্বগুলি পূর্ণসংখ্যার-সূচকযুক্ত অ্যারে, বাস্তব বন্ধ ক্ষেত্র, লিনিয়ার অর্ডার এবং এর মতো করতে হয়; এগুলি প্রোগ্রামগুলির স্থিতিশীল বিশ্লেষণ থেকে উদ্ভূত হয় (কম্পিউটারের সাহায্যে যাচাইকরণে) বা গাণিতিক প্রমাণগুলি (স্বয়ংক্রিয় যুক্তিতে) আনুষ্ঠানিককরণ করার সময়। বিপরীতে, সময় নির্ধারণ এবং সময় নির্ধারণের সময় ইনজেকটিভিটির সীমাবদ্ধতা কেন্দ্রীয় এবং যদিও 2003 সালে প্রতিষ্ঠিত হওয়ার পর থেকে প্রমিত এসএমটিএলআইবি ভাষার একটি ইনজেকটিভিটির প্রতিবন্ধকতা ছিল (এর মাধ্যমে)distinct
প্রতীক), ২০১০ অবধি এসএমটি সলভার কেবল distinct
একটি নিষ্পাপ অ্যালগরিদমের মাধ্যমে প্রয়োগ করা হয়। সেই পর্যায়ে স্ট্যান্ডার্ড সিপি প্রচারকারীর সাথে ম্যাচিং টেকনিকটি all-different
পুরো পোর্ট করা হয়েছিল, যখন ভেরিয়েবলের বৃহত তালিকার জন্য প্রয়োগ করা হয়; ব্যাংকভিয়ে এবং মারি, এসএমটি ২০১০ দ্বারা এসএমটি-তে একটি অলরেডিফরেন্স বাধা সমাধানকারী দেখুন Moreover তাছাড়া, বেশিরভাগ সিপি প্রচারকারী সীমাবদ্ধ ডোমেনগুলির সমস্যার জন্য ডিজাইন করা হয়েছে, যেখানে স্ট্যান্ডার্ড এসএমটি তত্ত্বগুলি বাকী বাকী বাইরে সীমাহীন ডোমেনগুলি (পূর্ণসংখ্যা এবং আরও সাম্প্রতিক সময়ে বাস্তবগুলি) নিয়ে কাজ করে। এসএমটি ক্লজ স্ট্রাকচারের সান্নিধ্য হিসাবে একটি স্যাট উদাহরণ ব্যবহার করে, যথাযথভাবে তত্ত্বগুলি থেকে নোগড ক্লজগুলি বের করে। একটি দুর্দান্ত ওভারভিউ হ'ল সন্তুষ্টিযোগ্যতা মডুলো তত্ত্বগুলি:
ডি মউরা এবং বিজার্নার দ্বারা পরিচিতি এবং অ্যাপ্লিকেশন , ডয়ি : 10.1145 / 1995376.1995394।
উত্তর সেট প্রোগ্রামিং (এএসপি) লজিক প্রোগ্রামিংয়ের বাইরে এসেছিল। স্থিতিশীল মডেল সন্ধানের আরও সাধারণ সমস্যা সমাধানের দিকে মনোনিবেশ করার কারণে এবং এটি সর্বজনীন পাশাপাশি অস্তিত্বের পরিমাপেরও অনুমতি দেয় বলে এএসপি বহু বছর ধরে সিপি বা এসএমটির সাথে প্রতিযোগিতামূলক ছিল না।
আনুষ্ঠানিকভাবে, স্যাট বুলিয়ান ডোমেনগুলিতে সিএসপি, তবে ক্লজ শেখার উপর স্যাট ফোকাস, সংঘাত সনাক্তকরণের জন্য ভাল উত্তোলন এবং ব্যাকট্র্যাকের দ্রুত উপায়গুলি প্রচলিত সিএসপি ফোকাসগুলি, ধারাবাহিকতা প্রতিষ্ঠার জন্য এবং পরিবর্তনশীল ক্রমের জন্য হিউরিস্টিকগুলির থেকে আলাদা। স্যাট সাধারণত অত্যন্ত দক্ষ, তবে অনেক সমস্যার জন্য প্রথমে স্যাট উদাহরণ হিসাবে সমস্যাটি প্রকাশ করার জন্য বিশাল প্রচেষ্টা করা দরকার। সিপির মতো উচ্চ স্তরের দৃষ্টান্ত ব্যবহার করা সমস্যার আরও প্রাকৃতিক অভিব্যক্তির অনুমতি দিতে পারে এবং তারপরে হয় সিপি উদাহরণটি হাতে হাতে স্যাট অনুবাদ করা যেতে পারে, বা কোনও সরঞ্জাম অনুবাদটির যত্ন নিতে পারে। স্যাট এর বাদাম এবং বোল্টগুলির একটি সুন্দর ওভারভিউ হল আধুনিক ক্লজ-লার্নিং সন্তুষ্টিযোগ্যতা সমাধান পিপ্যাট্রিসাওয়াত এবং দারভিচে, doi: 10.1007 / s10817-009-9156-3 ।
এখন আসুন সাধারণতা থেকে দিনের সুনির্দিষ্টতার দিকে এগিয়ে যাওয়া।
গত দশক ধরে সিপি-তে কিছু লোক অলস ক্লজ জেনারেশন (এলসিজি) এর দিকে মনোনিবেশ করতে শুরু করেছেন। এটি মূলত সিপি প্রচারকারীদের একসাথে বলট করার উপায় যা আরও কঠোর সক্রিয় ডোমেন বিমূর্তির চেয়ে আরও নমনীয় এসএমটি-জাতীয় কৌশল ব্যবহার করে। এটি কার্যকর কারণ অনেক ধরণের সমস্যাগুলি দক্ষতার সাথে উপস্থাপন এবং সমাধান করার জন্য প্রকাশিত সিপি প্রচারকদের দীর্ঘ ইতিহাস রয়েছে। (অবশ্যই, এসএমটি সলভারদের জন্য নতুন তত্ত্বগুলি বাস্তবায়নের সম্মিলিত প্রচেষ্টার মাধ্যমে অনুরূপ প্রভাব অর্জন করা সম্ভব হবে)) এলসিজির এমন পারফরম্যান্স রয়েছে যা প্রায়শই এসএমটির সাথে প্রতিযোগিতামূলক হয় এবং কিছু সমস্যার জন্য এটি উচ্চতর হতে পারে। একটি দ্রুত পর্যালোচনা হ'ল স্টুকির সিপিএইআর ২০১০ পত্রিকা অলস ক্লজ জেনারেশন: স্যাট এবং সিপি (এবং এমআইপি?) সমাধানের ক্ষমতা সংমিশ্রণ , doi: 10.1007 / 978-3-642-13520-0_3। গার্সিয়া দে লা বান্দা, স্টুকি, ভ্যান হেনটেন্রিক এবং ওয়ালেসের অবস্থান কাগজটি পড়া মূল্যবান, যা ভবিষ্যতের অপটিমাইজেশন টেকনোলজির সিপি-কেন্দ্রিক দৃষ্টি এঁকে দেয় , ডুই : 10.1007 / s10601-013-9149-z ।
আমি যতদূর বলতে পারি, সাম্প্রতিক এসএমটি গবেষণার বেশিরভাগ ফোকাস আনুষ্ঠানিক পদ্ধতিতে এবং আনুষ্ঠানিক গণিতে প্রয়োগগুলিতে স্থানান্তরিত হয়েছে বলে মনে হয়। একটি উদাহরণ হ'ল এসএমটি সলভার দ্বারা প্রমান ব্যবস্থার মধ্যে যেমন ইসাবেল / এইচএল, এসএমটি প্রমাণের চিহ্নগুলিতে অনুমানের বিধি প্রতিবিম্বিত করার জন্য ইসাবেল / এইচএল কৌশল অবলম্বন করে প্রমাণগুলির পুনর্গঠন করা ; দেখতে Z3 এর জন্য ফাস্ট LCF-স্টাইল প্রুফ রিকনস্ট্রাকশন ITP 2010 Böhmer এবং ওয়েবার দ্বারা।
শীর্ষস্থানীয় এএসপি সলভাররা গত কয়েক বছর ধরে সিপি, এসএমটি এবং স্যাট-কেবলমাত্র সলভারদের সাথে প্রতিযোগিতামূলক হয়ে উঠেছে developed আমি বাস্তবায়নের বিশদগুলির সাথে কেবল অস্পষ্টভাবেই পরিচিত যা সলভারদের যেমন clasp
প্রতিযোগিতামূলক হতে দেয় তাই এগুলি এসএমটি এবং সিপির সাথে সত্যিই তুলনা করতে পারে না, তবে তালি স্পষ্টভাবে নোগডগুলি শেখার উপর তার ফোকাসটির বিজ্ঞাপন দেয়।
এই আনুষ্ঠানিকতার মধ্যে traditionalতিহ্যগত সীমানা কাটা হ'ল আরও বিমূর্ত সমস্যার উপস্থাপনা থেকে নিম্ন স্তরের দক্ষতার সাথে বাস্তবায়িত আনুষ্ঠানিকতায় অনুবাদ করা। শীর্ষস্থানীয় বেশ কয়েকটি এএসপি এবং সিপি সলভার এখন তাদের ইনপুটটি স্পষ্টভাবে একটি স্যাট উদাহরণে অনুবাদ করে, যা একটি অফ-শেল্ফ স্যাট solver ব্যবহার করে সমাধান করা হয়। সিপি সালে Savile সারি বাধ্যতা মডেলিং সহায়ক ব্যবহারসমূহ কম্পাইলার নকশা কৌশল 'একটি নিম্ন স্তরের লৌকিকতা মধ্যে মাঝারি স্তরের ভাষা সারাংশ মধ্যে প্রকাশ সমস্যা, যেমন সিপি solvers ইনপুট জন্য উপযুক্ত অনুবাদ করতে চাটুকার বা MiniZinc । সেভিল রো মূলত সিপি প্রতিনিধিত্ব করে নিম্ন-স্তরের আনুষ্ঠানিকতা হিসাবে কাজ করেছিলেন তবে এসএটি সংস্করণ 1.6.2 সংস্করণে একটি লক্ষ্য হিসাবে প্রবর্তন করেছিলেন। তদুপরি, এমনকি উচ্চ-স্তরের ভাষার এসেন্সওকনজুর সরঞ্জাম দ্বারা এখন স্বয়ংক্রিয়ভাবে এসেন্সে অনুবাদ করা যেতে পারে । একই সময়ে, লিংজলিংয়ের মতো নিম্ন স্তরের কেবলমাত্র স্যাট- সলভারগুলি প্রতি বছরই ক্লোজ লার্নিং এবং ইন-প্রসেসিং পর্যায়ের বিকল্পগুলির দ্বারা পরিমার্জিত হতে থাকে; এএএআই ২০১৫-তে হিউল এবং স্কাউব দ্বারা স্যাট এবং এএসপি প্রতিযোগিতায় কী জনপ্রিয় তা সংক্ষিপ্ত বিবরণ দেখুন ।
প্রোগ্রামিং ভাষার ইতিহাসের সাথে সাদৃশ্যটি যথাযথ বলে মনে হয়। ধারাটি কাঠামোর কাঠামোয় ধারাগুলি অনুসন্ধানের নিম্ন-স্তরের মডেলটিকে লক্ষ্য করে স্যাট এক ধরণের "মেশিন কোড" হয়ে উঠছে। বিমূর্ত দৃষ্টান্তগুলি উচ্চতর স্তরের কম্পিউটার ভাষার মতো হয়ে উঠছে, তাদের নিজস্ব স্বতন্ত্র পদ্ধতি এবং অ্যাপ্লিকেশনগুলির সাথে তারা সম্বোধন করতে ভাল। অবশেষে, এই বিভিন্ন স্তরগুলির মধ্যে ক্রমবর্ধমান ঘন সংগ্রহের সংকলক অপটিমাইজেশন বাস্তুতন্ত্রের অনুরূপ হতে শুরু করেছে।