Разработка экспертной системы с нечеткими переменными в правилах вывода в программной среде GURU
Автор: Зайцева Т.В., Путивцева Н.П., Иценко А.Ю., Иценко М.Ю.
Журнал: Теория и практика современной науки @modern-j
Рубрика: Математика, информатика и инженерия
Статья в выпуске: 8 (38), 2018 года.
Бесплатный доступ
В статье приводится пример разработки демонстрационного прототипа экспертной системы в программной среде GURU. Построено и представлено в графическом виде дерево целей для разрабатываемой экспертной системы. Реализована экспертная система с нечеткими переменными в правилах вывода в среде GURU. Приведен пример тестирования разработанного прототипа экспертной системы.
Экспертная система, демонстрационный прототип, нечеткая логика, фактор уверенности, связанные аргументы
Короткий адрес: https://sciup.org/140273738
IDR: 140273738
Development of the expert system with fuzzy variables in the rules of conclusion in the programming environment GURU
The article gives an example of developing a demonstration prototype of an expert system in the PROGRAMMING ENVIRONMENT GURU. A tree of goals for the developed expert system is constructed and presented in a graphic form. Implemented expert system with fuzzy variables in the output rules in the environment GURU. An example of testing the developed prototype of the expert system is given.
Текст научной статьи Разработка экспертной системы с нечеткими переменными в правилах вывода в программной среде GURU
В продукционных моделях для обработки неопределенностей, в качестве основных, используются методы обработки условных вероятностей Байеса или методы нечеткой логики Заде.
Нечеткая логика Заде использует факторы уверенности, представляющие собой экспертные оценки определенности фактов и применения правил. Факторы уверенности могут отображать степень важности аргументов в процессе вывода заключений. Для получаемых результатов факторы уверенности определяют порядок достоверности результата, а не точность, что, тем не менее, является приемлемым для большинства задач.
Факторы уверенности измеряются по некоторой относительной шкале, например, для GURU от 0 до 100. Сумма факторов уверенностей некоторых альтернативных значений не всегда может составлять 100.
Множество возможных значений некоторой переменной с различными факторами уверенностей для каждого значения составляет нечеткое множество вида: { x1 cf1, x2 cf2, ⋅⋅⋅ , xK cfK }. ⋅ В общем виде фактор уверенности задается функцией принадлежности значений нечеткому множеству.
Значения факторов уверенности задаются пользователем при описании конкретной ситуации, а факторы уверенности применения правил определяются инженерами знаний совместно с экспертами при наполнении базы знаний.
Объединение факторов уверенности для конъюнктивно или дизъюнктивно связанных аргументов происходит в соответствии со следующими зависимостями:
-
- Конъюнкция (Х1 и Х2): min (cfX1, cfX2) или cfX1 ⋅ cfX2/100
-
- Дизъюнкция (Х1 или Х2): max (cfX1, cfX2) или cfX1 + cfX2 – cfX1 ⋅ cfX2/100.
Для демонстрации возможностей среды GURU разработаем демонстрационный прототип экспертной системы по выбору производителя холодильника, для чего необходимо построить дерево целей для разрабатываемой экспертной системы, реализовать экспертную систему с нечеткими переменными в правилах вывода в среде GURU и протестировать ее.
Назначение разрабатываемой ЭС – выбор предпочитаемого производителя холодильника с учетом требуемого набора параметров (основных, дополнительных и эксклюзивных).
Наличие автоматической системы оттаивания и циркуляции воздушного потока, а также некоторых дополнительных характеристик (в особенности, поддона для льда) являются наиболее характерным для многих моделей холодильников. Рассматривается также наличие некоторых эксклюзивных характеристик.
По сформированным требованиям к модели холодильника из базы данных будут отбираться предпочитаемые производители.
В качестве исходных данных были выбраны следующие:
-
- Производители: Siemens, Bosch, AEG, Electrolux, Miele, Vestfrost, Ока, ОРСК;
Выбор производителя осуществляется в зависимости от: основных, дополнительных, эксклюзивных характеристик моделей холодильников.
-
- Основные характеристики: автоматическая система оттаивания (No Frost), циркуляция воздушного потока;
-
- Дополнительные характеристики: система быстрого замораживания продуктов (Super Frost), поддон для льда, цифровой индикатор температур;
-
- Эксклюзивные характеристики: функция «защита от детей», зона сохранения свежести (Biofresh).
Концептуализация проблемной области сведем к построению семантической сети в виде графа (рисунок 1).
Рассмотрим имеющиеся модели холодильников различных производителей. Данные приведены в таблице 1.
дополнительные характеристики
основные характеристики
No Циркуляция
Frost воздушного потока
Поддон Цифровой для льда идикатор температур
Super Frost
эксклюзивные характеристики
Функция "защита от детей1
Рисунок 1 – Концептуальная модель задачи
Таблица 1 – Сводная таблица критериев
|
Критерии |
Ф.з.д. |
Bio |
Ц.и.т. |
SF |
NF |
Ц.в.п. |
П.л. |
|
|
1 |
Siemens KG 39P321 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
|
2 |
Bosch KGS 39V01 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
|
3 |
AEG S 70402KG |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
|
4 |
Miele KF 5878 SD |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
|
5 |
Electrolux ERB 39367W1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
|
6 |
Vestfrost FW 256M AL |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
|
7 |
Siemens KG 39P390 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
|
8 |
Electrolux_ER_1371 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
|
9 |
AEG SK 91240 3I |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
|
10 |
Vestfrost VKG 371 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
|
11 |
Siemens KG 33S115 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
|
12 |
Siemens KG 26S115 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
|
13 |
Vestfrost BKF 155 AL |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
|
14 |
Siemens KI 28SA40 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
|
15 |
Vestfrost BKF 202 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
|
16 |
Siemens KG 44U186 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
|
17 |
Ока 118 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
|
18 |
Ока 311 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
|
19 |
ОРСК 111 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
|
20 |
Vestfrost FZ 347 M ST |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
|
21 |
AEG AU 86050-4I |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
|
22 |
AEG SU 43040-4I |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
|
23 |
Miele KF 5880 SD |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
Где Ф.з.д. – функция «защита от детей»
Bio – зона сохранения свежести (Biofresh)
Ц.и.т. – цифровой индикатор температур
SF – система быстрого замораживания продуктов (Super Frost)
NF – автоматическая система оттаивания (No Frost)
Ц.в.п. – циркуляция воздушного потока
П.л. – поддон для льда
Если у модели холодильника присутствует данная характеристика, то ставится 1, иначе – 0 .
Далее характеристики сгруппировали по ранее обозначенным признакам (рисунок 2).
|
Основные |
Дополнительные |
Эксклюзивные |
|||||||||||||||
|
Фл.д. |
BlQ |
Ц.Н.Т. |
SF |
NF |
Ц.ВЛ. |
ПЛ |
NF |
Ц.В.П. |
SF |
П.Л. |
Цлл. |
Ф.З.Д. |
Bio |
ОДЭ |
|||
|
] |
Siemens KG 39P321 |
1 |
0 |
1 |
[ |
0 |
1 |
1 |
1 |
a |
1 |
1 |
I |
1 |
1 |
0 |
in |
|
Bosch KGS 39V01 |
0 |
0 |
0 |
l |
0 |
1 |
1 |
0 |
I |
1 |
1 |
0 |
0 |
0 |
110 |
||
|
3 |
AEG S 70402KG |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
3 |
0 |
1 |
0 |
0 |
I |
1 |
1 |
101 |
|
4 |
Miele KF <878 SD |
0 |
0 |
1 |
0 |
9 |
1 |
0 |
4 |
0 |
1 |
0 |
0 |
0 |
0 |
100 |
|
|
5 |
ElK1iotoxERB 39367Wl |
1 |
1 |
0 |
I |
0 |
0 |
1 |
5 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
on |
|
6 |
Vestfrost F"'2 56M AL |
0 |
1 |
0 |
0 |
I |
1 |
1 |
6 |
I |
I |
0 |
1 |
0 |
0 |
1 |
101 |
|
Siemens KG 39P390 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
7 |
1 |
1 |
0 |
1 |
1 |
I |
0 |
111 |
|
|
8 |
ElecliohixER 1371 |
a |
1 |
1 |
[ |
D |
0 |
0 |
8 |
0 |
0 |
I |
0 |
1 |
0 |
1 |
Oil |
|
9 |
AEG SK 9124031 |
i |
] |
1 |
1 |
1 |
0 |
9 |
1 |
I |
1 |
0 |
1 |
1 |
1 |
111 |
|
|
10 |
VestfrortVKO371 |
i |
1 |
0 |
0 |
1 |
1 |
1 |
10 |
1 |
1 |
0 |
I |
0 |
1 |
1 |
101 |
|
II |
Siemens KG 33S115 |
1 |
G |
1 |
0 |
0 |
0 |
1 |
II |
0 |
0 |
0 |
1 |
1 |
t |
0 |
Oil |
|
12 |
Siemens KG 26S1I5 |
0 |
1 |
0 |
[ |
0 |
0 |
1 |
12 |
a |
0 |
1 |
1 |
0 |
0 |
1 |
011 |
|
В |
Vestfrost BKF 155 AL |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
13 |
i |
i |
0 |
0 |
i |
0 |
1 |
101 |
|
14 |
Siemens KI 28SA40 |
0 |
1 |
1 |
I |
0 |
1 |
1 |
14 |
0 |
1 |
1 |
1 |
i |
0 |
1 |
111 |
|
15 |
Vestfrost В KF 202 |
0 |
0 |
0 |
I |
0 |
0 |
1 |
15 |
0 |
0 |
1 |
1 |
0 |
0 |
и |
010 |
|
16 |
Siemens KG 44U186 |
1 |
0 |
0 |
I |
1 |
1 |
1 |
16 |
1 |
i |
1 |
1 |
6 |
1 |
0 |
Hi |
|
Г |
OtallS |
0 |
0 |
0 |
1 |
D |
0 |
1 |
17 |
0 |
9 |
1 |
1 |
n |
0 |
0 |
010 |
|
18 |
ОкаЗН |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
18 |
0 |
a |
0 |
1 |
I |
0 |
0 |
010 |
|
19 |
ОРСК III |
a |
0 |
0 |
0 |
I |
1 |
0 |
19 |
1 |
i |
0 |
0 |
0 |
0 |
0 |
100 |
|
20 |
Vestfrost FZ 347 м ST |
i |
0 |
0 |
0 |
1 |
1 |
0 |
20 |
I |
i |
0 |
0 |
0 |
I |
0 |
101 |
|
21 |
AEG AU 86050-41 |
] |
0 |
0 |
0 |
[ |
0 |
1 |
21 |
1 |
0 |
0 |
1 |
0 |
I |
0 |
101 |
|
-f |
AEG SU 43040-41 |
1 |
0 |
a |
0 |
1 |
0 |
0 |
22 |
1 |
:■ |
0 |
0 |
0 |
1 |
0 |
101 |
|
23 |
Miele KF' <880 SD |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
23 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
110 |
Рисунок 2 – Группировка критериев
Значение ОДЭ (основные, дополнительные, эксклюзивные) получили следующим образом:
-
- первый разряд ОДЭ: если хотя бы одна из двух характеристик имеется (присвоена ей 1), то ставится 1, иначе – 0;
-
- второй разряд ОДЭ: если имеется не менее двух из трех характеристик (присвоены им 1), то ставится 1, иначе – 0;
-
- третий разряд ОДЭ: если хотя бы одна из двух характеристик имеется (присвоена ей 1), то ставится 1, иначе – 0.
Таким образом, получили следующую таблицу с данными:
Далее рассматривается каждый из производителей в отдельности. Рассчитывается процент моделей конкретного производителя с соответствующим значением ОДЭ.
Например, для моделей холодильников Siemens характерны такие наборы ОДЭ, как 111 и 011. При этом 4 модели из 6 данного производителя имеют ОДЭ 111 (67%), а 2 модели – ОДЭ 011 (33%).
Таким образом, получили следующую таблицу с результатами вычислений (таблица 2).
Таблица 2 – Соответствие производителей холодильников со значениями ОДЭ
|
Siemens |
Bosch |
AEG |
Electrolux |
Miele |
Vestfrost |
Ока |
ОРСК |
|
|
111 |
67% |
0% |
25% |
0% |
0% |
0% |
0% |
0% |
|
110 |
0% |
100% |
0% |
0% |
50% |
0% |
0% |
0% |
|
011 |
33% |
0% |
0% |
100% |
0% |
0% |
0% |
0% |
|
010 |
0% |
0% |
0% |
0% |
0% |
20% |
100% |
0% |
|
100 |
0% |
0% |
0% |
0% |
50% |
0% |
0% |
100% |
|
101 |
0% |
0% |
75% |
0% |
0% |
80% |
0% |
0% |
По данной таблице была сформирована база знаний.
GOAL: PR_XOL
INITIAL:
e.rigr="a" e.unkn=40 OsnXar=unknown
DopXar=unknown EksXar=unknown input NF str with "No Frost: +/-"
input CVP str with "Cirkuljacija vozdushnogo potoka: +/-"
input SF str with "Super Frost: +/-"
input PL str with "Poddon dlja lda: +/-"
input CIT str with "Cifrovoi indikator temperatur: +/-"
input FZD str with "Funkcija zashiti ot detei: +/-"
input BF str with "Biofresh: +/-"
DO:
? "Recommendation:", PR_XOL
? valn(PR_XOL,1), " cf:", cfn(PR_XOL,1)
? valn(PR_XOL,2), " cf:", cfn(PR_XOL,2)
RULE:R1
IF: OsnXar=true and DopXar=true and EksXar=true
THEN: PR_XOL={"Siemens" cf 67, "AEG" cf 25}
RULE:R2
IF: OsnXar=true and DopXar=true and EksXar=false
THEN: PR_XOL={"Bosch" cf 100, "Miele" cf 50}
RULE:R3
IF: OsnXar=false and DopXar=true and EksXar=true
THEN: PR_XOL={"Electrolux" cf 100, "Siemens" cf 33}
RULE:R4
IF: OsnXar=false and DopXar=true and EksXar=false
THEN: PR_XOL={"Ока" cf 100, "Vestfrost" cf 20}
RULE:R5
IF: OsnXar=true and DopXar=false and EksXar=false
THEN: PR_XOL={"ОРСК" cf 100, "Miele" cf 50}
RULE:R6
IF: OsnXar=true and DopXar=false and EksXar=true
THEN: PR_XOL={"Vestfrost" cf 80, "AEG" cf 75}
RULE:R7
IF: NF="+" or CVP="+"
THEN: OsnXar=true
RULE: R8
IF: NF="-" and CVP="-"
THEN: OsnXar=false
RULE: R9
IF: (SF="+" and PL="+" and CIT="+") or (SF="+" and PL="+" and
CIT="-") or (SF="+" and PL="-" and CIT="+") or (SF="-" and PL="+" and CIT="+")
THEN: DopXar=true
RULE: R10
IF: (SF="-" and PL="-" and CIT="-") or (SF="-" and PL="-" and
CIT="+") or (SF="+" and PL="-" and CIT="-") or (SF="-" and PL="+" and
CIT="-")
THEN:
DopXar=false
RULE: R11
IF: FZD="+" or BF="+"
THEN: EksXar=true
RULE: R12
IF: FZD="-" and BF="-"
THEN: EksXar=false
END:
Было проведено тестирование экспертной системы, один из результатов тестирования представлен на рисунке 3.
Рисунок 3 – Результаты тестирования экспертной системы
Разработка прототип экспертной системы позволила изучить возможности использования нечетких переменных в правилах вывода в программной среде GURU, а также объединения факторов уверенности для конъюнктивно или дизъюнктивно связанных аргументов (критериев).
Список литературы Разработка экспертной системы с нечеткими переменными в правилах вывода в программной среде GURU
- Зайцева Т.В. Алгоритм перевода коэффициентов нечеткой логики в коэффициенты уверенности при разработке экспертной системы в среде GURU [Текст] / Т.В. Зайцева, Е.В. Нестерова, С.В. Игрунова и др. // Вопросы радиоэлектроники. - Серия ЭВТ. - Выпуск 1. - 2012. - С. 112-119.
- Еремеев А.П. Проектирование экспертных систем средствами инструментальной системы GURU [Текст] / А.П. Еремеев. - М.: Издательство МЭИ, 1996. - 52 с.