Jump to content

Таблица решений

Таблицы решений — это краткое визуальное представление, позволяющее указать, какие действия следует выполнять в зависимости от заданных условий. Это алгоритмы , выходные данные которых представляют собой набор действий. Информация, выраженная в таблицах решений, также может быть представлена ​​в виде деревьев решений или на языке программирования в виде серии операторов if-then-else и switch-case .

Обзор [ править ]

Каждое решение соответствует переменной, отношению или предикату, возможные значения которого перечислены среди альтернатив условий. Каждое действие представляет собой процедуру или операцию, которую необходимо выполнить, а записи указывают, должно ли (или в каком порядке) выполняться действие для набора альтернатив условий, которым соответствует запись.

Чтобы сделать их более краткими, многие таблицы решений включают в альтернативные условия символ «безразлично» . Это может быть дефис [1] [2] [3] или пустой, [4] хотя использование пробела не рекомендуется, поскольку это может просто указывать на то, что таблица решений еще не завершена. [ нужна ссылка ] Одним из применений таблиц решений является выявление условий, при которых определенные входные факторы не имеют значения для предпринимаемых действий, что позволяет пропустить эти входные тесты и тем самым упростить процедуры принятия решений. [5]

Демонстрация символа «все равно»
Rules
ConditionsFeeling energetic?YesNoYesNo
Is raining?YesYesNoNo
ActionsStay inside.MaybeMaybe
Go running.Maybe
Tend the garden.MaybeMaybe
Rules
ConditionsFeeling energetic?YesNo
Is raining?YesNoNo
ActionsStay inside.Maybe
Go running.Maybe
Tend the garden.MaybeMaybe
The above tables convey identical information, but the second table uses a hyphen as a don't-care symbol for brevity.

Помимо базовой четырехквадрантной структуры, таблицы решений сильно различаются по способу представления альтернативных условий и записей действий. [6] [7] В некоторых таблицах решений используются простые значения true/false для представления альтернатив условию (аналогично if-then-else), в других таблицах могут использоваться пронумерованные альтернативы (аналогично переключателю), а в некоторых таблицах даже используется нечеткая логика или вероятностные представления. для альтернативных условий. [8] Аналогичным образом записи действий могут просто обозначать, должно ли выполняться действие (проверить действия, которые необходимо выполнить), или в более сложных таблицах решений — последовательность действий, которые необходимо выполнить (нумеровать действия, которые необходимо выполнить).

Таблица решений считается сбалансированной. [4] или полный [3] если он включает в себя все возможные комбинации входных переменных. Другими словами, сбалансированные таблицы решений предписывают действие в каждой ситуации, когда заданы входные переменные. [4]

Пример [ править ]

Таблицу решений с ограниченным входом описать проще всего. Альтернативные условия — это простые логические значения, а записи действий — это галочки, указывающие, какое из действий в данном столбце должно быть выполнено.

Следующая таблица сбалансированных решений представляет собой пример, в котором компания технической поддержки составляет таблицу решений, позволяющую сотрудникам службы технической поддержки эффективно диагностировать проблемы принтера на основе симптомов, описанных им по телефону от клиентов.

Средство устранения неполадок принтера
Правила
Условия Принтер печатает Нет Нет Нет Нет Да Да Да Да
Красный свет мигает Да Да Нет Нет Да Да Нет Нет
Принтер распознается компьютером Нет Да Нет Да Нет Да Нет Да
Действия Проверьте кабель питания Может быть
Проверьте кабель принтер-компьютер Может бытьМожет быть
Убедитесь, что программное обеспечение принтера установлено. Может бытьМожет бытьМожет бытьМожет быть
Проверьте/замените чернила Может бытьМожет бытьМожет быть
Проверьте, нет ли замятия бумаги Может бытьМожет быть

Это всего лишь простой пример, и он не обязательно соответствует реальности устранения неполадок принтера. Тем не менее, он демонстрирует, как таблицы решений могут масштабироваться для нескольких условий с множеством возможностей.

разработки Преимущества программного обеспечения

Таблицы решений, особенно в сочетании с использованием предметно-ориентированного языка , позволяют разработчикам и экспертам по политике работать с одной и той же информацией — самими таблицами решений.

Инструменты для отображения вложенных операторов if из традиционных языков программирования в таблицы решений также можно использовать в качестве инструмента отладки. [9] [10]

Таблицы решений оказались более простыми для понимания и анализа, чем код, и они широко и успешно использовались для разработки спецификаций для сложных систем. [11]

История [ править ]

В 1960-х и 1970-х годах для бизнес-программирования был популярен ряд языков, основанных на таблицах решений, таких как Filetab .

Таблицы решений, встроенные в программу [ править ]

Таблицы решений могут быть и часто встроены в компьютерные программы и используются для «управления» логикой программы. Простым примером может быть таблица поиска, содержащая диапазон возможных входных значений и указатель функции на раздел кода для обработки этого ввода.

Статическая таблица решений
Вход Указатель функции
"1" Функция 1 (инициализация)
"2" Функция 2 (процесс 2)
"9" Функция 9 (завершить)

Таблицы управления [ править ]

