СРС / СРС по СИИ
.docxЗадание: Разработка базы знаний экспертной системы, советующей по предоставления кредита.
База знаний должна включать:
фрейм-образ кредитополучателя,
фрейм цели – предоставление кредита, правила логического вывода заключения о предоставлении кредита.
При принятии решении о предоставлении кредита нужно принимать во внимание следующие факторы:
· среднемесячный доход кредитополучателя;
· возраст кредитополучателя;
· срок кредита;
· количество иждивенцев;
· источник дохода, принимающий одно из значений: заработная плата, предпринимательская деятельность, социальное пособие.
Указанные факторы составляют образ кредитополучателя – фрейм «Кредитополучатель». Слотам этого фрейма присваиваем имена как в табл. 1.
Таблица 1
Имена слотов фрейма «Кредитополучатель»
Название слота |
Имя слота |
Среднемесячный доход кредитополучателя |
Доход |
Возраст кредитополучателя |
Возраст |
Срок кредита |
Срок |
Количество иждивенцев |
Иждивенцы |
Источник дохода |
Источник |
Для принятия решения о предоставлении кредита будем использовать следующие правила.
Правило 1.
Если доход менее 100 тыс. р., то кредит не предоставляется с уверенностью 100%.
Правило 2.
Если возраст кредитополучателя более 55 лет, то кредит не предоставляется с уверенностью 90%.
Правило 3.
Если возраст кредитополучателя более 50 лет и срок кредита более 5 лет, то кредит не предоставляется с уверенностью 90%.
Правило 4.
Если количество иждивенцев у кредитополучателя более двух и срок кредита более 5 лет, то кредит не предоставляется с уверенностью 70%.
Правило 5.
Если количество иждивенцев у кредитополучателя более двух и срок кредита менее 6 лет, то кредит предоставляется с уверенностью 60%.
Правило 6.
Если источником дохода является заработная плата, то кредит предоставляется с уверенностью 100%.
Правило 7.
Если источником дохода является предпринимательская деятельность, то кредит предоставляется с уверенностью 90%.
Правило 8.
Если источником дохода является социальное пособие, то кредит предоставляется с уверенностью 70%.
При задании условий в правилах могут использоваться только четыре операции сравнения: = , >, <, <>.
Рекомендации к выполнению задания
1. Запустить стандартное приложение Блокнот.
2. Набрать текст базы знаний в программы ESWin, как это показано в табл. 2.
Таблица 2
Текст базы знаний «Предоставление кредита»
Текст базы знаний «Предоставление кредита»
Текст |
Комментарии |
TITLE=предоставление кредита |
Ключевые слова для формирования заголовка базы знаний |
COMPANY = ТОО"IT-Key Company", т.(7182)78-02-19 |
Компания |
Frame=Кредитополучатель |
Начало фрейма «Кредитополучатель» |
Parent: |
Ключевое слово |
Доход(численный)[размер дохода] |
Слот 1 |
Возраст (численный) |
Слот 2 |
Срок (численный) [срок кредита] |
Слот 3 |
Иждивенцы (численный)[количество] |
Слот 4 |
Источник: (заработная плата; предпринимательская деятельность; социальное пособие) |
Слот 5. В скобках через «;» перечисляются допустимые значения, которые будут выбираться из списка |
EndF |
Конец фрейма «Кредитополучатель» |
Frame=Цель |
Начало фрейма «Цель» |
Parent: |
Ключевое слово |
Предоставление кредита() |
Формулировка цели задачи, решаемой экспертной системой |
EndF |
Конец фрейма «Цель» |
Rule 1 |
Начало правила 1 |
< (Кредитополучатель.Доход; 100) |
Проверка условия Доход < 100 |
Do |
Начало заключения |
= (Цель.Предоставление кредита;Нет) 100 |
Запись заключения, выдаваемого экспертной системой на экран в виде текста «цель.предоставление кредита = нет с уверенностью 100 %» |
EndR |
Конец правила 1 |
Rule 2 |
Начало правила 2 |
> (Кредитополучатель.Возраст; 55) |
Проверка условия Возраст > 55 |
Do |
Начало заключения |
= (Цель.Предоставление кредита;Нет) 90 |
Запись заключения |
EndR |
Конец правила 2 |
Rule 3 |
Начало правила 3 |
> (Кредитополучатель.Возраст; 50) |
Проверка условия Возраст > 50 |
> (Кредитополучатель.Срок; 5) |
Проверка условия Срок > 5 |
Do |
Начало заключения |
= (Цель.Предоставление кредита;Нет) 90 |
Запись заключения |
EndR |
Конец правила 3 |
Rule 4 |
Начало правила 4 |
> (Кредитополучатель.Иждивенцы; 2) |
Проверка условия Иждивенцы > 2 |
> (Кредитополучатель.Срок; 5) |
Проверка условия Срок > 5 |
Do |
Начало заключения |
= (Цель.Предоставление кредита;Нет) 70 |
Запись заключения |
EndR |
Конец правила 4 |
Rule 5 |
Начало правила 5 |
> (Кредитополучатель.Иждивенцы; 2) |
Проверка условия Иждивенцы >2 |
< (Кредитополучатель.Срок; 6) |
Проверка условия Срок < 6 |
Do |
Начало заключения |
= (Цель.Предоставление кредита;Да) 60 |
Запись заключения |
EndR |
Конец правила 5 |
Rule 6 |
Начало правила 6 |
= (Кредитополучатель.Источник; Заработная плата) |
Проверка условия Источник= Заработная плата |
Do |
Начало заключения |
= (Цель.Предоставление кредита;Да) 100 |
Запись заключения |
EndR |
Конец правила 6 |
Rule 7 |
Начало правила 7 |
= (Кредитополучатель. Источник; предпринимательская деятельность) |
Проверка условия Источник = предпринимательская деятельность |
Do |
Начало заключения |
= (Цель.Предоставление кредита;Да) 90 |
Запись заключения |
EndR |
Конец правила 7 |
Rule 8 |
Начало правила 8 |
= (Кредитополучатель. Источник; социальное пособие) |
Проверка условия Источник = социальное пособие |
Do |
Начало заключения |
= (Цель.Предоставление кредита;Да) 80 |
Запись заключения |
EndR |
Конец правила 8 |
3. Сохраните набранный текст базы знаний в файле с именем Кредит.KLB (указание расширения .KLB обязательно) в своей папке.
Рекомендации к выполнению задания
1. Запустите программу ESWin. Появится окно этой программы как на рис. 1.
Рис. 1. Окно программы ESWin
2. Откройте созданную базу знаний (сохраненную в файле Kredit.KLB) по команде
Файл/Открыть базу знаний
3. Осуществите поиск решения по команде
Решение/Поиск следующего решения
Появится окно как на рис. 2.
Рис. 2. Диалоговое окно для ввода значения слота Доход
4. Ввести значение слота Кредитополучатель, возраст – 18 лет. Кредитополучатель, иждивенцы (дети до 18 лет или недееспособные граждане) – 2 человека. Кредитополучатель, источник (Заработная плата, предпринимательская деятельность или социальное пособие) – Выбираем «Заработная плата» Появится окно как на рис. 3. В верхней части окна отображается текст базы знаний, а в нижней части – заключение экспертной системы о предоставлении кредита с уверенностью 100%.
Рис. 3. Окно экспертной системы «Кредитополучатель» с заключением
5. Произвести очистку базы данных (удаление значений слотов фрейма «Кредитополучатель») по команде
Решение/Очистка базы данных