معرفي سيستم هاي خبره (انواع – كاربردها…..)

سيستم هاي خبره(Expert Systems)
کامپیوتر در اصل یک ماشین برای یاری انسان در انجام کار های دشوار است . مثلا الکتریکی نمودن دفترچه تلفن یا راهنمای کار یک ماشین لباس شوئی یا انجام فرایند های متوالی و مشخص از پیش تعیین شده و.. ……

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

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

“.یک سیستم خبره یک برنامه کامپیوتری است که عمل نمایش و تعقل دانش را با دست داشتن دانش یک متخصص ووظیفه حل مشکلات یا فراهم نمودن اندرز و مشورت انجام می دهد چنین سیستمی وظیفه انجام اموری را که به برای انجام شدن به یک متخصص انسان یا یک اسیستانتا برای یک متخصص نیاز دارد را دارد” .

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

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

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

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

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

سرخ کردن یک چیز در ماهیتابه تا زمانی که رنگ ان طلایی ش.د یک تو ضیح است >اما اگر بخواهیم سیب زمینی را تفت بدهیم چه ؟در مورد برنج در تخم مرغ خوابیده چی؟(برنج خوابیده در تخم مرغ یک غذای لذیذ اینگلیسی است )در مورد بادمجان چه ؟

این امر باعث شده دانشمندان این حوزه برای عمل کسب دانش در ماشین به شبکه های عصبی که به آموزش ماشین می انجامند روی بیاورند .
ب : نمایش دانش

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

