فصل دوم عامل های هوشمند

اخبار ایران تکنولوژی

فصل دوم

عامل های هوشمند

  1. فصل اول هوش مصنوعی Artificial Intelligence
  2. فصل دوم عامل های هوشمند
  3. فصل سوم حل مسائل توسط جستجو
  4. فصل چهارم روش‌های جستجو آگاهانه
  5. فصل 5 تئوری بازی
  6. فصل ششم عامل‌هاییکه به طور منطقی استدلال می‌‌کنند
  7. فصل هفتم منطق مرتبه اول
  8. فصل هشتم استنتاج در منطق مرتبه اول
  9. فصل نهم برنامه‌ریزی
  10. فصل دهم عدم قطعیت

 

عامل:

به هر چیزی اطلاق می‌شود، که قادر به درک محیط پیرامون خود از طریق حس‌گرها(sensor) و اثرگذاری‌ بر روی محیط از طریق اثرکننده‌ها (effector) باشد.

عامل نرم‌افزاری:

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

عوامل انسانی

حس کردن: گوش، چشم، دیگر ارگان‌ها

اثرگذاری: دست، پا، بینی، اندام‌های دیگر

عوامل روباتیک

حس کردن: دوربین، یابنده‌های مادون قرمز

اثرگذاری: موتور

 

عامل‌ها چگونه باید عمل کنند؟

عامل منطقی: چیزی است که کار درست انجام می‌دهد.

عمل درست: آن است که باعث موفق‌ترین عامل گردد.

کارایی: چگونگی موفقیت یک عامل را تعیین می‌کند.

تفاوت میان منطقی بودن و دانش کل (omniscience):

عامل دانای کل معنی خروجی واقعی اعمال خود را دانسته و بر پایه آن عمل می‌کند اما دانش کل در واقعیت غیرممکن است.

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

آن چه در هر زمانی منطقی است به چهار چیز وابسته است:

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

رفتار عامل وابسته به دنباله ادراکی تا حال است.

عامل را باید به‌عنوان ابزاری برای تحلیل سیستم‌ها قلمداد کرد؛ نه شخصیتی مطلق که جهان را به دو بخش عامل و غیر‌عامل‌ها تقسیم می‌کند.

نگاشت ایده‌آل از دنباله‌های ادراکی به عملیات

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

این بدان معنی نیست که ما جدول خاصی با یک ورودی برای هر دنباله ادراک ممکنی تولید کنیم. می‌توان مشخصات نگاشت را بدون شمارش خسته‌کننده آنها انجام داد.

مثال:  تابع ریشه دوم

دنباله ادراکی: دنباله‌ای از کلیدهای زده شده

نگاشت ایده‌آل:برای مقادیر مثبت x نشان داده شده توسط ادراک، z نیز مثبت باشد و عمل مناسب نمایش نشان داده شود.

خودمختاری:

در اینجا تعریف عامل باید کامل‌تر شود و بخش دانش درونی به آن اضافه می‌گردد.

رفتار عامل می‌تواند متکی بر دو پایه تجربه خود و دانش درونی بنا نهاده شود.

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

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

عامل هوشمند واقعاً خود مختار باید قادر به عمل موفقیت‌آمیز در دامنه وسیعی از محیط‌ها باشد و البته باید زمان کافی برای تطبیق نیز به آن داده شود.

ساختار عامل‌های هوشمند

وظیفه هوش مصنوعی طراحی برنامه عامل است؛

این طراحی شامل تابعی  است که نگاشت عامل از ادراک به عملیات را پیاده سازی می‌کند.

معماری: فرض می‌کنیم برنامه عامل بر روی نوعی ابزار محاسبه‌گر اجرا می‌گردد که آن را معماری می‌نامیم.

برنامه‌ عامل، باید توسط معماری قابل پذیرش و اجرا باشد.

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

ارتباط بین عامل‌ها، معماری‌ها و برنامه‌ها را می‌توان به صورت ذیل جمع بندی نمود:

برنامه+ معماری= عامل

در اینجا مسئله تمایز بین محیط واقعی و مصنوعی مطرح می‌شود؛ اما

مسأله اصلی، پیچیدگی مابین:

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

مشهور‌ترین محیط مصنوعی، محیط تست تورینگ (turing) است.

برنامه‌های عامل:

تشابهات عامل‌های هوشمند:

دریافت ادراک محیطی

تولید اعمال لازم

دو نکته در مورد شالوده برنامه قابل ذکر هستند:

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

هدف یا معیار کارایی بخشی از برنامه شالوده نخواهد بود.

چرا تنها به پاسخ‌ها نگاه نمی‌کنیم؟

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

جدول عامل نوع راننده تاکسی

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

جنبه‌های مختلف یک عمل، انواع مختلف برنامه‌های عامل را پیشنهاد خواهد کرد.

برای مثال، 4 عامل را مورد بررسی قرار می دهیم:

  • عامل‌های واکنشی ساده
  • عامل‌هایی که اثرات دنیا را حفظ می‌کنند
  • عامل‌های هدف‌گرا
  • عامل‌های سودمند

عامل‌های واکنشی ساده

در اینجا جدول رجوع باید مورد توجه قرار گرفته و فیلدهای مختلف آن توسط اطلاعات ورودی پر شود.

اتصالاتی (واکنش‌هایی) وجود دارند که انسان‌ها بسیاری از آنها را دارا بوده:

برخی از آنها قابل یادگیری و برخی دیگر غریزی است.

