قوانین IF-THEN (اگر–آنگاه)
یکی از مهمترین روشهای نمایش دانش در سیستمهای خبره (Expert Systems) هستند. در این روش، دانش متخصصان به صورت مجموعهای از قوانین منطقی ذخیره میشود تا سیستم بتواند مانند یک کارشناس تصمیمگیری کند.
ساختار قانون IF-THEN
هر قانون از دو بخش تشکیل میشود:
IF (شرط): شرایط یا حقایقی که باید برقرار باشند.
THEN (نتیجه): عملی که در صورت برقرار بودن شرط انجام میشود.
فرم کلی:
IF <شرط یا شرایط>
THEN <نتیجه یا اقدام>
مثالهای ساده
مثال ۱: تشخیص بیماری
IF تب = زیاد
AND سرفه = شدید
THEN بیماری = آنفلوآنزا
مثال ۲: سیستم بانکی
IF موجودی حساب >= مبلغ برداشت
THEN برداشت انجام شود
مثال ۳: فروشگاه اینترنتی
IF مبلغ خرید > 5,000,000 تومان
THEN ارسال رایگان
مثال ۴: سیستم امنیتی
IF رمز عبور اشتباه باشد
AND تعداد تلاش > 3
THEN حساب کاربری قفل شود
قوانین چند شرطی
در سیستمهای خبره معمولاً از عملگرهای منطقی استفاده میشود.
AND (و)
تمام شروط باید برقرار باشند.
IF سن > 18
AND دارای گواهینامه
THEN اجازه رانندگی
OR (یا)
کافی است یکی از شروط برقرار باشد.
IF باران
OR برف
THEN چتر همراه داشته باش
NOT (نقیض)
IF NOT پرداخت شده
THEN سفارش لغو شود
موتور استنتاج (Inference Engine)
موتور استنتاج قوانین را بررسی میکند:
حقایق (Facts) را دریافت میکند.
قوانین IF-THEN را بررسی میکند.
اگر شرط برقرار باشد، نتیجه اجرا میشود.
نتیجه ممکن است بهعنوان یک حقیقت جدید ذخیره شده و قوانین دیگری را فعال کند.
مثال زنجیرهای
فرض کنید حقایق اولیه:
تب = زیاد
سرفه = شدید
قوانین:
Rule1:
IF تب = زیاد
AND سرفه = شدید
THEN بیماری = آنفلوآنزا
Rule2:
IF بیماری = آنفلوآنزا
THEN استراحت = لازم
Rule3:
IF استراحت = لازم
THEN مرخصی = پیشنهاد شود
نتیجه:
تب + سرفه
↓
آنفلوآنزا
↓
استراحت
↓
مرخصی
مزایا
ساده و قابل فهم
شبیه نحوه تفکر انسان
توسعه آسان با افزودن قوانین جدید
مناسب برای تصمیمگیری و عیبیابی
قابلیت توضیح دلیل تصمیم (Explainability)
معایب
با افزایش تعداد قوانین، مدیریت آنها دشوار میشود.
ممکن است قوانین با یکدیگر تداخل داشته باشند.
نگهداری پایگاه دانش در سیستمهای بزرگ زمانبر است.
برای مسائل دارای عدم قطعیت، به روشهای تکمیلی مانند منطق فازی یا شبکههای بیزی نیاز است.
کاربردها
سیستمهای تشخیص بیماری
عیبیابی تجهیزات صنعتی
سیستمهای بانکی و اعتبارسنجی
سیستمهای امنیتی
پشتیبانی تصمیمگیری مدیران
سیستمهای توصیهگر
اتوماسیون و کنترل صنعتی
نمونه قوانین در قالب جدول
| قانون | IF (شرط) | THEN (نتیجه) |
|---|---|---|
| Rule 1 | تب زیاد و سرفه شدید | بیماری = آنفلوآنزا |
| Rule 2 | بیماری = آنفلوآنزا | استراحت لازم است |
| Rule 3 | خرید > ۵٬۰۰۰٬۰۰۰ تومان | ارسال رایگان |
| Rule 4 | رمز اشتباه و تلاش > ۳ | قفل شدن حساب |
| Rule 5 | موجودی کافی | انجام برداشت |
قوانین IF-THEN پایه و اساس بسیاری از سیستمهای خبره کلاسیک مانند MYCIN (تشخیص بیماریهای عفونی)، DENDRAL (تحلیل ساختار مولکولها) و XCON (پیکربندی رایانههای DEC) هستند و همچنان در سامانههای مبتنی بر قواعد (Rule-Based Systems) و موتورهای قوانین کسبوکار (Business Rule Engines) کاربرد گستردهای دارند.