سیستم های چند عاملی: ساختار، اصول ساخت و ساز، کاربرد. هوش مصنوعی

فهرست مطالب:

سیستم های چند عاملی: ساختار، اصول ساخت و ساز، کاربرد. هوش مصنوعی
سیستم های چند عاملی: ساختار، اصول ساخت و ساز، کاربرد. هوش مصنوعی
Anonim

هدف از سیستم های چند عامله (MAS) هماهنگ کردن فرآیندهای مستقل است. عامل یک موجودیت کامپیوتری به شکل یک برنامه یا یک ربات است. یک عامل را می توان خودمختار در نظر گرفت زیرا می تواند با تغییر محیط خود سازگار شود. MAC شامل مجموعه‌ای از فرآیندهای رایانه‌ای است که همزمان اتفاق می‌افتند و در همان زمان وجود دارند، منابع مشترکی را به اشتراک می‌گذارند و با یکدیگر ارتباط برقرار می‌کنند. مشکل کلیدی در MAC رسمی کردن هماهنگی بین عوامل است.

تعریف سیستم های چند عاملی

تعریف سیستم های چند عاملی
تعریف سیستم های چند عاملی

MAC یک رویکرد آینده‌نگر برای توسعه نرم‌افزار برای برنامه‌های کاربردی در حوزه‌های پیچیده است که در آن اجزای برنامه کاربردی در تعامل مستقل و توزیع شده‌اند، در محیط‌های پویا و نامطمئن عمل می‌کنند، باید برخی از قوانین و قوانین سازمانی را رعایت کنند، و می‌توانند بپیوندند و ترک کنند. یک سیستم چند عاملی در طول زمان اجرا.

نمونه‌هایی از این برنامه‌ها سیستم‌هایی هستند کهمدیریت و بهینه سازی تولید و توزیع برق بین مصرف کنندگان یا سیستم هایی که به طور بهینه بارها را در سیستم های حمل و نقل برنامه ریزی می کنند. توسعه سیستم های چند عاملی مستلزم ایجاد عوامل، سازمان ها و محیط های جداگانه است.

زبان‌های برنامه‌نویسی ساختارهای برنامه‌نویسی را برای پیاده‌سازی عوامل فردی از نظر مفاهیم اجتماعی و شناختی مانند اطلاعات، اهداف، گزینه‌ها، هنجارها، احساسات و قوانین تصمیم‌گیری ارائه می‌کنند.

سازمان‌های چند عاملی از نظر مفاهیم اجتماعی و سازمانی دارای نقش‌هایی هستند که دارای هنجارها، پروتکل‌های ارتباطی، منابعی هستند که تحت نظارت هستند. زبان ها و چارچوب های برنامه نویسی توسعه یافته برای ایجاد شبیه سازی های مبتنی بر عامل برای بسیاری از صنایع تولید مداوم استفاده می شود: برق، متالورژی، مراقبت های بهداشتی، اینترنت، حمل و نقل، مدیریت ترافیک و بازی های جدی.

MAS با سیستم های تک عاملی تفاوت دارد زیرا دارای چندین عامل هستند که اهداف و اقدامات یکدیگر را مدل می کنند. در یک سناریوی کلی، ممکن است تعامل مستقیم بین عوامل وجود داشته باشد. از نقطه نظر یک عامل واحد، سیستم های چند عاملی به طور قابل توجهی با سیستم های دارای یک عامل واحد تفاوت دارند زیرا پویایی محیط را می توان توسط عوامل دیگر تعیین کرد. علاوه بر عدم قطعیتی که می‌تواند در یک دامنه وجود داشته باشد، عوامل دیگر عمداً به روش‌های غیرقابل پیش‌بینی بر محیط تأثیر می‌گذارند.

بنابراین، همه MAC ها را می توان دارای محیط های پویا در نظر گرفت که برای مدرن معمول است.سیستم های چند عاملی ممکن است هر تعداد عامل با درجات مختلف ناهمگونی، با یا بدون امکان ارتباط مستقیم وجود داشته باشد.

معماری MAS

معماری سیستم های MAC
معماری سیستم های MAC

کارگزاران باید به یک مدل شناختی مجهز باشند:

  • باورها;
  • آرزوها;
  • نیت.

