با طرح تعاریفی در مورد عاملها (Agents) در این نوشته می خواهم نگاهی به سیستمهای چند عامله ، Multi Agent System، داشته باشم. بسیاری از سیستم های تجاری اولیه عامل را برای هدف جستجو مورد استفاده قرار دادند . در این سیستم ها عاملهای منفرد به مراکز معینی متصل می شدند ، اطلاعات لازم را جمع آوری می کردند و در نهایت به نزد کاربر درخواست کننده بر می گشتند. به عبارت دیگر عاملها یک کار انفرادی داشتند و در مقیاس بسیار کمی – اگر بود – با عاملهای دیگر تعامل داشتند. این روش باوجودیکه کاربردهای زیاد خاص خود را دارد نمی تواند به تنهایی یک اجتماع یا یک سازمان ایجاد کند که بتواند نیازهای دیگر کاربران را برآورده سازد . در عوض در محیط های انسانی ما یک شبکه از افراد را داریم که برای منظورهای مختلف با یکدیگر در تعامل می باشند. بدین ترتیب برای ایجاد یک جامعه از عاملها نه تنها نیاز است که بین آنها ارتباط برقرار کرد بلکه عاملها باید بتوانند با یکدیگر هماهنگ هم باشند. این هماهنگی می تواند جنبه های مختلف همکاری و یا رقابتی داشته باشد. این جوامع، سیستمهای چند عامله (MAS) نامیده می شوند.
به عبارت دیگر “یک سیستم چند عامله یک پیاده سازی با تاکید بر همکاری از برنامه ها (عاملها) است که با یکدیگر هماهنگ شده اند برای رسیدن به همگرایی روی پاسخ یک یا چند وظیفه”
بایگانی برای دسته "سیستمهای هوشمند"
امروزه بکارگیری هوش مصنوعی (AI:Artificial Intelligence) در سیستمهای تجاری امری مرسوم و پرکاربرد است (هر چند در ایران هنوز این مساله به شکلی جدی مطرح نشده ، اما نمونه هایی مشاهده می شود). عاملهای هوشمند (IA:Inteligent Agent) نیز به عنوان یک جزء از هوش مصنوعی توزیع شده، باعث شده است که در شبکه ها و یا رویداد های مربوط به گروه های افراد، استفاده از عاملها و عاملهای هوشمند رواج بیشتری نسبت به سایر موارد داشته باشد، به شکلی که امروزه بحث مهندسی نرم افزاری مبتنی بر عامل ها (Agent Based Software Engineering) و روشهای تجزیه تحلیل، چارچوب های برنامه سازی و محیط های توسعه آن بیشتر مورد توجه قرار گرفته است. در ادامه در سلسله مطالبی، به تعریف مبانی این گونه جدید از مهندسی نرم افزار خواهم پرداخت. علی الحساب در این نوشته نگاهی بیاندازید به تعاریف “عامل” از دیدگاه های مختلف.
در فرهنگ لغات Agent چنین معنی می شود : “فاعل ، نماینده ، گماشته ، وکیل ، مامور ، عامل ، مباشر، واسطه ، پیشکار ، امین و کارگزار “. بدین ترتیب به عنوان یک تعریف پایه می توان Agent را کسی دانست که به جای شخص یا چیز دیگری عمل می کند.
یک عامل دارای خصوصیات مختلفی است ؛ داشتن برخی از این خصوصیات برای یک عامل اجباری و بقیه اختیاری است. از جمله خصوصیات اجباری می توان به خواص autonomous (خودمختار بودن) ، interactive (دارای عمل متقابل بودن) و reactive (واکنش دار بودن ) می باشد. از جمله خصوصیات اختیاری می توان به خواص mobility (متحرک بودن ) ، intelligence (هوش ) و trustworthiness (قابلیت اعتماد) اشاره کرد. این خصوصیات عبارتند از :
چندی است در صدر اخبار روز ایران بحث بحران در استفاده ایران از انرژی اتمی مطرح است. در ماههای اخیر هم بحث مذاکره با اروپا در این زمینه مطرح است. چند روز پیش هم در صحبت های وزیر امور خارجه صحبت از توانایی های مذاکره کننده ایرانی در این مذاکرات بود که موجب برتری ایران شده بود به نحوی که ایران در قبال دادن برخی امتیازات دارد امتیازات دیگری به دست می آورد.
اما این مطلب چه ربطی به فنآوری اطلاعات و ارتباطات دارد!!؟ هیچ!
ربطش آنست که دو سال پیش تحقیقی نسبتا مفصل داشتم در زمینه مذاکره بین عاملها (Agent Negotiation). آن روز ها برایم خیلی مهم بود که تعریفی جامع و مانع برای “مذاکره” پیدا کنم. تعاریف زیر تلاش هایی در این زمینه است. تعاریفی که تعریف مذاکره را از یک مکالمه ساده دور می کنند و به یک چانه زنی نزدیک تر می کنند.
در تعریف مذاکره آمده است:
ف نوعی از تصمیم گیری که در آن دو یا چند طرف مشترکا و با هدف رسیدن به یک اجماع به دنبال یک راه حل احتمالی می گردند“
بدین ترتیب، دلیل اینکه یک مذاکره اتفاق می افتد چنین بیان شده است :
“مذاکره به یکی از دو دلیل ذیل رخ می دهد :
۱-برای ایجاد چیز جدیدی که هیچکدام از طرفین نمی توانند آن را به تنهایی بسازند.
۲-برای حل مساله یا مشاجره بین طرفین”