सॉफ्टवेयर एजेंट

कंप्यूटर विज्ञान में सॉफ्टवेयर एजेंट या सॉफ्टवेयर एआई कंप्यूटर प्रोग्राम है जो एजेंसी के साथ उपयोगकर्ता या अन्य प्रोग्राम के लिए कार्य करता है, जो लैटिन 'एगेरे' से निकला है: इस प्रकार किसी के द्वारा किये जाने वाले कार्य को करने के लिए जो संयोजन होता है इसकी ओर से इस प्रकार के कार्य का तात्पर्य प्राधिकरण से है कि कौन सा कार्य किस प्रकार करना हैं, यदि कोई उचित साधन है तो उसकी सहायता से उक्त कार्य को किया जाता हैं। एजेंट्स को बोलचाल की भाषा में रोबोट से बॉट  के रूप में जाना जाता है। उन्हें सन्निहित किया जाता है, जैसे कि निष्पादन को रोबोट बॉडी के साथ जोड़ा जाता है, या सॉफ़्टवेयर जैसे कि स्मार्टफोन या अन्य कंप्यूटर पर चलने वाले चैटबॉट के रूप में प्रयोग किया जाता हैं। सॉफ़्टवेयर एजेंट स्वायत्त हो सकते हैं या अन्य एजेंट्स या लोगों के साथ मिलकर कार्य करते हैं। इस कारण लोगों के साथ संपर्क स्थापित करने वाले सॉफ़्टवेयर एजेंट जैसे चैटबॉट्स, मानव-रोबोट बातचीत वातावरण में मानव जैसे गुण हो सकते हैं जैसे कि प्राकृतिक भाषा समझ और भाषण, व्यक्तित्व या ह्यूमनॉइड फॉर्म या एसिमो को उपयोग करके देख सकते हैं।

संबंधित और व्युत्पन्न अवधारणाओं में बुद्धिमान एजेंट सम्मिलित हैं, विशेष रूप से कृत्रिम बुद्धि के कुछ पहलुओं को प्रदर्शित करना, जैसे तर्क, स्वायत्त एजेंट जो अपने उद्देश्यों को प्राप्त करने के विधियों को संशोधित करने में सक्षम रहता हैं, इसके वितरित एजेंट्स में शारीरिक रूप से अलग कंप्यूटर पर निष्पादित किया जाता हैं, इसका उदाहरण बहु-एजेंट सिस्टम या मल्टी-एजेंट सिस्टम है जो वितरित एजेंट जो उद्देश्य को प्राप्त करने के लिए साथ कार्य करते हैं, जो अकेले कार्य करने वाले एजेंट द्वारा पूरा नहीं किया जा सकता है, और साथ ही मोबाइल एजेंट जो विभिन्न प्रोसेसर पर अपने निष्पादन को स्थानांतरित कर सकते हैं।