از یک سو «باورها» را در مورد محیط می خواند که حاصل دانش و ادراکات اوست و از سوی دیگر مجموعه «آرزوها». عبور از این دو مجموعه منجر به مجموعه جدیدی از "نیت ها" می شود که سپس مستقیماً به اقدامات تبدیل می شوند.

کارگزاران باید یک سیستم ارتباطی داشته باشند. چندین زبان تخصصی برای این منظور وجود دارد: زبان پرس و جو و زبان دستکاری (KQML). اخیراً استاندارد FIPA-ACL که توسط بنیاد FIPA برای عوامل فیزیکی هوشمند ایجاد شده است، منتشر شده است. این آخرین اصل ساختن سیستم‌های چند عاملی مبتنی بر نظریه اعمال گفتاری است.

مسئله انطباق یک موضوع خاردار است که در حال حاضر موضوع تحقیقات زیادی است. می‌توان مثالی از برخی ویروس‌ها، چه بیولوژیکی و چه رایانه‌ای، که می‌توانند با محیط جهش‌یافته سازگار شوند، ارائه داد.

در نهایت، یک پیاده سازی کارآمد از MAC، اگرچه به طور دقیق بخشی از معماری سیستم نیست، در بسیاری از زبان های برنامه نویسی که برای مطالعه هوش مصنوعی توسعه یافته اند، شایسته توجه است. به طور خاص، زبان LISP ذکر شده است. این عناصر معماری در یک سیستم متشکل از شناختی اعمال می شودنمایندگان.

دسته ها یا مدل های نمایندگی

طبقه‌بندی عوامل بر اساس دو معیار است: عوامل شناختی یا معرف‌هایی که از یک سو، رفتار تلئونومیک یا بازتابی از خود نشان می‌دهند. تمایزی که می توان بین شناختی و واکنشی قائل شد، اساساً نمایشی از جهان در دسترس برای عامل است. اگر فردی دارای یک «بازنمایی نمادین» از جهان باشد که از طریق آن بتواند استدلال را فرموله کند، در آن صورت از یک عامل شناختی صحبت می شود، در حالی که اگر او فقط یک «بازنمایی فرعی نمادین» داشته باشد، یعنی محدود به ادراکاتش، یکی از یک عامل واکنش دهنده صحبت می کند. این تمایز شناختی و واکنشی با دو مکتب نظری سیستم های چند عاملی مطابقت دارد.

اولین رویکرد بنیادی عوامل "هوشمند" برای همکاری از دیدگاه جامعه شناختی را پشتیبانی می کند. در دوم، امکان ظهور رفتار «هوشمندانه» مجموعه‌ای از عوامل غیرهوشمند (نوع مورچه) بررسی می‌شود. دومین تفاوت بین رفتار رفتاری و رفلکس، رفتار عمدی، یعنی تعقیب اهداف آشکار، را از رفتار ادراکی جدا می کند. بنابراین، تمایلات عامل ها را می توان به صراحت در عامل ها بیان کرد و یا برعکس، از محیط بیرون آمد. جدول گروه بندی انواع مختلف عامل ها:

  1. عوامل شناختی.
  2. عوامل واکنشی.
  3. رفتار تلنومی.
  4. ماموران عمدی.
  5. نمایندگان مدیریت شده.
  6. رفتار بازتابی.
  7. ماژول‌های عامل.
  8. عوامل گرمسیری.

عوامل شناختی عمدتاً عمدی هستند، یعنی.آنها اهداف ثابتی دارند که برای رسیدن به آنها تلاش می کنند. با این حال، گاهی اوقات از عواملی به نام ماژول ها استفاده می شود که ایده ای از "جهان" خود بدون اهداف خاص دارند. آنها می توانند به عنوان مثال برای پاسخ به سؤالات سایر عوامل در "جهان" خدمت کنند.

معرف ها را می توان به محرک ها و عوامل گرمسیری تقسیم کرد. عامل غریزی یک ماموریت ثابت خواهد داشت و اگر ببیند که محیط دیگر با هدف تعیین شده مطابقت ندارد، رفتاری را آغاز خواهد کرد. عامل گرمسیری فقط به وضعیت محلی محیط واکنش نشان می دهد، به عنوان مثال اگر نور وجود داشته باشد، سپس اجرا می شود. منبع انگیزه در مورد داخلی عوامل محرک که "ماموریت" دارند فقط به محیط اشاره دارد.

