Abductive logic programming
एब्डक्टिव लॉजिक प्रोग्रामिंग (ए. एल. पी.) एक उच्च-स्तरीय ज्ञान-प्रतिनिधित्व ढांचा है जिसका उपयोग एब्डक्टिव रीजनिंग के आधार पर समस्याओं को घोषणात्मक रूप से हल करने के लिए किया जा सकता है। यह कुछ विधेयकों को अपूर्ण रूप से परिभाषित करने की अनुमति देकर सामान्य तर्क प्रोग्रामिंग का विस्तार करता है, जिन्हें अप्राप्य विधेय के रूप में घोषित किया जाता है। समस्या समाधान इन अपवर्तनीय भविष्यवाणियों (अपवर्तनीय परिकल्पनाओं) पर परिकल्पनाओं को हल की जाने वाली समस्याओं के समाधान के रूप में प्राप्त करके प्रभावित होता है। ये समस्याएं या तो ऐसी टिप्पणियाँ हो सकती हैं जिन्हें समझाने की आवश्यकता है (जैसा कि शास्त्रीय अपहरण में) या प्राप्त किए जाने वाले लक्ष्य (जैसा कि सामान्य तर्क प्रोग्रामिंग में)। इसका उपयोग निदान, योजना, प्राकृतिक भाषा और मशीन सीखने में समस्याओं को हल करने के लिए किया जा सकता है। इसका उपयोग निषेध को विफलता के रूप में अपहरणकारी तर्क के रूप में व्याख्या करने के लिए भी किया गया है। सिंटैक्स एब्डक्टिव लॉजिक प्रोग्रामों के तीन घटक होते हैं, जहाँः पी ठीक उसी रूप का एक लॉजिक प्रोग्राम है जैसा कि लॉजिक प्रोग्रामिंग में होता है ए विधेय नामों का एक समूह है, जिसे अब्ड्युसिबल प्रेडिकेट कहा जाता है आईसी प्रथम क्रम के शास्त्रीय सूत्रों का एक समूह है। आम तौर पर, तर्क कार्यक्रम पी में कोई भी खंड नहीं होता है जिसका शीर्ष (या निष्कर्ष) एक अप्राप्य विधेय को संदर्भित करता है। (यह प्रतिबंध व्यापकता को खोए बिना लगाया जा सकता है।) इसके अलावा व्यवहार में, कई बार, आईसी में अखंडता की बाधाएं अक्सर इनकार के रूप में सीमित होती हैं, अर्थात। रूप के खंडः गलतः-ए1,., एन, बी1 नहीं, बी. एम. नहीं। इस तरह की बाधा का मतलब है कि सभी A1,., An का सही होना और साथ ही साथ सभी B1,., Bm का गलत होना संभव नहीं है। अनौपचारिक अर्थ और समस्या का समाधान पी में खंड गैर-घटाने योग्य विधेयकों के एक समूह को परिभाषित करते हैं और इसके माध्यम से वे समस्या क्षेत्र का विवरण (या मॉडल) प्रदान करते हैं। आईसी में अखंडता की बाधाएं समस्या क्षेत्र के सामान्य गुणों को निर्दिष्ट करती हैं जिनका किसी भी समस्या के समाधान में सम्मान करने की आवश्यकता होती है। एक समस्या, जी, जो या तो एक अवलोकन को व्यक्त करता है जिसे समझाने की आवश्यकता है या एक लक्ष्य जो वांछित है, सकारात्मक और नकारात्मक (एनएएफ) शाब्दिक के संयोजन द्वारा दर्शाया जाता है। इस तरह की समस्याओं को जी की "अपवर्तनीय व्याख्याओं" की गणना करके हल किया जाता है। एक समस्या जी की एक अपवर्तनीय व्याख्या अपवर्तनीय विधेयों के सकारात्मक (और कभी-कभी नकारात्मक भी) जमीनी उदाहरणों का एक समूह है, जैसे कि, जब इन्हें तर्क कार्यक्रम पी में जोड़ा जाता है, तो समस्या जी और अखंडता बाधाएं आईसी दोनों होती हैं। इस प्रकार अपवर्तनीय व्याख्याएं अपवर्तनीय विधेय की पूर्ण या आंशिक परिभाषाओं को जोड़कर तर्क कार्यक्रम पी का विस्तार करती हैं। इस तरह, पी और आई. सी. में समस्या क्षेत्र के विवरण के अनुसार अपहरणकारी व्याख्याएँ समस्या का समाधान बनाती हैं। अपहरणकारी व्याख्याओं द्वारा दिए गए समस्या विवरण का विस्तार या समापन नई जानकारी प्रदान करता है, जो अब तक समस्या के समाधान में निहित नहीं था। एक समाधान को दूसरे पर प्राथमिकता देने के लिए गुणवत्ता मानदंड, जिसे अक्सर अखंडता बाधाओं के माध्यम से व्यक्त किया जाता है, को समस्या की विशिष्ट अपहरणकारी व्याख्याओं के चयन के लिए लागू किया जा सकता है जी. एएलपी में गणना सामान्य तर्क प्रोग्रामिंग (समस्याओं को उप-समस्याओं तक कम करने के लिए) के पीछे की ओर तर्क को एक प्रकार की अखंडता जांच के साथ जोड़ती है ताकि यह दिखाया जा सके कि अपहरणकारी व्याख्याएं अखंडता बाधाओं को पूरा करती हैं। निम्नलिखित दो उदाहरण, ए. एल. पी. के सख्त वाक्यविन्यास के बजाय सरल संरचित अंग्रेजी में लिखे गए हैं, ए. एल. पी. में अप्रामाणिक व्याख्या की धारणा और समस्या समाधान के साथ इसके संबंध को स्पष्ट करते हैं। उदाहरण 1 अपवर्तक तर्क कार्यक्रम, निम्नलिखित वाक्यों में हैः यदि बारिश होती है तो घास गीली होती है। यदि छिड़काव यंत्र चालू होता है तो घास गीली होती है। सूरज चमक रहा था। "वर्षा हुई" और "स्प्रिंकलर चालू था" में अप्राप्य भविष्यवाणियाँ हैं और एकमात्र अखंडता बाधा हैः गलत अगर बारिश हुई और सूरज चमक रहा था। यह अवलोकन कि घास गीली है, इसके दो संभावित स्पष्टीकरण हैं, "बारिश हुई" और "छिड़काव चालू था", जो अवलोकन को दर्शाता है। हालांकि, केवल दूसरी संभावित व्याख्या, "स्प्रिंकलर चालू था", अखंडता बाधा को संतुष्ट करता है। उदाहरण 2 निम्नलिखित (सरलीकृत) खंडों से युक्त अपवर्तक तर्क कार्यक्रम पर विचार करेंः यदि एक्स का जन्म संयुक्त राज्य अमेरिका में हुआ है तो एक्स एक नागरिक है। X एक नागरिक है यदि X का जन्म संयुक्त राज्य अमेरिका के बाहर हुआ है और X संयुक्त राज्य अमेरिका का निवासी है और X प्राकृतिक है। X एक नागरिक है यदि X का जन्म संयुक्त राज्य अमेरिका के बाहर हुआ है और Y, X की माँ है और Y एक नागरिक है और X पंजीकृत है। मैरी जॉन की माँ हैं। मैरी एक नागरिक हैं। पांच अपहरण योग्य भविष्यवाणियों के साथ, "संयुक्त राज्य अमेरिका में पैदा हुआ है", "संयुक्त राज्य अमेरिका के बाहर पैदा हुआ है", "संयुक्त राज्य अमेरिका का निवासी है", "प्राकृतिक है" और "पंजीकृत है" और अखंडता की बाधाः गलत है यदि जॉन संयुक्त राज्य अमेरिका का निवासी है। लक्ष्य "जॉन नागरिक है" के दो अपहरणकारी समाधान हैं, जिनमें से एक है "जॉन का जन्म संयुक्त राज्य अमेरिका में हुआ है", दूसरा है "जॉन का जन्म संयुक्त राज्य अमेरिका के बाहर हुआ है" और "जॉन पंजीकृत है"। निवास और प्राकृतिककरण द्वारा नागरिक बनने का संभावित समाधान विफल हो जाता है क्योंकि यह अखंडता की बाधा का उल्लंघन करता है। एक अधिक जटिल उदाहरण जो ए. एल. पी. के अधिक औपचारिक वाक्यविन्यास में भी लिखा गया है, निम्नलिखित है। उदाहरण 3 नीचे दिया गया अपवर्तक तर्क कार्यक्रम बैक्टीरिया ई. कोलाई के लैक्टोज चयापचय के एक सरल मॉडल का वर्णन करता है। कार्यक्रम, पी, वर्णन करता है (अपने पहले नियम में) कि ई. कोलाई चीनी लैक्टोज को खा सकता है यदि यह दो एंजाइम पारगम्यता और गैलेक्टोसिडेस बनाता है। सभी एंजाइमों की तरह, ये तब बनाए जाते हैं जब उन्हें एक जीन (जीन) द्वारा कोडित किया जाता है जो व्यक्त किया जाता है (दूसरे नियम द्वारा वर्णित)। पारगम्यता और गैलेक्टोसिडेस के दो एंजाइमों को दो जीन, क्रमशः लाख (वाई) और लाख (जेड) (कार्यक्रम के पांचवें और छठे नियम में कहा गया है) द्वारा जीन के एक समूह (लाख (एक्स)) में कोड किया जाता है-जिसे ऑपरॉन कहा जाता है-जिसे तब व्यक्त किया जाता है जब ग्लूकोज की मात्रा (एएमटी) कम होती है और लैक्टोज अधिक होता है या जब वे दोनों मध्यम स्तर पर होते हैं (चौथा और पांचवां नियम देखें)। अपहरणकर्ता, ए, भविष्यवाणी "राशि" के सभी जमीनी उदाहरणों को अनुमानित घोषित करते हैं। यह दर्शाता है कि मॉडल में किसी भी समय विभिन्न पदार्थों की मात्रा अज्ञात है। यह अधूरी जानकारी है जिसे प्रत्येक समस्या के मामले में निर्धारित किया जाना है। अखण्डता बाधाएं, आईसी, बताती हैं कि किसी भी पदार्थ (एस) की मात्रा केवल एक मान ले सकती है। डोमेन ज्ञान (पी) फ़ीड (लैक्टोज):-बनाना (पारगमन), बनाना (गैलेक्टोसिडेस)। मेक (एंजाइम):-कोड (जीन, एंजाइम), एक्सप्रेस (जीन)। व्यक्त (लाख (एक्स)):-मात्रा (ग्लूकोज, कम), मात्रा (लैक्टोज, हाई)। व्यक्त (लाख (एक्स)):-मात्रा (ग्लूकोज, मध्यम), मात्रा (लैक्टोज, मध्यम)। कोड (लाख (वाई), पारगम्यता)। कोड (लाख (जेड), गैलेक्टोसिडेस)। तापमान (कम):-मात्रा (ग्लूकोज, कम)। सत्यनिष्ठा बाधाएं (IC) गलतः-राशि (S, V1), राशि (S, V2), V1 ष्णुव V2। एब्ड्युसिबल (ए) एब्ड्युसिबल _ प्रेडिकेट (राशि)। समस्या का लक्ष्य है। यह या तो समझाने के लिए एक अवलोकन के रूप में या एक योजना खोजने से प्राप्त होने वाली स्थिति के रूप में उत्पन्न हो सकता है। इस लक्ष्य की दो अपहरणकारी व्याख्याएँ हैंः दोनों में से किसे अपनाना है, यह निर्णय उपलब्ध अतिरिक्त जानकारी पर निर्भर कर सकता है, उदाहरण के लिए। यह ज्ञात हो सकता है कि जब ग्लूकोज का स्तर कम होता है तो जीव एक निश्चित व्यवहार प्रदर्शित करता है-मॉडल में ऐसी अतिरिक्त जानकारी यह है कि जीव का तापमान कम है-और इसकी सच्चाई या असत्यता को देखकर क्रमशः पहला या दूसरा स्पष्टीकरण चुनना संभव है। एक बार स्पष्टीकरण चुने जाने के बाद, यह सिद्धांत का हिस्सा बन जाता है, जिसका उपयोग नए निष्कर्ष निकालने के लिए किया जा सकता है। व्याख्या और आम तौर पर ये नए निष्कर्ष समस्या का समाधान बनाते हैं। औपचारिक शब्दार्थ ए. एल. पी. में एक अपहरणकारी व्याख्या की केंद्रीय धारणा के औपचारिक शब्दार्थ को निम्नलिखित तरीके से परिभाषित किया जा सकता है। एक अपवर्तनीय तर्क कार्यक्रम को देखते हुए, एक समस्या के लिए एक अपवर्तनीय व्याख्या अपवर्तनीय भविष्यवाणियों पर जमीनी परमाणुओं का एक समूह है जो इस प्रकार हैः सुसंगत है यह परिभाषा तर्क प्रोग्रामिंग के अंतर्निहित शब्दार्थ के विकल्प को खोलती है जिसके माध्यम से हम प्रवेश संबंध का सटीक अर्थ और (विस्तारित) तर्क कार्यक्रमों की स्थिरता की धारणा देते हैं। तर्क प्रोग्रामिंग के विभिन्न शब्दार्थों में से कोई भी जैसे कि पूर्णता, स्थिर या अच्छी तरह से स्थापित शब्दार्थ (और व्यवहार में उपयोग किया गया है) अपहरणकारी व्याख्याओं की विभिन्न धारणाओं और इस प्रकार ए. एल. पी. ढांचे के विभिन्न रूपों को दे सकता है। उपरोक्त परिभाषा संभावित अपहरणकारी समाधानों पर प्रतिबंधों के रूप में अखंडता बाधाओं की भूमिका के औपचारिकरण पर एक विशेष दृष्टिकोण लेती है। इसके लिए आवश्यक है कि ये एक अपवर्तक समाधान के साथ विस्तारित तर्क कार्यक्रम द्वारा निहित हों, इस प्रकार इसका अर्थ है कि विस्तारित तर्क कार्यक्रम के किसी भी मॉडल में (जिसे कोई एक आगामी दुनिया के रूप में सोच सकता है) अखंडता बाधाओं की आवश्यकताओं को पूरा किया जाता है। कुछ मामलों में यह अनावश्यक रूप से मजबूत हो सकता है और निरंतरता की कमजोर आवश्यकता, अर्थात् जो सुसंगत है, पर्याप्त हो सकती है, जिसका अर्थ है कि विस्तारित कार्यक्रम का कम से कम एक मॉडल (संभावित आगामी दुनिया) मौजूद है जहां अखंडता की बाधाएं हैं। व्यवहार में, कई मामलों में, अखंडता बाधाओं की भूमिका को औपचारिक रूप देने के ये दो तरीके तर्क कार्यक्रम के रूप में मेल खाते हैं और इसके विस्तार में हमेशा एक अद्वितीय मॉडल होता है। कई ए. एल. पी. प्रणालियाँ अखंडता बाधाओं के प्रवेश दृष्टिकोण का उपयोग करती हैं क्योंकि इसे अखंडता बाधाओं की संतुष्टि के लिए किसी भी अतिरिक्त विशेष प्रक्रियाओं की आवश्यकता के बिना आसानी से लागू किया जा सकता है क्योंकि यह दृष्टिकोण बाधाओं को समस्या लक्ष्य के समान ही मानता है। कई व्यावहारिक मामलों में, ए. एल. पी. में एक अपहरणकारी व्याख्या की इस औपचारिक परिभाषा में तीसरी शर्त या तो मामूली रूप से संतुष्ट होती है या यह दूसरी स्थिति में विशिष्ट अखंडता बाधाओं के उपयोग के माध्यम से निहित होती है जो स्थिरता को पकड़ती हैं। कार्यान्वयन और प्रणालियाँ ए. एल. पी. के अधिकांश कार्यान्वयन तर्क प्रोग्रामिंग के एस. एल. डी. संकल्प-आधारित कम्प्यूटेशनल मॉडल का विस्तार करते हैं। ए. एल. पी. को उत्तर सेट प्रोग्रामिंग (ए. एस. पी.) के साथ इसके लिंक के माध्यम से भी लागू किया जा सकता है, जहाँ ए. एस. पी. प्रणालियों को नियोजित किया जा सकता है। पूर्ववर्ती दृष्टिकोण की प्रणालियों के उदाहरण हैं ए. सी. एल. पी., ए-सिस्टम, सी. आई. एफ. एफ., एस. सी. आई. एफ. एफ., ए. बी. डी. यू. ए. एल. और प्रोलोगिका। इंडक्टिव लॉजिक प्रोग्रामिंग नोट्स संदर्भ बाहरी लिंक एसीएलपी एसीएल एससीआईएफएफ सिस्टम लॉजिक प्रोग्रामिंग भी देखें।