अवधारणाएं
स्वायत्त सॉफ़्टवेयर एजेंट के मूल गुण हैं कि एजेंट: एजेंट शब्द सॉफ्टवेयर बुद्धिमत्ता, विचारों या अवधारणाओं का वर्णन करता है, जो ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग टर्म्स जैसे कंप्यूटर प्रोग्रामिंग विधि, फंक्शन इंजीनियरिंग और ऑब्जेक्ट्स के समान रहता है। इस प्रकार किसी एजेंट की अवधारणा जटिल सॉफ्टवेयर इकाई का वर्णन करने के लिए सुविधाजनक और शक्तिशाली विधि प्रदान करती है जो स्वयं की ओर से कार्यों को पूरा करने के लिए कुछ सीमा तक स्वायत्तता के साथ कार्य करने में सक्षम रहते हैं। अपितु वस्तुओं के विपरीत, जिन्हें विधियों और विशेषताओं के संदर्भ में परिभाषित किया जाता है, एजेंट को उसके व्यवहार के संदर्भ में परिभाषित किया जाता है। विभिन्न लेखकों ने एजेंट्स की अलग-अलग परिभाषाएँ प्रस्तावित की हैं, इनमें सामान्यतः अवधारणाएँ सम्मिलित हैं जैसे:
 * किसी कार्य के लिए कठोरता से आह्वान नहीं किया जाता है, बल्कि स्वयं को सक्रिय करता हैं,
 * स्वयं सामर्थ्य के अनुसार प्रतीक्षा स्थिति में संदर्भ को समझते हुए निवास कर सकते हैं,
 * प्रारंभिक स्थितियों पर होस्ट पर स्थिति चलाने के लिए मिल सकता है,
 * उपयोगकर्ता की सहभागिता की आवश्यकता नहीं है,
 * संचार सहित अन्य कार्यों का आह्वान कर सकते हैं।
 * दृढ़ता जो कोड की मांग किए जाने पर निष्पादित नहीं करता है, अपितु यह निरंतर चलता रहता है और स्वयं के लिए निर्णय लेता है कि उसे कब कुछ गतिविधि करनी चाहिए।
 * स्वायत्तता एजेंट्स के पास कार्य चयन, प्राथमिकता, लक्ष्य-निर्देशित व्यवहार, मानवीय हस्तक्षेप के बिना निर्णय लेने की क्षमता है।
 * सामाजिक क्षमता जिसके लिए एजेंट किसी प्रकार के संचार और समन्वय के माध्यम से अन्य घटकों को सम्मिलित करने में सक्षम हैं, वे किसी कार्य में सहयोग कर सकते हैं।
 * प्रतिक्रियात्मकता जिसके लिए एजेंट उस संदर्भ को समझते हैं जिसमें वे कार्य करते हैं और उचित रूप से प्रतिक्रिया करते हैं।

फंक्शन्स से एजेंट्स को अलग करना
सभी एजेंट प्रोग्राम हैं, अपितु सभी प्रोग्राम एजेंट नहीं हैं। संबंधित अवधारणाओं के साथ शब्द की तुलना करने से इसका अर्थ स्पष्ट करने में सहायता मिल सकती है। इस प्रकार फ्रैंकलिन एंड ग्रेसर (1997) चार प्रमुख धारणाओं पर चर्चा करें जो एजेंट्स को स्वैच्छिक फंक्शन्स से अलग करती हैं: पर्यावरण पर प्रतिक्रिया, स्वायत्तता, लक्ष्य-उन्मुखीकरण और दृढ़ता इसका प्रमुख उदाहरण हैं।

वस्तुओं से सहजता के लिए विशिष्ट एजेंट

 * एजेंट वस्तु (कंप्यूटर विज्ञान) से अधिक स्वायत्त हैं।
 * एजेंट्स का व्यवहार लचीला होता है: प्रतिक्रियाशील प्रोग्रामिंग, सक्रिय, सामाजिक इसका प्रमुख उदाहरण हैं।
 * एजेंट्स के पास नियंत्रण का कम से कम थ्रेड (कंप्यूटर विज्ञान) होता है अपितु अधिक हो सकता है।

विशेषज्ञ प्रणालियों से विशिष्ट एजेंट्स

 * विशेषज्ञ प्रणालियाँ उनके पर्यावरण से जुड़ी नहीं हैं।
 * विशेषज्ञ प्रणालियाँ प्रतिक्रियाशील, सक्रिय व्यवहार के लिए डिज़ाइन नहीं की गई हैं।
 * विशेषज्ञ प्रणालियाँ सामाजिक क्षमता पर विचार नहीं करती हैं।

एआई में बुद्धिमान एजेंट्स से बुद्धिमान सॉफ्टवेयर एजेंट्स को अलग करना

 * इंटेलिजेंट एजेंट (तर्कसंगत एजेंट के रूप में भी जाना जाता है) केवल कंप्यूटर प्रोग्राम नहीं हैं: वे मशीन, इंसान, इंसानों के समुदाय (जैसे व्यावसायिक संस्थाएं) या लक्ष्य-निर्देशित व्यवहार करने में सक्षम कुछ भी हो सकते हैं।

सॉफ्टवेयर एजेंट्स का प्रभाव
सॉफ़्टवेयर एजेंट जटिल या दोहराए जाने वाले कार्यों को स्वचालित करके अपने अंतिम उपयोगकर्ताओं को विभिन्न लाभ प्रदान कर सकते हैं। चूंकि इस तकनीक के संगठनात्मक और सांस्कृतिक प्रभाव हैं जिन्हें सॉफ़्टवेयर एजेंट्स को लागू करने से पहले विचार करने की आवश्यकता है।