پارادایم های سازمانی

پارادایم های سازمانی
پارادایم های سازمانی

با توسعه چنین سیستم هایی، پارادایم های سازمانی مختلفی توسعه یافته است. این ساختارهای سیستم های چند عاملی چارچوبی را برای روابط و تعاملات بین عامل ها تنظیم می کنند.

سلسله مراتب. در این مدل، Agent ها بر اساس ساختار درختی که در آن هر گره یک عامل است و یک پیوند مجوز روی گره های فرزند خود دارد، سلسله مراتبی هستند. این مدل هدف کلی سیستم را از بین می برد.

هولارشی به سلسله مراتب نزدیک می شود. هیچ رابطه اقتداری بین یک عامل و زیر گروه آن وجود ندارد.

ائتلاف یک اتحاد موقت از عواملی است که گرد هم می آیند و همکاری می کنند زیرا منافع شخصی آنها برآورده می شود. ارزش ائتلاف باید بیشتر از مجموع مقادیر فردی اجزای عامل باشد.

جماعت ها بسیار شبیه به ائتلاف ودستورات با این حال، آنها قرار است دائمی باشند و معمولاً اهداف متعددی برای دستیابی دارند. علاوه بر این، نمایندگان می توانند به جماعت وارد و خارج شوند و به چندین جماعت به طور همزمان تعلق داشته باشند.

جامعه مجموعه ای از عوامل متنوع است که با یکدیگر تعامل و ارتباط برقرار می کنند. آنها اهداف متفاوتی دارند، عقلانیت و توانایی های یکسانی ندارند، اما همه آنها از قوانین (هنجارهای) رایج تبعیت می کنند.

کارگزاران فدراسیون مقداری از استقلال خود را به نماینده گروه خود می دهند. عوامل گروه فقط با نماینده خود تعامل دارند، که به نوبه خود با نمایندگان گروه های دیگر تعامل دارد.

نمایندگان فروش مواردی را ارائه می دهند که نمایندگان خریداران می توانند ادعا کنند. این نوع سازمان، به عنوان مثال، شبیه سازی بازارهای واقعی و مقایسه استراتژی های معاملاتی مختلف را ممکن می کند.

عوامل سازمان ماتریس سلسله مراتبی هستند. با این حال، برخلاف سلسله مراتب ارائه شده در بالا، که در آن یک عامل تنها تابع چند عامل دیگر است، آنهایی که در یک سازمان ماتریسی هستند ممکن است تابع چندین عامل دیگر باشند.

ترکیب - این سازمان ترکیبی بسیاری از سبک های بالا را با هم ترکیب می کند. این می تواند، برای مثال، یک ائتلاف یا سلسله مراتبی از تیم ها باشد.

هوش مصنوعی

هوش مصنوعی
هوش مصنوعی

هدف علوم شناختی درک ماهیت و عملکرد هوش مصنوعی است، که اطلاعات داخلی را پردازش می کند تا آن را هدفمند کند. بسیاری از مفاهیم با این توصیف مطابقت دارند: انسان، رایانه، روبات، سیستم های حسی،لیست بی پایان است یک نوع سیستم مورد علاقه خاص دانشمندان شناختی، خود عامل مصنوعی است که بر روی اطلاعات عمل می کند.

یک عامل هوشمند (IA) قادر است بر اساس تجربه خود تصمیم بگیرد و می تواند اقداماتی را در موقعیت های مختلف انتخاب کند. همانطور که اصطلاح "مصنوعی" نشان می دهد، نوع عوامل مستقل مورد علاقه چیزی نیست که توسط طبیعت ایجاد شود. بنابراین، یک عامل مصنوعی هر چیزی است که توسط افراد ایجاد می شود و قادر است بر اساس اطلاعاتی که درک می کند، تجربیات، تصمیمات و اقدامات خود عمل کند.

رشته هوش فراطبیعی مهارت های فنی برای ترجمه انواع عامل های مورد نظر به زبان برنامه نویسی، نرم افزارهای مرتبط و معماری مناسب (سخت افزار و نرم افزارهای مرتبط) برای پیاده سازی عامل در دنیای واقعی یا شبیه سازی شده را فراهم می کند.

