48597 (608672), страница 2

Файл №608672 48597 (Разработка оболочки экспертной системы) 2 страница48597 (608672) страница 22016-07-30СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Планирование – построение последовательности действий для достижения желаемого результата.

Проектирование – построение конфигурации объектов с учетом ограничений.

Отладка – составление рецептов исправления неправильного функционирования системы, настройка отладочной системы.

Управление – адаптивное руководство поведения системы в целом (наблюдает, чтобы отследить на протяжении времени, классифицирует, диагностирует это отклонение, находит рецепт его устранения и осуществляет его применение).

Обучение – диагностирование, отладка, ремонт поведения обучаемого.

2.4 Характеристики экспертных систем

Экспертные системы можно характеризовать следующими особенностями:

• область применения,

• класс решаемых задач,

• метод (методы) представления знаний,

• метод (методы) решения задач (поиска решений),

• структуризация данных (фактов) предметной области,

• структуризация/неструктуризация знаний о решении задач,

• четкость/нечеткость данных,

• четкость/нечеткость знаний,

• монотонность/немонотонность процесса решения задач,

• метод (методы) приобретения (пополнения) знаний,

• вид пользовательского интерфейса,

• динамическая или статическая предметная область,

• интеграция с другими программными системами (СУБД, системами моделирования, графическими пакетами и т.д.).

2.5 Этапы создания экспертных систем

1 этап – Идентификация.

1. Определение участников и их ролей в процессе создания и эксплуатации экспертной системы.

В процессе создания экспертной системы могут участвовать следующие специалисты: инженеры по знаниям, эксперты, программисты, руководитель проекта, заказчики (конечные пользователи). При реализации сравнительно простых экспертных систем программистов может не быть. Роль инженера по знаниям – выуживание профессиональных знаний из экспертов и проектирование базы знаний экспертной системы и ее архитектуры. Программист необходим при разработке специализированного для данной экспертной системы программного обеспечения, когда подходящего стандартного (например, оболочки для создания экспертных систем) не существует или его возможностей не достаточно и требуются дополнительные модули.

В процессе эксплуатации могут принимать участие конечные пользователи, эксперты, администратор.

2. Идентификация проблемы

На этом этапе разработчики должны ответить на ряд вопросов, определяющих особенности решаемых экспертами, а, следовательно, будущей экспертной системой, задач. Эти особенности определят и особенности архитектуры экспертной системы, формируемой на последующих этапах. К этим вопросам относятся следующие:

− какой класс задач должна решать ЭС;

− как эти задачи могут быть охарактеризованы или определены;

− какие можно выделить подзадачи;

− какие исходные данные должны использоваться для решения;

− какие понятия и взаимосвязи между ними используются при решении задачи экспертами;

− какой вид имеет решение и какие концепции используются в нем;

− какие аспекты опыта эксперта существенны для решения задачи;

− какова природа и объем знаний, необходимых для решения задачи;

− какие препятствия встречаются при решении задач;

− как эти помехи могут влиять на решение задачи.

Определение необходимых ресурсов – временных, людских, материальных.

3. Определение целей

В качестве целей, преследуемых при создании экспертных систем, мо-

гут быть: повышение скорости принятия решения, повышение качества решений, тиражирование опыта экспертов и т.п.

2 этап – Концептуализация.

На этом этапе разработчики должны ответить на следующие вопросы:

− какие типы данных нужно использовать;

− что из данных задано, а что должно быть выведено;

− имеют ли подзадачи наименования;

− имеют ли стратегии наименования;

− имеются ли ясные частичные гипотезы, которые широко используются.

3 этап – Формализация.

4 этап – Реализация прототипной версии.

5 этап – Тестирование.

6 этап – Перепроектирование прототипной версии.

3. Практическая часть

3.1 Выбор среды разработки программирования

В качестве внутреннего языка для данной работы был выбран ObjectPascal, который используется в среде программирования Delphi. Этот язык использует принципы объектно-ориентированного и визуального программирования.

Язык ObjectPascal является одним из высокоразвитых языков объектно-ориентированного программирования. И среди других, например, таких как Visual Basic или Visual C++, отличается простотой программного кода, достаточным количеством литературы по этому языку.

Объектно-ориентированное программирование (ООП) — это методика разработки программ, в основе которой лежит понятие объект. Объект — это некоторая структура, соответствующая объекту реального мира, его поведению. Задача, решаемая с использованием методики ООП, описывается в терминах объектов и операций над ними, а программа при таком подходе представляет собой набор объектов и связей между ними.

По сравнению с традиционными способами программирования ООП обладает рядом преимуществ. Главное из них заключается в том, что эта концепция в наибольшей степени соответствует внутренней логике функционирования операционной системы (ОС) Windows. Программа, состоящая из отдельных объектов, отлично приспособлена к реагированию на события, происходящие в ОС. К другим преимуществам ООП можно отнести большую надежность кода и возможность повторного использования отработанных объектов.

Delphi - это комбинация нескольких важнейших технологий:

Высокопроизводительный компилятор в машинный код

Объектно-ориентированная модель компонент

Визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов

Масштабируемые средства для построения баз данных

Программирование в Delphi строится на тесном взаимодействии двух процессов:

• процесса конструирования визуального проявления программы (т.е. ее Windows-окна),

• процесса написания кода, придающего элементам этого окна и программе в целом необходимую функциональность.