कार्य संतुष्टि और कार्य संतुष्टि प्रभाव
लोग सफलता की अनुभूति प्रदान करने वाले आसान कार्य करना पसंद करते हैं, जब तक कि सरल कार्य की पुनरावृत्ति समग्र आउटपुट को प्रभावित न कर रही हो। सामान्य रूप से प्रशासनिक आवश्यकताओं को पूरा करने के लिए सॉफ्टवेयर एजेंट्स को लागू करने से कार्य संतुष्टि में पर्याप्त वृद्धि होती है, क्योंकि अपने स्वयं के कार्य को प्रशासित करने से कार्यकर्ता कभी भी खुश नहीं होता है। इस प्रकार मुक्त किये गये प्रयासों को व्यक्तिगत कार्य के पर्याप्त कार्यों में उच्च स्तर की व्यस्तता के लिए कार्य करता है। इसलिए, सॉफ्टवेयर एजेंट स्व-नियंत्रित कार्य को लागू करने के लिए मौलिक चीजें प्रदान कर सकते हैं, इस प्रकार पदानुक्रमित नियंत्रण और हस्तक्षेप से मुक्त हो सकते हैं। आवश्यक औपचारिक समर्थन के लिए सॉफ्टवेयर एजेंट्स के आवेदन द्वारा ऐसी शर्तों को सुरक्षित किया जा सकता है।

सांस्कृतिक प्रभाव
सॉफ्टवेयर एजेंट्स के कार्यान्वयन के सांस्कृतिक प्रभावों में विश्वास की पीड़ा, कौशल का क्षरण, गोपनीयता की कमी और सामाजिक भिन्नता सम्मिलित हैं। कुछ उपयोगकर्ता सॉफ्टवेयर अनुप्रयोगों के लिए महत्वपूर्ण कार्यों को पूर्ण रूप से सौंपने में पूरी तरह से सहजता से उपयोग नहीं कर सकते हैं। जो लोग पूर्ण रूप से बुद्धिमान एजेंट्स पर विश्वास करना प्रारंभ करते हैं, वे महत्वपूर्ण कौशल खो सकते हैं, उदाहरण के लिए, सूचना साक्षरता से संबंधित रहता हैं। उपयोगकर्ता की ओर से कार्य करने के लिए, सॉफ़्टवेयर एजेंट को उपयोगकर्ता की प्रोफ़ाइल की पूरी समझ होनी चाहिए, जिसमें उसकी व्यक्तिगत प्राथमिकताएँ भी सम्मिलित हैं। यह इसके संदर्भ में, अप्रत्याशित गोपनीयता के मुद्दों को जन्म दे सकता है। जब उपयोगकर्ता अपने सॉफ़्टवेयर एजेंट्स पर अधिक विश्वास करना प्रारंभ करते हैं, विशेष रूप से संचार गतिविधियों के लिए, वे अन्य मानव उपयोगकर्ताओं के साथ संपर्क खो सकते हैं और दुनिया को अपने एजेंट्स की नज़र से देख सकते हैं। इस प्रकार बुद्धिमान एजेंट प्रौद्योगिकियों के साथ व्यवहार करते समय एजेंट शोधकर्ताओं और उपयोगकर्ताओं को इन परिणामों पर विचार करना चाहिए।

इतिहास
किसी एजेंट की अवधारणा को अभिनेता मॉडल या हेविट के एक्टर मॉडल (हेविट, 1977) में देखा जा सकता है - स्व-निहित, इंटरैक्टिव और समवर्ती-निष्पादित वस्तु, आंतरिक स्थिति और संचार क्षमता रखने वाली होती हैं।

इसके अधिक अकादमिक होने के लिए, सॉफ्टवेयर एजेंट सिस्टम मल्टी-एजेंट सिस्टम्स (एमएएस) का प्रत्यक्ष विकास है। एमएएस वितरित आर्टिफिशियल इंटेलिजेंस (डीएआई), डिस्ट्रीब्यूटेड प्रॉब्लम सॉल्विंग (डीपीएस) और पैरेलल AI (PAI) से विकसित हुआ, इस प्रकार डीएआई और AI से सभी विशेषताओं को अच्छे और बुरे दोनों प्रकारो से गुणों के रूप में मिला हैं।