محیط جهان ادراک

محیط جهان ادراک
محیط جهان ادراک

عامل هر چیزی است که از طریق حسگرها وارد محیط می شود و از طریق افکتورها روی آن اثر می گذارد، که به اندازه کافی ساده به نظر می رسد. این تعریف از یک عامل طیف وسیعی از ماشین‌ها را در بر می‌گیرد، از ترموستات گرفته تا اشیایی که در واقع می‌توانند مجموعه کوچکی از رفتار را یاد بگیرند.

سنسورها ابزارهایی هستند که توسط یک عامل برای جمع آوری اطلاعات در مورد دنیای خود استفاده می شود. صفحه کلید و دوربین فیلمبرداری می توانند به عنوان حسگر عمل کنند اگر با عامل مرتبط باشند. در پایان پاسخ سیستم، مجریان ابزارهایی هستند که توسط عامل برای تأثیرگذاری بر محیط استفاده می شود. نمونه هایی از افکتورها هستندمانیتور، چاپگر و بازوی رباتیک.

معمولاً محیط حوزه یا دنیای عامل است. این حوزه ها، حداقل در حال حاضر، باید به انواع خاصی از موقعیت ها محدود شوند تا از امکانات نامحدود دنیای روزمره جلوگیری شود.

سیستم نفوذ مستقل

سیستم ضربه خودکار
سیستم ضربه خودکار

یک عامل خودمختار «سیستمی در داخل و بخشی از یک محیط است که آن محیط را درک می کند و در طول زمان بر روی آن عمل می کند تا دستور کار خود را انجام دهد و به منظور تأثیرگذاری بر آنچه در آینده تجربه می کند». این تعریف توسط فرانکلین و گریسر منعکس کننده همه کارکردهای اساسی عوامل هوشمند است، به جز اجتماعی بودن آنها. این تقریب خوبی از ویژگی های اصلی طیف گسترده ای از هوش مصنوعی در حال توسعه ارائه می دهد.

این گونه عوامل محیط خود را احساس می کنند. اما در اینجا داده ها یا ادراکات حسی نه تنها شامل داده های مربوط به اشیاء دیگر، بلکه همچنین تأثیر خود عامل بر وضعیت امور در محیط است. حسگرها می‌توانند ارگانیک باشند، مانند چشم‌ها و گوش‌ها و پردازنده‌های عصبی آن‌ها، یا مصنوعی، مانند پردازنده‌های ویدیویی و صوتی تعبیه‌شده در رایانه دیجیتال. محیط می تواند یک منطقه بسیار محدود، مانند یک فضای بسته، یا بسیار پیچیده، مانند یک بازار سهام یا مجموعه ای از سیارک ها باشد. حسگرها باید با انواع اشیایی که عامل با آنها تعامل دارد مطابقت داشته باشد.

نوع تعامل بازتابی

عامل بازتابنده مکانیسم پیچیده تری دارد. به جای دینامیک مستقیمدر رابطه با محیط زیست، در فهرست قوانین به دنبال کارهایی است که باید انجام دهد. عامل رفلکس به یک ادراک داده شده با یک پاسخ برنامه ریزی شده پاسخ می دهد. حتی اگر هزاران پاسخ ممکن به یک ادراک داده شده وجود داشته باشد، عامل یک لیست داخلی از قوانین عملکرد موقعیت برای اجرای پاسخ هایی دارد که قبلاً توسط برنامه نویس در نظر گرفته شده است. قانون کنش موقعیتی اساساً یک امر فرضی است.

عوامل رفلکس واقعاً خیلی روشن نیستند. آنها فقط نمی توانند این تازگی را تحمل کنند. عامل هوشمند دارای ویژگی های پسرعموهای کمتر پیچیده خود است، اما محدود نیست. طبق دستور کار عمل می کند. مجموعه ای از اهداف دارد که فعالانه دنبال می کند. عامل مبتنی بر هدف درکی از وضعیت فعلی محیط و نحوه عملکرد آن محیط دارد. او استراتژی ها یا اهداف عمده ای را دنبال می کند که نمی توان فورا به آنها دست یافت. این عامل را فعال می کند، نه فقط واکنشی.

