Реферат: Разработка подсистемы вывода в диагностической экспертной системе
Типичным состоянием изучаемого объекта целесообразно считать недоопределенность: бесспорный факт принадлежности его значения какому-то нетривиальному подмножеству области определения. При этом потенциальное совпадение с тем или иным элементом этого множества считается равновероятным.
Рассмотрим модель, которую будем называть обобщенной вычислительной моделью (ОВМ): M = (X,W,C,R),
Где множества X и R имеют такую же семантику, как и в обычных вычислительных моделях, W – множество функций присваивания, а C – множество функций проверки корректности. Функция присваивания определяет способ записи очередного значения в объект xX, а функция проверки корректности осуществляет контроль за правильностью вычисленных значений объекта 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)
Напомним, что арифметические операции реализованы в соответствии с правилами интервальной математики.
Технология недоопределенных вычислительных моделей позволяет обрабатывать неточные значения.
ПОСТАНОВКА ЗАДАЧИ
В задачу данной дипломной работы входит разработка машины вывода диагностической экспертной системы. Особенностью разрабатываемой машины вывода является ее способность работать с неточными и нечеткими входными данными. При этом машина вывода будет использовать экспертные знания, также допускающие элементы нечеткости и неточности.
ФОРМУЛИРОВКА В ПОЛЬЗОВАТЕЛЬСКИХ ТЕРМИНАХ
Необходимо было разработать систему медицинской диагностики, которая позволяла бы на основе неполных данных ставить диагноз с некоторой точностью, и выдавать, насколько точно она определила болезнь.
ВХОДНЫЕ ДАННЫЕ
Входными данными моей части программы являются:
-
Ответы пользователя на вопросы системы.
-
База данных с описаниями симптомов
-
База данных с описанием болезней
-
Таблица соответствий между болезнями и симптомами