जॉन स्कली के 1987 के "ज्ञान नेविगेटर" वीडियो ने एंड-यूजर्स और एजेंट्स के बीच संबंधों की छवि को चित्रित किया। सबसे पहले आदर्श होने के नाते, इस क्षेत्र ने टुकड़े-टुकड़े, नीचे-ऊपर दृष्टिकोण के अतरिक्त असफल टॉप-डाउन कार्यान्वयन की श्रृंखला का अनुभव किया। एजेंट प्रकारों की श्रेणी अब (1990 से) व्यापक है: WWW, खोज इंजन, आदि।

क्रेता एजेंट (शॉपिंग बॉट)
क्रेता एजेंट माल और सेवाओं के बारे में जानकारी प्राप्त करने के लिए नेटवर्क (जैसे इंटरनेट) के आसपास यात्रा करते हैं। ये एजेंट, जिन्हें 'शॉपिंग बॉट्स' के रूप में भी जाना जाता है, कमोडिटी उत्पादों जैसे सीडी, किताबें, इलेक्ट्रॉनिक घटक और अन्य आकार-फिट-सभी उत्पादों के लिए बहुत कुशलता से कार्य करते हैं। खरीदार एजेंट्स को सामान्यतः ई-कॉमर्स और पारंपरिक व्यवसायों में उपयोग की जाने वाली डिजिटल भुगतान सेवाओं की अनुमति देने के लिए अनुकूलित किया जाता है।

उपयोगकर्ता एजेंट (व्यक्तिगत एजेंट)
उपयोगकर्ता एजेंट, या व्यक्तिगत एजेंट, बुद्धिमान एजेंट होते हैं जो आपकी ओर से प्रभावित करते हैं। इस श्रेणी में वे बुद्धिमान एजेंट आते हैं जो पहले से ही निम्नलिखित कार्य कर चुके हैं, या शीघ्र ही करने वाले हैं:
 * अपने ई-मेल की जांच करें, इसे उपयोगकर्ता के वरीयता क्रम के अनुसार क्रमबद्ध करें, और महत्वपूर्ण ईमेल आने पर आपको सतर्क करें।
 * कंप्यूटर गेम को अपने प्रतिद्वंद्वी के रूप में खेलें या आपके लिए खेल क्षेत्रों को प्रभावित करें।
 * आपके लिए अनुकूलित समाचार रिपोर्ट एकत्रित करें। इनके कई संस्करण हैं, जिनमें सीएनएन भी सम्मिलित है।
 * अपनी पसंद के विषय पर अपने लिए जानकारी प्राप्त करें।
 * भविष्य में संदर्भ के लिए आपकी जानकारी संग्रहीत करते हुए, वेब पर स्वचालित रूप से आपके लिए फ़ॉर्म भरें।
 * उन वेब पेजों को स्कैन करें जो वहां की जानकारी के महत्वपूर्ण भाग का गठन करने वाले टेक्स्ट को ढूंढ रहे हैं और हाइलाइट कर रहे हैं।
 * अपने गहरे डर से लेकर खेल तक के विषयों पर चर्चा करें।
 * ज्ञात जॉब बोर्डों को स्कैन करके और वांछित मानदंडों को पूरा करने वाले अवसरों को रिज्यूमे भेजकर ऑनलाइन जॉब सर्च कर्तव्यों की सुविधा प्रदान करें।
 * विषम सामाजिक नेटवर्क में प्रोफ़ाइल तुल्यकाल रहता हैं।