ابزار کاربردی هدف

در عوامل پیچیده تر، یک معیار خانه داری برای اعمال مختلف ممکنی که می توان در محیط انجام داد اعمال می شود. این زمانبندی پیچیده یک عامل مبتنی بر خدمات است. عامل مبتنی بر خدمات، هر سناریو را ارزیابی می‌کند تا ببیند تا چه حد به معیارهای خاصی برای رسیدن به یک نتیجه خوب دست می‌یابد. مواردی مانند احتمال موفقیت، منابع مورد نیاز برای تکمیل سناریو، اهمیت هدفی که باید به آن دست یابید، زمان لازم را می توان در محاسبات تابع سودمندی لحاظ کرد.

چوناز آنجایی که یک برنامه نویس به طور معمول نمی تواند تمام حالات جهان را که یک عامل با آن مواجه می شود پیش بینی کند، تعداد قوانینی که باید برای یک عامل بازتابی نوشته شود حتی در زمینه های بسیار ساده مانند برنامه ریزی جلسات یا سازماندهی مسیرهای حمل و نقل و تدارکات نجومی خواهد بود.

حلقه کنترل پایه

با توجه به تعریف عامل هوشمند، حلقه کنترل اصلی را که توسط نظریه پرداز عامل، مایکل ولادریچ در سال 2000 نوشته شده است، در نظر بگیرید:

  • آرامش را حفظ کن؛
  • به روز رسانی مدل دنیای داخلی؛
  • دستیابی به یک قصد عمدی؛
  • استفاده از ابزار/هدف برای به دست آوردن طرحی برای اهداف؛
  • اجرای طرح؛
  • فرآیند را پایان دهید.

این الگو نیاز به تفسیر دارد. عامل جهان را مشاهده می کند - این بدان معنی است که او با استفاده از حسگرهای خود، ادراکات را جمع آوری می کند. سنسور ممکن است یک صفحه کلید متصل به یک کامپیوتر دیجیتال یا یک پردازنده بصری متصل به یک ربات باشد. این می تواند هر چیزی باشد که به عامل اجازه می دهد تا بازنمایی هایی از جهان را جمع آوری کند. به روز رسانی مدل داخلی به این معنی است که عامل ادراک جدیدی را به توالی ادراکات و اطلاعات برنامه ریزی شده خود درباره جهان اضافه می کند.

پلتفرم های توسعه چند عاملی

پلتفرم های توسعه چند عاملی
پلتفرم های توسعه چند عاملی

AnyLogic یک نرم‌افزار شبیه‌سازی چند عاملی و چند جزئی CORMAS مبتنی بر زبان برنامه‌نویسی شی‌گرا SmallTalk است.

DoMIS یک ابزار طراحی سیستم چند عاملی است که بر "کنترل عملیاتی سیستم های پیچیده" متمرکز شده و بر اساس روش طراحی B-ADSC است.

JACK یک زبان برنامه نویسی و محیط توسعه برای عوامل شناختی است که توسط نرم افزار Agent Oriented به عنوان یک برنامه افزودنی عامل گرا زبان جاوا توسعه یافته است.

GAMA یک پلت فرم مدل‌سازی منبع باز (LGPL) است که یک محیط مدل‌سازی مبتنی بر عامل با استفاده از داده‌های GIS برای توصیف عوامل و محیط آنها ارائه می‌دهد.

JADE (Java Agent DEVELOPMENT) یک چارچوب توسعه چند عامله منبع باز مبتنی بر زبان جاوا است.

هفت مدل استاندارد

در فرآیند تکاملی تحقیق، ورودی های بیشتری در مورد چگونگی ایجاد سیستمی قابل اعتماد و نشان دهنده سطح بالاتری از کیفیت وجود دارد. روندی که باید ادامه یابد تکمیل یا گسترش روش‌های موجود است که توانسته‌اند تصمیم‌گیری را در توسعه یکپارچه کنند.

استاندارد روش شناختی به روشی قابل فهم و ساده امکان ایجاد یک MAC را نه تنها با استفاده از زبان طبیعی، بلکه با استفاده از الگوهای توصیفی که در مشخصات سیستم کمک می کند، می دهد.

