рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Алгоритм решения задачи

Работа сделанна в 1999 году

Алгоритм решения задачи - Дипломная Работа, раздел Программирование, - 1999 год - Разработка подсистемы вывода в диагностической экспертной системе Алгоритм Решения Задачи. Работа Программы Начинается С Функции Инициализации,...

Алгоритм решения задачи. Работа программы начинается с функции инициализации, которая ответственна за присвоение данным начального значения. После чего управление получает процедура Главного меню. Далее, в зависимости от действий пользователя, происходит вызов одной из нижеперечисленных процедур 1 Работа с базами знаний 2 Работа с базой пациентов 3 Непосредственный запуск экспертной системы 4 Настройки 5 Контекстно-зависимая справочная система.

В мою часть входила обработка следующих пунктов 1 Работа с текущей базой знаний Считывание данных из файлов на диске. Использование имеющейся там информации согласно нижеприведенному описанию. 2 Обработка поступающей информации. 3 Принятие решения и выдача окончательного результата. На каждом шаге алгоритма у системы есть откат, т.е. у пользователя есть возможность, если он что-то забыл, вернуться в предыдущее состояние системы, нажав кнопку Назад. Если же ему захочется все начать сначала, то, нажав кнопку Отмена, система вернется в первоначальное состояние.

На вход системы данные, введенные пользователем с клавиатуры изначально поступает неполная информация, вследствие чего система не может однозначно поставить диагноз. Для решения данной проблемы используется следующий алгоритм Ш Сбор предварительной информации. Первоначальный шаг. При входе в систему пользователь видит перед собой список всех симптомов, имеющихся в базе. Напротив выборочных пунктов списка симптомов пользователь выставляет галочки те симптомы, которые он у себя наблюдает.

Нажав кнопку Далее система переходит к следующему пункту. Ш Составление первоначального списка болезней, к которым подходит данный набор симптомов. После ввода пользователя некоторых первоначальных симптомов, система анализирует, к каким болезням принадлежат данные симптомы. Алгоритм определения первоначального списка болезней 1 Открываем таблицу соответствий 2 Для всех k1 до максимального числа симптомов 3 Берем k-тый симптом из первоначального списка 4 Смотрим в таблицу соответствий простым циклом делаем полный перебор всех элементов болезней, стоящих в столбце данного симптома 5 Делаем проверку 5.1 Если данная болезнь уже имеется в списке, то переходим к п.6 5.2 Если элемент таблицы 0, то болезнь в список не включаем 6 Увеличиваем k на 1 7 Если все симптомы k перебраны, то первоначальный список болезней сформирован 8 Закрываем таблицу соответствий.

Каждый симптом может принадлежать сразу нескольким болезням, поэтому в первоначальном списке болезней болезней будет не столько же, сколько симптомов.

Следует также учесть, что симптомы есть значимые и незначимые, т.е. вес симптома по отношению к какой-либо болезни либо большой, либо малый. Данный процесс регулируется системой, поэтому никак не зависит от пользователя. Ш Уточнение информации. Имея начальный список болезней, система проводит их дифференциацию. Далее система начинает проводить рассуждения.

Самые распространенные методы логического вывода - это прямая цепочка рассуждений прямой вывод и обратная цепочка рассуждений обратный вывод. В основном, при решении задач диагностики используется обратный вывод. Можно сказать, что обратный вывод более эффективен, когда пользователь должен выбирать из набора возможных последствий как в случае медицинской или технической диагностики. В разрабатываемой системе реализуется механизм смешанного вывода, который позволяет и прямой вывод от фактов к заключениям, и обратный - чтобы подтвердить или опровергнуть гипотезу.

В процессе уточнения информации система, задавая пользователю вопросы, проводит отсеивание лишних гипотез, имеющих малый вес. Для просчета веса гипотез система открывает данные из файла на диске, а именно таблицу весов. Таблица весов размером Кол-во болезней на Кол-во симптомов имеет в пересечении клеток число, равное весу данного симптома для данной болезни порог уверенности заранее задается в настройках.

Ш Рекомендации и сбор дополнительной информации. Если пользователь не смог ответить на некоторые вопросы на этапе первоначального опроса, то система дает рекомендации, как можно собрать эти данные, сдать анализы, провести ЭКГ и на основе этого собирает дополнительные данные. Рекомендации система дает только на гипотезы, имеющие большой вес чтобы подтвердить их весомость, и чтобы пациенту не стоило сдавать лишних анализов. Ш Принятие окончательного решения.

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