जाँच-और-जाँच (भविष्य कहनेवाला) एजेंट
जाँच और जाँच एजेंट का उपयोग उपकरण, सामान्यतः कंप्यूटर सिस्टम पर निरीक्षण और रिपोर्ट करने के लिए किया जाता है। इस प्रकार एजेंट कंपनी के इन्वेंट्री स्तर पर नज़र रख सकते हैं, प्रतिस्पर्धियों की कीमतों का निरीक्षण कर सकते हैं और उन्हें कंपनी को वापस भेज सकते हैं, इनसाइडर ट्रेडिंग और इन वकतव्यो के कारण स्टॉक्स में परिवर्तन देख सकते हैं। उदाहरण के लिए नासा की जेट प्रोपल्शन लेबोरेटरी में एजेंट है जो लागत कम रखने के लिए इन्वेंट्री, प्लानिंग, शेड्यूल इक्विपमेंट ऑर्डर की जाँच करता है और खाद्य भंडारण सुविधाओं का प्रबंधन करता है। ये एजेंट सामान्यतः जटिल कंप्यूटर नेटवर्क की जाँच करते हैं जो नेटवर्क से जुड़े प्रत्येक कंप्यूटर के कॉन्फ़िगरेशन का ट्रैक रख सकते हैं।

जाँच-और-जाँच एजेंट्स का विशेष स्थिति सामरिक संचालन के समय मानव निर्णय लेने की प्रक्रिया का अनुकरण करने के लिए उपयोग किए जाने वाले एजेंट्स के संगठन हैं। एजेंट संपत्ति की स्थिति (गोला-बारूद, उपलब्ध हथियार, परिवहन के लिए प्लेटफॉर्म आदि) की जाँच करते हैं और उच्च स्तर के एजेंट्स से लक्ष्य (मिशन) प्राप्त करते हैं। एजेंट तब संपत्ति के साथ लक्ष्य का पीछा करते हैं, लक्ष्य प्राप्ति को अधिकतम करते हुए संपत्ति के व्यय को कम करते हैं। इसके लिए पोप्पलवेल, एजेंट और प्रयोज्यता की ओर देख सकते हैं।

डेटा खनन एजेंट
यह एजेंट कई अलग-अलग स्रोतों से जानकारी की बहुत अधिक मात्रा में रुझान और पैटर्न खोजने के लिए सूचना प्रौद्योगिकी का उपयोग करता है। उपयोगकर्ता जो भी जानकारी मांग रहे हैं उसे खोजने के लिए उपयोगकर्ता इस जानकारी के माध्यम से सॉर्ट कर सकते हैं।

एक डेटा माइनिंग एजेंट सूचना की खोज करने वाले डेटा वेयरहाउस में कार्य करता है। 'डेटा वेयरहाउस' कई अलग-अलग स्रोतों से जानकारी साथ लाता है। डेटा माइनिंग डेटा वेयरहाउस के माध्यम से जानकारी खोजने की प्रक्रिया है जिसका उपयोग आप कार्रवाई करने के लिए कर सकते हैं, जैसे कि बिक्री बढ़ाने के विधि या उन ग्राहकों को रखने के लिए जो ख़राब होने पर विचार कर रहे हैं।

'वर्गीकरण' डेटा माइनिंग के सबसे सामान्य प्रकारों में से है, जो सूचनाओं में पैटर्न ढूंढता है और उन्हें विभिन्न वर्गों में वर्गीकृत करता है। डेटा माइनिंग एजेंट रुझानों या प्रमुख संकेतक में प्रमुख परिवर्तनों का भी पता लगा सकते हैं और नई जानकारी की उपस्थिति का पता लगा सकते हैं और आपको इसके प्रति सचेत कर सकते हैं। उदाहरण के लिए, एजेंट अर्थव्यवस्था के लिए निर्माण उद्योग में गिरावट का पता लगा सकता है, इस रिलेटेड सूचना के आधार पर निर्माण कंपनियाँ कर्मचारियों को कार्य पर रखने या निकालने या उपकरणों की खरीद या पट्टे पर लेने के बारे में बुद्धिमान निर्णय लेने में सक्षम होंगी जिससे कि उनकी फर्म के लिए सबसे उपयुक्त होता हैं।

नेटवर्किंग और संचार एजेंट
वर्तमान बुद्धिमान एजेंट्स के कुछ अन्य उदाहरणों में कुछ अवांछनीय ई - मेल) फ़िल्टर, गेम कंप्यूटर गेम बॉट और सर्वर मॉनिटरिंग टूल सम्मिलित हैं। इस प्रकार खोजे गए इंजन अनुक्रमण बॉट भी बुद्धिमान एजेंट के रूप में योग्य हैं।
 * उपयोगकर्ता एजेंट - वर्ल्ड वाइड वेब ब्राउज़ करने के लिए किया जाता हैं।
 * मेल ट्रांसफर एजेंट - माइक्रोसॉफ्ट आउटलुक जैसे ई-मेल की सेवा के लिए। क्यों? यह पीओपी3 मेल सर्वर के साथ संचार करता है, उपयोगकर्ताओं को पोस्ट ऑफिस प्रोटोकॉल कमांड प्रोटोकॉल को समझे बिना किया जताा हैं। इसमें नियम सेट भी हैं जो उपयोगकर्ता के लिए मेल फ़िल्टर करते हैं, इस प्रकार उन्हें इसे स्वयं करने की समस्या से बचाते हैं।
 * सरल नेटवर्क प्रबंधन प्रोटोकॉल एजेंट
 * यूनिक्स-शैली के नेटवर्किंग सर्वर में, अपाचे एचटीटीपी सर्वर एचटीटीपी डेमन है जो वर्ल्ड वाइड वेब के मूल में हाइपरटेक्स्ट परहस्त शिष्टाचार को लागू करता है।
 * प्रबंधन एजेंट दूरसंचार उपकरणों का प्रबंधन करते थे
 * सुरक्षा योजना या 3 डी कंप्यूटर ग्राफिक्स के लिए क्राऊडी अनुकरण,
 * वायरलेस बीकनिंग एजेंट वायरलेस लॉक या इलेक्ट्रॉनिक पट्टा को लागू करने के लिए होस्ट की गई अधिक जटिल सॉफ़्टवेयर एजेंट्स के संयोजन के लिए सरल प्रक्रिया होस्ट की गई एकल टास्किंग इकाई है। वायरलेस रिसीवर पर किया जाता हैं।
 * ऑनलाइन समूहों में समन्वय का अनुकूलन करने के लिए स्वायत्त एजेंट्स ध्वनि से संयोजित का उपयोग किया जाता हैं।

सॉफ्टवेयर विकास एजेंट (उर्फ सॉफ्टवेयर बॉट)
सॉफ्टवेयर इंजीनियरिंग में सॉफ्टवेयर बॉट महत्वपूर्ण होते जा रहे हैं।

सुरक्षा एजेंट
एजेंट्स का उपयोग सॉफ़्टवेयर सुरक्षा एप्लिकेशन में विभिन्न प्रकार की सामग्री को इंटरसेप्ट करने, जाँचने और उस पर कार्य करने के लिए भी किया जाता है। उदाहरण में सम्मिलित हैं:
 * डेटा हानि रोकथाम सॉफ्टवेयर या डेटा लॉस प्रिवेंशन (डीएलपी) एजेंट - कंप्यूटर या नेटवर्क पर उपयोगकर्ता संचालन की जांच करें, अनुमत कार्यों को निर्दिष्ट करने वाली नीतियों की तुलना करें, और उचित प्रभाव करें, इस प्रकार जैसे अनुमति दी जाती हैं, चेतावनी दी जाती हैं उसी प्रकार ब्लॉक भी करते हैं। ईडीआर कार्यों को करने के लिए अधिक व्यापक डीएलपी एजेंट्स का भी उपयोग किया जा सकता है।
 * एंडपॉइंट डिटेक्शन एंड रिस्पांस (ईडीआर) एजेंट - दुर्भावनापूर्ण गतिविधियों का पता लगाने और प्रतिक्रिया देने के लिए एंडपॉइंट कंप्यूटर पर सभी गतिविधियों की जाँच करें
 * क्लाउड एक्सेस सिक्योरिटी ब्रोकर (सीएएसबी) एजेंट - डीएलपी एजेंट्स के समान, चूंकि क्लाउड एप्लिकेशन पर जाने वाले ट्रैफ़िक की जांच करना