استاندارد روش شناختی هفت مدل از مسائل یا راه حل های آنها را برای ساخت MAC ارائه می دهد:

  1. یک مدل سناریویی که یک شرکت یا سازمان را توصیف می کند.
  2. مدل اهداف و مقاصد ساختار ارگانیک را تعریف و توصیف می کند.
  3. مدل عامل انسان و سیستم های خودمختار را تعریف می کند.
  4. الگو اهداف و مقاصد را با یک عامل خاص مرتبط می کند.
  5. مدل سازمانی محیطی را توصیف می کند که یک عامل فردی با آن مرتبط است.
  6. مدل تعامل، رابطه را توصیف می کند و بر هماهنگی آنها از عوامل تأکید می کند.
  7. مدل طراحی عامل و معماری شبکه را تعریف می کند.

نمونه‌هایی از تعامل بین عوامل

نمونه هایی از سیستم های چند عاملی
نمونه هایی از سیستم های چند عاملی

MAS برای شبیه سازی تعامل بین عوامل مستقل استفاده می شود. به عنوان مثال، استفاده از سیستم‌های چند عاملی در جامعه‌شناسی، پارامترسازی عوامل مختلفی را که جامعه را تشکیل می‌دهند، ممکن می‌سازد. با افزودن محدودیت‌ها، می‌توانید تلاش کنید تا بفهمید مؤثرترین مؤلفه برای دستیابی به نتیجه مورد انتظار چیست. آنها باید سناریوهایی را آزمایش کنند که به دلایل فنی یا اخلاقی توسط افراد واقعی قابل دستیابی نیست.

IA توزیع شده برای حل پیچیدگی برنامه های هوش غیر طبیعی یکپارچه بزرگ - اجرا، توزیع و کنترل متمرکز ایجاد شد. برای حل یک مشکل پیچیده، گاهی اوقات ایجاد برنامه های نسبتاً کوچک (عامل) با همکاری آسان تر از یک برنامه بزرگ یکپارچه است. خودمختاری به سیستم اجازه می دهد تا به صورت پویا با تغییرات پیش بینی نشده در محیط سازگار شود.

نمونه‌هایی از سیستم‌های چند عاملی در صنعت بازی، متعدد و متنوع هستند. آنها در بازی های ویدیویی و فیلم ها، از جمله نرم افزار MASSIVE، به عنوان مثال برای شبیه سازی حرکت جمعیت در سه گانه ارباب حلقه ها استفاده می شوند. آنها همچنین ممکن استبرای مثال برای ردیابی رفتار مشتریان در حال مرور وب سایت ها توسط شرکت ها استفاده می شود.

MAS در دنیای مالی نیز استفاده می شود. برای مثال، پلتفرم متاتریدر 4 امکان استفاده از نمایندگان خبره را در معاملات خودکار که از نرخ‌های فارکس پیروی می‌کنند، می‌دهد.

مزایای استفاده از سیستم

در تحقیقات IA، فناوری سیستم های مبتنی بر عامل به عنوان پارادایم جدیدی برای مفهوم سازی، طراحی و پیاده سازی سیستم های نرم افزاری پذیرفته شده است. مزایای رویکرد چند MAS:

  1. منابع و قابلیت های محاسباتی را در شبکه ای از عوامل به هم پیوسته به اشتراک می گذارد.
  2. امکان اتصال و قابلیت همکاری چند سیستم قدیمی موجود را فراهم می کند.
  3. پوشش زمینه های مختلف از جمله تعمیر و نگهداری هواپیما، کیف پول الکترونیکی کتاب، پاکسازی مین نظامی، ارتباطات و ارتباطات بی سیم، برنامه ریزی لجستیک نظامی، سیستم مدیریت زنجیره تامین، برنامه ریزی ماموریت مشترک، مدیریت سبد مالی.

در تحقیقات، فناوری IA برای سیستم‌های مبتنی بر عامل به عنوان یک الگوی جدید برای مفهوم‌سازی، طراحی، پیاده‌سازی و یادگیری چند عاملی سیستم‌های نرم‌افزاری پذیرفته شده است.

بنابراین، MAC شبکه‌ای از عوامل نرم‌افزار است که برای حل مشکلاتی فراتر از توانایی یا دانش هر مشکل‌ساز تعامل دارند.

توصیه شده: