بررسی تسلسل پیش رونده
حال میخواهیم به بررسی پایگاه معرفت بپردازیم.
دوباره قواعد را مینویسیم و البته در این مرحله یک قاعده دیگر به آن اضافه می کنیم:
10 If interest = Fall
Then stock = Rise
20 If interest = Rise
Then stock = Fall
30 If dollar = Fall
Then interest = Rise
40 If dollar = Rise
Then interest =Fall
50 If fedint = Fall and Fedmon =Add
Then interest = Fall
در زیر شما جدول متغیر ها را مشاهده میکنید:
مفهوم متغیر
نام متغیر
Interest rate Direction جهت نرخ بهره
Dollar exchange Rate نرخ ارز دلار
Federal Reserve نرخ فدرال رزرو
Interest Rate Goals (مثل اضافه یا برداشتذخایر از سیستم بانکی)
هدف های چرخش پول فدرال رزرو
جهت بازار سهام
Interest
Dollar
Fedint
Fedmon
Stock
پردازش پایگاه معرفت:
اکنون که پایگاه معرفت خود را با استفاده از جدول اسامی متغیر ها آماده نموده ایم آماده ایم تا پردازش اطلاعات را با استفاده از اصول تسلسل پیش رونده آغاز کنیم.
اولین ساختار داده ای را که استفاده میکنیم لیست متغیر قضیه است.این لیست ساده به ما کمک میکند تا از متغیر های موجود در مسئله که در ارتباط با بخش IF عبارت IF-THEN هستند اطلاع پیدا کنیم .
به عنوان مثالی از چگونگی استفاده از لیست متغیر قضیه فرض کنید می خواهیم اثرات پایین آمدن نرخ ارز دلار را که به صورت Dollar interest = Fall آمده است را بررسی کنیم. قواعد 30 و 40 دارای قضایایی باDollar بهعنوان متغیر هستند . به منظور آن که همواره به یاد داشته باشیم کهDollar متغیر مد نظر ما می باشد این متغیر را در ساختار داده ای که آن را صف متغیر می نامیمقرار میدهیم.ما سعی داریم هر عبارتی که دارا ی متغیرDollar باشد شرط Dollar = Fall را داشته باشد . اگر چنین باشد بخش Then عبارت احضار می شود و متغیر شرطجدید بنام Interest به دست می آید .این مورد در مثال ما در قاعده شماره ی 30 اتفاق می افتد.
30 If Dollar = Fall
Then interest = Rise
اکنون باید ببینیم که اثر بالا رفتن نرخ سهام پس از آنکه پردازش کلیه قواعد با شرط Dollar پایان یابد چه می شود؟
با یاد آوری آنکه اکنون با متغیر جدیدی بنام Interest سر و کار داریم آنرادر صف متغیر نتیجه پس از دلار قرارمیدهیم.پس از اینکه از کلیه قواعد IF-THENکه بخش If آنهادارای متغیر Dollar بود عبور کردیم این متغیر را از صف خود خارج میکنیم. چون متغیر Interest به جلوی صف آمده است این متغیر را درست به همان صورتی که نرخ متغیر Dollar را پردازش نمودیم مورد پردازش قرار میدهیم.وقتی که هیچ متغیری در صف نباشد آنگاه تسلسل پایان یافته است و آماده پاسخگویی می باشد.
ما نیاز به جدول دیگری داریم که لیست متغیر نام دارد .لیست متغیر به ما می گوید که آیا هنوز متغیری تحت بررسی است یا نه.در این لیست کلیه متغیرهای بخش if قرار دارد و تغییر متناسب با هر کدام در مسئله خاص که در بخش Then آمده است را قرار می دهیم .مثلا در این مثال متغیر Dollar در این جدول مقدار Fall و Interest مقدار Rise را میگیرد.و منتظر بررسی بقیه متغیر ها میشود.
مثالی از تسلسل پیش رونده:
اجازه دهید به عنوان مثالی از سیستم تسلسل پیش رونده از پایگاه معرفت بازار سهام استفاده کرده و سوال زیر را برای ابزار تسلسل پیش رونده مطرح کنیم.
اثر سپرده های اضافی فدرال رزرو در سیستم بانکی چیست؟ به این معنی که Fedmon = Add .
پس صف متغیر نتیجه متغیر شرط اولیه بنام Fedmon می باشد که مقدار آن معلوم است.این ابزار را در لیست متغیر قضیه برای مورد اول Fedmon جستجو کرده و این حالت در مورد 50 اتفاق می افتد .
از لیست متغیر قضیه درمی یابیم که باید دو متغیرFedmon و fedint را معرفی کنیم .اکنون میدانیم که متغیرFedmon به Add به عنوان شرط اصلی معرفی گردید.چون Fedint معرفی نمی شود ابزار تسلسل پیش رونده از کاربر سیستم خبره سوال زیر را می پرسد؟
آیا فدرال رزرو میخواهد نرخ بهره بالا برود یا پایین بیاید؟
در صورتی که کاریر خواهان پایین آمدن نرخ بهره باشد باعث میشود که متغیر Fedint دارای ارزش Fall باشد و در لیست متغیر معرفی شود .شرایط Fedint = Fall وFedmon = add درست میباشند بنابراین بخش Then قاعده 50 احضار میشود و در نتیجه خواهیم داشت :Interest = Fall .چون متغیر Interest شرط جدیدی را به نمایش می گذارد لذا این شرط در صف متغیر نتیجه قرار می گیرد باقیمانده قواعد موجود در لیست متغیر برای متغیر Fedmon مورد جستجو قرار می گیرند.چون هیچ قاعده ای با متغیر Fedmon وجود ندارد لذا این متغیر از صف متغیر نتیجه برداشته می شود .اکنون متغیرInterestبه جلو حرکت می کند .حال در لیست متغیر قضیه به دنبال متغیر Interest می گردیم و آن را در قضیه 10 پیدا میکنیم.چون متغیر Interest دارای ارزش Fall است لذا بخش If در قاعده 10 درست است.این صحت باعث شده تا بخش Then احضار شده و متغیر stock را دارای ارزش Rise کند.این کار به نوبه خود باعث میشود تا متغیر Stock در صف متغیر نتیجه قرار گیرد.قاعده ی دیگر شامل متغیر Interest دارای ارزش Rise است و اجرا نمیشود.بنابراین متغیر Interest از صف متغیر نتیجه خارج سده و متغیر Stock در جلوی صف قرار میگیرد.چون متغیر Stock دربخش If هیچ قاعده ای قرار ندارد لذا جستجو پایان می یابد.پاسخ های لازم برای سوال "اثر سپرده های اضافی فدرال رزرو در سیستم بانکداری چیست و می خواهید نرخ بهره پایین بیاید؟" عبارتند از:
1-نرخ بهره پایین خواهد آمد.
2-بازار سهام بالا خواهد رفت.
در اینجا توضیحات در باره ی سیستم تسلسل پیش رونده نیز پایان می یابد .امیدوارم که مفید واقعشده باشد.
درضمن اگر دوستان عزیز سوالی در این ضمینه دارند میتوانند به من e-mail بزنند تا اگر تونستم کمک کنم .اگر هم source code این برنامه رو میخواهید به من E-mail بزنید.
دوباره قواعد را مینویسیم و البته در این مرحله یک قاعده دیگر به آن اضافه می کنیم:
10 If interest = Fall
Then stock = Rise
20 If interest = Rise
Then stock = Fall
30 If dollar = Fall
Then interest = Rise
40 If dollar = Rise
Then interest =Fall
50 If fedint = Fall and Fedmon =Add
Then interest = Fall
در زیر شما جدول متغیر ها را مشاهده میکنید:
مفهوم متغیر
نام متغیر
Interest rate Direction جهت نرخ بهره
Dollar exchange Rate نرخ ارز دلار
Federal Reserve نرخ فدرال رزرو
Interest Rate Goals (مثل اضافه یا برداشتذخایر از سیستم بانکی)
هدف های چرخش پول فدرال رزرو
جهت بازار سهام
Interest
Dollar
Fedint
Fedmon
Stock
پردازش پایگاه معرفت:
اکنون که پایگاه معرفت خود را با استفاده از جدول اسامی متغیر ها آماده نموده ایم آماده ایم تا پردازش اطلاعات را با استفاده از اصول تسلسل پیش رونده آغاز کنیم.
اولین ساختار داده ای را که استفاده میکنیم لیست متغیر قضیه است.این لیست ساده به ما کمک میکند تا از متغیر های موجود در مسئله که در ارتباط با بخش IF عبارت IF-THEN هستند اطلاع پیدا کنیم .
به عنوان مثالی از چگونگی استفاده از لیست متغیر قضیه فرض کنید می خواهیم اثرات پایین آمدن نرخ ارز دلار را که به صورت Dollar interest = Fall آمده است را بررسی کنیم. قواعد 30 و 40 دارای قضایایی باDollar بهعنوان متغیر هستند . به منظور آن که همواره به یاد داشته باشیم کهDollar متغیر مد نظر ما می باشد این متغیر را در ساختار داده ای که آن را صف متغیر می نامیمقرار میدهیم.ما سعی داریم هر عبارتی که دارا ی متغیرDollar باشد شرط Dollar = Fall را داشته باشد . اگر چنین باشد بخش Then عبارت احضار می شود و متغیر شرطجدید بنام Interest به دست می آید .این مورد در مثال ما در قاعده شماره ی 30 اتفاق می افتد.
30 If Dollar = Fall
Then interest = Rise
اکنون باید ببینیم که اثر بالا رفتن نرخ سهام پس از آنکه پردازش کلیه قواعد با شرط Dollar پایان یابد چه می شود؟
با یاد آوری آنکه اکنون با متغیر جدیدی بنام Interest سر و کار داریم آنرادر صف متغیر نتیجه پس از دلار قرارمیدهیم.پس از اینکه از کلیه قواعد IF-THENکه بخش If آنهادارای متغیر Dollar بود عبور کردیم این متغیر را از صف خود خارج میکنیم. چون متغیر Interest به جلوی صف آمده است این متغیر را درست به همان صورتی که نرخ متغیر Dollar را پردازش نمودیم مورد پردازش قرار میدهیم.وقتی که هیچ متغیری در صف نباشد آنگاه تسلسل پایان یافته است و آماده پاسخگویی می باشد.
ما نیاز به جدول دیگری داریم که لیست متغیر نام دارد .لیست متغیر به ما می گوید که آیا هنوز متغیری تحت بررسی است یا نه.در این لیست کلیه متغیرهای بخش if قرار دارد و تغییر متناسب با هر کدام در مسئله خاص که در بخش Then آمده است را قرار می دهیم .مثلا در این مثال متغیر Dollar در این جدول مقدار Fall و Interest مقدار Rise را میگیرد.و منتظر بررسی بقیه متغیر ها میشود.
مثالی از تسلسل پیش رونده:
اجازه دهید به عنوان مثالی از سیستم تسلسل پیش رونده از پایگاه معرفت بازار سهام استفاده کرده و سوال زیر را برای ابزار تسلسل پیش رونده مطرح کنیم.
اثر سپرده های اضافی فدرال رزرو در سیستم بانکی چیست؟ به این معنی که Fedmon = Add .
پس صف متغیر نتیجه متغیر شرط اولیه بنام Fedmon می باشد که مقدار آن معلوم است.این ابزار را در لیست متغیر قضیه برای مورد اول Fedmon جستجو کرده و این حالت در مورد 50 اتفاق می افتد .
از لیست متغیر قضیه درمی یابیم که باید دو متغیرFedmon و fedint را معرفی کنیم .اکنون میدانیم که متغیرFedmon به Add به عنوان شرط اصلی معرفی گردید.چون Fedint معرفی نمی شود ابزار تسلسل پیش رونده از کاربر سیستم خبره سوال زیر را می پرسد؟
آیا فدرال رزرو میخواهد نرخ بهره بالا برود یا پایین بیاید؟
در صورتی که کاریر خواهان پایین آمدن نرخ بهره باشد باعث میشود که متغیر Fedint دارای ارزش Fall باشد و در لیست متغیر معرفی شود .شرایط Fedint = Fall وFedmon = add درست میباشند بنابراین بخش Then قاعده 50 احضار میشود و در نتیجه خواهیم داشت :Interest = Fall .چون متغیر Interest شرط جدیدی را به نمایش می گذارد لذا این شرط در صف متغیر نتیجه قرار می گیرد باقیمانده قواعد موجود در لیست متغیر برای متغیر Fedmon مورد جستجو قرار می گیرند.چون هیچ قاعده ای با متغیر Fedmon وجود ندارد لذا این متغیر از صف متغیر نتیجه برداشته می شود .اکنون متغیرInterestبه جلو حرکت می کند .حال در لیست متغیر قضیه به دنبال متغیر Interest می گردیم و آن را در قضیه 10 پیدا میکنیم.چون متغیر Interest دارای ارزش Fall است لذا بخش If در قاعده 10 درست است.این صحت باعث شده تا بخش Then احضار شده و متغیر stock را دارای ارزش Rise کند.این کار به نوبه خود باعث میشود تا متغیر Stock در صف متغیر نتیجه قرار گیرد.قاعده ی دیگر شامل متغیر Interest دارای ارزش Rise است و اجرا نمیشود.بنابراین متغیر Interest از صف متغیر نتیجه خارج سده و متغیر Stock در جلوی صف قرار میگیرد.چون متغیر Stock دربخش If هیچ قاعده ای قرار ندارد لذا جستجو پایان می یابد.پاسخ های لازم برای سوال "اثر سپرده های اضافی فدرال رزرو در سیستم بانکداری چیست و می خواهید نرخ بهره پایین بیاید؟" عبارتند از:
1-نرخ بهره پایین خواهد آمد.
2-بازار سهام بالا خواهد رفت.
در اینجا توضیحات در باره ی سیستم تسلسل پیش رونده نیز پایان می یابد .امیدوارم که مفید واقعشده باشد.
درضمن اگر دوستان عزیز سوالی در این ضمینه دارند میتوانند به من e-mail بزنند تا اگر تونستم کمک کنم .اگر هم source code این برنامه رو میخواهید به من E-mail بزنید.
+ نوشته شده در شنبه ۲۳ اردیبهشت ۱۳۸۵ ساعت 13:24 توسط صابر موسی پور
|