Несколько условий могут быть закодированы аналогичным образом, чтобы инкапсулировать всю логику программы в форме «исполняемой» таблицы решений или таблицы управления . На практике таких таблиц может быть несколько, работающих на разных уровнях и часто связанных друг с другом (либо указателями, либо значением индекса).

Реализации [ править ]

  • Filetab , родом из NCC
  • ДЕТАБ/65, 1965, АКМ
  • FORTAB от Рэнда в 1962 году, предназначенный для встраивания в FORTRAN. [12]
  • MapReduce для Существует реализация Ruby, использующая поиска правильных действий на основе определенных входных значений. [13]

См. также [ править ]

Ссылки [ править ]

  1. ^ Ли Цзин (1 апреля 2015 г.). «Учебное пособие по SEEM 3430: Таблицы решений» (PDF) . п. 23 . Проверено 11 ноября 2017 г.
  2. ^ «Создание таблицы решений в бизнес-правилах» . Справочный центр Oracle . 6 августа 2017 года . Проверено 11 ноября 2017 г.
  3. ^ Jump up to: Перейти обратно: а б Росс, Рональд Г. (2005). «Таблицы решений, часть 2 ~ Путь к полноте» . Журнал бизнес-правил . 6 (8) . Проверено 11 ноября 2017 г.
  4. ^ Jump up to: Перейти обратно: а б с Сноу, Пол (19 июля 2012 г.). «Таблицы решений» . DTRules: механизм правил таблицы решений на основе Java . Проверено 11 ноября 2017 г.
  5. ^ Ли Цзин 2015 , стр. 24-25.
  6. ^ Роджерс, Уильям Т. «Примеры таблиц решений: медицинское страхование» . Системный анализ и проектирование Университета Святого Ксаверия . Архивировано из оригинала 29 марта 2007 года.
  7. ^ «Таблицы решений» . Архивировано из оригинала 8 сентября 2012 г. Проверено 7 июля 2010 г.
  8. ^ Ветс, Герт; Витлокс, Фрэнк; Тиммерманс, Гарри; Вантиенен, Ян (1996). «Моделирование выбора местоположения с использованием нечетких таблиц решений» . Новые рубежи в нечеткой логике и вычислениях: проводимая раз в два года конференция Североамериканского общества обработки нечеткой информации – NAFIPS . Двухгодичная конференция Североамериканского общества обработки нечеткой информации. Беркли, Калифорния: IEEE. стр. 80–84. дои : 10.1109/НАФИПС.1996.534708 . ISBN  0-7803-3225-3 . S2CID   62056954 .
  9. ^ "Настоящий пример CCIDE"
  10. ^ «Опыт работы с процессором таблицы решений Cope» . Архивировано из оригинала 4 мая 2017 г. Проверено 7 июля 2010 г.
  11. ^ Удо В. Пуч, «Перевод таблиц решений», ACM Computing Surveys, том 6, выпуск 2 (июнь 1974 г.) Страницы: 125–151 ISSN   0360-0300
  12. ^ «FORTAB: язык таблиц решений для приложений научных вычислений» , 1962, Рэнд
  13. ^ Александр Уильямс (2015). «Парсер таблицы решений Ruby»

Дальнейшее чтение [ править ]

  • Дуайер Б. и Хатчингс К. (1977) «Оптимизация блок-схемы в Cope, таблица решений с множественным выбором» Aust. Комп. Дж. Том. 9 № 3 с. 92 (сентябрь 1977 г.).
  • Фишер, Д.Л. (1966) «Данные, документация и таблицы решений», Comm ACM Vol. 9 № 1 (январь 1966 г.) с. 26–31.
  • General Electric Company (1962 г.) Справочное руководство GE-225 TABSOL и руководство по применению GF-224 TABSOL CPB-147B (июнь 1962 г.).
  • Гриндли, CBB (1968) «Использование таблиц решений в систематике», Comp. Дж. Том. 11 № 2 с. 128 (август 1968 г.).
  • Джексон, Массачусетс (1975) Принципы разработки программ Academic Press
  • Майерс, HJ (1972) «Компиляция оптимизированного кода из таблиц решений» IBM J. Res. И развитие (сентябрь 1972 г.), с. 489–503.
  • Поллак, С.Л. (1962) «DETAB-X: улучшенный бизнес-ориентированный компьютерный язык» Rand Corp. Memo RM-3273-PR (август 1962 г.)
  • Шумахер, Х. и Севчик, К.К. (1976) «Синтетический подход к преобразованию таблицы решений», Comm. АСМ Том. 19 № 6 (июнь 1976 г.) с. 343–351
  • CSA, (1970): Z243.1–1970 для таблиц решений, Канадская ассоциация стандартов.
  • Йоргенсен, Пол К. (2009) Моделирование поведения программного обеспечения: подход мастера. Публикации Ауэрбаха, CRC Press. Глава 5.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 475169b1b4f67522ab8d28b7d2c88d15__1707375180
URL1:https://arc.ask3.ru/arc/aa/47/15/475169b1b4f67522ab8d28b7d2c88d15.html
Заголовок, (Title) документа по адресу, URL1:
Decision table - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)