डिजाइन मुद्दे
एजेंट-आधारित प्रणालियों के विकास में विचार करने योग्य मुद्दों में सम्मिलित हैं
 * कार्य कैसे निर्धारित किए जाते हैं और कार्यों का सिंक्रनाइज़ेशन कैसे प्राप्त किया जाता है
 * एजेंट्स द्वारा कार्यों को कैसे प्राथमिकता दी जाती है
 * एजेंट कैसे सहयोग कर सकते हैं या संसाधनों की भर्ती कर सकते हैं,
 * विभिन्न वातावरणों में एजेंट्स को कैसे फिर से प्रारंभ किया जा सकता है, और उनकी आंतरिक स्थिति को कैसे संग्रहीत किया जा सकता है,
 * पर्यावरण की जांच कैसे की जाएगी और पर्यावरण के परिवर्तन से एजेंट्स के व्यवहार में परिवर्तन कैसे होता है
 * संदेश और संचार कैसे प्राप्त किया जा सकता है,
 * एजेंट्स के कौन से पदानुक्रम उपयोगी हैं (उदाहरण के लिए कार्य निष्पादन एजेंट, शेड्यूलिंग एजेंट, संसाधन प्रदाता ...)

सॉफ्टवेयर एजेंट्स के लिए साथ कुशलता से कार्य करने के लिए उन्हें अपने डेटा तत्वों के शब्दार्थों को साझा करना चाहिए। यह कंप्यूटर सिस्टम द्वारा उनके मेटाडाटा को प्रकाशित करके किया जा सकता है।

एजेंट प्रसंस्करण की परिभाषा दो परस्पर संबंधित दिशाओं से प्राप्त की जा सकती है:
 * ज्ञान का प्रतिनिधित्व करने के लिए आंतरिक स्थिति के प्रसंस्करण और ऑन्कोलॉजी का उपयोग किया जाता हैं।
 * इंटरेक्शन प्रोटोकॉल - कार्यों के संचार को निर्दिष्ट करने के लिए मानक दिए गए हैं।

एजेंट सिस्टम का उपयोग कॉन्करेंसी (कंप्यूटर विज्ञान) या समांतर प्रसंस्करण के साथ वास्तविक दुनिया के सिस्टम को मॉडल करने के लिए किया जाता है।


 * एजेंट मशीनरी - विभिन्न प्रकार के इंजन, जो बुद्धि की अलग-अलग डिग्री का समर्थन करते हैं।
 * एजेंट सामग्री - रीज़निंग और लर्निंग में मशीनरी द्वारा नियोजित डेटा का उपयोग करते हैं।
 * एजेंट एक्सेस - रीज़निंग के परिणामों के रूप में सामग्री को देखने और कार्य करने के लिए मशीनरी को सक्षम करने के विधि हैं।
 * एजेंट सुरक्षा - वितरित कंप्यूटिंग से संबंधित चिंताएँ, एजेंट्स से संबंधित कुछ विशेष चिंताओं द्वारा संवर्धित किया जाता हैं।

सामग्री के लिए फोरेज करने के लिए एजेंट स्थानीय और दूरस्थ डेटाबेस में जाने के लिए अपनी पहुंच विधियों का उपयोग करता है। इन एक्सेस विधियों में एजेंट को समाचार स्ट्रीम डिलीवरी सेट करना, या बुलेटिन बोर्ड से पुनर्प्राप्ति, या वेब पर चलने के लिए स्पाइडर का उपयोग करना सम्मिलित हो सकता है। इस प्रकार से प्राप्त की गई सामग्री संभवतः पहले से ही आंशिक रूप से फ़िल्टर की गई है - न्यूज़फ़ीड या खोजे गए डेटाबेस के चयनित किया जाता हैं। इसके पश्चात एजेंट अपनी विस्तृत खोज या भाषा-प्रसंस्करण मशीनरी का उपयोग प्राप्त या पुनर्प्राप्त की गई सामग्री के मुख्य भाग से कीवर्ड या हस्ताक्षर निकालने के लिए कर सकता है। नई सामग्री के साथ क्या करना है, यह तय करने के लिए यह सामग्री (या घटना) तब एजेंट की रीज़निंग या इंफ़्रेंसिंग मशीनरी को पास की जाती है। यह प्रक्रिया घटना सामग्री को उपयोगकर्ता द्वारा प्रदान की गई नियम-आधारित या ज्ञान सामग्री के साथ जोड़ती है। यदि इस प्रक्रिया को नई सामग्री में अच्छा हिट या मैच मिलता है, तो इस प्रकार एजेंट सामग्री पर अधिक विस्तृत खोज करने के लिए अपनी मशीनरी के दूसरे भाग का उपयोग कर सकता है। अंत में, एजेंट नई सामग्री के आधार को प्रभावित करने का निर्णय ले सकता है, उदाहरण के लिए, उपयोगकर्ता को सूचित करने के लिए कि कोई महत्वपूर्ण घटना घटी है। यह क्रिया सुरक्षा फ़ंक्शन द्वारा सत्यापित की जाती है और फिर उपयोगकर्ता को अधिकार दिया जाता है। इस प्रकार एजेंट उस संदेश को उपयोगकर्ता तक पहुंचाने के लिए उपयोगकर्ता-पहुंच विधि का उपयोग करता है। यदि उपयोगकर्ता इस बात की पुष्टि करता है कि सूचना पर त्वरित कार्रवाई करके घटना महत्वपूर्ण है, तो एजेंट इस प्रकार के आयोजन के लिए अपना भार बढ़ाने के लिए अपनी सीखने की मशीनरी को भी नियोजित कर सकता है।

