Построение дерева принятия решения
Построим дерево решения для нашего примера. Пусть БД табл. 23 заполнена ответами. (В общем виде эта БД хранится в нашем компьютере. Поскольку для каждого телевизора она задается заново, мы заранее не знаем величин ВФ1, ВФ2 и ВФ3). На основе данного варианта БД проведены расчеты общих весовых факторов. Теперь нужно проанализировать их значения и найти максимальный. Максимальному значению общего весового фактора будет соответствовать наиболее вероятная неисправность. Дерево решения имеет вид рис. 3.
Да Нет
Да Нет Нет Да
Рис. 3
На каждом уровне решения сравниваются значения общих весовых факторов двух неисправностей. Из вершины проверки условия выходят две ветви: “Да” и “Нет”. Переход по ветви “Да” происходит, если условие, записанное в вершине, выполняется, и по ветви “Нет” – в противном случае.
Проанализируем сначала случай, когда условие ВФ1 > ВФ2 выполнилось. Очевидно, что для нахождения максимального весового фактора нужно сравнить ВФ1 и ВФ3. Поэтому ветка “Да” завершается новой вершиной проверки условия ВФ1 > ВФ3. Если и это условие выполнится, можно утверждать, что максимальным является ВФ1. Поэтому по ветке “Да” приходим к вершине принятия решения (прямоугольник) – “Предохранитель”. Если условие ВФ1 > ВФ3 не выполнилось, это означает, что ВФ3 > ВФ1. В этом случае максимальным является ВФ3, и ветка “Нет” блока проверки ВФ1 > ВФ3 приводит к блоку принятия решения “Кинескоп”.
Если условие ВФ1 > ВФ2 не выполняется, для нахождения максимального весового фактора нужно сравнить ВФ2 и ВФ3. По ветке “Нет” блока проверки условия ВФ1 > ВФ2 приходим к вершине проверки условия ВФ2 > ВФ3. Если это условие выполняется (ветка “Да”), предусмотрен блок принятия решения “Антенна”, если не выполняется (ветка “Нет”), максимальным является ВФ3, и вновь идем на принятие решения “Кинескоп”.
Реализация системы принятия решения в электронной таблице (ЭТ)
Электронная таблица, реализующая систему принятия решения для рассматриваемого примера, приведена в табл. 24 (режим вычислений), в табл. 25. (режим показа формул в Microsoft Office) и табл. 26 (режим показа формул в OpenOffice.org Calc).
Для ее реализации необходимо выполнить следующие действия:
1. Создать базу знаний.
1. Создать базу данных.
2. Обработать ответы.
3. Вычислить общие весовые факторы.
4. Вычислить максимальный общий весовой фактор.
5. Принять решение.
Рассмотрим эти этапы более подробно.
Создание базы знаний
В строку 2 (ячейки В2:D2) вносим заголовок: “Вид неисправности”, в строку 3 (ячейки В3:D3) – названия вида неисправностей: “Предохранитель”, “Антенна” и “Кинескоп”.
В строку 4 (ячейки А4:D4) вводим заголовок “База знаний”, в ячейках А7:А10 – размещаем характеристики неисправностей. В ячейки В5:D5 поместим заголовок “Весовые факторы неисправностей”. В ячейки В7:D10 введем весовые факторы неисправностей, согласно заданной базе знаний (табл. 22).
Создание базы данных.
В ячейках Е4:Е10 предусматриваем вывод вопросов согласно БД (табл. 23) и место для ввода ответов.
В ячейку Е4 введем заголовок: “База данных”, в ячейку Е5 – введем комментарий “Ответ”. Ячейки Е6:Е9 предназначены для ввода ответов, поэтому в ячейке Е5 разместим комментарий “Ответы”. В Е6 введем подсказку, как следует отвечать на вопросы: “Да – ввод 1, Нет – 0”. Заполним базу данных соответственно примеру.
На этом подготовка к заполнению БД завершена.