حالت و مکان هر کلمه یا جز زبان، معنای آن را درست واضح بیان مینماید ،باشد .
مفاهیم اساسی سیستم های خبره :
تفاوت میان الگوریتم ها و هیوریستیک (کشفیات ذهنی(

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

تضمینی مبنی بر اینکه این روش جواب خواهد داد ، وجود ندارد.
از نمودار شبکه راه یک نمودار در ختی می توان ایجاد نمود یک درخت ساختاری ، سلسله مراتبی است که شامل گره ها و شاخه هایی است که گره ها را به هم متصل می کند . از این رو هر گره در نمودار درختی یک شهر را نمایش می دهد و هر شاخه به عنوان یک راه نمایش داده می شود . مسیر راه حل از حالت اولیه در امتداد شاخه های درخت سیر می کند و در گره های علامت گذاری شده به حالت نهایی خاتمه می یابد . توجه کنید که در یک مسئله هوش مصنوعی ممکن است بیشتر از یک راه حل داشته باشیم یعنی بیشتر از یک راه برای رسیدن از حالت اولیه به حالت نهایی وجود داشته باشد.
تکنیک های جستجو :

درک این قضیه مشکل نیست که باور نمائیم فضای جستجو به همان صورت که گره ها افزایش می یابند،سریعاً بزرگ می شود.این امر همیشه در مسائل عمده هوش مصنوعی مثل بازی شطرنج به مثابه مانع بزرگی بوده است.این پدیده انفجار ترکیبی نامیده می شود.انفجار ترکیبی باعث گسترش تکنیک های هیوریستیک شده است.تکنیک های جستجو به دو دسته تقسیم می شوند:

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

۲-جستجو هیوریستیک : محدوده خاصی از دانش را برای پیمایش فضای جستجو به کار می گیرند.
هوش مصنوعي:

هوش مصنوعي روشي است در جهت هوشمند کردن کامپيوتر تا قادر باشد در هر لحظه تصميم گيري کرده و اقدام به بررسي يک مسئله نمايد. هوش مصنوعي، کامپيوتر را قادر به تفکر مي کند و روش آموختن انسان را تقليد مي نمايد. بنابراين اقدام به جذب اطلاعات جديد جهت بکارگيري مراحل بعدي مي پردازد.

مغز انسان به بخش هايي تقسيم شده است که هر بخش وظيفه خاص خود را جدا از بقيه انجام مي دهد. اختلال در کار يک بخش تاثيري در ديگر قسمت هاي مغز نخواهد گذاشت. در برنامه هاي هوش مصنوعي نيز اين مسئله رعايت مي شود درحالي که در برنامه هاي غير هوش مصنوعي مثل C يا Pascal تغيير در برنامه روي ساير قسمت هاي برنامه و اطلاعات تاثير دارد.
مباحث کاربردي و مهم در تحقق يک سيستم هوش مصنوعي :

۱- Expert Systems
2- Neural Network
3- Genetic Algorithms
4- Fuzzy Logic Systems

ساختار سيستم هاي خبره
تعداد سيستم هاي خبرة كتانخانه اي قابل خريد اندك است و اكثر اين سيستم هاي كنابخانه اي به صورت داخلي طراحي مي شدند . در خلال مراحل اولية ساخت سيستم هاي خبره ، كتابدار ميبايد با مهندس سيستم همكاري نزديك داشته باشد. مهندس سيستم مي تواند پيشنهادهاي مفيدي را در طراحي و حمايت از سيستم هاي هوشمند ارائه كند . پنج مرحله رادر روش شناسي ساخت و طراحي سيستم هاي خبره ذكر مي نماييم :
شناسايي:

شناسايي عبارت است ار شناخت مسائل و محدوده ، و قبل از آن كه اهداف و مقاصد ساخت سيستم هاي خبره تبيين شود, صورت مي گيرد . در اين مرحله بايد منابع مشخص شوند و همچنين برآوردي از منابع براي كاركنان در رايانه صورت گيرد .
تجسم يا مفهوم سازي

در اين مرحله جنبه هاي اساسي پيشنهادي براي سيستم هاي خبره مورد بحث و فحص قرار مي گيرند و سؤالاتي به قرار زير مطرح مي شوند :
_آيا سيستم خبره مورد نياز است ؟
_آيا با استفاده از روش هاي جاري مي توان به اهداف و مقاصد سازمان دست يافت ؟
_چه كساني از سيستم خبره استفاده خواهند كرد؟

_چه كساني سيستم را آموزش خواهند داد ؟
_هزينه / فايده استفاده از سيستم خبره چه مقدار خواهد بود ؟
۳٫رسمي كردن
اين مرحله , مرحلةبين تجسم و اجرا مي باشد . در اين زمان است كه تصميم گرفته ميشود چه راهبردها ,وسائل و تجهيزات , و زبان برنامه نويسي مورد استفاده قرار گيرد . در اين مرحله مهندس سيستم مي تواند نظرات ارزشمندي ارائه كند.
۴٫اجرا

اين مرحله مشخص مي كند كه سيستم خبره تا چه حد به نيازهاي كاربر پاسخ مي دهد . ارزيابي باز خورد استفاده كاربران از سيستم در تصحيح سيستم بسيار با اهميت است . كاربران به كتابدار و مهندس سيستم خواهند گفت كه روش هاي اعمال شده تا چه حد كاربرد دارند و تا چه اندازه واسط ارتباطي دستگاه راحت و مؤثر مي باشد .

۵٫ارزيابي
در مرحلة ارزيابي ،كتابدار و مهندس سيستم به سؤالاتي همچون چه چيزي خطا و چه چيزي صحيح بوده ، پاسخ مي گويند و آن ها را مورد ارزيابي قرار مي دهند . بايد به يادداشت كه سيستم خبره باكار آمد بدتر از آن است كه هيچگونه سيستم خبره اي نداشته باشيم . بهتر است ارزيابي به صورت منظم صورت گيرد تا مشخص شود كه آيا نياز هاي كاربران محقق شده است يا خير؟ در اين زمينه بايد كتابدار و متخصص سيستم به استانداردها نيز توجه خاص مبذول دارند.
در حال حاضر با پيشرفت علوم و فن آوري , ديگر لازم نيست كه انسان به طراحي نرم افزار بپردازد زيرا نرم افزارهايي در بازار موجود است كه به اين نياز ها پاسخ مي گويند . از جمله اين نرم افزارها مي توان به (شل) اشاره كرد . نرم افزار شل براي ايجاد نوع بخصوصي از سيستم هاي خبره طراحي شده و براي قوانين متعددي استوار است كه اساس آن (اگر _پس)كس باشد.در حال حاضر ۵ نوع نرم افزار شل براي سيستم هاي خبره موجود و قابل نصب برروي رايانه هاي شخصي مي باشد.(تايني آنشتاين ),(گورو) و (نالج پرو ) از جملة اين نرم افزارها هستند .

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

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

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

اطلاعات وي دسترسي پيدا کرد. به همين دليل هم معمولا اين سيستم ها از کلمات مختلف که به شکل تصادفي انتخاب مي شوند براي رمز عبور استفاده مي کنند. دسته اي ديگر از سيستم ها هم از تکنولوژي هايي استفاده مي کنند که مي توانند صداي ضبط شده را تشخيص دهند. با وجود تمام اين سيستم ها باز هم سيستم هاي تشخيص صدا داراي امنيت بالايي نيستند و به همين دليل اغلب ترجيح داده مي شود که در يک سيستم با اهميت بالا
از چند روش مختلف براي تشخيص افراد استفاده شود.

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

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

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

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

تشخيص انسانها با استفاده از شکل دست
سيستم هاي بيومتريک براي تشخيص انسانها از کارايي و امنيت بيشتري نسبت به سيستم هاي معمولي(مانند استفاده از کارت) برخوردارند. يکي از سيستم هايي که از خواص منحصر بفرد انسانها استفاده مي کند تشخيص با استفاده از شکل دست و انگشتان است.
هر شخص داراي دست ها و انگشتاني متفاوت از بقيه است. البته اين تفاوت به اندازه اثر انگشت يا عنبيه نيست. به همين دليل هم از اين روش تشخيص در مواردي مانند مدرسه ها و شرکت هاي معمولي استفاده مي شود نه مراکز با اهميت بالا.

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

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

يکي از مشکلات چنين سيستمي تغيير شکل دست افراد در اثر گذشت زمان و عواملي مانند افزايش يا کاهش وزن افراد است. به اين ترتيب اطلاعات موجود در سيستم بايد مرتبا بروز شوند. مگر اينکه اين سيستم براي شناسايي افراد در يک بازه زماني کوتاه( مثلا يک کنفرانس چند روزه) مورد استفاده قرار گيرد.
تشخيص هويت از روي دستخط

در نگاه اول شايد تشخيص انسانها بر اساس دست خط آن ها کار چندان جالبي به نظر نرسد.
افراد بسياري مي توانند دست خط افراد ديگري را تقليد کنند و براحتي و با کمي تمرين حتي امضاي يک نفر ديگر را هم تقليد کنند. بنابراين چگونه چنين سيستمي مي تواند مفيد باشد؟