Основные преимущества среды программирования Delphi:

– Простота языка позволяет быстро его освоить и создавать сложные программы;

– Развитые средства представления структур данных обеспечивают удобство работы, как с числовой, так и с символьной и битовой информацией;

– Объектно-ориентированное программирование (ООП) в визуальной среде.

В процессе построения приложения разработчик выбирает из палитры компонент готовые компоненты как художник, делающий крупные мазки кистью. Еще до компиляции он видит результаты своей работы - после подключения к источнику данных их можно видеть отображенными на форме, можно перемещаться по данным, представлять их в том или ином виде. В этом смысле проектирование в Delphi мало чем отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции мы получаем код, который исполняется в 10-20 раз быстрее, чем то же самое, сделанное при помощи интерпретатора. Кроме того, компилятор компилятору рознь, в Delphi компиляция производится непосредственно в родной машинный код, в то время как существуют компиляторы, превращающие программу в так называемый p-код, который затем интерпретируется виртуальной p-машиной. Это не может не сказаться на фактическом быстродействии готового приложения.

Основной упор этой модели в Delphi делается на максимальном реиспользовании кода. Это позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а также дает им возможность создавать свои собственные объекты для среды Delphi. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует.

3.2 Алгоритм работы экспертной системы

3.2.1 Алгоритм формирования базы знаний

В данном курсовом проекте для формирования базы был применен алгоритм с прямой цепочкой рассуждений

Пусть iое правило имеет следующую структуру

Если Фi1 = ЗФi1

и Ф i2 = ЗФi2

и Фi3 = ЗФi3

то Вi = ЗВ i.

Здесь i – номер правила, Фi1,2,3 - это факты iго правила, ЗФi1,2,3 – значение факта Фi j,

Вi - название вывода iго правила, ЗВi – содержание или значение вывода Вi..

В данном курсовом проекте число условий в одном правиле не ограничено. Пусть есть N правил подобной структуры. Число правил задает эксперт при создании базы знаний.

Чтобы в алгоритме вывода можно было оперировать фактами, значениями фактов, учитывать их связь в определенном правиле и делать выводы, соответствующие данному набору фактов, база данных экспертной системы представляется в виде определенных структур: массив переменных условия (МПУ), массив переменных вывода (МПВ), списки переменных условия (СПУ) и вывода (СПВ), очередь переменных вывода (ОПВ).

Вначале формируем массив переменных условия МПУ и массив переменных вывода МПВ путем переписывания туда содержимого из соответствующих полей формы. Далее, после ввода всех правил строим СПВ и СПУ.

В таблицах 2.1, 2.2 приведена структура МПУ, МПВ, СПУ, СПВ.

Таблица 2.1 – Структура массивов условий и выводов

МПУ(n*3, 3)

МПВ(n,3)

Ф11 ЗФ11 1

Ф12 ЗФ12 2

Ф13 ЗФ13 3

Ф21 ЗФ21 3

Ф31 ЗФ31 0

Ф32 ЗФ32 4

Ф33 ЗФ33 1

……………..

Фn1 ЗФn1 *

Фn2 ЗФn2 *

Фn3 ЗФn3 *

В1 ЗВ1 1

В2 ЗВ2 2

В3 ЗВ3 1

……….

Вn ЗВn *

Таблица 2.1 – Структура списков условий и выводов

СПУ(ку)

СПВ(кв)

Ф11

Ф12

Ф13

Ф32

……………..

Фn1

Фn2

Фn3

В1

В2

……….

Вn

Вначале на основе анализа МПВ формируем список переменных вывода СПВ. Анализ заключается в следующем алгоритме:

1. Первую переменную вывода В1 помещаем без обработки как СПВ (1) и устанавливаем текущее количество выводов кв=1 и в третий столбец МПВ записываем: МПВ(1,3)=1, т.е. по содержимому этого столбца обеспечиваем связь МПВ и СПВ.

2. От i =2 до N: (для всех МПВ( i, 1) проверяем была ли эта переменная уже записана в состав СПВ):

От р=1 до кв: если МПВ(i, 1) = СПВ (р), то МПВ( i, 3) =р; иначе кв=кв+1; СПВ(кв)= МПВ( i, 1); МПВ(i, 3)=кв.

Далее аналогично анализируем МПУ для формирования списка переменных условия СПУ.

1. ку=1; СПУ(1)=МПУ(1);

2. От i =1 до N*М: (для всех МПУ( i, 1):

От р=1 до кв: если МПУ(i, 1) = СПВ (р), то МПУ(i, 3)=0; i= i + 1 и перейти к п.2. (т.е. проверяем была ли эта переменная уже записана в состав СПВ как переменная вывода и в этом случае в третий столбец МПУ записываем 0 и эту переменную в перечень переменных условия не включаем).

От у=1 до ку: если МПУ(i, 1) = СПУ (у), то МПУ(i, 3) =у; иначе ку=ку+1; СПУ(ку)= МПУ( i, 1); МПУ(у, 3)=ку.

Теперь формируем ТПУ (таблица переменных условия) и ТПВ (таблица переменных вывода). Структура таблиц приведена в таблицах 2.3, 2.4.

Для i=1,ку

ТПУ.условие (i)=СПУ(i), j=1

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

Тип файла
Документ
Размер
26,51 Mb
Тип материала
Учебное заведение
Неизвестно

Список файлов курсовой работы

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