600 likes | 816 Views
هوش مصنوعی Artificial Intelligence. فصل هفتم: عامل های منطقی. Knowledge Representation and Logic. روشهای جست و جو. روشهای جست و جو در جهان به آسانی توسط حالتها و فعالیتها نشان داده می شدند: اشیاء محدود، قوانین، حالتهای ساده مرتبط اکتشاف های مشخص مساله برای راهنمایی جست و جو
E N D
فصل هفتم: عامل های منطقی Knowledge Representation and Logic
روشهای جست و جو • روشهای جست و جو در جهان به آسانی توسط حالتها و فعالیتها نشان داده می شدند: • اشیاء محدود، قوانین، حالتهای ساده مرتبط • اکتشاف های مشخص مساله برای راهنمایی جست و جو • دانش کامل در مورد تمام نیازها • دانش جدیدی اضافه یا نتیجه گیری نمی شود • حالت های شروع و هدف به خوبی تعریف شده اند • مناسب برای مساله های قابل دسترس، ایستا و گسسته می باشند
عامل های منطقی • برای سایر مساله ها چه باید کرد؟ • اشیای بیشتر و روابط پیچیده تر • تمام دانش مساله به طور صریح مشخص نیست • محیطهای پویا که قوانین تغییر می کنند • عاملها دانششان را تغییر می دهند • چگونه نتایج جدیدی به دست می آید؟
معرفي طراحي پايهاي براي يک عامل مبتني بر دانش: • رهيافت مبتني بر دانش روش قدرتمندي از ساخت برنامه عامل است. هدف آن پيادهسازي نمايشي از عامل است که بتواند به عنوان دانش در مورد دنياي آنها و استدلال در مورد گونههايي ممکن از رفتار آنها به کار ميرود. • عاملهاي مبتني بر دانش قادرند که: • وظايف جديد را به صورت اهداف تعريف شده صريح قبول کنند. • آنها ميتوانند به سرعت توسط گفتن يا يادگيري دانش جديد درمورد حيطه، به رقابت برسند. • آنها ميتوانند خود را با تغييرات محيط، توسط به روز در آوردن دانش مربوطه، تطبيق دهند.
عامل مبتني بر دانش به موارد زير نياز دارد: • چه چيزهايي را بداند؟ • وضعيت جاري دنيا؟ • چطور توسط ادراک به خواص ناديده دنيا رجوع کند؟ • چطور دنيا زمان را ميگشايد؟ • عامل به چه چيزي ميخواهد برسد؟ • فعاليتهايي که در شرايط مختلف انجام ميدهد چيست؟
دانش و نحوه ذخیره سازی آن در کامپیوتر • دانش در کلیه سیسمتهای هوش مصنوعی، الزامی و حذف ناشدنی است. • دانش به روشهای مختلف ممکن است در کامپیوتر کد شود. • انسان به صورت طبیعی میلیون ها قطعه از دانش را در ذهن خود نگهداری می کند. • - مثل سفید بودن برف یا سرد بودن آن. • اصولاً دانش دو نوع دارد که می توان با نامهای اعلانی (توصیفی) و روالی آنها را تفکیک کرد. متناظر با داده و کد هستند و چگونگی تشخیص آنها اين است که اولی ترتیب ندارد و دومی دارد. مثل محل منزل و روش رسیدن به منزل.
پایگاه داده اعلانی و رویه ای • پایگاه داده اعلانی (Declarativeknowledge) • رابطه بین موجودیتها + روش استنتاج • پایگاه داده رویه ای (Proceduralknowledge) • رفتارهای مطلوب به صورت کد برنامه
معماری پایگاه دانش Updates KNOWLEDGE BASE (KB) facts and rules Query Answer INFERENCE MECHANISM
دانش و نحوه ذخیره سازی آن در کامپیوتر • دانش را از نظر وابستگی به دامنه خاص یا عام بودن آن نیز تفکیک می کنند در مورد رفتن به خانه، دانستن ایستگاه اتوبوس مورد نظر یک دانش دامنه محدود و اطلاع از نحوه سوار شدن اتوبوس در هر جای دنیا یک دانش عام است. • ملاکهای ارزیابی روشهای دانش در کامپیوتر: • الف) رسا بودن (Expressiveness) شامل کامل بودن و واضح بودن (Clarity)دانش • ب) موثر بودن (Effectiveness) قابلیت پردازش و استنتاج بر روی دانش • ج) بازدهی بالا داشتن (Efficiency) پردازش، جستجو و جمع آوری سریع و پر بازده دانش • د) صریح بودن (Expressiveness) نمایش صریح مسیر استنتاج
روشهای بازنمائی • الف) بازنمائی منطقی (Logic Rep.): • یک روش بازنمائی توصیفی در این گروه، منطق مرتبه اول (منطق گزاره ها) است که در زبان پرولوگ پیاده سازی شده است. در این زبان فرضیه جهان بسته (Reiter 1978) بکار رفته است که می گوید آنچه درست است می دانم و در انبار دانش من موجود است اگر نبود غلط است. همینطور پرولوگ اگر نتواند یک نتیجه را اثبات کند جواب منفی و غلط می دهد. • منوتونیک: هرچه در مجموعه هست درست است. • جهان بسته: هرچه در مجموعه نیست غلط است.
روشهای بازنمائی • الف) بازنمائی منطقی (Logic Rep.): • اصولاً گزاره، عبارتی است که می تواند غلط یا درست باشد ولی برای نماش جهان هستی کافی نیست. چون گاهی لازم است از گزاره نما استفاده شود تا مفهومی عمومیت یابد. این کار باعث میشود منطق گزاره ها به منطق محمولات (منطق گزاره نماها) گسترش یابد. سورهای عمومی و وجودی می توانند گزاره نماها را به گزاره تبدیل کنند. • parent (A, B) • parent (A, C) • x, y, z, parent (x, y) parent (x, z) spouse(y,z)
روشهای بازنمائی • ب) بازنمائی روالی (Procedural Rep.): • در این روش علاوه بر دانش توصیفی، دانشی وجود دارد که می گوید با دانش توصیفی موجود چه باید کرد. به دانش توصیفی بانک اطلاعاتی(Database) و به دانش روالی قوانین تولید (Production Rules) می گویند. سیستم تولید (Production System) که توسط (Newell & Simon 1972) ارائه شد علاوه بر این دو یک مفسر هم داشت که که قانون تولید مورد استفاده را در هر لحظه انتخاب می کرد. IF salary is high THEN . . . IF salary is SALARY and SALARY >40000 THEN salary is high. IF salary is unknown THEN ask " What is your salary?“ read SALARY remove salary is unknown.
آب آب زی زندگی می کند در می باشد یک ماهی زندگی می کند در می باشد یک نهنگ کوسه می باشد یک گوشتخوار می باشد یک غیر گوشتخوار کوسه خالدار می باشد یک روشهای بازنمائی • ج) بازنمائی شبکه ای: • این روش بازنمائی توارث در خصوصیات را ممکن می سازد در این روش بازنمائی کاملاً بدیهی است که کوسه خالدار در آب زندگی میکند و ماهی است چون این خاصیت به کوسه خالدار نیز میرسد ولی در مورد گوشتخواری این نوع کوسه خود خصوصیت منحصر به فردی دارد.
روشهای بازنمائی • د) بازنمائی ساخت یافته: • در این روش ساختمان های پیچیده تری از دانش وجود دارند که درآنها شکاف (SLOT)هایی برای مقادیر خصوصیات مختلف وجود دارند. برای حفظ دانش مربوط به محتویات اتاق یک هتل یا روش صرف یک غذا از بازنمائی ساخت یافته استفاده می شود که دو روش عمده آن قاب (Frame) و نبشته (Script) ها هستند. اولی توسط (Minsky 75) و دومی توسط (Schank & Abelson 77) معرفی شدند. • قاب برای مفاهیم (Object) و نبشته برای وقایع (Events) مناسب هستند. اجزای قاب بسته به خود آن متفاوت است مثل یک دانشجو و فیلدهای توصیف کننده آن
روشهای بازنمائی • د) بازنمائی ساخت یافته: • در یک قاب می توان یک پردازه خاص به نام (demon) را به یک فیلد (slotیا شکاف) نسبت داد و در صورت تغییر مقدار به طور اتوماتیک این پردازه صدا زده خواهد شد. • حال آن که در نبشته اجزاء خاصی حتماً وجود دارند که عبارتند از: شرایط ورود، نتایج، مفاهیم مرتبط، نقش ها، صحنه های متوالی از وقایع و مسیرهای ممکن
روشهای بازنمائی • د) بازنمائی ساخت یافته: • مثال نمایش یک نبشته برای عمل خرید از سوپر مارکت • شرایط ورود: خریدار جنس می خواهد، پول دارد، سوپر مارکت باز است او به سوپر مارکت می رود. • نتایج: خریدار جنس دارد، سوپر مارکت پول بیشتری دارد، خریدار پول کمتری دارد، سوپر مارکت جنس کمتری دارد. • مفاهیم مرتبط: اجناس، صندوق ها، سبدهای خرید • نقش ها: خریدار در هنگام برداشتن اجناس، صندوق دار در هنگام گرفتن پول، مدیر در هنگام سفارش جنس • صحنه ها: بسته بندی اجناس، برداشتن اجناس، پرداختن پول (گرفتن پول) • مسیرها: خریدار سبد خرید را بر می دارد و خود اجناس را انتخاب می کند. • کسی دیگر سبد خرید را بر می دارد و خریدار اجناس را در سبد او می گذارد.
عامل های منطقی • بخش مرکزي عامل • مبتني بر دانش پايگاه دانش (knowledge base) آن، يا KB است. • پايگاه دانش • مجموعهاي از نمايش حقايق در مورد نياز است. • جمله • هر نمايش اختصاصي يک جمله (sentence) ناميده ميشود. • جملات • جملات در يک زباني که زبان بازنمايي دانش (knowledge representation) ناميده ميشود، بيان ميشوند.
عامل های منطقی ASK:به منظور افزودن جملات جديد به پايگاه دانش به کار برده ميشود. TELL:به منظور پرسش اينکه چه چيزهايي شناخته شده است. تشخيص اينکه چه چيزي بايد پس از TELLed به KBدنبال شود، مسئوليت مکانيزمي به نام استنتاج (inference) است، که قسمت مهم ديگر عامل مبتني بر دانش را تشکيل ميدهد.
عامل های منطقی هر زمان که برنامه دانش صدا زده ميشود، دو عمل انجام ميشود: 1- به پايگاه دانش گفته ميشود (TELL) که چه دريافت کرده است. 2- از پايگاه دانش سؤال ميشود (ASK) که چه عملي بايد انجام شود. در فرآيند پاسخ به اين پرسش، استدلال منطقي براي اثبات اينکه کدام عمل بهتر از بقيه است استفاده ميشود و دانستههاي عامل و اهداف آن مشخص ميشوند.
عامل های منطقی ميتوانيم يک عامل مبتني بر دانش را در سه سطح تعريف کنيم: 1. سطح دانش knowledge level يا سطح معرفتش ناختی(epistemological)که خلاصهترين سطح است؛ ميتوانيم عامل را توسط گفتن اينکه عامل چه ميداند، تعريف نماييم. 2. سطح منطقي logical level سطحي است که دانش به صورت جملات رمزگذاري ميشود. 3. سطح پياده سازي Implementation Level سطحي است که در معماري عامل اجرا ميشود و بازنماييهاي فيزيکي از جملات سطح منطقي، در اين سطح وجود دارد. انتخاب پيادهسازي درکارآيي بهتر عامل بسيار اهميت دارد، اما به سطح منطقي و سطح دانش مربوط نميشود.
دنياي WUMPUS غاری است که اتاقهای آن با راهروهایی به هم متصل اند در جایی از این غار WUMPUS کمین کرده است. WUMPUS حیوانی است که هرکس وارد اتاقش شود او را می خورد. عامل می تواند به WUMPUS شلیک کند ولی فقط یک تیر در اختیار دارد بعضی از اتاقها گودالهای بی انتهایی دارند و هرکس به داخل آن اتاقها وارد شود (به جز WUMPUS که بزرگ است و در آن جا نمی شود) در دام می اندازند. تنها خاصیت تسکین برای زندگی کردن در این محیط یافتن کوهی از طلاست.
دنياي WUMPUS • محیط • شبکهاي 4*4 از مربع هاست. • شروع از خانه [1,1] • مکانهای طلا و W با یک توزیع یکنواخت و بدون مکان شروع به طور تصادفی انتخاب میشوند هر مربع غیر از مربع شروع می تواند گودال باشد (با احتمال 20%)
دنياي WUMPUS – معیار کارایی • 1000+ برای انتخاب طلا • 1000- برای افتادن در گودال یا خورده شدن توسط WUMPUS • 1- برای هر فعالیتی که اجرا می شود • 10- برای استفاده از تیر
دنياي WUMPUS – محرک ها • حرکت به جلو، چرخيدن 90 به سمت چپ، چرخيدن 90 به سمت راست • عامل می میرد زماني که وارد يک مربع شامل سياه چاله و يا Wumpus زنده شود. • اگر عامل در حرکت به دیوار بخورد حرکت بی اثر است • فعالیت Grab برای برداشتن شیء داخل مربع حاوی عامل است • فعالیت shoot پرتاب تیر در خط مستقیم تا به دیوار یا wumpus بخورد.
دنياي WUMPUS - حسگرها • از مربعهاي مجاور (نه قطري) Wumpus عامل بوي تعفن را احساس ميکند. • در مربعهايي که مستقيماً مجاور با چالهها هستند، عامل نسيمي را احساس ميکند. • در مربعي که طلا وجود دارد، عامل يک درخششي را درک ميکند. • وقتی عامل به دیوار برخورد می کند ، ضربهاي را دريافت ميکند. • Wumpus که کشته ميشود، فريادي سر ميدهد که هر جايي از غار شنيده ميشود. • ادراکات به عامل به صورت ليستي از پنج نماد داده ميشود: تعفن، نسیم، درخشش، ضربه، جیغ [Stench, Breeze, Glitter, Bump, Scream]
P? P? دنياي WUMPUS A=عامل B=نسیم G=درخشش،طلا OK=مربع امن P=گودال S=تعفن V=ملاقات شده W=Wumpus ok ok A A v ok B ok ok ok [None, None, None, None, None] [None, Breeze, None, None, None]
P? P? دنياي WUMPUS A=عامل B=نسیم G=درخشش،طلا OK=مربع امن P=گودال S=تعفن V=ملاقات شده W=Wumpus A W! W! S G B A S v ok S ok v ok ok B v ok B v ok P! P! v ok v ok [Stench, None, None, None, None] [Stench, Breeze, Gitter, None, None]
بازنمايي، استدلال و منطق: بازنمايي و استدلال با همديگر، عملکرد يک عامل مبتني بر دانش را حمايت خواهند کرد. بازنمايي دانش (knowledge representation) دانش را در فرم حل شدني کامپيوتر مطرح ميسازد، که به عاملها کمک ميکند تا ارائه بهتري داشته باشند.
بازنمايي، استدلال و منطق: زبان بازنمايي دانش متوسط دو خاصيت تعريف ميشود: نحو (Syntax): يک زبان، ساختاري ممکن براي تشکيل جملات را ايجاد ميکند. بازنمايي واقعي در داخل کامپيوتر: هر جمله توسط يک ساختار فيزيکي يا خاصيت فيزيکي قسمتي از عامل پيادهسازي ميشود. معني (Semantic): تعيين ميکند که حقايق موجود در دنيا به چه جملاتي نسبت داده شوند.
بازنمايي، استدلال و منطق: معناي زبان، درستی هر جمله را در برابرهر جهان ممکنتعریف ميکند. تفاوت بين حقايق و بازنماييهاي آنها: حقايق قسمتي از دنياي واقعي را تشکيل ميدهند، اما بازنماييهاي آنها بايد به صورتي کد شوند که بتواند به طور فيزيکي در يک عامل ذخيره شود.
بازنمايي، استدلال و منطق: جملات قسمتي از ساختار فيزيکي عامل هستند و استدلال بايد پردازشي از ايجاد ساختار جديد فيزيکي از نمونههاي قديميتر باشد. استدلال مطلوب بايد اين اطمينان را حاصل کند که ساختار جديد حقايقي را بازنمايي ميکند که از حقايقي که ساختار قديمي ايجاد کرده بود، پيروي کنند.
ایجاب می کند جمله جملات نمایش معنا معنا جهان جنبه هایی از جهان واقعی پیروی می کند جنبه هایی از جهان واقعی بازنمايي، استدلال و منطق: ارتباط بين جملات و حقايق توسط معناي زبان توليد ميشوند.
بازنمايي، استدلال و منطق: استلزام: ارتباط بين حقايقي که دنباله رو يکديگر هستند را نشان ميدهد. در علائم رياضي، ارتباط استلزام بين يک پايگاه دانش KB و يک جمله a به صورت «KB مستلزم a است» بیان و به صورتKB|= a نوشته ميشود.
بازنمايي، استدلال و منطق: رويه استنتاج ميتواند يکي از دو عامل ذيل را انجام دهد: 1. با داشتن پايگاه دانش KB ميتواند جملات تازهاي از a توليد کند که مفهوم آن استلزام توسط KB باشد. 2. يا با داشتن يک پايگاه دانش KB و جمله a ديگري، اين رويه ميتواند گزارش دهد که a توسط KB مستلزم شده است يا خير.
حق تقدم • یای انحصاری (XOR) یا V منطق گزارهاي: يک منطق بسيار ساده • علائم منطق گزارهاي: • ثابتهاي منطقي (True, False) • علائم گزارهاي: Q, P • رابطهاي و و و و • پرانتز () (Not) نقیض (And) ترکیب عطفی (Or) ترکیب فصلی (استلزام) مقدم و تالی (اگر و فقط اگر) دوشرطی
منطق گزارهاي • تمام جملات توسط قرار دادن اين علائم با هم و با استفاده از قوانين زير، ساخته ميشوند: • ثابتهاي منطقي (true, False) خودشان جمله محسوب ميشوند. • علامات گزارهاي نظير Q, P هر کدام به تنهايي يک جمله هستند. • پرانتزهاي اطراف يک عبارت، آن عبارت را تبديل به يک جمله واحد ميسازندمثل(P V Q). • يک جمله ميتواند توسط ترکيب جملات سادهتر با يکي از پنج رابط منطقي ايجاد شود.
منطق گزارهاي SentenceAtomic_Sentence | Complex_Sentence Atomic_SentenceTrue | False | P | Q |R … Complex_Sentence (Sentence) |~Sentence | Sentence Connective Sentence Connective/\ | V | => | <=> | ….
P Q P /\ Q P \/ Q False False False False False True False True True False False True True True True True منطق گزارهاي معاني: يک نماد گزارهاي ميتواند آنچه که خواست شما است، معني بدهد. يعني اينکه، تفسير آن هر حقيقت اختياري ميتواند باشد. يک جمله پيچيده، معنايي مرکب از معناهاي هر قسمت از جمله را دارد، هر رابط ميتواند به عنوان يک تابع تصور شود.
منطق گزارهاي اعتبار و استنتاج: جدول درستي براي تعريف رابطها و براي کنترل جملات معتبر به کار ميرود. ماشين هيچ ايدهاي از معناي نتايج ندارد، کاربر ميتواند نتايج را بخواند و از تفسير خود براي نمادهاي گزارهاي به معناي نتيجه پي ببرد.
استدلال استدلال یعنی قدرت استفاده از دانش برای به دست آوردن نتیجه گیری های تازه در مورد جهان. آنچه بین یک سیستم پایگاه دانش و پایگاه داده تفاوت ایجاد می کند توانایی پایگاه دانش در استدلال و استنتاج است. روش های استدلال از ضعیف به قوی: الف) Abduction: (( AB) ^ (B)) A مثال: اگر پرنده ای کلاغ باشد، رنگ آن سیاه است و در ضمن یک پرنده سیاه ببینیم و نتیجه بگیریم شرط برقرار بوده است یعنی پرنده کلاغ بوده است. (از چه ای کل با کلان آمیختی؟)
استدلال ب) Induction: (( A1B) ^ (A2B)^ … ) Ai: Ai B مثال: کلاغ اول سیاه است، کلاغ دوم سیاه است، ... کلاغ n ام سیاه است و نتیجه بگیریم که هر چه کلاغ قبلا بوده یا حالا هست یا بعدا خواهد بود سیاه است.
استدلال ب) deduction: (( AB) ^ (A)) B مثال: ماشین بدون باطری استارت نمی زند، اگر این را نیز بدانیم که ماشین خاصی باطری ندارد نتیجه بگیریم، آن ماشین هم استارت نخواهد زد.
جهان Wumpus گودال P درست است اگر گودالی در [i ,j] باشد. نسیم B درست است اگر نسیمی در [i ,j] باشد.
جهان Wumpus R1: P1,1 R2: B1,1 (P1,2 V P2,1) R3: B2,1 P1,1 V P2,2 V P3,1 R4: B1,1 R5: B2,1 KB : R1 ^ R2 ^ R3 ^ R4 ^ R5
استنتاج • هم ارزی منطقی (): دو جمله و از نظر منطقی هم ارز هستند اگر در مجموعه یکسانی از مدل ها درست باشند. • یا ≡ اگر و فقط اگر |= و |= • اعتبار: دنباله ای معتبر (valid) است اگر در تمام مدل ها درست باشد مثل P V P • ارضا شدن (satisfiable): جمله ای ارضا شدنی است که در مدلی درست باشد. • ارضا نشدن (unsatisfiable): جمله ای ارضا نشدنی است اگر در تمام مدل ها نادرست باشد مثل P ^ P
الگوهای استدلال در منطق گزاره ای • قوانین استنتاج • قانون قیاس استثنایی (Modus Ponens) • حذف And (And-Elimination) • حذف دو شرطی
جهان Wumpus R1: P1,1 R2: B1,1 (P1,2 V P2,1) R3: B2,1 P1,1 V P2,2 V P3,1 R4: B1,1 R5: B2,1 حذف دو. شرطی در R2 R6: (B1,1 (P1,2 V P2,1)) ^ ((P1,2 V P2,1) B1,1) حذف and در R6 R7: (P1,2 V P2,1) B1,1 هم ارزی عکس نقیض R8: (B1,1 (P1,2 V P2,1))