- •История развития искусственного интеллекта
- •Самостоятельное направление ии - Экспертные Системы (эс)
- •Коммерческий успех эс
- •Перспективы эс
- •1.1 Исследовательский раздел
- •1.1.1 Обобщенная структура и принципы функционирования экспертных систем
- •1.1.2 Анализ и обзор существующих методов построения эс и готовых решений
- •.1.3 Анализ инструментальных средств построения эс
- •.1.4 Постановка задачи
- •1.2.1 Анализ предметной области
- •1.2.2 Выбор модели представления знаний
- •1.2.3 Разработка логического блока программы
- •1.2.4 Разработка графического пользовательского интерфейса
- •1.2.5 Текст программы
- •1.3 Экспериментальная оценка результатов работы
- •1.3.1 Рекомендации по использованию эс
- •1.3.2 Оценка эффективности использования эс
- •1.3.3 Руководство оператора
- •1.4 Выводы
- •2. Экологическая часть и безопасность жизнедеятельности
- •2.2 Воздействие опасных и вредных факторов на организм пользователя эвм
- •.3 Способы защиты пользователей от опасных и вредных факторов
- •2.4 Эргономические требования при организации рабочих мест
- •Список литературы
1.2.3 Разработка логического блока программы
Для данной ЭС в программе Exsys Corvid были использованы следующие типы переменных (рис.1.2.1):
Рис.1.2.1
экспертный программа интерфейс пользовательский
Static List Variable - переменные со статическим списком значений - переменный, принимающие значения из заранее определенного списка, например, список множественного выбора.
Используемые переменные этого типа:
[Autonomy]
[Business]
[Cost]
[Games]
[Multimedia]
[Portability]
[Web]Variable - доверительные переменные - переменные, используемые для представления рекомендаций, которые будет выдавать система. С доверительными переменными ассоциируется доверительное значение (степень уверенности), которое показывает, основываясь на введенных пользователем данных, насколько достоверна та или иная рекомендация. Используемые переменные этого типа: [Ranking]- переменные коллекции - содержат пункты - текстовые строки (могут быть любой длины). Опции:
1. Добавлять отдельные текстовые пункты
2. Добавлять строку, которая является значением переменной
. Сортировать пункты, по значению
. Добавлять целый файл пунктов
. Добавлять другую переменную коллекции
. Удалить первый, последний или отдельный пункт, или все пункты.
Используемые переменные этого типа:
[Best]
[Comments]
[Firmlist]- используется для переменных имеющих числовой диапазон, включая числовые, строчные и переменные даты.
Используемые переменные этого типа:
[Battery]
BlueTooth
[CAM]
[CDDVD]
[Company]
[Core]
[CPU]
[Display]
[HDD]
[Message]
[Price]
[RAM]
[TypeGC]
[VideoRAM]
[Weighs]
[WIFI]
Для чтения переменных из файла в Corvid Exsys используется MetaBlock, в тексте программы переменные MetaBlockа заключаются в фигурные скобки.
В разработанной ЭС 3 логических блока:
-ый блок (рис.1.2.2) отвечает за формирование параметров на основе данных полученных от пользователя.
Например: Если на вопрос. "Важно ли для Вас использовать ноутбук для современных игр и 3D-приложений?" пользователь ответит "важно", параметрам "Частота процессора", "Кол-во ядер процессора", "Объем ОП", "Объем видео-памяти", "Тип графического адаптера" будут присвоены следующие значения:
Частота процессора = 2ГГц
Кол-во ядер процессора = 2
Объем ОП = 2ГБ
Объем видео-памяти = 256МБ
Тип графического адаптера = дискретный
В программе это правило будет выглядеть следующим образом::
<br>Важно ли для Вас использовать ноутбук для
современных игр и 3D-приложений? важно
THEN:
[CPU] = 2
[Core] = 2
[RAM] = 2
[VideoRAM] = 256
[TypeGC] = 1
Для запуска каждого из логических блоков в Exsys Corvid служит командный блок (рис.1.2.3):
На схеме 1.2.1 наглядно представлено, какие параметры формируются при опросе пользователя по каждому из вопросов.
Схема 1.2.1
Логический блок 2 (рис.1.2.4) отвечает за формирование рейтинга по каждому из параметров ноутбука (Диаграмма 1.2.2).
Рис.1.2.4
При точном совпадении параметра реальной модели, параметру, сформированному в результате опроса в логическом блоке 1, рейтинг (по этому параметру) будет максимальным для этого параметра.
Такой метод применен для параметров Диагональ дисплея, Фирма-производитель, т.е. тех для которых важно точное соответствие пользовательскому значению.
IF:
{Display} = [Display]:: Confidence = 50
При отклонении значения параметра от предпочтительного для пользователя рейтинг будет тем меньше, чем больше будет это отклонение.
IF:
{Display} != [Display]:: Confidence = 50 - (5*ABS([Display] - {Display}))
Однако для таких параметров как Объем ОП, Частота ЦП и других, для которых увеличение значения относительно пользовательского значения не критично (или даже предпочтительно) рейтинг уменьшается только при значении параметра меньше пользовательского.
IF:
{CPU} >= [Core]*[CPU]/{Core}:: Confidence = 50:
{CPU} < [Core]*[CPU]/{Core}:: Confidence = 50 - (5 * ([Core]*[CPU] - {Core}*{CPU}))
Обратная зависимость у параметра Цена:
IF:
{Price} <= [Price]:: Confidence = 100
IF:
{Price} > [Price]
Также стоит отметить, что по каждому из параметров максимально возможный рейтинг не одинаков (см. диаграмма 1.2.1): так для параметров цена и фирма-производитель он наибольший - 100, для частоты ЦП, Объема ОП, Диагонали дисплея и др. он равен 50, для таких параметров как наличие CD-DVD или Wi-Fi максимальный рейтинг равен 30. Т.о. при подборе моделей будут иметь большее влияние характеристики с большим рейтингом, т.е. наиболее важные цена, фирма-производитель (если для пользователя не важна эта характеристика, он может выбрать вариант "любая фирма", тогда рейтинг по этому параметру не будет учитываться), что позволит повысить качество выбора.
В конце логического блока 2 формируется список моделей сортированный по сумме значений рейтинга по всем параметрам (по убыванию), для последующего вывода 5 "верхних" моделей списка (Команда RESULTS).
-ий логический блок служит для добавления сообщения в случаи, если модели выбранной фирмы нет в базе товаров.
Диаграмма 1.2.1
Диаграмма 1.2.2