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