В предыдущей статье "Почему нейросети не заменят прикладных специалистов: простая логика против вероятностных подходов" рассматривались общие вопросы поиска решений управляемого данными. Эта информационная технология, основанная на простой логике, позволяет оперативно вести диалог с пользователем, используя накопленные в процессе поиска решения данные. Для того чтобы это работало - требуется фрагментировать знания предметной области в виде функций с заданными областями допустимых значений входящих в них параметров.
В данной статье рассматривается вопрос о представлении предметных знаний в виде общедоступных документов, позволяющих интерпретировать их, как вышеозначенные функции и затем использовать в качестве компонентов базы знаний.
Всё нижеследующее, хорошо всем известно, но в контексте поиска управляемого данными обретает новый смысл и функциональность.
ПРИМЕЧАНИЕ. В качестве примера выбрана реальная задача из медицинской практики связанная с назначением антирабической помощи. Антирабическая помощь необходима для исключения заболевания бешенством после контакта с домашним или диким животным. Бешенство смертельно опасное заболевание. От правильности врачебных назначений зависит жизнь обратившегося за медицинской помощью. Имеется инструкция, регламентирующая действия по оказанию антирабической помощи, которая и является первоисточником базы знаний. Несмотря, на кажущуюся простоту выбор лечения (профилактики) требует чёткого анализа ситуации и учёта многих факторов. Экспертная система в диалоге управляемом данными не позволит ничего пропустить и предложит безошибочное решение.
Информационный блок, как большой токен
Широко распространено такое понятие, как "токен". Токен это термин с множеством значений зависящих от области применения. Но суть везде одна – это единица информации, которая может быть сопоставлена с другой единицей информации.
В прикладных дисциплинах аналогом токена может служить обособленный фрагмент решения задачи. Например, таблица, позволяющая определить значения одних параметров исходя из значения других параметров. Или логическое утверждение, основанное на анализе и сопоставлении входящих в него параметров. Другими словами фрагмент прикладного решения это всегда набор правил получения значений одних параметров на основе (с использованием) других.
По сути это очень большой токен. И чтобы не возникало путаницы, введём понятие информационного блока, как единицы информации для некоторого документального представления функции перехода от входных параметров к выходным.
Контекст применимости фрагмента решения
Попробуем провести ещё одну аналогию с токенами. Каждому токену необходимо присвоить определённые характеристики, чтобы модель могла сопоставлять и строить последовательности из токенов. В случае с фрагментами прикладных решений в виде информационных блоков должен указываться контекст применимости. Контекст применимости это перечень параметров с их допустимыми значениями (см. рис. 1, б). Контекст применимости (для простых задач) может состоять только из параметров, использующихся в процедурной части (см. рис. 1, г). Или может содержать дополнительные параметры уточняющие область использования информационного блока.
Структура информационного блока
Как же, в свете вышеизложенного, может выглядеть информационный блок для отображения (формального представления) фрагмента прикладного решения.

Во-первых, (рис. 1, б) - это перечень входных параметров необходимых для однозначного позиционирования фрагмента решения в общем алгоритме решения задачи.
Во-вторых, (рис. 1, б) - перечень входных параметров, которые непосредственно используются для получения решения.
В-третьих, (рис. 1, в) - перечень выходных параметров, определяющих целевой результат выполнения фрагмента решения.
В-четвёртых, (рис. 1, г) - собственно процедура принятия решения.
В-пятых, (рис. 1, д) - сопроводительная (оригинальная исходная) информация, позволяющая удостовериться в правильности предыдущих четырех пунктов.
Чтобы входные параметры в полной мере выполняли свою функцию позиционирования фрагмента решения в общем алгоритме решения задачи для них необходимо указывать допустимые значения (см. рис. 1, б – колонка таблицы "Значение").
Информационный блок, как документ
Информационные блоки это документы, с которыми будут работать прикладные специалисты. Соответственно информационные блоки должны быть в виде привычных для прикладных специалистов документов.
Таблица - универсальный способ отображения связей параметров
Всем известны плоские таблицы, отображающие связи между столбцами и строками. Таблица это идеальный и наглядный способ представления фрагментов прикладных решений. К форме таблиц несложно преобразовать самые разные логические утверждения. Таблицы могут быть двух видов: хорошо известны традиционные таблицы (рис. 2) и менее распространённые таблицы решений (рис. 3).


Табличное представление удобно и с точки зрения машинной обработки, поскольку формально и единообразно упорядочивает данные. В таблицах можно наглядно отобразить входные и выходные параметры. Процедурная часть информационного блока, так же хорошо сочетается с табличным представлением логики принятия решений. Оригинальные документы, подлежащие преобразованию к форме информационных блоков, как правило, содержат много табулированной информации. Правда, следует особо отметить, что таблицы в оригинальных документах отличаются большим разнообразием и могут потребовать значительной переработки.
Списков входных/выходных параметров в сочетании с процедурой получения результата уже будет достаточно для поиска решений управляемого данными. Но для организации контроля и управления процессом этого мало. Необходимы дополнительные атрибуты (см. рис. 1, а):
Идентификатор блока.
Классификационные признаки.
Сведения об авторе.
Сведения об источнике информации.
Ещё вместе с таблицами, описывающими фрагмент решения, в документ информационного блока целесообразно поместить копию оригинала источника информации (см. рис. 1, д).
Использование информационного блока
Несколько слов о том, как может использоваться информационный блок (см. рис. 1) механизмами поиска решений.
Из накопленных данных будет известно, какой вид иммунизации предполагается "Вид иммунизации" = "Профилактическая иммунизация". Так же будет известно, какой была "Предыдущая иммунизация". Если накопленная информация соответствует таблице входных параметров (контексту применимости фрагмента решения) (см. рис. 1, б), будет выполнен поиск в процедурной части информационного блока. Например, для параметров "Вид иммунизации" = "Профилактическая иммунизация" и "Предыдущая иммунизация" = "Первая ревакцинация" или "Последующие ревакцинации" решением станет "Лечение" := "Одна инъекция: КОКАВ 1.0мл" и "Доза вакцины" := "1.0мл".
Заключение
Информационный блок, оформленный в виде набора таблиц, привычен для восприятия и удобен для автоматизированной обработки.
Перечни входных и выходных параметров обеспечивают механизм поиска решений необходимой информацией для определения места информационного блока в алгоритме поиска решений.
Информационный блок, содержит всю необходимую информацию для идентификации и контроля.
Другие аспекты технологии поиска решений связанные с информационными блоками будут рассмотрены в следующих статьях.