Так выглядит Inference Browser после прогона нашего примера (см. выше). МенюOptions выполняет те же функции, что и одноименный пункт в окне Object Browser, отличие только одно - пункт менюStep Mode..., который активизирует режим формирования цепочки рассуждений в обратном направлении. Кроме того, выбор левой кнопкой мыши правила в окне просмотра иерархии выводов влечет появление меню Edit/Show Relations. Edit - вызывает редактор правил с текстом текущего правила. Show Relations - активизирует окно Rule Relations для выбранного правила.
1.1.6. Средства создания интерфейса с пользователем. Окно сеанса (Session Window)
Интерфейс для решаемой прикладной задачи формируется пользователем в окне Session. Все элементы этого окна, включая и само окно, представлены в объектной модели в виде объектов соответствующих классов. Эти классы изначально предусмотрены (предопределены) в ЭО Kappa и составляют инструментарий для разработки интерфейса. Так окно Session представлено объектом Session в классе KSession, который, в свою очередь, является подклассом в классе KWindow. Слотами любого создаваемого объекта-окна являются его геометрия, цветовая гамма, меню и т.п. Все элементы интерфейса, размещаемые в окне сеанса (надписи, информационные окна, кнопки и т.п.), представляются объектами соответствующих подклассов класса Image. Так любая кнопка представляется объектом подкласса Button, статическая надпись – объектом подкласса Text и т.д. Таким образом, для создания нового интерфейсного окна необходимо создать объект в классе KSession, для создания новой кнопки – объект в классе Button и т.д. Создавать и редактировать элементы интерфейса можно в окнах сеанса, просмотра объектов и интерпретатора. В последнем случае следует использовать функции MakeImage и MakeInstance. Ниже рассматривается процедура проектирования интерфейса в окне сеанса, основанная на принципах визуального программирования, при которой проектировщик должен лишь встроить заготовку элемента интерфейса, а не разрабатывать ее.
Окно сеанса имеет два режима:Расположения (Layout) и Выполнения (Runtime). Первый - для манипулирования графическими образами, второй - для представления интерфейса конечному пользователю.
Состав меню окна виден на рисунке. Print - для распечатки определенного образа или целого экрана. Пункт Editвключает пять опций, которые доступны только в режиме Расположения:
· редактирования образа (Edit Image),
· переименования (Rename Image),
· удаления (Delete Image),
· свертывания (Hide Image) - образ удаляется из окна сеанса (в БЗ сохраняется),
· показа скрытых образов (ShowHiddenImage...) в окне Session - предлагается список скрытых образов, надо выбрать тот, который Вы хотите сделать видимым.
Меню управления(Control) позволяет вызывать функции и получать объяснения рассуждений. Имеет три опции:Start, Call Function, Explain.
Пункт Опции (Options) позволяет выбирать режим окна сеанса и создавать новые образы. Имеет 4 опции: Tool Box (инструментарий) - выбор этой опции вызывает появление в окне сеанса панели с инструментами - доступно в режиме Layout, Image Adjuster (монтажник) - открывает в окне сессии панель регулировки размеров и расположения образа. Set Tab Stops (установка табулостопов) - упорядочивает активизацию образов при нажатии клавиши табуляции. Layout Mode - переключает режимы окна сеанса.
Меню Windowсодержит пункты New, Delete, Rename Object, Select, Hide, UnhideиAttributes. Рассматриваемая нами версия системы КАРРА (1.2) позволяет создавать несколько окон сеанса (с разными именами), но главным остается окно Session. Если мы установили режим Runtime, то доступными становятся толькоHide и Unhide -скрыть и показать окно (соответственно). В зависимости от ситуации может быть предложен список окон сеанса. В режиме Layout в Session доступны еще New (можно создать новое окно) и Attributes (позволяет просмотреть и изменить основные атрибуты текущего окна), а если открыто еще какое-либо окно сеанса, то активизируется иSelect, обеспечивающий возможность выбрать другое окно текущим. Кроме того, если текущим является не главное окно сеанса (Session) и выбран режим Layout, то доступными становятся все пункты меню Window (Delete– уничтожение,Rename Object- переименование текущего окна).
МенюImage позволяет создавать новые объекты предопределенных классов активных образов (ActiveImages classes), имеет 16 опций:Button, Text, Edit, Transcript, Bitmap, Drawing, State Box, Meter, Line Plot, Slider, Single List Box. Multiple List Box, Check Box Group, Radio Button Group, Check Box и Select Image, которые типичны для средств визуального проектирования интерфейсов в Windows и здесь не рассматриваются.
1.1.7. Средства объяснений оболочки KAPPA
Позволяет Вам задать вопрос: «Почему слот имеет такое значение?». Эта возможность открыта для любого слота, имеющего единственное значение (single). Вы можете воспользоваться этим средством одним из следующих способов:
· в окне SESSION выбрать пункты Control, Explain и обозначить интересующий Вас слот (Имя объекта: Имя слота);
· то же самое проделать в окне Rule Trace;
· в интерпретаторе языка KAL воспользоваться функцией Explain();
Окно объяснений содержит текст объяснений (если значение слота изменено в результате работы правила, то указывается это правило и относящийся к нему комментарий) и две кнопки: Выход(ОК) и Объяснить (Explain). Последняя позволяет запрашивать объяснение значения других слотов, а информация помещается в то же окно. Для нашего примера окно с объяснениями будет выглядеть следующим образом.
1.2. Практическое задание
Темой данного практического задания является разработка экспертной системы (ЭС) для выбора аппаратной платформы при создании некоторой гипотетической информационно-управляющей системы. ЭС отражает модели рассуждений и принятия решений, которыми пользуется эксперт в рассматриваемой проблемной области. Функция проектируемой ЭС состоит в принятии решения при выборе платформы на основе частных характеристик вариантов. Разработка преследует лишь учебную цель, которая заключается в изучении технологии проектирования ЭС. Речь идет о создании так называемого быстрого прототипа ЭС, когда создается усеченный вариант ЭС для быстрой проверки идей, закладываемых в основу будущей информационной системы. В связи с этим к содержанию базы знаний (БЗ) не предъявляется высоких требований. Ее разрабатывает сам студент, выступая тем самым и в роли эксперта, и в роли инженера по знаниям. В задачу студента входит следующее. На основе индивидуального задания (см. таблицу индивидуальных заданий) разработать и запрограммировать объектную и функциональную модели предметной области. В качестве инструментального средства предполагается экспертная оболочка (ЭО) Kappa, в которой в качестве основных моделей представления знаний используются - объектно-ориентированная модель (инструментарий для разработки объектной модели) и продукционные правила (инструментарий для разработки функциональной модели).
Таблица вариантов индивидуальных заданий
Решения
Методы
DP
MP
NMP
MPR
UV
SrS
SrP
Исходными данными для разработки являются:
1. Список вариантов принимаемых решений по каждой аппаратной платформе: