You are on page 1of 33

‫دانشگاه شهیدبهشتی‬

‫دانشکده‬
‫مهندسی و علوم کامپیوتر‬ ‫توسط‪:‬‬
‫آرمین سلیمی بدر‬
‫‪a_salimibadr@sbu.ac.ir‬‬

‫‪1/28‬‬
‫‪ ‬عامل و مفاهیم مرتبط با آن‬

‫‪ ‬خواص و انواع محیطهای کار‬

‫‪ ‬انواع برنامههای عامل‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪2/28‬‬
‫‪ ‬عامل )‪ :(Agent‬هر چیزی که بتواند اعمالی را انجام دهد‬

‫‪ ‬توانایی درک محیط )‪ (Environment‬از طریق حسگرها )‪(Sensor‬‬

‫‪ ‬توانایی انجام اعمال و تأثیر بر محیط از طریق عملگرها )‪(Actuator‬‬

‫حسگرها‬ ‫ادراک‬

‫? عامل‬ ‫محیط‬

‫عملگرها‬
‫عمل‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪3/28‬‬
‫‪ ‬مثال از رفتار یک عامل‬

‫اعمال عمل‬

‫حالت درکشده از محیط‬ ‫حالت نتیجه از اعمال عمل‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪3/28‬‬
‫‪ ‬عامل انسانی‬

‫‪ ‬عامل رباتیکی (سختافزاری)‬

‫‪ ‬عامل نرمافزاری‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬


‫‪4/28‬‬
‫‪ ‬ادراک )‪(Percept‬‬

‫‪ ‬کلیه ورودیهای دریافتی عامل در هر لحظه )‪(pt‬‬

‫‪ ‬دنباله ادراک )‪(Percept Sequence‬‬

‫‪ ‬دنبالهای (تاریخچه) از ادراکهای عامل )‪(p0, p1, …, pt‬‬

‫‪ ‬رفتار عامل )‪(Agent Behavior‬‬

‫‪ ‬چگونگی پاسخدهی عامل (تولید فعالیت) بهازای هر دنباله از ادراکات‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪5/28‬‬
‫مکانیابی ربات بدون اطالع از موقعیت اولیه ربات‬

‫‪0‬‬

‫‪1‬‬ ‫‪P1‬‬

‫‪2‬‬ ‫‪P2‬‬

‫در اینجا ربات با داشتن دنباله ادراک ]‪[P1,P2‬‬


‫بر اساس نقشهای که در اختیارش است قادر به تعیین موقعیت خود خواهد بود‬
‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪5/28‬‬
‫‪ ‬تابع عامل )‪(Agent Function‬‬

‫بیان رفتار عامل بهصورت یک تابع‬ ‫‪‬‬

‫حالت محیط‬
‫عمل انتخابی (دنباله ادراک)‬ ‫سادهترین حالت نمایش‪ :‬جدول‬ ‫‪‬‬

‫در حالت کلی غیرممکن (زیاد بودن تعداد حالتها)‬ ‫‪‬‬

‫‪ ‬برنامه عامل )‪(Agent Program‬‬

‫پیادهسازی تابع عامل‬ ‫‪‬‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪6/28‬‬
‫لحظه فعلی‬
‫دنباله ادراک‬

‫عمل‪ :‬بسته به مسئله‬


‫‪ -1‬پیشبینی قیمت فردا‬
‫‪ -2‬یکی از اعمال «خرید»‪« ،‬فروش» یا «هیچکدام»‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪6/28‬‬
‫‪ ‬محیط‪ :‬دو ناحیه مجاور ‪ A‬و ‪ B‬با حالت «تمیز» یا «کثیف»‬
‫‪ ‬حسگرها‪ :‬حسگر تشخیص آلودگی‪ ،‬حسگر تشخیص مکان‬
‫‪ ‬ادراک‪ :‬موقعیت و حالت از نظر تمیزبودن‬
‫‪ ‬عملگرها‪ :‬چرخها‪ ،‬موتورها‪ ،‬مکنده‬
‫‪ ‬اعمال‪ :‬حرکت به راست‪ ،‬حرکت به چپ‪ ،‬مکش‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪7/28‬‬
‫‪ ‬عامل عقالئی )‪:(Rational Agent‬‬

‫‪ ‬قابلیت انجام کار درست‬

‫‪ ‬تعریف کار درست‪:‬‬

‫‪ ‬مطلوبیت دنباله حاالت محیط بر اساس اجرای دنباله اعمال عامل‬


‫تابع هدف (معیار کارایی)‬
‫‪ ‬معیار کارآیی )‪:(Performance Measure‬‬

‫‪ ‬معیار بررسی مطلوبیت هر دنباله از حاالت محیط‬

‫‪ ‬تعریف مبتنی بر مسئله‪ ،‬محیط و عامل‬

‫‪ ‬معیار اصلی عقالنیت (یا هوشمندی)‬


‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪8/28‬‬
‫‪ ‬عوامل مؤثر در تعیین عقالنیت هر عمل در هر لحظه‪:‬‬

‫‪ ‬معیار کارآیی‬

‫‪ ‬دانش قبلی از محیط‬

‫‪ ‬مجموعه اعمال قابل اجرا توسط عامل‬

‫‪ ‬دنباله ادراکات عامل تاکنون‬

‫تعریف عامل عقالئی‪:‬‬


‫بتواند برای هر دنباله ادراکات از محیط و مبتنی بر دانش موجود‪،‬‬
‫با درنظرگیری توانمندیهای خود عملی را اجرا کند که معیار‬
‫کارایی مورد نظر را بیشینه کند‪.‬‬
‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪9/28‬‬
‫‪ ‬کدام یک عامل عقالئی محسوب میشود؟‬
‫عامل ‪ :1‬اگر اتاق فعلی کثیف است‪ ،‬عمل مکش را انجام داده و به‬ ‫‪‬‬
‫اتاق مجاور میرود‪.‬‬
‫عامل ‪ :2‬هیچ کاری انجام نداده و در مکان خود باقی میماند‬ ‫‪‬‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪10/28‬‬
‫‪ ‬عامل دانای کل )‪(Omniscience‬‬
‫‪ ‬دانش کامل از محیط و پیامد دقیق اعمال‬
‫‪ ‬انتخاب بهترین عمل )‪(Perfection‬‬
‫‪ ‬بیشینهسازی کارآیی واقعی )‪(Actual Performance‬‬

‫‪ ‬عامل عقالئی )‪(Rational‬‬


‫‪ ‬انتخاب عمل در جهت بیشینهسازی معیار کارآیی تعریفشده‬
‫)‪(Expected Performance‬‬
‫دانش محدود‪ ،‬نیازمند جمعآوری اطالعات‪ ،‬اکتشاف و یادگیری‬ ‫‪‬‬

‫‪ ‬عامل خودمختار )‪(Autonomous‬‬


‫‪ ‬توانایی رفع نقص مبتنی بر اکتشاف و یادگیری‬
‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪11/28‬‬
‫‪ ‬محیط کار )‪:(Task Environment‬‬
‫‪ ‬معرف مسئلهای است که عامل هوشمند طراحیشده‪ ،‬راهحل آن است‪.‬‬

‫‪ ‬اجزای محیط کار )‪:(PEAS‬‬


‫‪ ‬تابع کارآیی )‪(Performance‬‬

‫‪ ‬محیط )‪(Environment‬‬

‫‪ ‬عملگرها )‪(Actuators‬‬

‫‪ ‬حسگرها )‪(Sensors‬‬

‫‪ ‬اولین گام در طراحی یک عامل هوشمند‪ ،‬تعیین محیط کار آن است‬


‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪12/28‬‬
‫‪ ‬عامل تاکسی‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪13/28‬‬
‫رؤیتپذیری‬ ‫‪‬‬

‫تعداد عوامل‬ ‫‪‬‬

‫قطعیت‬ ‫‪‬‬

‫وابستگی مرحلهای‬ ‫‪‬‬

‫پویایی‬ ‫‪‬‬

‫پیوستگی‬ ‫‪‬‬

‫شناختهشدهبودن محیط‬ ‫‪‬‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪14/28‬‬
‫‪ ‬قابلیت مشاهده یا رویتپذیری محیط کار‪:‬‬

‫‪ ‬کامالً قابل مشاهده )‪(Fully Observable‬‬

‫حالت محیط با مشاهده بهکمک حسگرها بهطور کامل تعیین شود‬ ‫‪‬‬

‫‪ ‬جزئی قابل مشاهده )‪(Partially Observable‬‬

‫‪ ‬بخشی از حالت محیط با مشاهده بهکمک حسگرها تعیین شود‬

‫‪ ‬غیر قابل مشاهده )‪(Unobservable‬‬

‫هیچ اطالعاتی از محیط قابل استنباط نباشد )‪(Sensorless‬‬ ‫‪‬‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪15/28‬‬
‫مثال کامالً قابل مشاهده‪ :‬شطرنج‬ ‫مثال بخشی قابل مشاهده‪ :‬اتومبیل خودران‬

‫مثال عدم نیاز به حسگر برای حرکت‬


‫در محیط و رسیدن به هدف‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪15/28‬‬
‫محیط کار از دیدگاه تعداد عوامل‪:‬‬ ‫‪‬‬

‫‪ ‬تکعاملی )‪(Single Agent‬‬

‫رفتار عامل بستگی به عملکرد عامل دیگری نداشته باشد‬ ‫‪‬‬

‫عامل حلکننده سودوکو‬ ‫‪‬‬

‫‪ ‬چندعاملی )‪(Multi-Agent‬‬

‫رابطه رقابتی )‪(Competition‬‬ ‫‪‬‬

‫رابطه همکاری )‪(Cooperation‬‬ ‫‪‬‬

‫رابطه جزئی همکاری جزئی رقابتی‬ ‫‪‬‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪16/28‬‬
‫محیط کار از دیدگاه میزان قطعیت‪:‬‬ ‫‪‬‬

‫‪ ‬قطعی )‪(Deterministic‬‬

‫مشخصبودن حالت بعدی بر اساس حالت فعلی و عمل انتخابی‬ ‫‪‬‬

‫در تعریف راسل رفتار سایر عوامل در تعریف قطعیت نقش ندارد‪ :‬محیط استراتژیک‬ ‫‪‬‬

‫‪ ‬تصادفی )‪(Stochastic‬‬

‫جزئی قابل مشاهده بودن محیط (محیط نامطئن)‬ ‫‪‬‬

‫طبیعت تصادفی اشیاء موجود در محیط‬ ‫‪‬‬

‫در نظر گیری احتمال در تغییر حالت‬ ‫‪‬‬

‫‪ ‬محیط نامطمئن )‪ :(Uncertain‬محیطی که کامالً قابل مشاهده یا قطعی نباشد‬

‫‪ ‬محیط غیرقطعی )‪ :(Nondeterministic‬مشخص نبودن احتماالت‬


‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪17/28‬‬
‫محیط کار از دیدگاه میزان وابستگی مرحلهای‪:‬‬ ‫‪‬‬

‫‪ ‬اپیزودیک (مرحله به مرحله) )‪(Episodic‬‬

‫تصمیمگیری در هر مرحله بدون وابستگی به ادراکات مراحل قبلی انجام میشود‬ ‫‪‬‬

‫اسمبلکردن در کارخانه‬ ‫‪‬‬

‫‪ ‬ترتیبی )‪(Sequential‬‬

‫تصمیم در یک مرحله بر تصمیمات مراحل آتی تأثیرگذار است‬ ‫‪‬‬

‫شطرنج‬ ‫‪‬‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪18/28‬‬
‫‪ ‬محیط کار از دیدگاه پویایی‪:‬‬
‫‪ ‬محیط ایستا )‪(Static‬‬
‫تغییرناپذیر با زمان (محیط به خودی خود تغییر نمیکند)‬ ‫‪‬‬

‫جدول کلمات‪ ،‬ماز‬ ‫‪‬‬

‫‪ ‬محیط نیمهپویا )‪(Semi-Dynamic‬‬


‫عدم تغییر محیط با زمان‪ ،‬اما تغییر امتیاز و کارآیی عامل در طول زمان‬ ‫‪‬‬

‫شطرنج با زمان‬ ‫‪‬‬

‫‪ ‬محیط پویا )‪(Dynamic‬‬


‫تغییر محیط در طول زمان (محیط بدون دریافت عمل از عامل تغییر میکند)‬ ‫‪‬‬

‫مسئله تاکسی‬ ‫‪‬‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪19/28‬‬
‫‪ ‬گسستگی و پیوستگی محیط کار برای موارد زیر‪:‬‬

‫‪ ‬حالت محیط‬

‫‪ ‬اقدامات عامل‬

‫‪ ‬ادراکات عامل‬

‫‪ ‬نحوه مدیریت زمان‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪20/28‬‬
‫‪ ‬مرتبط با عامل و نه محیط‬

‫‪ ‬محیط ناشناس‬

‫‪ ‬عامل قوانین موجود در محیط را نمیداند و باید این قوانین را یاد بگیرد‬

‫محیط شناختهشده‬ ‫‪‬‬

‫‪ ‬حاالت و خروجی یا احتماالت آنها برای حاالت مختلف (قوانین محیط) برای‬

‫عامل تعریف شده است‪.‬‬

‫‪ ‬شناختهشدهبودن و رؤیتپذیری مرتبط نمیباشند‬


‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪21/28‬‬
‫برنامه ‪ +‬معماری = عامل‬
‫کار هوش مصنوعی طراحی برنامه عامل است که تابع عامل را پیاده سازی میکند‬

‫انواع برنامه های عامل‬


‫عاملهای واکنشی مدل گرا‬ ‫عاملهای واکنشی ساده‬
‫‪Model-based reflex Agent‬‬ ‫‪Simple Reflex Agent‬‬

‫عاملهای سودگرا‬ ‫عاملهای هدفگرا‬


‫‪Utility-based Agent‬‬ ‫‪Goal-based Agent‬‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪22/28‬‬
‫عامل‬ ‫حسگرها‬

‫جهان چگونه است؟‬

‫محیط‬
‫قانون‬ ‫اکنون چه عملی‬
‫شرط‪-‬عمل‬ ‫باید انجام دهم؟‬

‫عملگرها‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪23/28‬‬
‫‪ ‬مزیت‪ :‬سادگی‬
‫‪ ‬مفید در برخی امور پایه در کنار عوامل دیگر‬
‫شرطیشدن طبیعی‬ ‫‪‬‬

‫رفلکسهای بدن‪ :‬بسته شدن چشم بر اثر نزدیک شدن یک شئ‬ ‫‪‬‬

‫گرفتن ترمز با مشاهده چراغ ترمز اتومبیل پیش رو‬ ‫‪‬‬

‫‪ ‬معایب‪:‬‬
‫‪ ‬عدم انعطافپذیری‬
‫‪ ‬با کوچکترین تغییر در محیط باید کل یا بخشی از مجموعه قوانین تغییر کند‬
‫‪ ‬در محیط جزئیقابلمشاهده و تصادفی بهسادگی دچار مشکل میشود‬
‫‪ ‬عدم حافظه و امکان مواجهه با مشکل حلقهی بینهایت‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪23/28‬‬
‫حالت‬ ‫حسگرها‬

‫جهان چگونه‬
‫جهان چگونه است؟‬
‫تغییر میکند‬

‫محیط‬
‫نتیجه اقدام انتخابی‬
‫بر محیط چیست‬

‫قانون‬ ‫اکنون چه عملی‬


‫شرط عمل‬ ‫باید انجام دهم؟‬

‫عامل‬
‫عملگرها‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪24/28‬‬
‫با در اختیار داشتن مدلی از محیط‬
‫و تغییرات آن تا حدودی مشکل‬ ‫حالت‬ ‫حسگرها‬
‫جزئی قابلمشاهده بودن‬
‫و تصادفی بودن برطرف میشود‬ ‫جهان چگونه‬
‫جهان چگونه است؟‬
‫تغییر میکند‬

‫محیط‬
‫نتیجه اقدام انتخابی‬
‫بر محیط چیست‬

‫قانون‬ ‫اکنون چه عملی‬


‫شرط عمل‬ ‫باید انجام دهم؟‬

‫عامل‬
‫عملگرها‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪24/28‬‬
‫حالت‬ ‫حسگرها‬

‫جهان چگونه است‬


‫جهان چگونه‬
‫تغییر میکند‬

‫محیط‬
‫اگر فعالیت ‪ A‬را‬
‫نتیجه اقدام‬
‫انجام دهم چه‬
‫خواهد شد‬
‫انتخابی بر محیط‬
‫چیست‬

‫اکنون چه عملی‬
‫اهداف‬ ‫باید انجام دهم‬

‫عامل‬ ‫عملگرها‬

‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪25/28‬‬
‫حالت‬ ‫حسگرها‬

‫جهان چگونه است‬


‫جهان چگونه‬
‫تغییر میکند‬

‫محیط‬
‫اگر فعالیت ‪ A‬را‬
‫نتیجه اقدام‬ ‫انجام دهم چه‬
‫انتخابی بر محیط‬
‫خواهد شد‬
‫چیست‬
‫در چنین حالتی‬
‫سودمند‬
‫چقدر رضایت دارم‬

‫اکنون چه عملی‬
‫باید انجام دهم‬
‫عامل‬
‫عملگرها‬
‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪26/28‬‬
‫آرمین سلیمی بدر ‪ -‬دانشکده مهندسی و علوم کامپیوتر ‪ -‬دانشگاه شهیدبهشتی‬ ‫‪28/28‬‬

You might also like