PDA-0571 (Разработка подсистемы вывода в диагностической экспертной системе), страница 2

2016-07-31СтудИзба

Описание файла

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

Онлайн просмотр документа "PDA-0571"

Текст 2 страницы из документа "PDA-0571"

Эти идеи и ложатся в основу технологических решений при конструировании оболочки.



    1. НЕДООПРЕДЕЛЕННЫЕ МОДЕЛИ

Характерными особенностями знаний о сложных фрагментах действительности являются их неполнота, неоднозначность, отсутствие точности – свойства, которые существенно затрудняют (а иногда и делают невозможным) поиск адекватного решения задачи [4]. Любую модель надо строить с учетом принципиальной неполноты и принципиальной возможности ошибок и противоречий в написании задачи. Эти и другие так называемые НЕ-факторы отражают то обстоятельство, что в реальном мире существуют в основном объекты, которым присущи все эти свойства или хотя бы одно из них.

К настоящему времени наибольшее развитие получил НЕ-фактор, который известен, как недоопределенность конкретных знаний. Недоопределенность связана с неполнотой доступной в данный момент информации о моделируемом фрагменте реальности. Эта неполнота касается в первую очередь значений величин объектов (например, около двух часов – о времени), но может присутствовать и в случае неполноты информации о типах объектов (то ли окружность, то ли эллипс) и о существующих отношениях между объектами (то ли раньше, то ли позже).

Мы назовем значение переменной неопределенным, если о нем известно лишь то, что оно равно одному из элементов множества потенциальных значений. Значение считается определенным, если однозначно известен тот элемент множества потенциальных значений, которому оно равно.

Типичным состоянием изучаемого объекта целесообразно считать недоопределенность: бесспорный факт принадлежности его значения какому-то нетривиальному подмножеству области определения. При этом потенциальное совпадение с тем или иным элементом этого множества считается равновероятным.

Рассмотрим модель, которую будем называть обобщенной вычислительной моделью (ОВМ): M = (X,W,C,R),

Где множества X и R имеют такую же семантику, как и в обычных вычислительных моделях, W – множество функций присваивания, а C – множество функций проверки корректности. Функция присваивания определяет способ записи очередного значения в объект xX, а функция проверки корректности осуществляет контроль за правильностью вычисленных значений объекта x.

Пусть x – переменная с областью определения X. Обозначим через *X множество всех подмножеств X, без пустого. Элемент d*X, который содержит только одно значение из X, называется определенным. Все остальные элементы называются недоопределенными. Значение *x, соответствующее всему множеству X, будем называть полной неопределенностью.

ОВМ, в которой хотя бы один объект представлен недоопределенным типом данных, называется недоопределенной моделью (н-моделью) [5]. Рассмотрим систему из двух линейных уравнений с двумя целочисленными переменными:

x + y = 12

2*x = y

Для предоставления целых констант данной системы (2 и 12) естественно воспользоваться предопределенным типом integer. Если переменным x и y также сопоставить тип integer, то получим традиционную модель. Найти решение в данном случае можно, только применяя любой из методов решения систем линейных уравнений. Если же для представления переменных x и y воспользоваться недоопределенным типом (например, nint), то система уравнений становится н-моделью. Далее покажем внутреннее представление такой н-модели и алгоритм ее решения.

Множество Х содержит все объекты данной н-модели:

Х = {x,y:nint; 12,2:integer}.

Так как множество Х содержит две переменные и две неизменяющиеся константы, множество функций присваивания (W) и множество функций порверки корректности (С) содержат по два элемента:

W = { PRint(x), PRint(y) } PRint – имя функции присваивания.

C = { PRDint(x)< PRDint(y) } PRDint – имя функции проверки корректности.

Множество отношений (R) для данной системы уравнений содержит два отношения (plus и umn), связывающие между собой переменные типов nint и integer (здесь мы игнорируем дополнительные переменные, которые, возможно, появились бы в результате компиляции исходных уравнений):

R = { plus(12,x,y); umn(y,2,x) }.

Множество функций интерпретации отношений из R можно представить следующим образом (в комментариях приведены описания функций в обычной записи):

Plus: minus 3 #y, 12, *x; (*y:=12-x*) (1)

minus 3 #x, 12, *y; (*x:=12-y*) (2)

umn: umn 3 #y, x, 2; (*y:=x*2* ) (3)

del 3 #x, y, 2; (*x:=y/2* ) (4)

Напомним, что арифметические операции реализованы в соответствии с правилами интервальной математики.

Технология недоопределенных вычислительных моделей позволяет обрабатывать неточные значения.

  1. ПОСТАНОВКА ЗАДАЧИ

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

    1. ФОРМУЛИРОВКА В ПОЛЬЗОВАТЕЛЬСКИХ ТЕРМИНАХ

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

    1. ВХОДНЫЕ ДАННЫЕ

Входными данными моей части программы являются:

  • Ответы пользователя на вопросы системы.

  • База данных с описаниями симптомов

  • База данных с описанием болезней

  • Таблица соответствий между болезнями и симптомами

  • Таблица «весов» (вероятностей) симптомов для болезней

  • База данных с данными о пациентах.

Иначе говоря, входные данные можно разбить на два больших блока:

  • Данные, поступающие из пользовательского интерфейса (см. введение)

Сюда также входит и база данных о пациентах (их «больничные карточки»)

  • Содержимое базы знаний, заполненной экспертом. База знаний хранится на жестком диске в виде четырех файлов; ее структура описана подробно в разделе 4.

    1. ВЫХОДНЫЕ ДАННЫЕ

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

