Интерфейс с пользователем
Интерфейс с пользователем включает следующие компоненты:
- диалоговый компонент;
- модуль обработки вопросов;
- редактор знаний;
- модуль объяснения.
Возможно объединение всех этих компонентов в единственный диалоговый модуль, а также вынесение редактора знаний в систему управления базой знаний. В процессе диалога пользователь формирует спецификацию задачи. В простейшем случае этот процесс реализуется по одному и тому же сценарию типа "вопрос - ответ". При этом диалоговый компонент выполняет следующие действия:
- распределяет роли пользователя и СИИ и организует их взаимодействие в процессе решения задачи;
- преобразует спецификацию задачи, составленную пользователем, во внутреннее представление машины;
- выдает сообщения, подсказки, вопросы;
- протоколирует процесс решения задачи.
Развитый интеллектуальный диалог реализует поддержку процесса решения задачи в духе Пойа. В этом случае пользователь сам активно включается в процесс решения задачи, а СИИ организует поисковую активность человека-решателя. Этот процесс описывается следующим семантическим фрагментом:
<решение>::= <контекст><действие>[<решение>]
<контекст>::= <начальный_контекст>[<история>]
<история>::= <вопрос><ответ>[<история>]
<начальный контекст>::= <фрейм_задачи:>
<ответ>::= <совет>|<указание>|<элемент_меню>
<действие>::= <вопрос>|<совет>|<указание>
Например, для математических задач дискретной оптимизации характерно следующее множество вопросов:
<Вопрос>::=
Задача сводится к последовательному выбору элементов решения? |
Все множество элементов решения доступно сразу? |
Выбор одного элемента решения исключает выбор другого? |
Критерий выбора одного элемента решения соответствует общему критерию задачи? |
Число элементов решения велико? |
Можно ли разбить задачу на независимые подзадачи меньшего размера? |
Можно ли выделить непополняемое множество альтернативных решений небольшого размена? |
Известно ли множество решений на каждом шаге? |
Влияет ли выбор решения на шаге i на шаг (i + k), k>1?|
Выбор одного элемента решения изменяет другие элементы решений? |
Известен т последний шаг решения? | и т.д.
<:Совет>::=
запишите задачу в удобной для обозрения и понимания форме |
используйте известные вам аналогии |
отделите то, что дано, от того, что нужно найти |
определите, от чего зависит искомая величина |
определите содержание отдельного шага процедуры решения |
упростите задачу ча счет объектов, гарантированно входящих или не входящих в решение |
начинайте решение с наиболее простого и очевидного |
и т.д.
<Указание>::=
«Объект, который причиняет вред, должен быть поставлен в условия, обратные тем, в которые должен быть поставлен объект, доставляющий максимум пользы» |
«Для получения хорошего решения нужно отбрасывать плохие» |
«Решение, имеющее наиболее глубокие последствия, должно приниматься раньше других» |
«Неизвестную задачу можно свести к известной через преобразования носителя или условий» | и т.д.
Таким образом, процесс решения задачи организуется некоторым адекватным задаче наводящим перечнем вопросов и указаний. Все вопросы можно разбить на три группы. Первую группу образуют вопросы, уточняющие спецификацию (природу) задачи (т.е. задача считается все еще не определенной). Вторая группа вопросов - это вопросы, наводящие пользователя на идею решения задачи. При этом считается, что определенные классы задач характеризуются некоторым адекватным их природе набором наводящих вопросов. Наконец, третья группа вопросов - это вопросы информационного плана (например, требуется укачать значения того или иного параметра и т.д.).
В системах, минимизирующих участие человека в ходе решения задачи, информационные вопросы являются основными. Как ранее отмечалось, это является недостатком и причиной того, что многие разработанные системы плохо воспринимаются пользователем. Поэтому важнейшей компонентой СИИ является модуль объяснения, который для каждой продукции может дать информацию о цели и способах ее реализации.
Предъявление подобного объяснения пользователю может убедить его в рациональности стратегии вывода или побудить к самостоятельному принятию решения. Таким образом диалоговый компонент СИИ в принципе должен позволять пользователю вмешаться в любой точке трассы вывода и изменить ее по своему усмотрению.
Итак, выделим основные функции интерфейса с пользователем СИИ:
- ввод спецификации задачи
- обеспечение возможности вмешательства со стороны пользователя в процесс решения задачи
- организация поисковой активности человека-решателя
- предъявление объяснений
- выдача сообщений
- протоколирование процесса решения задачи
- обработка вопросов и команд - функции редактирования знаний
Организация работы
В процессе функционирования СИИ можно выделить три режима: 1 - приобретения (редактирования) знаний, 2 – консультации и 3 – непосредственного решения задачи. Рассмотрим первые два режима.
В режиме редактирования знаний пользователь формирует и модифицирует базу знаний, т.е. определяет и вводит правила решения задачи (задач) для данной предметной области. Каждое правило характеризуется набором атрибутов, определяющих ее структуру. Так, если, например, атрибутами являются А.В.С....К.Е5, то примерами правил являются следующие:
IF A = a1 & B = b1 & C = c1 & ...
THEN RES = r1
IF A = a2 & B = b2 & C = c2 &
THEN RES = r2
и т.д.
Система ведет диалог, задает вопросы и дает возможные ответы в форме меню. Результат может представлять диалог, совет или некоторое числовое (символьно-числовое) выражение.
Система встроенных окон и меню, используемых в режиме редактирования, упрощает процесс работы с базой знаний. При редактировании базы знаний редактор обеспечивает следующие функции:
- вставка и удаление атрибутов;
- переименование атрибутов и изменение их значений;
- изменение и добавление вопросов и текстов объяснения;
- создание правил;
- просмотр базы знаний;
- поиск атрибутов и правил; и др.
Другой вариант режима редактирования - автоматическое создание базы знаний. Этот вариант характеризуется тем, что специальная программа заменяет инженера знаний с максимально возможным переносом его положительных качеств. Этот режим имеет следующие положительные черты:
- в значительной мере устраняются отрицательные факторы, связанные с взаимодействием эксперта и инженера по знаниям;
- систематизируется процесс ввода знаний;
- появляется возможность редактировать базу знаний неограниченное число раз до тех пор, пока результат не будет удовлетворять и эксперта, и инженера по знаниям;
- уменьшаются нежелательные эффекты, связанные с вводом неверной, противоречивой или синтаксически некорректной информации;
- программы редактирования знаний организуют мышление эксперта в нужном направлении.
В режиме консультации СИИ осуществляет процесс решения задачи, сформулированной пользователем.
Пример. Познакомимся вкратце с организацией режима консультации в системе Expеrt PRIZ (позднее в этом пособии эта система будет рассмотрена подробно). Прежде всего пользователь выбирает из предлагаемого меню тему консультации, например, выбирается задача по выбору скорости автомобиля в зависимости от технических и климатических данных.
Далее система задает пользователю вопрос:
"Является ли дорога ... ?"
и указывает список возможных опций-ответов:
- сухой;
- мокрой;
- скользкой.
Если пользователь выбирает опцию "сухая", то система выводит на экран текст очередного вопроса:
"Что можно сказать о видимости ? Является ли она ... ?"
- до 100 м;
- более 100 м.
Если пользователь выбирает опцию "до 100 м", то система выдает ответ:
"Рекомендуется не превышать 80 км/ч".
После завершения консультации можно просмотреть на экране дисплея возможное объяснение полученного решения задачи. Так, на экране в ответ "да" на вопрос:
"Объяснения ? (да/нет)"
будет выведено, например, следующее объяснение:
"При таких условиях длина тормозного пути не превосходит 2 - 3 м"
Процедуры.В режиме консультации система Expert PRIZ позволяет вычислять значения одних переменных по другим, а также решать уравнения. Например, зная скорость (v) и время (t), можно записать уравнение для расстояния, пройденного за время t:
S = v × t
Процедура используется либо для вычисления объектов, либо для отыскания аналитических выражений для зависимостей между объектами.
Таким образом, в отличии от традиционных программ СИИ в режиме консультации не только исполняет предписанную последовательность операций, но и предварительно формирует задачу, а также предоставляет пользователю:
- возможность вмешиваться в процесс решения;
- получать объяснения полученного решения.
Дата добавления: 2016-03-05; просмотров: 1080;