Запоминание конечного веса болезни. После подсчета весов всех болезней выбирается болезнь, имеющая максимальный вес, и происходит нормировка весов болезней чтобы они были в пределах от 1 до 100 Далее система выбирает те болезни, вероятности которых находятся в некоторых рамках, заранее определенных системным программистом так называемый порог уверенности. Значение порога уверенности можно задать в настройках программы. Формула для подсчета веса болезни vesbj tabvesvesi, jki То есть, для конечного подсчета вероятности не применяется умножение веса на коэффициенты, а идет суммирование всех элементов таблицы весов tabvesvesi, j имеющих отношение к болезни. Далее происходит нормировка всех конечных вероятностей с целью укладывания их в промежуток от 1 100. Чтобы окончательный ответ измерялся в процентах. ki коэффициент присутствия симптома равен либо 0, либо 1. Пример Голова болитПровалы памятиЧастые припадкиВ ухе стреляетЧелюсть сводитВнутриче-репное давлениеСклероз1010664552043 Например, в процессе работы были выбраны симптомы 2,4 и 6. Система будет суммировать вес Vesbсклероз1001061640551200431204. Далее У всех болезней таким образом будет вычислен вес. Выберется максимальный вес болезни из списка болезней.

J-1 отрицательное значение для начала.

For i1 to 15 do if j maxvesbi если j больше максимального значения, jmaxvesbi то jmax. Допустим, максимальный вес 300. Веса всех болезней разделятся на 300 нормируются, чтобы быть в пределах от 0 до 1. Таким образом, вес болезни склероз 2043000.68 т.е. 68. Это и есть конечный итог. Ш Выдача конечного результата.

Система выдает те болезни, которые были выбраны в предыдущем пункте в порядке процентного убывания, на экран. Пример У вас, скорее всего, Склероз. Вероятность 94 Вероятность физического повреждения мозга 93 Вероятность простой потери памяти 87 В данном случае, порог уверенности, установленный системный программистом, составляет 92, поэтому все болезни, имеющие веса, не превышающие планки 92, просто отсеиваются. 4.4.

– Конец работы –

Эта тема принадлежит разделу:

Разработка подсистемы вывода в диагностической экспертной системе

Работа выполнялась с 1 сентября 1998 года по 30 мая 1999 года. Тип работы инженерная является плановой разработкой института. Особенностью данной дипломной работы является возможность ее работы с… При этом подсистема вывода будет использовать экспертные знания, также допускающие элементы нечеткости и неточности.

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Алгоритм решения задачи

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Описание предметной области
Описание предметной области. Данная дипломная работа разрабатывалась в лаборатории искусственного интеллекта. Рынок современных диагностических систем не сильно балует пользователей новыми п

Задачи диагностики
Задачи диагностики. Одной из типичных задач экспертной системы является задача диагностики 3. Диагностика - это процесс поиска неисправностей в обследуемой системе или определение стадии заболевани

Процесс приобретения знаний
Процесс приобретения знаний. Приобретение знаний - это процесс передачи и преобразования опыта по решению задач от некоторого источника знаний в программу. Процесс создания диагностической экспертн

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

Формулировка в пользовательских терминах
Формулировка в пользовательских терминах. Необходимо было разработать систему медицинской диагностики, которая позволяла бы на основе неполных данных ставить диагноз с некоторой точностью, и выдава

Специальные требования
Специальные требования. Программные требования Операционная система Windows 9598, NT BDE Borland Database Engine 3.1.2. Аппаратные требования Компьютер IBM PC, или совместимые 486 и выше Манипулято

Методы и определения
Методы и определения. База знаний Совокупность трех реляционных баз данных в формате Paradox 7.0 База данных с описаниями болезней. База данных с описаниями симптомов. Таблица соответ

Специальный инструментарий
Специальный инструментарий. Для разработки данной программы была выбрана программная среда Borland Delphi 4.0. Для создания баз данных была использована разработка фирмы Borland - DBD Database Desk

Описание программы
Описание программы. Если процедуре, либо функции в качестве параметра передается Sender типа TObject, то он не является входным параметром функции, так как он является стандартным параметром, сгене

Отладка и тестирование программного средства
Отладка и тестирование программного средства. Для тестирования программы были использованы стандартные встроенные в программную среду Borland Delphi, средства отладки. Также в эксперименталь

Руководство системного программиста
Руководство системного программиста. Для корректной работы системы ее необходимо правильно установить и конфигурировать. Установка производится в несколько этапов a Проверить наличие установленного

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги