गोल (GOAL) एजेंट प्रोग्रामिंग लैंग्वेज: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
'''लक्ष्य''' प्रोग्रामिंग [[संज्ञानात्मक एजेंट|संज्ञानात्मक एजेंटों]] के लिए एक एजेंट [[प्रोग्रामिंग भाषा]] होती है। इस प्रकार लक्ष्य एजेंट अपनी कार्रवाई का विकल्प अपने विश्वासों और लक्ष्यों से प्राप्त करते हैं। सामान्यतः भाषा प्रोग्रामिंग संरचनाओं द्वारा संज्ञानात्मक एजेंटों को डिजाइन और कार्यान्वित करने के लिए मूलभूत बिल्डिंग ब्लॉक प्रदान करती है, जो एक एजेंट की मान्यताओं और लक्ष्यों में हेरफेर करने और उसके निर्णय लेने की संरचना की अनुमति और सुविधा प्रदान करती है। अतः भाषा सामान्य ज्ञान या [[व्यावहारिक तर्क]] के आधार पर एक सहज प्रोग्रामिंग ढांचा प्रदान करती है। | |||
== सिंहावलोकन == | == सिंहावलोकन == | ||
लक्ष्य की मुख्य विशेषताओं में सम्मिलित हैं: | |||
* घोषणात्मक विश्वास: एजेंट अपने पास उपस्तिथ जानकारी और अपने लक्ष्यों को प्राप्त करने के लिए जिस पर्यावरण पर कार्य करते हैं, उसके बारे में उनके विश्वास या ज्ञान का प्रतिनिधित्व करने के लिए एक प्रतीकात्मक, तार्किक भाषा का उपयोग करते हैं। यह ''ज्ञान प्रतिनिधित्व भाषा'' | * घोषणात्मक विश्वास: एजेंट अपने पास उपस्तिथ जानकारी और अपने लक्ष्यों को प्राप्त करने के लिए जिस पर्यावरण पर कार्य करते हैं, उसके बारे में उनके विश्वास या ज्ञान का प्रतिनिधित्व करने के लिए एक प्रतीकात्मक, तार्किक भाषा का उपयोग करते हैं। यह ''ज्ञान प्रतिनिधित्व भाषा'' लक्ष्य द्वारा निर्धारित नहीं है, किन्तु, सिद्धांत रूप में, प्रोग्रामर की आवश्यकताओं के अनुसार भिन्न हो सकती है। | ||
* घोषणात्मक लक्ष्य: एजेंटों के अनेक लक्ष्य हो सकते हैं जो निर्दिष्ट करते हैं कि एजेंट निकट या दूर के भविष्य में किसी क्षण ''क्या'' प्राप्त करना चाहता है। घोषणात्मक लक्ष्य पर्यावरण की एक स्थिति निर्दिष्ट करते हैं जिसे एजेंट स्थापित करना चाहता है, वे ऐसे कार्यों या प्रक्रियाओं को निर्दिष्ट नहीं करते हैं कि ऐसी स्थितियों को कैसे प्राप्त किया जाए। | * घोषणात्मक लक्ष्य: एजेंटों के अनेक लक्ष्य हो सकते हैं जो निर्दिष्ट करते हैं कि एजेंट निकट या दूर के भविष्य में किसी क्षण ''क्या'' प्राप्त करना चाहता है। घोषणात्मक लक्ष्य पर्यावरण की एक स्थिति निर्दिष्ट करते हैं जिसे एजेंट स्थापित करना चाहता है, वे ऐसे कार्यों या प्रक्रियाओं को निर्दिष्ट नहीं करते हैं कि ऐसी स्थितियों को कैसे प्राप्त किया जाए। | ||
* अंध प्रतिबद्धता रणनीति: एजेंट अपने लक्ष्यों के लिए प्रतिबद्ध होते हैं और लक्ष्य तभी छोड़ते हैं जब वे प्राप्त हो जाते हैं। यह प्रतिबद्धता रणनीति, जिसे साहित्य में ''अंधा'' प्रतिबद्धता रणनीति कहा जाता है, | * अंध प्रतिबद्धता रणनीति: एजेंट अपने लक्ष्यों के लिए प्रतिबद्ध होते हैं और लक्ष्य तभी छोड़ते हैं जब वे प्राप्त हो जाते हैं। यह प्रतिबद्धता रणनीति, जिसे साहित्य में ''अंधा'' प्रतिबद्धता रणनीति कहा जाता है, लक्ष्य एजेंटों द्वारा उपयोग की जाने वाली ''डिफ़ॉल्ट'' रणनीति है। माना जाता है कि संज्ञानात्मक एजेंटों के पास ऐसे लक्ष्य नहीं होते हैं जिनके बारे में उनका मानना है कि वे पहले ही प्राप्त कर चुके हैं, एक बाधा जो लक्ष्य एजेंटों में एक लक्ष्य को छोड़ने के कारण बनाई गई है जब इसे ''पूरी तरह से'' प्राप्त कर लिया गया हो। | ||
* नियम-आधारित कार्रवाई चयन: एजेंट अपनी मान्यताओं और लक्ष्यों को ध्यान में रखते हुए, कार्रवाई का चयन करने के लिए तथाकथित ''कार्रवाई नियमों'' का उपयोग करते हैं। ऐसे नियम इस अर्थ में कार्रवाई की पसंद को ''कम निर्दिष्ट'' कर सकते हैं कि एजेंट के कार्रवाई नियमों को देखते हुए किसी भी समय अनेक कार्य किए जा सकते हैं। उस स्थिति में, एक | * नियम-आधारित कार्रवाई चयन: एजेंट अपनी मान्यताओं और लक्ष्यों को ध्यान में रखते हुए, कार्रवाई का चयन करने के लिए तथाकथित ''कार्रवाई नियमों'' का उपयोग करते हैं। ऐसे नियम इस अर्थ में कार्रवाई की पसंद को ''कम निर्दिष्ट'' कर सकते हैं कि एजेंट के कार्रवाई नियमों को देखते हुए किसी भी समय अनेक कार्य किए जा सकते हैं। उस स्थिति में, एक लक्ष्य एजेंट निष्पादन के लिए एक इच्छानुसार सक्षम कार्रवाई का चयन करेगा। | ||
* नीति-आधारित इरादा मॉड्यूल: एजेंट अपना ध्यान केंद्रित कर सकते हैं और अपने लक्ष्यों के एक उप-समूह को प्राप्त करने पर अपने सभी प्रयास लगा सकते हैं, अपने कार्यों के एक उप-समूह का उपयोग करके, केवल उन लक्ष्यों को प्राप्त करने के लिए प्रासंगिक ज्ञान का उपयोग कर सकते हैं। | * नीति-आधारित इरादा मॉड्यूल: एजेंट अपना ध्यान केंद्रित कर सकते हैं और अपने लक्ष्यों के एक उप-समूह को प्राप्त करने पर अपने सभी प्रयास लगा सकते हैं, अपने कार्यों के एक उप-समूह का उपयोग करके, केवल उन लक्ष्यों को प्राप्त करने के लिए प्रासंगिक ज्ञान का उपयोग कर सकते हैं। लक्ष्य विशिष्ट लक्ष्यों को प्राप्त करने के लिए समर्पित कार्रवाई नियमों और ज्ञान की संरचना के लिए मॉड्यूल प्रदान करता है। अनौपचारिक रूप से, मॉड्यूल को [[माइकल ब्रैटमैन]] के अर्थ में नीति-आधारित इरादों के रूप में देखा जा सकता है। | ||
* ज्ञान स्तर पर संचार: एजेंट जानकारी का आदान-प्रदान करने और अपने कार्यों का समन्वय करने के लिए एक-दूसरे के साथ संवाद कर सकते हैं। लक्ष्य एजेंट ज्ञान प्रतिनिधित्व भाषा का उपयोग करके संवाद करते हैं जिसका उपयोग उनके विश्वासों और लक्ष्यों को दर्शाने के लिए भी किया जाता है। | * ज्ञान स्तर पर संचार: एजेंट जानकारी का आदान-प्रदान करने और अपने कार्यों का समन्वय करने के लिए एक-दूसरे के साथ संवाद कर सकते हैं। लक्ष्य एजेंट ज्ञान प्रतिनिधित्व भाषा का उपयोग करके संवाद करते हैं जिसका उपयोग उनके विश्वासों और लक्ष्यों को दर्शाने के लिए भी किया जाता है। | ||
* परीक्षण: आप | * परीक्षण: आप लक्ष्य के लिए परीक्षण भी लिख सकते हैं। | ||
== लक्ष्य एजेंट कार्यक्रम == | == लक्ष्य एजेंट कार्यक्रम == | ||
Line 23: | Line 23: | ||
|- | |- | ||
|} | |} | ||
एक | एक लक्ष्य एजेंट प्रोग्राम में छह भिन्न-भिन्न खंड होते हैं, जिनमें क्रमशः ज्ञान, विश्वास, लक्ष्य, कार्य नियम, कार्य विनिर्देश और अवधारणा नियम सम्मिलित हैं। उदाहरण के लिए, ज्ञान, विश्वास और लक्ष्यों को ज्ञान प्रतिनिधित्व भाषा जैसे [[प्रोलॉग]], [[उत्तर सेट प्रोग्रामिंग|उत्तर समुच्चय प्रोग्रामिंग]], [[एसक्यूएल]] (या [[ संगणक वैज्ञानिक ]]), या [[योजना डोमेन परिभाषा भाषा]] में दर्शाया जाता है। नीचे, हम प्रोलॉग का उपयोग करके लक्ष्य एजेंट प्रोग्राम के घटकों का वर्णन करते हैं। | ||
लक्ष्य एजेंट प्रोग्राम की समग्र संरचना इस प्रकार दिखती है: | |||
<पूर्व> | <पूर्व> | ||
मुख्य: <एजेंटनाम> { | मुख्य: <एजेंटनाम> { | ||
Line 33: | Line 33: | ||
</पूर्व> | </पूर्व> | ||
लक्ष्य एजेंट की संरचना को दर्शाने के लिए उपयोग किया जाने वाला लक्ष्य एजेंट कोड एक ऐसा एजेंट है जो ब्लॉक की विश्व की समस्याओं को हल करने में सक्षम है। एजेंट की मान्यताएँ ब्लॉक विश्व की वर्तमान स्थिति का प्रतिनिधित्व करती हैं जबकि एजेंट के लक्ष्य लक्ष्य स्थिति का प्रतिनिधित्व करते हैं। आगे सूचीबद्ध ज्ञान अनुभाग में ब्लॉक विश्व डोमेन से संबंधित अतिरिक्त वैचारिक या डोमेन ज्ञान सम्मिलित है। | |||
<syntaxhighlight lang="prolog"> | <syntaxhighlight lang="prolog"> | ||
Line 61: | Line 61: | ||
</पूर्व> | </पूर्व> | ||
एक | एक लक्ष्य एजेंट के पास एक ही समय में अनेक लक्ष्य हो सकते हैं। ये लक्ष्य परस्पर विरोधी भी हो सकते हैं क्योंकि प्रत्येक लक्ष्य को भिन्न-भिन्न समय पर साकार किया जा सकता है। उदाहरण के लिए, एक एजेंट का लक्ष्य मूवी थिएटर में मूवी देखना और (पश्चात् में) घर पर रहना हो सकता है। | ||
लक्ष्य में, लक्ष्य की विभिन्न धारणाएँ प्रतिष्ठित हैं। 'आदिम लक्ष्य' एक कथन है जो ज्ञान आधार में परिभाषित अवधारणाओं के साथ लक्ष्य आधार से अनुसरण करता है। उदाहरण के लिए, <code>tower([a,e,b])</code> एक आदिम लक्ष्य है और हम लिखते हैं <code>लक्ष्य(tower([a,e,b])</code> इसे दर्शाने के लिए. प्रारंभ में, <code>tower([a,e,b])</code> यह भी एक उपलब्धि लक्ष्य है क्योंकि एजेंट यह नहीं मानता है कि a, e के शीर्ष पर है, e, b के शीर्ष पर है, और b टेबल पर है। उपलब्धि लक्ष्य आदिम लक्ष्य हैं जिनके बारे में एजेंट को विश्वास नहीं होता है और उन्हें दर्शाया जाता है <code>a-लक्ष्य(tower([a,e,b])</code>. यह व्यक्त करने में सक्षम होना भी उपयोगी है कि एक लक्ष्य प्राप्त कर लिया गया है। <code>लक्ष्य-a(tower([e,b])</code> उदाहरण के लिए, टावर को व्यक्त करने के लिए उपयोग किया जाता है <code>[e,b]</code> ब्लॉक बी के शीर्ष पर ब्लॉक ई के साथ प्राप्त किया गया है। उपलब्धि लक्ष्यों के साथ-साथ प्राप्त लक्ष्य की धारणा दोनों को परिभाषित किया जा सकता है: | |||
<पूर्व> | <पूर्व> | ||
Line 72: | Line 72: | ||
एजेंट साहित्य में उपलब्धि लक्ष्य की अवधारणा को परिभाषित करने पर एक महत्वपूर्ण साहित्य है (संदर्भ देखें)। | एजेंट साहित्य में उपलब्धि लक्ष्य की अवधारणा को परिभाषित करने पर एक महत्वपूर्ण साहित्य है (संदर्भ देखें)। | ||
लक्ष्य एक नियम-आधारित प्रोग्रामिंग भाषा है। नियम मॉड्यूल में संरचित हैं। लक्ष्य एजेंट का मुख्य मॉड्यूल क्रिया नियमों के माध्यम से क्रियाओं के चयन के लिए एक रणनीति निर्दिष्ट करता है। नीचे दिए गए पहले नियम में कहा गया है कि ब्लॉक दूसरे नियम में कहा गया है कि यदि ब्लॉक X गलत स्थान पर है तो ब्लॉक X को टेबल पर ले जाना एक विकल्प है। | |||
<पूर्व> | <पूर्व> | ||
Line 109: | Line 109: | ||
== संबंधित एजेंट प्रोग्रामिंग भाषाएँ == | == संबंधित एजेंट प्रोग्रामिंग भाषाएँ == | ||
लक्ष्य एजेंट प्रोग्रामिंग भाषा अन्य एजेंट प्रोग्रामिंग भाषाओं से संबंधित है, किन्तु उनसे भिन्न है जैसे कि [https://wayback.archive-it.org/all/20130302203951/ftp://db.stanford.edu/pub/cstr/reports/cs/tr/91/1389/CS-TR-91-1389.pdf AGENT0], [[AgentSpeak]], [[2APL]], [http://www.cs .toronto.edu/cogrobo/main/systems/index.html Golog], [[जैक इंटेलिजेंट एजेंट]]्स, [https://web.archive.org/web/20090317072231/http://jadex.informatik.uni-hamburg.de/bin/view/About/Overview Jadex], और, उदाहरण के लिए, [http://jason.sourceforge.net/ जेसन]। लक्ष्य की विशिष्ट विशेषता [[घोषणात्मक प्रोग्रामिंग]] लक्ष्य की अवधारणा है। एक लक्ष्य एजेंट के लक्ष्य यह बताते हैं कि एक एजेंट क्या प्राप्त करना चाहता है, न कि इसे कैसे प्राप्त करना है। अन्य भाषाओं से भिन्न, लक्ष्य एजेंट अपने लक्ष्य के प्रति प्रतिबद्ध होते हैं और किसी लक्ष्य को तभी हटाते हैं जब वह पूरी तरह से प्राप्त हो जाता है। लक्ष्य घोषणात्मक प्रोग्रामिंग और संज्ञानात्मक एजेंटों के लिए आवश्यक तर्क क्षमताओं पर एक शक्तिशाली फोकस के साथ एक प्रोग्रामिंग ढांचा प्रदान करता है। | |||
==यह भी देखें== | ==यह भी देखें== | ||
Line 122: | Line 122: | ||
{{reflist}} | {{reflist}} | ||
;Notes | ;Notes | ||
Literature on the notion of a | Literature on the notion of a लक्ष्य: | ||
* Lars Braubach, Alexander Pokahr, Daniel Moldt and Winfried Lamersdorf (2004). | * Lars Braubach, Alexander Pokahr, Daniel Moldt and Winfried Lamersdorf (2004). लक्ष्य Representation for BDI Agent Systems, in: The Second International Workshop on Programming Multiagent Systems. | ||
* Philip R. Cohen and Hector J. Levesque (1990). Intention Is Choice with Commitment. Artificial Intelligence 42, 213–261. | * Philip R. Cohen and Hector J. Levesque (1990). Intention Is Choice with Commitment. Artificial Intelligence 42, 213–261. | ||
* Andreas Herzig and D. Longin (2004). C&l intention revisited. In: Proc. of the 9th Int. Conference Principles of Knowledge Representation and Reasoning (KR’04), 527–535. | * Andreas Herzig and D. Longin (2004). C&l intention revisited. In: Proc. of the 9th Int. Conference Principles of Knowledge Representation and Reasoning (KR’04), 527–535. | ||
* Koen V. Hindriks, Frank S. de Boer, Wiebe van der Hoek, John-Jules Ch. Meyer (2000). Agent Programming with Declarative | * Koen V. Hindriks, Frank S. de Boer, Wiebe van der Hoek, John-Jules Ch. Meyer (2000). Agent Programming with Declarative लक्ष्यs. In: Proc. of the 7th Int. Workshop on Intelligent Agents VII (ATAL’00), pp. 228–243. | ||
* Anand S. Rao and Michael P. Georgeff (1993). Intentions and Rational Commitment. Tech. Rep. 8, [[Australian Artificial Intelligence Institute]]. | * Anand S. Rao and Michael P. Georgeff (1993). Intentions and Rational Commitment. Tech. Rep. 8, [[Australian Artificial Intelligence Institute]]. | ||
* Birna van Riemsdijk, Mehdi Dastani, John-Jules Ch. Meyer (2009). | * Birna van Riemsdijk, Mehdi Dastani, John-Jules Ch. Meyer (2009). लक्ष्यs in Conflict: Semantic Foundations of लक्ष्यs in Agent Programming. International Journal of Autonomous Agents and Multi-Agent Systems. | ||
==बाहरी संबंध== | ==बाहरी संबंध== | ||
* [https://goalapl.atlassian.net/wiki/ The | * [https://goalapl.atlassian.net/wiki/ The लक्ष्य Agent Programming Language home] | ||
{{DEFAULTSORT:Goal Agent Programming Language}}[[Category: एजेंट-आधारित प्रोग्रामिंग भाषाएँ]] [[Category: घोषणात्मक प्रोग्रामिंग भाषाएँ]] [[Category: एजेंट-आधारित मॉडल]] | {{DEFAULTSORT:Goal Agent Programming Language}}[[Category: एजेंट-आधारित प्रोग्रामिंग भाषाएँ]] [[Category: घोषणात्मक प्रोग्रामिंग भाषाएँ]] [[Category: एजेंट-आधारित मॉडल]] |
Revision as of 20:49, 5 August 2023
लक्ष्य प्रोग्रामिंग संज्ञानात्मक एजेंटों के लिए एक एजेंट प्रोग्रामिंग भाषा होती है। इस प्रकार लक्ष्य एजेंट अपनी कार्रवाई का विकल्प अपने विश्वासों और लक्ष्यों से प्राप्त करते हैं। सामान्यतः भाषा प्रोग्रामिंग संरचनाओं द्वारा संज्ञानात्मक एजेंटों को डिजाइन और कार्यान्वित करने के लिए मूलभूत बिल्डिंग ब्लॉक प्रदान करती है, जो एक एजेंट की मान्यताओं और लक्ष्यों में हेरफेर करने और उसके निर्णय लेने की संरचना की अनुमति और सुविधा प्रदान करती है। अतः भाषा सामान्य ज्ञान या व्यावहारिक तर्क के आधार पर एक सहज प्रोग्रामिंग ढांचा प्रदान करती है।
सिंहावलोकन
लक्ष्य की मुख्य विशेषताओं में सम्मिलित हैं:
- घोषणात्मक विश्वास: एजेंट अपने पास उपस्तिथ जानकारी और अपने लक्ष्यों को प्राप्त करने के लिए जिस पर्यावरण पर कार्य करते हैं, उसके बारे में उनके विश्वास या ज्ञान का प्रतिनिधित्व करने के लिए एक प्रतीकात्मक, तार्किक भाषा का उपयोग करते हैं। यह ज्ञान प्रतिनिधित्व भाषा लक्ष्य द्वारा निर्धारित नहीं है, किन्तु, सिद्धांत रूप में, प्रोग्रामर की आवश्यकताओं के अनुसार भिन्न हो सकती है।
- घोषणात्मक लक्ष्य: एजेंटों के अनेक लक्ष्य हो सकते हैं जो निर्दिष्ट करते हैं कि एजेंट निकट या दूर के भविष्य में किसी क्षण क्या प्राप्त करना चाहता है। घोषणात्मक लक्ष्य पर्यावरण की एक स्थिति निर्दिष्ट करते हैं जिसे एजेंट स्थापित करना चाहता है, वे ऐसे कार्यों या प्रक्रियाओं को निर्दिष्ट नहीं करते हैं कि ऐसी स्थितियों को कैसे प्राप्त किया जाए।
- अंध प्रतिबद्धता रणनीति: एजेंट अपने लक्ष्यों के लिए प्रतिबद्ध होते हैं और लक्ष्य तभी छोड़ते हैं जब वे प्राप्त हो जाते हैं। यह प्रतिबद्धता रणनीति, जिसे साहित्य में अंधा प्रतिबद्धता रणनीति कहा जाता है, लक्ष्य एजेंटों द्वारा उपयोग की जाने वाली डिफ़ॉल्ट रणनीति है। माना जाता है कि संज्ञानात्मक एजेंटों के पास ऐसे लक्ष्य नहीं होते हैं जिनके बारे में उनका मानना है कि वे पहले ही प्राप्त कर चुके हैं, एक बाधा जो लक्ष्य एजेंटों में एक लक्ष्य को छोड़ने के कारण बनाई गई है जब इसे पूरी तरह से प्राप्त कर लिया गया हो।
- नियम-आधारित कार्रवाई चयन: एजेंट अपनी मान्यताओं और लक्ष्यों को ध्यान में रखते हुए, कार्रवाई का चयन करने के लिए तथाकथित कार्रवाई नियमों का उपयोग करते हैं। ऐसे नियम इस अर्थ में कार्रवाई की पसंद को कम निर्दिष्ट कर सकते हैं कि एजेंट के कार्रवाई नियमों को देखते हुए किसी भी समय अनेक कार्य किए जा सकते हैं। उस स्थिति में, एक लक्ष्य एजेंट निष्पादन के लिए एक इच्छानुसार सक्षम कार्रवाई का चयन करेगा।
- नीति-आधारित इरादा मॉड्यूल: एजेंट अपना ध्यान केंद्रित कर सकते हैं और अपने लक्ष्यों के एक उप-समूह को प्राप्त करने पर अपने सभी प्रयास लगा सकते हैं, अपने कार्यों के एक उप-समूह का उपयोग करके, केवल उन लक्ष्यों को प्राप्त करने के लिए प्रासंगिक ज्ञान का उपयोग कर सकते हैं। लक्ष्य विशिष्ट लक्ष्यों को प्राप्त करने के लिए समर्पित कार्रवाई नियमों और ज्ञान की संरचना के लिए मॉड्यूल प्रदान करता है। अनौपचारिक रूप से, मॉड्यूल को माइकल ब्रैटमैन के अर्थ में नीति-आधारित इरादों के रूप में देखा जा सकता है।
- ज्ञान स्तर पर संचार: एजेंट जानकारी का आदान-प्रदान करने और अपने कार्यों का समन्वय करने के लिए एक-दूसरे के साथ संवाद कर सकते हैं। लक्ष्य एजेंट ज्ञान प्रतिनिधित्व भाषा का उपयोग करके संवाद करते हैं जिसका उपयोग उनके विश्वासों और लक्ष्यों को दर्शाने के लिए भी किया जाता है।
- परीक्षण: आप लक्ष्य के लिए परीक्षण भी लिख सकते हैं।
लक्ष्य एजेंट कार्यक्रम
File:Elevatorworld.png | |
An example blocks world problem
|
Another Example: A GOAL Multi-Agent Elevator Controller[1]
|
एक लक्ष्य एजेंट प्रोग्राम में छह भिन्न-भिन्न खंड होते हैं, जिनमें क्रमशः ज्ञान, विश्वास, लक्ष्य, कार्य नियम, कार्य विनिर्देश और अवधारणा नियम सम्मिलित हैं। उदाहरण के लिए, ज्ञान, विश्वास और लक्ष्यों को ज्ञान प्रतिनिधित्व भाषा जैसे प्रोलॉग, उत्तर समुच्चय प्रोग्रामिंग, एसक्यूएल (या संगणक वैज्ञानिक ), या योजना डोमेन परिभाषा भाषा में दर्शाया जाता है। नीचे, हम प्रोलॉग का उपयोग करके लक्ष्य एजेंट प्रोग्राम के घटकों का वर्णन करते हैं।
लक्ष्य एजेंट प्रोग्राम की समग्र संरचना इस प्रकार दिखती है: <पूर्व> मुख्य: <एजेंटनाम> {
<अनुभाग>
}
</पूर्व>
लक्ष्य एजेंट की संरचना को दर्शाने के लिए उपयोग किया जाने वाला लक्ष्य एजेंट कोड एक ऐसा एजेंट है जो ब्लॉक की विश्व की समस्याओं को हल करने में सक्षम है। एजेंट की मान्यताएँ ब्लॉक विश्व की वर्तमान स्थिति का प्रतिनिधित्व करती हैं जबकि एजेंट के लक्ष्य लक्ष्य स्थिति का प्रतिनिधित्व करते हैं। आगे सूचीबद्ध ज्ञान अनुभाग में ब्लॉक विश्व डोमेन से संबंधित अतिरिक्त वैचारिक या डोमेन ज्ञान सम्मिलित है।
knowledge{
block(a), block(b), block(c), block(d), block(e), block(f), block(g).
clear(table).
clear(X) :- block(X), not(on(Y,X)).
tower([X]) :- on(X,table).
tower([X,Y|T]) :- on(X,Y), tower([Y|T]).
}
ध्यान दें कि ज्ञान अनुभाग में सूचीबद्ध सभी ब्लॉक विश्वास अनुभाग में फिर से दिखाई देते हैं क्योंकि ब्लॉकों की संपूर्ण कॉन्फ़िगरेशन को चिह्नित करने के लिए प्रत्येक ब्लॉक की स्थिति को निर्दिष्ट करने की आवश्यकता होती है।
<पूर्व> विश्वास{
ऑन(ए,बी), ऑन(बी,सी), ऑन(सी,टेबल), ऑन(डी,ई), ऑन(ई,टेबल), ऑन(एफ,जी), ऑन(जी,टेबल)।
}
</पूर्व>
सभी ज्ञात ब्लॉक लक्ष्य अनुभाग में भी उपस्तिथ हैं जो एक लक्ष्य विन्यास निर्दिष्ट करता है जो सभी ब्लॉकों का पुन: उपयोग करता है। <पूर्व> लक्ष्य{
ऑन (ए, ई), ऑन (बी, टेबल), ऑन (सी, टेबल), ऑन (डी, सी), ऑन (ई, बी), ऑन (एफ, डी), ऑन (जी, टेबल)।
}
</पूर्व>
एक लक्ष्य एजेंट के पास एक ही समय में अनेक लक्ष्य हो सकते हैं। ये लक्ष्य परस्पर विरोधी भी हो सकते हैं क्योंकि प्रत्येक लक्ष्य को भिन्न-भिन्न समय पर साकार किया जा सकता है। उदाहरण के लिए, एक एजेंट का लक्ष्य मूवी थिएटर में मूवी देखना और (पश्चात् में) घर पर रहना हो सकता है।
लक्ष्य में, लक्ष्य की विभिन्न धारणाएँ प्रतिष्ठित हैं। 'आदिम लक्ष्य' एक कथन है जो ज्ञान आधार में परिभाषित अवधारणाओं के साथ लक्ष्य आधार से अनुसरण करता है। उदाहरण के लिए, tower([a,e,b])
एक आदिम लक्ष्य है और हम लिखते हैं लक्ष्य(tower([a,e,b])
इसे दर्शाने के लिए. प्रारंभ में, tower([a,e,b])
यह भी एक उपलब्धि लक्ष्य है क्योंकि एजेंट यह नहीं मानता है कि a, e के शीर्ष पर है, e, b के शीर्ष पर है, और b टेबल पर है। उपलब्धि लक्ष्य आदिम लक्ष्य हैं जिनके बारे में एजेंट को विश्वास नहीं होता है और उन्हें दर्शाया जाता है a-लक्ष्य(tower([a,e,b])
. यह व्यक्त करने में सक्षम होना भी उपयोगी है कि एक लक्ष्य प्राप्त कर लिया गया है। लक्ष्य-a(tower([e,b])
उदाहरण के लिए, टावर को व्यक्त करने के लिए उपयोग किया जाता है [e,b]
ब्लॉक बी के शीर्ष पर ब्लॉक ई के साथ प्राप्त किया गया है। उपलब्धि लक्ष्यों के साथ-साथ प्राप्त लक्ष्य की धारणा दोनों को परिभाषित किया जा सकता है:
<पूर्व> ए-लक्ष्य(सूत्र) ::= लक्ष्य(सूत्र), नहीं(बेल(सूत्र)) लक्ष्य-ए(सूत्र) ::= लक्ष्य(सूत्र), बेल(सूत्र) </पूर्व>
एजेंट साहित्य में उपलब्धि लक्ष्य की अवधारणा को परिभाषित करने पर एक महत्वपूर्ण साहित्य है (संदर्भ देखें)।
लक्ष्य एक नियम-आधारित प्रोग्रामिंग भाषा है। नियम मॉड्यूल में संरचित हैं। लक्ष्य एजेंट का मुख्य मॉड्यूल क्रिया नियमों के माध्यम से क्रियाओं के चयन के लिए एक रणनीति निर्दिष्ट करता है। नीचे दिए गए पहले नियम में कहा गया है कि ब्लॉक दूसरे नियम में कहा गया है कि यदि ब्लॉक X गलत स्थान पर है तो ब्लॉक X को टेबल पर ले जाना एक विकल्प है।
<पूर्व>
मुख्य मॉड्यूल{
कार्यक्रम{ यदि ए-लक्ष्य(टावर([एक्स,वाई|टी])), बेल(टावर([वाई|टी])) तो आगे बढ़ें(एक्स,वाई)। यदि एक-लक्ष्य(टॉवर([X|T])) तो आगे बढ़ें(X,टेबल)। }
}
</पूर्व>
कार्रवाइयां, जैसे कि ऊपर उपयोग की गई चाल कार्रवाई, पूर्व शर्तों और उत्तर शर्तों के स्टैनफोर्ड अनुसंधान संस्थान समस्या समाधानकर्ता विनिर्देश का उपयोग करके निर्दिष्ट की जाती है। एक पूर्व शर्त निर्दिष्ट करती है कि कार्रवाई कब की जा सकती है (सक्षम है)। एक पोस्टकंडिशन निर्दिष्ट करती है कि कार्रवाई करने के प्रभाव क्या होंगे।
<पूर्व> क्रियाविशेषता{
चाल(एक्स,वाई) { पूर्व {स्पष्ट(एक्स), स्पष्ट(वाई), पर(एक्स,जेड), नहीं(एक्स=वाई) } पोस्ट {नहीं(पर(एक्स,जेड)), पर(एक्स,वाई) }
}
</पूर्व>
अंत में, ईवेंट मॉड्यूल में पर्यावरण से प्राप्त अवधारणाओं जैसे ईवेंट को संसाधित करने के नियम सम्मिलित होते हैं। नीचे दिया गया नियम निर्दिष्ट करता है कि प्राप्त सभी धारणाओं के लिए जो इंगित करती हैं कि ब्लॉक
<पूर्व>
इवेंट मॉड्यूल{
कार्यक्रम{ सभी के लिए bel( अवधारणा(on(X,Y)), on(X,Z), not(Y=Z) ) do Insert(on(X,Y), not(on(X,Z))). }
}
</पूर्व>
संबंधित एजेंट प्रोग्रामिंग भाषाएँ
लक्ष्य एजेंट प्रोग्रामिंग भाषा अन्य एजेंट प्रोग्रामिंग भाषाओं से संबंधित है, किन्तु उनसे भिन्न है जैसे कि AGENT0, AgentSpeak, 2APL, .toronto.edu/cogrobo/main/systems/index.html Golog, जैक इंटेलिजेंट एजेंट्स, Jadex, और, उदाहरण के लिए, जेसन। लक्ष्य की विशिष्ट विशेषता घोषणात्मक प्रोग्रामिंग लक्ष्य की अवधारणा है। एक लक्ष्य एजेंट के लक्ष्य यह बताते हैं कि एक एजेंट क्या प्राप्त करना चाहता है, न कि इसे कैसे प्राप्त करना है। अन्य भाषाओं से भिन्न, लक्ष्य एजेंट अपने लक्ष्य के प्रति प्रतिबद्ध होते हैं और किसी लक्ष्य को तभी हटाते हैं जब वह पूरी तरह से प्राप्त हो जाता है। लक्ष्य घोषणात्मक प्रोग्रामिंग और संज्ञानात्मक एजेंटों के लिए आवश्यक तर्क क्षमताओं पर एक शक्तिशाली फोकस के साथ एक प्रोग्रामिंग ढांचा प्रदान करता है।
यह भी देखें
- एजेंट संचार भाषा
- स्वायत्त एजेंट
- संज्ञानात्मक वास्तुकला
- घोषणात्मक प्रोग्रामिंग
- व्यावहारिक तर्क
- तर्कसंगत एजेंट
संदर्भ
- ↑ The elevator simulator is originally written by Chris Dailey and Neil McKellar and is available in its original form via http://sourceforge.net/projects/elevatorsim.
- Notes
Literature on the notion of a लक्ष्य:
- Lars Braubach, Alexander Pokahr, Daniel Moldt and Winfried Lamersdorf (2004). लक्ष्य Representation for BDI Agent Systems, in: The Second International Workshop on Programming Multiagent Systems.
- Philip R. Cohen and Hector J. Levesque (1990). Intention Is Choice with Commitment. Artificial Intelligence 42, 213–261.
- Andreas Herzig and D. Longin (2004). C&l intention revisited. In: Proc. of the 9th Int. Conference Principles of Knowledge Representation and Reasoning (KR’04), 527–535.
- Koen V. Hindriks, Frank S. de Boer, Wiebe van der Hoek, John-Jules Ch. Meyer (2000). Agent Programming with Declarative लक्ष्यs. In: Proc. of the 7th Int. Workshop on Intelligent Agents VII (ATAL’00), pp. 228–243.
- Anand S. Rao and Michael P. Georgeff (1993). Intentions and Rational Commitment. Tech. Rep. 8, Australian Artificial Intelligence Institute.
- Birna van Riemsdijk, Mehdi Dastani, John-Jules Ch. Meyer (2009). लक्ष्यs in Conflict: Semantic Foundations of लक्ष्यs in Agent Programming. International Journal of Autonomous Agents and Multi-Agent Systems.