بنام خدا
هوش مصنوعی
تهیه : بی بی الهام فلاح
دانشجوی رشته مهندسی نرم افزار دانشگاه پیام نور اردکان
* چكيده
* مقدمه
* هوش مصنوعي چيست؟
* هوش مصنوعي و هوش انساني
* شاخههاي هوش مصنوعي
* سيستمهاي خبره
* مزاياي سيستمهاي خبره
چكيده:
ـ هدف از اين مقاله آشنائي با هوش مصنوعي به عنوان سمبل و نماد دوران فراصنعتي و نقش و كاربرد آن در صنايع و مؤسسات توليدي ميباشد. بدين منظور، اين موضوع در قالب دو مقاله جداگانه و يا دو بخش ارائه ميشود. در (بخش اول) هوش مصنوعي مورد مطالعه قرار ميگيرد و سئوالاتي نظير اين كه هوش مصنوعي چيست؟ تفاوت هوشمصنوعي و هوش (طبيعي (انساني درچيست؟ شاخههاي عمده هوش مصنوعي كدامند؟ و نهايتأ، اجزاي هوش مصنوعي نيز تشريح ميشود. در بخش دوم،كاربردهاي هوش مصنوعي در صنايع و مؤسسات توليدي، بخصوص در زمينه سيستمهاي خبره و آدموارهها مورد مطالعه وتجزيه و تحليل قرارميگيرد.
مقدمه:
دهههاي آغازين سده بيستم ميلادي، دوران پيشرفت شگرفصنعتي بود .
به نظر ميرسد كه سمبل دوران فراصنعتي و نماد فرآوردههايبيهمتاي قرن آينده«هوش مصنوعي»(1) است. امروزه موضوعهوش مصنوعي داغترين بحث ميان كارشناسان دانش رايانه واطلاعات و ديگر دانشمندان و تصميمگيرندگان است. در سراسرتاريخ تا به امروز انسان از جنبه تن و روان، مركز و محور بحثها و پژوهشها بوده است. ولي اكنون موجودي با رتبهاي پائينتر،بيجان و ساختگي ميخواهد جانشين او شود، امري كه بدون شك ميتوان ادعا نمود بيشتر انسانها با آن مخالفند.
هوش مصنوعي چنانچه به هدفهاي والاي خود برسد، جهشبزرگي در راه دستيابي بشر به رفاه بيشتر و حتي ثروت افزونترخواهد بود. هم اكنون نمونههاي خوب و پذيرفتن از هوش مصنوعيدر دنياي واقعي ما به كار افتاده است. چنين دستاوردهايي، صرفمنابع لازم در آينده را همچنان توجيه خواهد كرد.
از سوي ديگر، منتقدين هوش مصنوعي چنين استدلال ميكنندكه صرف زمان و منابع ارزشمندديگر در راه ساخت فراوردهاي كهپر از نقص و كاستي ودستآوردهاي مثبت اندكي است، مايه بدنام كردن و زير پا گذاشتنتوانمنديها و هوشمنديهايانسان ميباشد. تلخترين انتقادهابر اين باور است كه هوشمصنوعي، توهين آشكار به گوهر طبيعت و نقش انسان است.
هوش مصنوعي چيست؟
تلاش در راه برخوردار نمودن رايانه از توانائيهاي شناخت وتقليد جنبههاي هوشي انسان از دهه 1950 ميلادي آغاز شده است.در سال 1956 ميلادي، گروهي از دانشمندان از جمله ماروينمينسكي(2) (از دانشگاه فني ماساچوست)، كلود شانن(3) (ازآزمايشگاه نامدار بل) و جان مككارتي(4) (از دانشگاه دارتموت(همايش در دارت موت (5)كانادا برگزار نمودند تا در اينزمينه به گفتگو بپردازند. جان مك كارتي دانشيار كرسي رياضيدانشگاه و ميزبان همايش، عنوان هوش مصنوعي) را بر اين نشستنهاد.از آن زمان تاكنون ميان دانشمندان و خبرگان آگاه همچنانبحث در مفهوم هوش مصنوعي جريان دارد.
هوش مصنوعي را كوششهايي تعريف ميكنند كه در پي ساختننظامهاي رايانهاي )سختافزار و نرمافزار) است كه رفتاري انسان وارداشته باشند. چنين نظامهايي توان يادگيري زبانهاي طبيعي، انجاموظيفههاي انساني به صورت آدمواره (ربات) و رقابت با خبرگي و توانتصميمگيري انسان را دارند.
يك سيستم هوش مصنوعي به راستي (نه مصنوعي (و )نههوشمند (است. بلكه دستگاهي است هدفگرا كه مشكل را به روش مصنوعي حلميكند اين سيستمها بر پايه دانش، تجربه و الگوهاي استدلايي انسانبوجود آمدهاند.
سيستمهاي هوش مصنوعي مانند كتاب با ديگر آثار فكري انسانميباشند، تا زماني كه نوشته نشوند معلوماتي در خود ندارند. پس از آمادهشدن نيز نميتوانند چيزي تازه بسازند و يا راهحل نويني ابداع كنند.سيستمهاي هوشمند، تنها و تواناييهاي كارشناسان را بالا ميبرند وهرگز نميتوانند جانشين آنها شوند. اين سيستمها فاقد عقل سليم هستند.
هوش مصنوعي و هوش انساني:
براي شناخت هوش مصنوعي شايسته است تا تفاوت آن را با هوشانساني به خوبي بدانيم. مغز انسان از ميلياردها سلول يا رشته عصبيدرست شده است و اين سلولها به صورت پيچيدهاي به يكديگرمتصلاند. شبيهسازي مغز انسان ميتواند از طريق سختافزار يا نرمافزارانجام گيرد. تحقيقات اوليه نشان داده است شبيهسازي مغز، كاريمكانيكي و ساده ميباشد. براي مثال، يك كرم داراي چند شبكه عصبياست. يك حشره حدود يك ميليون رشته عصبي دارد و مغز انسان ازهزار ميليارد رشته عصبي درست شده است. با تمركز و اتصال رشتههايعصبي مصنوعي ميتوان واحد هوش مصنوعيرادرستكرد.
هوش انساني بسيار پيچيدهتر و گستردهتر از سيستمهاي رايانهاياست و توانمنديهاي برجستهاي مانند: استدلال، رفتار، مقايسه، آفرينشو بكار بستن مفهومها را دارد.
هوش انساني توان ايجاد ارتباط ميان موضوعها و قياس ونمونه سازيهاي تازه را دارد. انسان همواره قانونهاي تازهاي ميسازد و ياقانون پيشين را در موارد تازه بكار ميگيرد. توانايي بشر در ايجادمفهومهاي گوناگون در دنياي پيرامون خود، از ويژگيهاي ديگر اوست.مفهومهاي گستردهاي همچون روابط علت و معلولي، رمان و يامفهومهاي سادهتري مانند گزينش وعدههاي خوراك (صبحانه، ناهار وشام) را انسان ايجاد كرده است. انديشيدن در اين مفهومها و بكاربستنآنها، ويژه رفتار هوشمندانه انسان است.
هوش مصنوعي در پي ساخت دستگاههايي است كه بتوانندتوانمندهاي ياد شده (استدلال، رفتار، مقايسه و مفهوم آفريني) را از خودبروز دهند. آنچه تاكنون ساخته شده نتوانسته است خود را به اين پايهبرساند، هر چند سودمنديهاي فراواني به بار آورده است.
يكي از علل رويارويي با مقوله هوش مصنوعي،ناشي از نامگذاري نامناسب آن ميباشد. چنانچه جان مككارتي در سال1956 ميلادي آن را چيزي مانند «برنامهريزي پيشرفته» ناميده بود شايد جنگ و جدلي در پيرامون آن رخ نميداد.
شاخههايهوشمصنوعي:
هوش مصنوعي به تعدادي ميدانهاي فرعي تقسيم شده است و سعيدارد تا سيستمها و روشهايي را ايجاد كند كه بطور تقليدي مانند هوش ومنطق تصميمگيرندگان عمل نمايد.
سه شاخه اصلي هوش مصنوعي عبارتند از: سيستمهايخبره(ES)، آدموارهها و پردازش زبان طبيعي كه در زير بهصورت تصويري نشان داده شده است.
گذری بر سیستمهای خبره Expert Systems
اگر بخواهیم سیستمهای خبره (Expert Systems) را در یک جمله توصیف کنیم باید بگوییم که این سیستمها بهطور کلی برنامههایی هستند که قادرند همانند انسان مسایل خاصی را استدلال کنند. این سیستمها برای استدلال، از الگوهای منطقی خاصی استفاده میکنند که مشابه همان کاری است که انسان در زمان حل یک مسئله عمل میکند. در واقع همانطور که انسان برای حل یک مسئله، تعقل یا اندیشه میکند، سیستمهای خبره نیز برای این کار به الگوها و راه و روشهایی متوسل میشوند که انسان برای آنها مشخص کرده است، بنابراین چون از منطق بشری استفاده میکنند میتوان گفت که تا حدودی همانند انسان فکر میکنند. به همین دلیل همواره واژه دیگری نیز معادل سیستمهای خبره در ادبیات مربوط به هوش مصنوعی آورده میشود که به آن سیستمهای مبتنی بر دانش (KnowLedge Based System) گفته میشود. در واقع دلیل این نامگذاری، یکسان بودن معلومات مورد استفاده توسط این سیستمها در حل مسایل با معلومات مورد استفاده یک انسان متبحر در یک رشته برای حل مسایل حوزه مربوطه است.
هرچند دو واژه سیستمهای خبره و سیستمهای مبتنی بر دانش در متون هوش مصنوعی همواره مترادف یکدیگر در نظر گرفته میشوند، اما در کنار هم قرار گرفتن این دو گستردهترین کاربرد دنیای هوش مصنوعی را به خود اختصاص میدهد. در واقع سیستمهای خبرهای که به دلیل استفاده از دانش بشری قادر به استدلال و حل مسایل باشند بزرگترین و مهمترین شاخه هوش مصنوعی به شمار میرود. یک واژه مهم دیگر در سیستمهای خبره «دامنه وظیفه» یا همان Task Domain است. به این مفهوم که دامنه همان ناحیه یا گسترهای است که یک سیستم خبره در آن زمینه فعالیت میکند و وظیفه (Task) هدف یا کاری است که این سیستم خبره باید انجام دهد. مثلا علوم پزشکی، هوانوردی و معماری میتوانند بهعنوان دامنههای وظایفی چون تشخیص بیماری، زمانبندی پرواز و طراحی ساختمان مورد استفاده سیستمهای خبره مربوطه قرار گیرند.
مهندسی دانش
یکی از مباحث اساسی و جالب توجه در حوزه سیستمهای خبره، روشی است که برای ساختن اینگونه سیستمها به کار گرفته میشوند. بهطور کلی به مراحل ساخت یک سیستم خبره، مهندسی دانش (KnowLedge Engineering) گفته میشود. چراکه سازنده یک سیستم خبره باید از وجود همه اطلاعات و علوم لازم در یک حوزه برای حل یک مسئله مربوط به آن حوزه اطمینان لازم را کسب کند. پس از مشخص کردن دامنه دانش مورد نیاز برای انتقال به یک کامپیوتر، سازنده سیستم خبره یا در اصطلاح همان مهندس دانش (KnowLedge Engineer) باید روش ثبت و نگهداری این علوم و اطلاعات را در کامپیوتر مشخص کند. به مرحله انتقال علوم جمعآوری شده در یک حوزه به کامپیوتر و نحوه چیدمان این علوم در آنجا «نمایش دانش» یا (KnowLedge Representation) گفته میشود. اما در مرحله بعد یعنی زمانی که یک کامپیوتر باید از اطلاعات و دانش ثبت شده در حافظه خود برای استدلال و حل یک مسئله استفاده کند، باید متد یا روشی وجود داشته باشد که بتواند مسئله مورد نظر را درک کرده و آنگاه از بین انبوه اطلاعات و علوم موجود و یا از ترکیب آنها با یکدیگر راهحل مسئله را کشف کند. در اینجا نقش سازنده یک سیستم خبره در معرفی روشی برای استفاده از معلومات ثبت شده برای حل مسایل بسیار مهم است. این روش به هر شکلی که باشد بهعنوان «متد یا شیوه استدلال» (Reasoning Method) شناخته میشود.
اجزای سازنده
با توجه به مطالب فوق، یک سیستم خبره حداقل از دو قسمت اساسی تشکیل شده که یکی مبنا و هسته علمی آن یا همان KnowLedge Base (KB) است و دیگری، ماژول استدلال که Reasoning Engine نام دارد. برای اینکه یک سیستم خبره بتواند توانایی استدلال خوبی داشته باشد باید از مبنای علمی (KB) جامعی بهرهمند باشد. یک KB جامع قاعدتا باید شامل دو دسته اطلاعات علمی در یک زمینه باشد. دسته اول شامل اطلاعاتی است که صد درصد پشتوانه علمی تئوری مرتبط با آن موضوع داشته و شامل اصول یا جزئیات مکتوب، رسمی و شناخته شده آن علم است که در بسیاری از منابع آن حوزه علمی مثل کتابها، دانشگاهها و... مورد تایید قرار گرفته است. به این دسته از اطلاعات علمی، دانش مستند (Factual KnowLedge) گفته میشود. اما دسته دوم، آنهایی هستند که کمتر خاصیت مستند علمی داشته و بیشتر دارای پشتوانه تجربی (Experimental) منحصر بهیک شخص یا گروه خاص یا طبق یک تئوری یا تشخیص غیررسمی است که به آن (Heuristic KnowLedge) گفته میشود.
به شیوه ساماندهی و چیدمان اطلاعات علمی در یک سیستم خبره، نمایش (Representation) گفته میشود. یکی از روشهای معمول این نمایش روشی است به نام قاعده تولید (Production Rule) که دارای زنجیرهای از دستورات شرطی با ساختار آشنای برنامهنویسان یعنی IF-THEN است. در این روش اطلاعات مربوط به یک حوزه بهصورت یک ساختار درختی که دارای یک سری دستورات IF-THEN ساده یا ترکیبی است در سیستم قرار داده میشود.
به سیستمهای خبرهای که علوم مربوط به خود را به این روش نگهداری میکنند سیستمهای مبتنی بر قاعده (Rule Based System) میگویند. اما یکی دیگر از انواع پرکاربرد نمایش اطلاعات در سیستمهای خبره روشی است که در آن علوم بهصورت یک موجودیت (Entity) که دارای نام، خواص و روابط با موجودیتهای دیگر است نمایش داده میشود. در این روش علوم موجود در یک موضوع خاص میتوانند در یک موجودیت مشخص قرار گرفته و از درون خود موجودیتهای کوچکتر دیگری را که میتوانند مشمول خود کنند، تشکیل دهند. بهعنوان مثال در یک سیستم تشخیص پزشکی شاید بتوان هر یک از اعضای بدن را در یک موجودیت جداگانه با نام و خواص معلوم قرار داده و آنگاه هرچند موجودیت را به یک موجودیت سطح بالاتر مثل دستگاه عصبی، گوارش و... و یا چند موجودیت سطح پایینتر مثل اعضای تشکیلدهنده مانند (بافت، رگ، عصب و...) تقسیمبندی و به یکدیگر متصل کرد.
به هر یک از این موجودیتها در ساختار علمی یک سیستم خبره، واحد (Unit) گفته میشود.
اما همانطور که گفتیم جزء اساسی دوم یک سیستم خبره، موتور استدلال یا مدل حل مسئله (Problem Solving Model) یا پارادایم (Paradigm) آن سیستم است که وظیفه ساماندهی و کنترل مراحل حل مسئله را به عهده دارد. یکی از متدهای بسیار معمول و ساده پیادهسازی یک پارادایم یا موتور استدلال روشی است همانند روش مبتنی بر قاعده (Rule Based) در ماژول مربوط به نگهداری اطلاعات علمی در آن سیستم خبره.
بدین معنی که زنجیرهای از دستورات IF-THEN در پارادایم وجود دارد که با بررسی و انطباق اصول و جزئیات صورتمسئله با اصول و جزئیات علمی موجود در KnowLedge Base در قسمت IF میتواند راهحل یک مسئله را در قسمت THEN آن زنجیره پیدا کند.
به این روش استدلال و یافتن راهحل مسئله در یک سیستم خبره، زنجیره کردن مستقیم دستورات IF-THEN (forward Chaining) گفته میشود. البته در برخی سیستمهای خبره امروزی خاصیتی عکس زنجیره کردن مستقیم و در واقع استدلال معکوس نیز وجود دارد، بدین معنی که این سیستم خبره قادر است با دریافت راهحل و جواب یک مسئله صورت آن را پیدا کند. بهعنوان مثال در یک سیستم خبره تشخیص بیماری، استدلال معکوس میتواند بهصورت دریافت نوع بیماری و بیان علایم مربوط به آن عمل کند. به این قابلیت استدلال معکوس، Backward Chaining گفته میشود.
سیستمهای خبره در یک نگاه
حال که با مفهوم و چگونگی ساختار سیستمهای خبره آشنا شدیم بد نیست نگاهی اجمالی به برخی ویژگیهای این سیستمها بیندازیم که تفصیل هر کدام از آنها از ظرفیت تنها یک مقاله خارج است.
کاربرد: اصولا یک سیستم خبره را برای رسیدن به دو منظور میسازند: اول اینکه این سیستم باید بتواند به یک شخص حرفهای در یک زمینه برای رسیدن به هدفش کمک برساند و در مواقع مهم در تصمیمگیری یا تشخیص به وی کمک کند که در این صورت به آنSupport Decision گفته میشود مثل همان سیستمهای خبرهای که در امور پزشکی طراحی شدهاند.
دوم اینکه این سیستم باید بتواند در یک زمینه خاص، خود تصمیمگیری و به آن عمل کند. در واقع در این روش، یک سیستم خبره به یک شخص مبتدی یا غیرحرفهای میگوید که چه کاری باید انجام دهد (Decision Making). سیستمهای خبرهای که در زمینههای صنعتی وجود دارند نمونه خوبی از این نوع به حساب میآیند.
هدف: با استفاده از یک سیستم خبره میتوان اطلاعات علمی و حرفهای مربوط به یک رشته تخصصی را ثبت و در مجامع مربوطه به آن توزیع کرد، کیفیت انجام کارهای حرفهای را با اطمینان از عدم اشتباه سیستم افزایش داد و در نهایت توانایی افراد مبتدی را بهتدریج در اثر کار با یک سیستم خبره افزایش داده و آنها را به تبحر حرفهای خود نزدیکتر کرد.
توانایی
بهطور کلی توانایی محسوس یا نامحسوس یک سیستم خبره را میتوان به عناوین زیر خلاصه کرد:
) -1تشخیص مشکل (صورتمسئله
2- تشخیص راهحلها و انتخاب از بین آنها
3- توصیف و استدلال راهحل انتخاب شده
4- تعامل با اطلاعات ناقص برای کسب یا یافتن اطلاعات کاملتر
5- امکان ثبت و بازسازی همه مراحل حل یک مسئله
سیستمهای خبره، دیروز و امروز
دهه 1950 و 1960 را میتوان آغازی بر بهوجود آمدن برنامههای کامپیوتری هوشمند (بر اساس هوش مصنوعی) به حساب آورد.
در طی همین سالها بود که تئوری جدیدی به نام Heuristics که بعدا به سیستمهای خبره تغییر هویت داد، مطرح شد. این تئوری در واقع روشی بود برای یافتن یک راهحل از بین چند راهحل موجود برای یک مسئله بخصوص.
پس از چندی نیز خبر از بهوجود آمدن یک زبان برنامهنویسی جدید به نام LISP (LIST Processing) به میان آمد. این زبان برنامهنویسی قابلیت بسیار مناسبی در پردازش انواع ساختارهای اطلاعاتی (Data Structures) بهخصوص ساختار Link List داشت و از همینرو قادر بود تا برنامههایی که بر اساس پردازش زنجیرهای و سلسلهمراتبی اطلاعات کار میکنند (مثل برنامههای هوش مصنوعی و سیستمهای خبره) را بسازد.
اما در دهه هفتاد تحقیقات و دستاوردهای هوش مصنوعی بهسمت مسایل علمیتر و بهخصوص شاخههایی از علم که تاثیر بیشتری در زندگی عامیانه مردم داشت گرایش یافت. بهعنوان مثال در این ایام برنامهای با نام Dendral (دندرال) نوشته شد که میتوانست ساختار مولکولی ترکیبات شیمیایی را مشخص کند. پس از آن برنامه دیگری بهنام Macsyma (ماکسیما) ابداع شد که میتوانست مسایل ریاضی را حل کند. بهطور کلی برنامههایی که در این دهه در زمینه هوش مصنوعی با گرایش سیستمهای خبره نوشته شد، مبتنی بر فناوری و روشهای جستوجو (Search Technique) بود، بنابراین اثر کمتری از متد استدلال علمی و حل مسایل بر اساس مبنای علمی آنها (KnowLedge Base) دیده میشد. در این دوران خبر از پیدایش یک زبان برنامهنویسی به نام PROLOG (Programming Logic) به میان آمد که علاوه بر دارا بودن قابلیتهای زبان LISP، به دلیل مشابه بودن دستورات و ساختار آن با زبان انگلیسی، از محبوبیت زیادی در ساخت برنامههای هوش مصنوعی برخوردار شد.
اما دهه هفتاد و اوایل دهه هشتاد میلادی را میتوان سرآغازی بر سیستمهای خبره مدرن امروزی به حساب آورد. در این دوره بود که سیستمهایی بر اساس آنالیز دانش روز بشر ابداع شد. بهعنوان مثال در این ایام بود که Mycin یک برنامه کامپیوتری برای کمک به پزشکان در تشخیص آزمایش خون و بیماری افراد کمک کرده و نسخه پیشنهادی مناسب با آن را ارایه میکرد یا مثلا R1 نام سیستم خبره دیگری بود که توسط کمپانی Digital Equipment Co نوشته شد و وظیفه آن جمعآوری اطلاعات مربوط به نیاز مشتریان و ارایه بهترین سیستم کامپیوتری و لوازم جانبی آن، منطبق با نیاز هر مشتری بود. در حال حاضر نیز کاربرد سیستمهای خبره در بسیاری از شاخههای صنعت به وضوح دیده میشود. در بسیاری از سیستمهای تشخیص خطا و بحران در سیستمهای صنعتی، برخی سیستمهای مربوط به تعمیر نگهداری و برنامهریزی در صنایع هوایی، سیستمهای مربوط به تحقیقات در مواد شیمیایی و دارویی، پزشکی و مالی، نرمافزارهای ویژه طراحی مهندسی صنعتی و هر برنامهای که مبتنی بر دانش بشری در هر یک از شاخههای علوم باشد، به نوعی استفاده از الگوریتمها و روشهای یک سیستم خبره به وضوح مشاهده میشود.
سيستمهايخبره:
سيستمهاي خبره، برنامههاي كاميپوتري هوشمندي هستند كه دانشو روشهاي استنباط و استنتاج را بكار ميگيرند تا مسائلي را حل كنند كهبراي حل آنها به مهارت انساني نياز است.
سيستمهاي خبره كاربر را قادر به مشاوره با سيستمهاي كامپيوتريدر مورد يك مسئله و يافتن دلايل بروز مسئله و راهحلهاي آن ميكند.در اين حالات مجموعه سختافزار و نرمافزار تشكيل دهنده سيستمخبره، مانند فرد خبره اقدام به طرح سئوالات مختلف و دريافتپاسخهاي كاربر، مراجعه به پايگاه دانش (تجربيات قبلي) و استفاده ازيك روش منطقي براي نتيجهگيري و نهايتا ارائه راهحل مينمايد.همچنين سيستم خبره قادر به شرح مراحل نتيجهگيري خود تا رسيدن بههدف)چگونگي نتيجهگيري(و دليل مطرح شدن يك سئوال اجرايي)روش حركت تا رسيدن به هدف(خواهد بود.
سيستمهاي خبره برخلاف سيستمهاي اطلاعاتي كه بر روي دادهها(Data) عمل ميكنند، بر دانش (Knowledge) متمركز شده است. همچنين دريك فرآيند نتيجهگيري، قادر به استفاده از انواع مختلف دادهها )عدديDigital، نمادي Symbolic و مقايسهاي Analoge( ميباشند. يكي ديگر ازمشخصات اين سيستمها استفاده از روشهاي ابتكاري (Heuristic) به جايروشهاي الگوريتمي ميباشد. اين توانايي باعث قرار گرفتن محدودوسيعي از كاربردها در برد عملياتي سيستمهاي خبره ميشود. فرآيندنتيجهگيري در سيستمهاي خبره بر روشهاي استقرايي و قياسي پايهگذاريشده است. از طرف ديگر اين سيستمها ميتوانند دلايل خود در رسيدنبه يك نتيجهگيري خاص و يا جهت و مسير حركت خود به سوي هدفرا شرح دهند. با توجه به توانايي اين سيستمها در كار در شرايط فقداناطلاعات كامل و يا درجات مختلف اطمينان در پاسخ به سئوالات مطرحشده، سيستمهاي خبره نماد مناسبي براي كار در شرايط عدم اطمينان(Uncertainty) و يا محيطهاي چند وجهي ميباشند.
مزايايسيستمهايخبره:
مزاياي سيستمهاي خبره را ميتوان به صورت زير دستهبندي كرد:
1-افزايش قابليت دسترسي: تجربيات بسياري از طريق كامپيوتر دراختيار قرار ميگيرد و به طور سادهتر ميتوان گفت يك سيستم خبره،توليد انبوه تجربيات است.
2-كاهشهزينه:هزينهكسبتبهبرايكاربربهطورزياديكاهشمييابد.
3-كاهش خطر: سيستم خبره ميتواند در محيطهايي كه ممكن استبراي انسان سخت و خطرناك باشد نيز بكار رود.
4-دائمي بودن: سيستمهاي خبره دائمي و پايدار هستند. بعبارتي مانندانسانها نميميرند و فنا ناپذيرند.
5-تجربيات چندگانه: يك سيستم خبره ميتواند مجموع تجربيات وآگاهيهاي چندين فرد خبره باشد.
6-افزايش قابليت اطمينان: سيستمهاي خبره هيچ وقت خسته وبيمار نميشوند، اعتصاب نميكنند و يا عليه مديرشان توطئه نميكنند، درصورتي كه اغلب در افراد خبره چنين حالاتي پديد ميآيد.
7-قدرت تبيين (Explanation): يك سيستم خبره ميتواند مسير و مراحلاستدلالي منتهي شده به نتيجهگيري را تشريح نمايد. اما افراد خبره اغلباوقات بدلايل مختلف (خستگي، عدم تمايل و…) نميتوانند اين عمل رادر زمانهاي تصميمگيري انجام دهند. اين قابليت، اطمينان شما را در موردصحيح بودن تصميمگيري افزايش ميدهد.
8-پاسخدهيسريع:سيستمها يخبره،سريعودراسرعوقتجوابميدهند.
9-پاسخدهي در همه حالات: در مواقع اضطراري و مورد نياز،ممكن است يك فرد خبره بخاطر فشار روحي و يا عوامل ديگر، صحيحتصميمگيري نكند ولي سيستم خبره اين معايب را ندارد.
10-پايگاه تجربه: سيستم خبره ميتواند همانند يك پايگاه تجربهعمل كند وانبوهي از تجربيات را در دسترس قرار دهد.
11-آموزش كاربر: سيستم خبره ميتواند همانند يك خودآموز هوش(Intelligent Tutor) عمل كند. بدين صورت كه مثالهايي را به سيستم خبرهميدهند و روش استدلال سيستم را از آن ميخواهند.
12-سهولت انتقال دانش: يكي از مهمترين مزاياي سيستم خبره،سهولت انتقال آن به مكانهاي جغرافيايي گوناگون است. اين امر برايتوسعهكشورهاييكه استطاعت خريد دانش متخصصانراندارند،مهماست .
« هوش مصنوعی، دانش ساختن ماشين ها يا برنامههای هوشمند است. »
همانگونه كه از تعريف فوق-كه توسط يكی از بنيانگذاران هوش مصنوعی ارائه شده است- برمیآيد،حداقل به دو سؤال بايد پاسخ داد:
1ـ هوشمندی چيست؟
2ـ برنامههای هوشمند، چه نوعی از برنامهها هستند؟
تعريف ديگری كه از هوش مصنوعی میتوان ارائه داد به قرار زير است:
« هوش مصنوعی، شاخهايست از علم سكامپيوتر كه ملزومات محاسباتی اعمالی همچون ادراك (Perception)، استدلال(reasoning) و يادگيری(learning) را بررسی كرده و سيستمی جهت انجام چنين اعمالی ارائه میدهد.»
و در نهايت تعريف سوم هوش مصنوعی از قرار زير است:
«هوش مصنوعی، مطالعه روشهايی است برای تبديل كامپيوتر به ماشينی كه بتواند اعمال انجام شده توسط انسان را انجام دهد.»
به اين ترتيب میتوان ديد كه دو تعريف آخر كاملاً دو چيز را در تعريف نخست واضح كردهاند.
1ـ منظور از موجود يا ماشين هوشمند چيزی است شبيه انسان.
2ـ ابزار يا ماشينی كه قرار است محمل هوشمندی باشد يا به انسان شبيه شود، كامپيوتر است.
هر دوی اين نكات كماكان مبهم و قابل پرسشند. آيا تنها اين نكته كه هوشمندترين موجودی كه میشناسيم، انسان است كافی است تا هوشمندی را به تمامی اعمال انسان نسبت دهيم؟ حداقل اين نكته كاملاً واضح است كه بعضی جنبههای ادراك انسان همچون ديدن و شنيدن كاملاً ضعيفتر از موجودات ديگر است.
علاوه بر اين، كامپيوترهای امروزی با روشهايی كاملاً مكانيكی(منطقی) توانستهاند در برخی جنبههای استدلال، فراتر از توانايیهای انسان عمل كنند.
بدين ترتيب، آيا میتوان در همين نقطه ادعا كرد كه هوش مصنوعی تنها نوعی دغدغه علمی يا كنجكاوی دانشمندانه است و قابليت تعمق مهندسی ندارد؟(زيرا اگر مهندسی، يافتن روشهای بهينه انجام امور باشد، به هيچ رو مشخص نيست كه انسان اعمال خويش را به گونهای بهينه انجام میدهد). به اين نكته نيز باز خواهيم گشت.
اما همين سؤال را میتوان از سويی ديگر نيز مطرح ساخت، چگونه میتوان يقين حاصل كرد كه كامپيوترهای امروزين، بهترين ابزارهای پيادهسازی هوشمندی هستند؟
رؤيای طراحان اوليه كامپيوتر از بابيج تا تورينگ، ساختن ماشينی بود كه قادر به حل تمامی مسائل باشد، البته ماشينی كه در نهايت ساخته شد(كامپيوتر) به جز دسته ای خاص از مسائل قادر به حل تمامی مسائل بود. اما نكته در اينجاست كه اين «تمامی مسائل» چيست؟ طبيعتاً چون طراحان اوليه كامپيوتر، منطقدانان و رياضيدانان بودند، منظورشان تمامی مسائل منطقی يا محاسباتی بود. بدين ترتيب عجيب نيست، هنگامی كه فوننيومانسازنده اولين كامپيوتر، در حال طراحی اين ماشين بود، كماكان اعتقاد داشت برای داشتن هوشمندی شبيه به انسان، كليد اصلی، منطق(از نوع به كار رفته در كامپيوتر) نيست، بلكه احتمالاً چيزی خواهد بود شبيه ترموديناميك!
به هرحال، كامپيوتر تا به حال به چنان درجهای از پيشرفت رسيده و چنان سرمايهگذاری عظيمی برروی اين ماشين انجام شده است كه به فرض اين كه بهترين انتخاب نباشد هم، حداقل سهلالوصولترين و ارزانترين و عمومیترين انتخاب برای پيادهسازی هوشمنديست.
بنابراين ظاهراً به نظر میرسد به جای سرمايهگذاری برای ساخت ماشينهای ديگر هوشمند، میتوان از كامپيوترهای موجود برای پيادهسازی برنامههای هوشمند استفاده كرد و اگر چنين شود، بايد گفت كه طبيعت هوشمندی ايجاد شده حداقل از لحاظ پيادهسازی، كاملاً با طبيعت هوشمندی انسانی متناسب خواهد بود، زيرا هوشمندی انسانی، نوعی هوشمندی بيولوژيك است كه با استفاده از مكانيسمهای طبيعی ايجاد شده، و نه استفاده از عناصر و مدارهای منطقی.
در برابر تمامی استدلالات فوق می توان اين نكته را مورد تاُمل و پرسش قرار داد كه هوشمندی طبيعی تا بدان جايی كه ما سراغ داريم، تنها برمحمل طبيعی و با استفاده از روش های طبيعت ايجاد شده است. طرفداران اين ديدگاه تا بدانجا پيش رفتهاند كه حتی ماده ايجاد كننده هوشمندی را مورد پرسش قرار داده اند، كامپيوتر از سيليكون استفاده می كند، در حالی كه طبيعت همه جا از كربن سود برده است.
مهم تر از همه، اين نكته است كه در كامپيوتر، يك واحد كاملاً پيچيده مسئوليت انجام كليه اعمال هوشمندانه را بعهده دارد، در حالی كه طبيعت در سمت و سويی كاملاً مخالف حركت كرده است. تعداد بسيار زيادی از واحدهای كاملاً ساده (بعنوان مثال از نورونهای شبكه عصبی) با عملكرد همزمان خود (موازی) رفتار هوشمند را سبب می شوند. بنابراين تقابل هوشمندی مصنوعی و هوشمندی طبيعی حداقل در حال حاضر تقابل پيچيدگی فوق العاده و سادگی فوق العاده است. اين مساُله هم اكنون كاملاً به صورت يك جنجال(debate) علمی در جريان است.
در هر حال حتی اگر بپذيريم كه كامپيوتر در نهايت ماشين هوشمند مورد نظر ما نيست، مجبوريم برای شبيهسازی هر روش يا ماشين ديگری از آن سود بجوييم.
تاريخ هوش مصنوعی
هوش مصنوعی به خودی خود علمی است كاملاً جوان. در واقع بسياری شروع هوش مصنوعی را 1950 می دانند زمانی كه آلن تورينگ مقاله دورانساز خود را در باب چگونگی ساخت ماشين هوشمند نوشت (آنچه بعدها به تست تورينگ مشهور شد) تورينگ درآن مقاله يك روش را برای تشخيص هوشمندی پيشنهاد میكرد. اين روش بيشتر به يك بازی شبيه بود.
فرض كنيد شما در يك سمت يك ديوار (پرده يا هر مانع ديگر) هستيد و به صورت تله تايپ باآن سوی ديوار ارتباط داريد و شخصی از آن سوی ديوار از اين طريق با شما در تماس است. طبيعتاً يك مكالمه بين شما و شخص آن سوی ديوار میتواند صورت پذيرد. حال اگر پس از پايان اين مكالمه، به شما گفته شود كه آن سوی ديوار نه يك شخص بلكه (شما كاملاً از هويت شخص آن سوی ديوار بیخبريد) يك ماشين بوده كه پاسخ شما را میداده، آن ماشين يك ماشين هوشمند خواهد بود، در غير اين صورت(يعنی در صورتی كه شما در وسط مكالمه به مصنوعی بودن پاسخ پی ببريد) ماشين آن سوی ديوار هوشمند نيست و موفق به گذراندن تست تورينگ نشده است.
بايد دقت كرد كه تورينگ به دو دليل كاملاً مهم اين نوع از ارتباط(ارتباط متنی به جای صوت) را انتخاب كرد. اول اين كه موضوع ادراكی صوت را كاملاً از صورت مساُله حذف كند و اين تست هوشمندی را درگير مباحث مربوط به دريافت و پردازش صوت نكند و دوم اين كه بر جهت ديگری هوش مصنوعی به سمت نوعی از پردازش زبان طبيعی تاكيد كند.
در هر حال هر چند تاكنون تلاشهای متعددی در جهت پياده سازی تست تورينگ صورت گرفته مانند برنامه Eliza و يا AIML (زبانی برای نوشتن برنامههايی كه قادر به chat كردن اتوماتيك باشند) اما هنوز هيچ ماشينی موفق به گذر از چنين تستی نشده است.
همانگونه كه مشخص است، اين تست نيز كماكان دو پيش فرض اساسی را در بردارد:
1ـ نمونه كامل هوشمندی انسان است.
2ـ مهمترين مشخصه هوشمندی توانايی پردازش و درك زبان طبيعی است.
درباره نكته اول به تفصيل تا بدين جا سخن گفته ايم؛ اما نكته دوم نيز به خودی خود بايد مورد بررسی قرارگيرد. اين كه توانايی درك زبان نشانه هوشمندی است تاريخی به قدمت تاريخ فلسفه دارد. از نخستين روزهايی كه به فلسفه(Epistemology) پرداخته شده زبان هميشه در جايگاه نخست فعاليتهای شناختی قرار داشته است. از يونانيان باستان كه لوگوس را به عنوان زبان و حقيقت يكجا به كار میبردند تا فيلسوفان امروزين كه يا زبان را خانه وجود میدانند، يا آن را ريشه مسائل فلسفی میخوانند؛ زبان، همواره شاُن خود را به عنوان ممتازترين توانايی هوشمندترين موجودات حفظ كرده است.
با اين ملاحظات میتوان درك كرد كه چرا آلن تورينگ تنها گذر از اين تست متظاهرانه زبانی را شرط دستيابی به هوشمندی میداند.
تست تورينگ اندكی كمتر از نيمقرن هوش مصنوعی را تحت تاُثير قرار داد اما شايد تنها در اواخر قرن گذشته بود كه اين مسئله بيش از هر زمان ديگری آشكار شد كه متخصصين هوش مصنوعی به جای حل اين مسئله باشكوه ابتدا بايد مسائل كماهميتتری همچون درك تصوير (بينايی ماشين) درك صوت و… را حل كنند.
به اين ترتيب با به محاق رفتن آن هدف اوليه، اينك گرايشهای جديدتری در هوش مصنوعی ايجاد شدهاند.
در سالهای آغازين AI تمركز كاملاً برروی توسعه سيستمهايی بود كه بتوانند فعاليتهای هوشمندانه(البته به زعم آن روز) انسان را مدل كنند، و چون چنين فعاليتهايی را در زمينههای كاملاً خاصی مانند بازیهای فكری، انجام فعاليتهای تخصصی حرفهای، درك زبان طبيعی، و…. میدانستند طبيعتاً به چنين زمينههايی بيشتر پرداخته شد.
در زمينه توسعه بازیها، تا حدی به بازی شطرنج پرداخته شد كه غالباً عدهای هوش مصنوعی را با شطرنج همزمان به خاطر میآورند. مككارتی كه پيشتر اشاره شد، از بنيانگذاران هوش مصنوعی است اين روند را آنقدر اغراقآميز میداند كه میگويد:
«محدود كردن هوش مصنوعی به شطرنج مانند اين است كه علم ژنتيك را از زمان داروين تا كنون تنها محدود به پرورش لوبيا كنيم.» به هر حال دستاورد تلاش مهندسين و دانشمندان در طی دهههای نخست را میتوان توسعه تعداد بسيار زيادی سيستمهای خبره در زمينههای مختلف مانند پزشكی عمومی، اورژانس، دندانپزشكی، تعميرات ماشين،….. توسعه بازیهای هوشمند، ايجاد مدلهای شناختی ذهن انسان، توسعه سيستمهای يادگيری،…. دانست. دستاوردی كه به نظر میرسد برای علمی با كمتر از نيم قرن سابقه قابل قبول به نظر میرسد.
افقهای هوش مصنوعی
در 1943، Mcclutch (روانشناس، فيلسوف و شاعر) و Pitts (رياضيدان) طی مقالهای، ديدههای آن روزگار درباره محاسبات، منطق و روانشناسی عصبی را تركيب كردند. ايده اصلی آن مقاله چگونگی انجام اعمال منطقی به وسيله اجزای ساده شبكه عصبی بود. اجزای بسيار ساده (نورونها) اين شبكه فقط از اين طريق سيگنال های تحريك ( exitory) و توقيف (inhibitory) با هم درتماس بودند. اين همان چيزی بود كه بعدها دانشمندان كامپيوتر آن را مدارهای (And) و (OR) ناميدند و طراحی اولين كامپيوتر در 1947 توسط فون نيومان عميقاً از آن الهام میگرفت.
امروز پس از گذشته نيمقرن از كار Mcclutch و Pitts شايد بتوان گفت كه اين كار الهام بخش گرايشی كاملاً پويا و نوين در هوش مصنوعی است.
پيوندگرايی (Connectionism) هوشمندی را تنها حاصل كار موازی و همزمان و در عين حال تعامل تعداد بسيار زيادی اجزای كاملاً ساده به هم مرتبط میداند.
شبكههای عصبی كه از مدل شبكه عصبی ذهن انسان الهام گرفتهاند امروزه دارای كاربردهای كاملاً علمی و گسترده تكنولوژيك شدهاند و كاربرد آن در زمينههای متنوعی مانند سيستمهای كنترلی، رباتيك، تشخيص متون، پردازش تصوير،… مورد بررسی قرار گرفته است.
علاوه بر اين كار بر روی توسعه سيستمهای هوشمند با الهام از طبيعت (هوشمندیهای ـ غير از هوشمندی انسان) اكنون از زمينههای كاملاً پرطرفدار در هوش مصنوعی است.
الگوريتم ژنيتك كه با استفاده از ايده تكامل داروينی و انتخاب طبيعی پيشنهاد شده روش بسيار خوبی برای يافتن پاسخ به مسائل بهينه سازيست. به همين ترتيب روشهای ديگری نيز مانند استراتژیهای تكاملی نيز (Evolutionary Algorithms) در اين زمينه پيشنهاد شده اند.
دراين زمينه هر گوشهای از سازو كار طبيعت كه پاسخ بهينهای را برای مسائل يافته است مورد پژوهش قرار میگيرد. زمينههايی چون سيستم امنيتی بدن انسان (Immun System) كه در آن بيشمار الگوی ويروسهای مهاجم به صورتی هوشمندانه ذخيره میشوند و يا روش پيدا كردن كوتاهترين راه به منابع غذا توسط مورچگان (Ant Colony) همگی بيانگر گوشههايی از هوشمندی بيولوژيك هستند.
گرايش ديگر هوش مصنوعی بيشتر بر مدل سازی اعمال شناختی تاُكيد دارد (مدل سازی نمادين يا سمبوليك) اين گرايش چندان خود را به قابليت تعمق بيولوژيك سيستمهای ارائه شده مقيد نمیكند.
CASE-BASED REASONING يكی از گرايشهای فعال در اين شاخه میباشد. بعنوان مثال روند استدلال توسط يك پزشك هنگام تشخيص يك بيماری كاملاً شبيه به CBR است به اين ترتيب كه پزشك در ذهن خود تعداد بسيار زيادی از شواهد بيماریهای شناخته شده را دارد و تنها بايد مشاهدات خود را با نمونههای موجود در ذهن خويش تطبيق داده، شبيهترين نمونه را به عنوان بيماری بيابد.
به اين ترتيب مشخصات، نيازمندیها و توانايیهای CBR به عنوان يك چارچوب كلی پژوهش در هوش مصنوعی مورد توجه قرارگرفته است.
البته هنگامی كه از گرايشهای آينده سخن میگوييم، هرگز نبايد از گرايشهای تركيبی غفلت كنيم. گرايشهايی كه خود را به حركت در چارچوب شناختی يا بيولوژيك يا منطقی محدود نكرده و به تركيبی از آنها میانديشند. شايد بتوان پيشبينی كرد كه چنين گرايشهايی فرا ساختارهای (Meta –Structure) روانی را براساس عناصر ساده بيولوژيك بنا خواهند كرد.
منابع:
۱- هوش مصنوعي از سايت P30World
۲- گذری بر سیستمهای خبره Expert Systems از سايت پايگاه تخصصي نرم افزار ايران
۳- علیرضا قمی - هوشمصنوعی چیست؟ سایت دنیای کامپیوتر و ارتباطات