Таблица принятия решений (таблица решений) — способ компактного представления модели со сложной логикой. Аналогично условным операторам в языках программирования, они устанавливают связь между условиями и действиями. Но, в отличие от традиционных языков программирования, таблицы решений в простой форме могут представлять связь между множеством независимых условий и действий.
Таблицы принятия решений, как правило, разделяются на четыре квадранта, как показано ниже.
Условия
|
Варианты выполнения условий
|
Действия
|
Необходимость действий
|
В простейшем случае здесь Условия — список возможных условий, Варианты выполнения условий — комбинация из выполнения и/или невыполнения условий из этого списка. Действия — список возможных действий, Необходимость действий — указание надо или не надо выполнять соответствующее действие для каждой из комбинаций условий. Например, для ситуации «неожиданно погас свет» таблица принятия решений может быть такой:
Свет в соседней комнате горит
|
Да
|
Нет
|
Нет
|
Свет у соседей горит
|
-
|
Да
|
Нет
|
Поменять лампочку
|
Х
|
|
|
Проверить пробки
|
|
Х
|
|
Позвонить электрику
|
|
Х
|
Х
|
Позвонить диспетчеру
|
|
|
Х
|
Вариантов выполнения условия может быть не два: да или нет, а несколько, например цвет может быть красным, оранжевым, синим. В более сложных таблицах может применяться нечёткая логика.
Действия могут быть элементарными или ссылаться на другие таблицы принятия решений. Необходимость выполнения действий может быть неупорядоченной, как в данном примере, или упорядоченной. В последнем случае если при определённой комбинации выполнения условий возможно выполнение нескольких действий, то в таблице решений указывается их приоритет.
Ссылки