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

  • شماره مطلب : 2
  • دسته بندی : هوش مصنوعی
  • عنوان : عامل هوشمند چیست
  • نویسنده : NetBoss
  • پیش نیاز : مطلب شماره 1 از مجموعه هوش مصنوعی
  • بیشتر بخوانید :
  1. تعاریف هوش مصنوعی

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

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

 

عامل هوشمند (Rational Agent)

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

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

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

فرض کنید که ما بعنوان سازنده، عامل هوشمندی ساخته ایم که در واقع یک ربات نظافت گر خودکار میباشد. برای مثال یک معیار اندازه گیری عملکرد برای این ربات میتواند میزان جمع آوری گرد غبار در طول مدت یک شیفت کاری باشد. یا مثلا برای توانمند تر ساختن ربات میتوان مقدار انرژی الکتریکی مصرف شده و سر و صدای تولید شده توسط آن را به مجموعه معیار های اندازه گیری اضافه نمود. برای مثال میتوانیم بگوئیم اگر ربات ما در طول یک ساعت حداقل  x لیتر غبار جمع آوری و کمتر از y  انرژی مصرف نمود، کار خود به درستی انجام داده است.

تفاوت ِعقلانیت و علم لایتناهی

نکته ای که از اهمیت بسیاری برخوردا است، تمیز دادن بین دو مفهوم عقلانیت و علم لایتناهی میباشد. یک عامل با علم لایتناهی نتیجه خروجی تمامی اعمال خود را میداند که بسیار هم عالی و خوب است! اما در دنیای واقعی عملا همچین عاملی وجود نخواهد داشت! به مثالی که در ادامه آماده توجه فرمایید.

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

سوالی که پیش می آید این است که تصمیم شما برای عبور از خیابان یک تصمیم اشتباه و غیر هوشمندانه بوده است؟ آیا از عمل شما به عنوان یک عمل غیر عقلانی یاد خواهد شد؟

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

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

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

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

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

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

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

نگاشت ایده آل، از توالی مشاهدات به عمل

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

به چنین جدولی، جدول “نگاشت مشاهدات به عمل” میگویند. در اصول میتوان با تست اینکه چه عملی برای مشاهدات مناسب است این جدول را تکمیل نمود. باید توجه نمود که اگر میتوانیم از روی نگاشت، عامل هوشمند داشته باشیم از روی نگاشت ایده آل نیز میتوان به عامل هوشمند ایده آل رسید.

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

استقلال و خود مختاری

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

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

مثال. فرض کنید قصد تولید یک ساعت مچی هوشمند داریم که بسته به منطقه زمانی نمایشگر خود را با زمان جدید تنظیم مینماید. به عنوان طراح این سیستم میتوانید دو دیدگاه را دنبال نمایید. روش اول این است که بصورت از پیش ساخته به ساعت این دستور را بدهیم که در زمان های مشخصی خود را با منطقه زمانی محلی خاص (مثلا آفریقا) بروز رسانی نماید. در واقع از قبل میدانیم که در چه تاریخی قصد سفر به آفریقا داریم پس از قبل این تنظیمات را به ساعت میدهیم!

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

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

3 Comments

Add a Comment

Your email address will not be published. Required fields are marked *

Copy Protected by Chetan's WP-Copyprotect.