دیاگرام شماتیک از عامل ساده واکنشی

مربع مستطیل: نشان‌دهنده وضعیت داخلی جاری فرایند تصمیم‌گیری عامل

بیضی: نشان‌دهنده وضعیت اطلاعات پس‌زمینه

عامل‌هایی که اثرات دنیا را حفظ می‌کنند

از آنجایی ناشی می‌شود که حسگرها نمی‌توانند دسترسی کامل به وضعیت دنیا را به وجود آورند.

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

بهنگام‌سازی اطلاعات وضعیت داخلی همزمان با گذر زمان نیازمند دو نوع دانش کد شده در برنامه عامل است.

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

دوم: نیازمند اطلاعات درباره اعمال خود هستیم که بر روی دنیا اثرگذار است.

عامل واکنشی با حالت داخلی

 

 

 

 

 

 

 

 

 

 

 

عامل‌های هدف گرا:

دانستن درباره وضعیت کنونی محیط همواره برای تصمیم‌گیری عمل نمی‌تواند کافی باشد.

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

برنامه‌ عامل می‌تواند این اطلاعات را با اطلاعاتی درباره نتایج اعمال ممکن (همانند اطلاعاتی که در عامل واکنش برای بهنگام‌سازی وضعیت داخلی استفاده شد) ترکیب نموده تا اعمال مناسب را برای دسترسی به هدف انتخاب نماید.

در مواقعی ساده است: که رضایت از هدف بلافاصله از عمل واحد تولید گردد.

در مواقعی پیچیده است: که عامل باید دنباله‌های طولانی را در نظرگرفته تا راهی برای دستیابی به هدف پیدا کند.

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

تفاوت عامل‌های واکنشی و هدف‌گرا:

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

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

 

 

عاملی با اهداف دقیق

 

 

 

 

 

 

 

 

 

 

 

 

 

عامل‌های سودمند:

اهداف به تنهایی برای تولید رفتار با کیفیت بالا کافی نیستند.

ملاک کارایی عومی باید مقایسه‌ای بین وضعیت‌های دنیای  متفاوت (یا دنباله‌ حالات) را بر پایه چگونگی رضایت عامل در صورت حصول هدف بدهد.

بنابراین اگر یک وضعیت دنیا به دیگری ترجیح داده می‌شود، آنگاه آن برای عامل سودمند‌تر خواهد بود

سودمندی: تابعی است که یک وضعیت را به عدد حقیقی نگاشت می‌دهد، که درجه رضایت مربوط را تشریح می‌کند.

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

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

ارتباط بین عامل و محیط: اعمال بوسیله عامل بر محیط انجام می‌شود، که خود ادراک عامل را مهیا می‌سازد.

خواص محیط:

  • قابل دسترسی در مقابل غیر دسترسی
  • قطعی در برابر غیر قطعی
  • اپیزودیک در مقابل غیراپیزودیک
  • ایستا در مقابل پویا
  • گسسته در مقابل پیوسته

قابل دسترسی در مقابل غیرقابل دسترسی

محیط قابل دسترسی: محیطی که عامل آن توسط ابزار حس‌کننده‌اش امکان دسترسی به وضعیت کامل محیط را داشته باشد.

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

قطعی در مقابل غیر قطعی

محیط قطعی: محیطی است که اگر وضعیت بعدی محیط بوسیله وضعیت کنونی و اعمالی که با عامل‌ها انتخاب گردد، تعیین شود.

بهتر است به قطعی یا غیر قطعی بودن محیط از دیدگاه عامل نگاه کنیم.

اپیزودیک در مقابل غیر اپیزودیک

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

ایستا در مقابل پویا

محیط پویا: محیطی که در حین سنجیدن عامل تغییر می‌کند.

محیط نیمه‌پویا: محیطی که با گذر زمان تغییر نمی‌کند اما امتیاز کارایی تغییر می‌کند.

محیط‌های ایستا برای کار ساده هستند زیرا عامل نیاز به نگاه‌کردن به دنیا در حین تصمیم‌گیری عملی نداشته و همچنین در مورد گذر زمان نیز نگران نمی‌باشد.

گسسته در مقابل پیوسته

محیط گسسته: اگر تعداد محدود و مجزا از ادراک و اعمال بوضوح تعریف شده باشد.

– بازی شطرنج گسسته است.

– رانندگی تاکسی پیوسته است.

سخت‌ترین حالت در بین حالات موجود برای محیط:

غیر قابل دسترسی، غیر اپیزودیک، پویا و پیوسته

مثال‌هایی از انواع محیط و ویژگی‌های آنها

برنامه‌های محیط

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

شبیه‌ساز محیط را بر اساس اعمال و دیگر فرآیند‌های پویای محیط بهنگام می‌سازد.

محیط با وضعیت آغازین و تابع بهنگام‌سازی تعریف می‌گردد.

 

 

بدون دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

اخبار ایران تکنولوژی
۷ الگوریتم که هر برنامه نویسی باید بداند

ما چند الگوریتم مرتب سازی در این لیست داریم و Merge Sort یکی از مهمترین الگوریتم‌ها است. این یک الگوریتم مرتب سازی کارآمد بر اساس تکنیک برنامه نویسی تقسیم و تسخیر است.

آموزش و هوش مصنوعی
تکنیک های طراحی الگوریتم

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

یادگیری ماشینی
آموزش و هوش مصنوعی
فراگیری ماشین

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