В процессе работы система генерирует несколько рабочих версий окончательного диагноза, и в конце происходит «отсеивание» лишних гипотез, которые имеют вес, меньший, чем некоторое значение, заранее заданное системным программистом.

Например, в процессе работы сформировалось 5 версий с вероятностями от 67 до 98 %. Порог уверенности, заданный системным программистом – 75%. Тогда система выдаст все версии, вероятности которых больше 75%. Например, их 3.

Болезнь 1 – 94%

Болезнь 2 – 93%

Болезнь 3 – 87%

Болезнь 4 – 51%

Болезнь 5 – 67%

Система «отсеет» остальные болезни, кроме этих трех, и выдаст эти три в порядке убывания их вероятностей:

У вас, скорее всего, Болезнь 1. Вероятность – 94%

Вероятность Болезни 2 – 93%

Вероятность Болезни 3 – 87%

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

  • Какая болезнь встречается чаще вообще,

  • Какая болезнь встречается чаще всего, например, в летний период,

  • В каком возрасте люди чаще обращаются к врачу,

  • Люди какого пола чаще обращаются к врачу,

  • И тому подобное.

    1. СПЕЦИАЛЬНЫЕ ТРЕБОВАНИЯ

      1. Программные требования

  • Операционная система Windows 95/98, NT

  • BDE (Borland Database Engine)

      1. Аппаратные требования

  • Компьютер IBM PC, или совместимые 486 и выше

  • Манипулятор «Мышь»

  • Свободное дисковое пространство не менее 3 Мб.

  • SVGA Монитор

      1. Требования к квалификации пользователя

  • Для установки Borland DBE и правильной калибровки программного средства желательно присутствие системного программиста.

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

  1. МЕТОДЫ И АЛГОРИТМЫ РЕШЕНИЯ ЗАДАЧИ

    1. МЕТОДЫ И ОПРЕДЕЛЕНИЯ

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

  • База данных с описаниями болезней.

  • База данных с описаниями симптомов.

  • Таблица соответствий симптомов и болезней.

  • Таблица весов симптомов для болезней.

Вес – Вероятность той или иной болезни в процентах.

Недоопределенная спецификация – Набор данных, на основе которого невозможно принять окончательное решение.

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

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

    1. СТРУКТУРЫ ДАННЫХ

Структуры данных данного программного средства – 4 таблицы формата Paradox 7.0 (работу с этими таблицами обеспечивает DBE и DBD, которые как раз поставляются в комплект с Borland Delphi с целью «безпроблемной» работы с базами данных практически любого формата).

Таблица клиентов

П. П.

Наименование поля

Тип

Длина

Краткое описание

1.

Num_kard

Numeric

Номер карточки

2.

Name

Character

10

Имя

3.

Last_name

Character

15

Фамилия

4.

Otchestvo

Character

15

Отчество

5.

Fotokard

Character

12

Файл фотокарточки

6.

Sex

Logic

1

Пол

7.

Date_bd

Date

Дата рождения

8.

Date_create

Date

Дата регистрации

9.

Date_change

Date

Дата последнего обследования

Что касается пункта 5. (fotokard), то для этого специально был разработан модуль для работы со сканером, чтобы можно было ввести фотокарточку пациента в его медицинскую карту.

Таблица Болезней

П. П.

Наименование поля

Тип

Длина

Краткое описание

1.

Num

Numeric

Идентификационный номер болезни

2.

Name

Character

15

Наименование болезни

3.

File_name

Character

12

Имя файла с рекомендация-ми

4.

Work

Numeric

Поле используется для внутренних нужд

Таблица симптомов

П. П.

Наименование поля

Тип

Длина

Краткое описание

1.

Num

Numeric

Идентификационный номер

2.

Name_s

Character

15

Наименование симптома

3.

File_name

Character

12

Имя файла с реккомендациями

4.

Work

Numeric

Поле используется для внутренних нужд

Таблица соответствий

S[1]

S[max]

N[1]

Numeric

N[max]

Все значения таблицы – numeric. Число в пересечении колонок есть «указатель» на ту болезнь, на которую указывает определенный симптом, либо на тот симптом, на который указывает определенная болезнь.

Таблица весов

S[1]

S[max]

B[1]

Numeric

B[max]

Таблица размером [Кол-во болезней]х[Кол-во симптомов]. Число в пересечении колонок – Вес данного симптома для данной болезни.

    1. АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ

Работа программы начинается с функции инициализации, которая ответственна за присвоение данным начального значения. После чего управление получает процедура “Главного меню”. Далее, в зависимости от действий пользователя, происходит вызов одной из нижеперечисленных процедур:

  1. Работа с базами знаний;

  2. Работа с базой пациентов;

  3. Непосредственный запуск экспертной системы;

  4. Настройки;

  5. Контекстно-зависимая справочная система.

В мою часть входила обработка следующих пунктов:

  1. Работа с текущей базой знаний:

  • Считывание данных из файлов на диске.

  • Использование имеющейся там информации согласно нижеприведенному описанию.

  1. Обработка поступающей информации.

  2. Принятие решения и выдача окончательного результата.

На каждом шаге алгоритма у системы есть откат, т.е. у пользователя есть возможность, если он что-то забыл, вернуться в предыдущее состояние системы, нажав кнопку «Назад». Если же ему захочется все начать сначала, то, нажав кнопку «Отмена», система вернется в первоначальное состояние.

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