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

کلمات کلیدي: پرولوگ، سیستم خبره، پایگاه دانش، حقایق، قوانین

.۱ مقدمه

سیستم هاى خبره دسته اى از برنامه هاى رایانه اى اند که قادر بـه راهنمـایی، تحلیـل، دسـته بنـدى، مشـاوره، طراحـی، تشخیص، کاوش، پیش بینی، ایجاد مفاهیم، شناسایی، تفسیر، توجیه، یادگیرى مدیریت، کنترل، برنامه ریزى، زمان بندى و آزمایش اند. این برنامه هامعمولاً به مسائلی می پردازند که حل آن ها به متخصصان انسانی نیاز دارد.[۱]

با گسترش کاربرد فناوري اطلاعات، سیستم هاي تصمیم گیري و یا به طور کلـی تصـمیم گیـري هـاي مبتنـی بـر رایانـه اهمیت بسیار زیادي یافته اند. در این زمینه سیستم هاي خبره به عنوان یکی از بخش هاي منسوب بـه هـوش مصـنوعی نقش اصلی را دارند. در سیستم هاي خبره انواع تصمیم ها به کمک رایانه اتخاذ می شوند. سیستم هاي خبره، سیستم هایی مبتنی بر دانش می باشند و دانش در واقع مهمترین بخش آنها است. در این سیستم ها دانش از خبرگـان هـر علمـی بـه رایانه منتقل می شود. سیستم هاي خبره کاربرد وسیعی در علوم مختلف جهـان داشـته انـد. تـاکنون سیسـتم هـاي خبـره مختلفی در زمینه هایی از جمله صنعت، کنترل، فضانوردي، تصمیم گیري هاي مالی و غیره طراحی و ارائه شده اند.[۲]

توسعه زبان برنامه نویسی پرولوگ بوسیله Colmerauer و گروهش براي کاربرد هاي هوش مصنوعی مهم بـود، پرولـوگ وجود سمبل هاي تابع در اتم ها را مجاز می کند، علاوه بر این پرولوگ یک حل کنندة مسئله بالا به پایین هسـت تـا اینکـه یک روش پایین به بالا باشد، بازگشت نیز در برنامه نویسی منطقی مجاز است.[۳] به عبـارتی پرولـوگ یـک زبـان توصـیفی است یعنی حقایق و قوانین مورد نیاز را می دهیم و آنگاه این پرولوگ است که با استنتاج قیاسی بـه حـل مسـئله مـی پـردازد. البته در اکثر مواقع سوال کاربر که تحت عنوان هدف از آن یاد می شود شامل یک یا چند متغیر است ایـن بـدین معنـی اسـت که از موتور استنتاج پرولوگ سوال می کنیم که این متغیرها چه مقادیري می توانند به خود بگیرند تا با آنچه در قالـب حقـایق و قوانین داده شده اند از لحاظ منطقی درست و سازگار باشند.

ما در این مقاله یک سیستم خبره پیاده سازي می کنیم که کار یـک کارمنـد آمـوزش دانشـگاه را انجـام میدهـد و میتـوان در سیستم آموزش دانشگاه جایگاهی را براي آن در نظر گرفت. سازماندهی این مقاله بصورت زیر است:

در بخش ۲ اجزاء سیستم هاي خبره بیان می شود. در بخش ۳ فواید استفاده از سیستم هاي خبره بیان می شـود. در بخـش ۴ سیستم هاي خبره پزشکی را مرور می کنیم. در بخش سیستم۵ خبره پیشنهادي را پیاده سازي می کنیم و نهایتاً در بخـش ۶ نتیجه گیري بیان می شود.

.۲ اجزاء سیستم هاي خبره

-۱ پایگاه دانش((Knowledge Base

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

وظیفه یک مهندس دانش (Knowledge Engineer) آن است که دانش را از فرد خبره بدست آورده و در پایگاه دانش کد کند.[۴]

-۲ حافظه کاري((Working Memory

حافظه کاري، بخشی از یک سیستم خبره است که حقایق مسئله را که در طی اجرا بدست آمده است، در خود دارد. سیستم خبره اطلاعات بدست آمده در طی اجرا را که در حافظه کاري ذخیره می شود با قوانین تطبیق می دهد تا حقایق جدید استنتاج شده و آنها را در حافظه کاري قرار دهد. ممکن است به نتایجی نیز برسد کهقبلاً در حافظه کاري وجود داشته است.[۴]