बॉट अपने रचनाकारों की ओर से अच्छा और बुरा करने के लिए कार्य कर सकते हैं। ऐसे कुछ विधि हैं जिनसे बॉट्स को प्रदर्शित करने के लिए बनाया जा सकता है कि वे सबसे अच्छी संभावनाओं से डिज़ाइन किए गए हैं और हानि पहुँचाने के लिए नहीं बनाए गए हैं। इस प्रकार साइट के साथ संचार करते समय उपयोगकर्ता-एजेंट एचटीटीपी शीर्षलेख में बॉट द्वारा स्वयं को पहचानने के द्वारा यह सबसे पहले किया जाता है। इस प्रकार स्वयं को वैध प्रारूप में स्थापित करने के लिए स्रोत आईपी पते को भी सत्यापित किया जाना चाहिए। इसके पश्चात बॉट को सदैव साइट की robots.txt फ़ाइल का उपयोग करना चाहिए क्योंकि यह अधिकांश वेब पर मानक बन गया है। और robots.txt फ़ाइल का उपयोग करने के लिए हैं, बॉट्स को बहुत आक्रामक होने से बचना चाहिए और किसी भी क्रॉल विलंब निर्देशों का उपयोग करना चाहिए।

एजेंट्स के लिए धारणाएं और ढांचे

 * डार्पाएजेंट मार्कअप भाषा (डार्पाएजेंट मार्कअप लैंग्वेज)
 * 3APL (कृत्रिम स्वायत्त एजेंट प्रोग्रामिंग भाषा)
 * लक्ष्य एजेंट प्रोग्रामिंग भाषा
 * ओपन एजेंट आर्किटेक्चर (ओएए)
 * वेब सत्तामीमांसा भाषा (OWL)
 * यूनिक्स जैसी प्रणालियों में डेमन (कंप्यूटिंग)।
 * जावा एजेंट टेम्पलेट (JAT)
 * जावा एजेंट डेवलपमेंट फ्रेमवर्क (JADE)
 * एसएआरएल भाषा (तर्कसंगत रूप से अभिनेता और एजेंट उन्मुख प्रतिमान नहीं)

यह भी देखें

 * एजेंट आर्किटेक्चर
 * चैटबॉट
 * डेटा खोने की रोकथाम
 * समापन बिंदु का पता लगाने और प्रतिक्रिया
 * सॉफ्टवेयर बॉट

बाहरी संबंध

 * Software Agents: An Overview, Hyacinth S. Nwana. Knowledge Engineering Review, 11(3):1–40, September 1996. Cambridge University Press.
 * FIPA The Foundation for Intelligent Physical Agents
 * JADE Java Agent Developing Framework, an Open Source framework developed by Telecom Italia Labs
 * European Software-Agent Research Center
 * SemanticAgent An Open Source framework to develop SWRL based Agents on top of JADE
 * Mobile-C A Multi-Agent Platform for Mobile C/C++ Agents.
 * HLL High-Level Logic (HLL) Open Source Project.
 * Open source project KATO for PHP and Java developers to write software agents