Главная » Просмотр файлов » МПЗиО_11_17_CLIPS

МПЗиО_11_17_CLIPS (1185830), страница 2

Файл №1185830 МПЗиО_11_17_CLIPS (Лекции) 2 страницаМПЗиО_11_17_CLIPS (1185830) страница 22020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

атрибутами25РАБОТА С CИСТЕМОЙПрограмма на CLIPS может содержатьсяв двух текстовых файлах:● файл с начальным содержимым РП (т.е. с фактами)● файл с правилами, шаблонами, функциями …Типичные действия- выполняемые пользователем в среде CLIPS и/или- встречающиеся в правой части правил продукции:● Загрузка в систему шаблонов, фактов и правил● Перед загрузкой фактов с неупорядоченнымиименованными атрибутами должны быть загруженысоответствующие шаблоны● После загрузки РП и БЗ системой составляетсясписок применимых в данный момент правил● Запуск программы на выполнение - команда run: (run)26ЗАГРУЗКА И ОЧИСТКА РП● Изначально рабочая память пуста, в неёавтоматически добавляется факт initial-fact.● Добавление списка фактов в рабочую память (пример):(deffacts startup ″Refrigerator status″(refrigerator light on)(refrigerator door open)(refrigerator temp (+ 5 10 15)))● Факты, описанные в конструкторах deffacts,автоматически добавляются после выполнения команды(reset)● Команда (clear) – очистка РП, она становится пустой● Команда (reset) – очистка РП, после выполненияавтоматически добавляются все факты из конструкцийdeffacts и факт initial-fact27СОХРАНЕНИЕ ФАКТОВИ ЗАГРУЗКА В РП● Сохранение всех/некоторых фактов из РПв текстовый файл:(save-facts <имя файла>[<границы видимости> <список имён шаблонов>])< границы видимости >::= visible | local● Загрузка фактов из файла:(load-facts <имя файла>)Факты с именованными атрибутами могут быть загруженыиз файла только после загрузки в системусоответствующего определения шаблона● Загрузка конструкторов из файла:(load ″myfile1.CLP″)аргумент – имя текстового файла, может быть указан путьк нему, по умолчанию он ищется в текущей директории28СРЕДСТВА РАБОТЫ С ПРАВИЛАМИ● Загрузка файла с правилами и конструкторамишаблонов:(load ″имя файла″)● Просмотр определения правила:(ppdefrule <имя правила>)● Получение полного списка правил, присутствующих вCLIPS на данный момент:(list-defrules <имя модуля>)аргумент не обязателен (по умолчанию – текущий модуль,* – из всех модулей)● Удаление правил: (undefrule <имя правила>)или(undefrule *)● Сохранение в текстовый файл всех определённых всистеме в данный момент конструкторов (правил,шаблонов, функций): (save ″имя файла ″)29ОПРЕДЕЛЕНИЕ ФУНКЦИЙВ правой части правил можно применять функции:●●●определённые пользователем, внешниесистемные, внутренниеопределённые в CLIPS с помощью конструктора deffunction(их отличие от внешних – они выполняются интерпретатором)Примеры:(deffunction print-args (?x ?y $?z)(printout t ?x ″ ″ ?y ″ and ″ (length ?z)″ extras: ″ ?z crlf))(deffunction factorial (?x)(if (or (not (integerp ?x)) (< ?x 0))then (printout t ″Factorial error!″ crlf)else (if (= ?x 0)then 1else (* ?x (factorial (- ?x 1))))))30ЗАПУСК И ОТЛАДКАЗапуск программы:(run <целочисленное выражение>)● Если аргумент задан и >0, то выполняетсясоответствующее количество правил из спискаприменимых правил● Аргумент может быть опущен или <0, тогда весьсписок выполнится полностью● В процессе выполнения список применимых правилможет менятьсяВ любой момент возможно посмотреть содержимое РП:(facts) – вывод на экран текущего содержимого РПМожно посмотреть список применимых в данныймомент правил с помощью команды (agenda)31ПРАКТИЧЕСКОЕ ЗАДАНИЕ № 3●●●●●●●●(обязательно для допуска к экзамену)Разработка ЭС на базе языка CLIPS (прямой вывод)Работа индивидуально или в группах по 2-3 человекаРазделение работы обсуждается с преподавателем: анализ ПО и выявление экспертных правил программирование правил (создание БЗ) программирование вывода в ЭС отладка БЗ и тестирование ЭСВыбор ПО и типа ЭС – свободный, но оговаривается спреподавателем.

Например: диагностика неисправностейноутбука, рекомендации по покупке холодильникаОбязательная сдача отчета по заданию (1-2 стр.)Задание сдается по этапам Н.В.ГруздевойМожно использовать готовую оболочку ЭС (или некоторыесредства из нее), но это соответственно снижает оценкуКонтрольный срок сдачи – 12 мая, выбор ПО – 21 апреля32ЭТАПЫ РАЗРАБОТКИ ЭС1.

Выявление сущностей и их атрибутов2. Выявление экспертных правил3. Представление сущностей и их атрибутов в видефактов4. Определение схемы вывода решения5. Реализация экспертных правил правилами CLIPS6. Программирование вспомогательных функцийдля запроса информации у пользователя(интерфейс с пользователем)7. Программирование схемы вывода и всей ЭС8.

Тестирование и отладка БЗ33РАЗРАБОТКА ЭС: ПРИМЕРРазработка ЭС диагностики неисправности мотораавтомобиля по внешним признакамЭкспертные правила:● Двигатель обычно находится в одном из трёх состояний:●●●●работает нормально, работает неудовлетворительно, незаводится.Двигатель работает нормально, если он нормальновращается, система зажигания и аккумулятор находятся внорме, тогда никакого ремонта не требуется.Если двигатель запускается, но работает ненормально, то этоговорит, по крайней мере о том, что аккумулятор в порядке.Если двигатель не запускается, то нужно узнать, пытается лион вращаться.

Если он вращается, но не заводится, то этоможет говорить о наличии плохой искры в системе зажигания.Если двигатель даже не пытается заводиться, то это говорит отом, что искры нет в принципе.…34ПРИМЕР ЭС: СУЩНОСТИ● Состояние двигателя: нормальная работа,неудовлетворительная работа, не заводится● Состояние вращения двигателя: способен вращаться или нет● Состояние аккумулятора: заряжен или разряжен● и т.д.Каждому состоянию можно поставить в соответствие факты вида:имя сущности – атрибут – значение:; Группа фактов, описывающих состояние двигателя(working-state engine normal)(working-state engine unsatisfactory)(working-state engine does-not-start); Группа фактов: состояние вращения двигателя(rotation-state engine rotates)(rotation-state engine does-not-rotate); Состояние аккумулятора(charge-state battery charged); заряжен(charge-state battery dead); разряжен35ПРИМЕР ЭС: ПРАВИЛАПервому экспертному правилу соответствует:(defrule determine-engine-state(not (working-state engine ?))(not (repair ?)) ; в РП нет факта-рекомендации=>(if (yes-or-not-p ″Does the engine start (yes/no)? ″)then (if (yes-or-no-p ″Does the engine run normally(yes/no)? ″)then (assert (working-state engine normal))else (assert (working-state engineunsatisfactory)))else (assert (working-state engine does-not-start)))В результате выполнения правила, в зависимости от ответовпользователя в РП заносится один из трёх фактов о состояниидвигателяПравило применимо только если в РП нет фактов о состояниидвигателя и факта repair36ИНТЕРФЕЙС С ПОЛЬЗОВАТЕЛЕМ; ЭС задаёт вопрос и вводит ответ, который д.быть; одним из заданных возможных вариантов ответа(deffunction ask-question (?question $?allowed-values)(printout t ?question) (bind ?answer (read))(if (lexemep ?answer)then (bind ?answer (lowcase ?answer)))(while (not (member ?answer ?allowed-value)) do(printout t ?question) (bind ?answer (read))(if (lexemep ?answer)then (bind ?answer (lowcase ?answer))))?answer ); ЭС задаёт вопрос, на который ответ – да или нет(deffunction yes-or-no-p (?question)(bind ?response (ask-question ?question yes no y n))(if (or (eq ?response yes)(eq ?response y))then TRUEelse FALSE))37ПРИМЕР ЭС:ЗАВЕРШАЮЩЕЕ ПРАВИЛОВ случае, когда в ходе опроса не удалось выработатьрекомендацию, применяется следующее правило:(defrule no-repairs(declare (salience -10))(not (repair ?))=>(assert(repair ″Take you car to a mechanic.″))В РП заносится факт, рекомендующий пользователю показатьмашину механикуПравило применимо только в том случае, если больше нетникаких применимых правил (т.к.

у него приоритет -10,приоритет остальных правил = 0 по умолчанию),и не была выработана рекомендация пользователю38СПАСИБО ЗА ВНИМАНИЕ!39.

Характеристики

Тип файла
PDF-файл
Размер
761,88 Kb
Материал
Тип материала
Высшее учебное заведение

Список файлов лекций

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6508
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее