Научная статья на тему 'Анализ знаний в экспертной системе нечеткого принятия решений'

Анализ знаний в экспертной системе нечеткого принятия решений Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
312
150
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЛИНГВИСТИЧЕСКАЯ ПЕРЕМЕННАЯ / ЛЕКСИЧЕСКИЙ АНАЛИЗ / НЕЧЕТКОЕ МНОЖЕСТВО / НЕЧЕТКАЯ ПЕРЕМЕННАЯ / ПРЕДСТАВЛЕНИЕ ЗНАНИЙ / СИНТАКСИЧЕСКИЙ АНАЛИЗ / LINGUISTIC VARIABLE / LEXICAL ANALYSIS / FUZZI SET / FUZZI VARIABLE / KNOWLEDGE REPRESENTATION / SYNTACTICAL ANALYSIS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Коробова И. Л.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Коробова И. Л.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Es werden die Fragen der Erarbeitung des Expertensystems unter den Bedingungen der ungenauen Beschlußauswahl betrachtet. Es ist die Struktur des Expertensystems und der Form der Kenntnisvorstellung gezeigt. Es ist die Beschreibung der am Lehrstuhl SAPR erarbeiteten Software angeführt. Sie erlaubt das Expertensystem mit den Kenntnissen anzufüllen, sie zu analysieren, zu redigieren und die Beschlusse zu erhalten.Sont examinés les problèmes de lélaboration du système dexpert dans les conditions du choix incertain des solutions. Est montrée la structure du système dexpert et la forme de la présentation des connaissances. Est donnée la description du logiсiel élaboré à la chaire de CFAO permettant de compléter ce système par les connaissances, de les analyser, de les rédiger et de recevoir des solutions.Matters of developing the expert system in terms of fuzzi decisionmaking are considered. The structure of expert system and the forms of knowledge representation are shown. The description of software developed at the department of SAD is given; it allows filling the expert system with information, analyzing and editing it, as well as making decisions.

Текст научной работы на тему «Анализ знаний в экспертной системе нечеткого принятия решений»

УДК 004.891

АНАЛИЗ ЗНАНИЙ В ЭКСПЕРТНОЙ СИСТЕМЕ НЕЧЕТКОГО ПРИНЯТИЯ РЕШЕНИЙ

И.Л. Коробова

Кафедра «Системы автоматизированного проектирования», ТГТУ Представлена членом редколлегии профессором В.И. Коноваловым

Ключевые слова и фразы: лингвистическая переменная; лексический анализ; нечеткое множество; нечеткая переменная; представление знаний; синтаксический анализ.

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

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

Знания человека-эксперта о решении задач в условиях неполноты, нечеткости исходной информации и достигаемых целей, также имеют нечеткий характер. Для их формализации в настоящее время успешно применяется аппарат теории нечетких множеств и нечеткой логики [1]. Нечеткие понятия в данном случае формализуются в виде нечетких и лингвистических переменных, а нечеткость действий в процессе принятия решения - в виде нечетких алгоритмов. Экспертные системы, способные формализовывать нечеткую информацию и обрабатывать ее в рамках нечетких алгоритмов, получили название нечетких экспертных систем. Структура нечеткой экспертной системы приведена на рис. 1.

Рис. 1 Структура нечеткой экспертной системы

База знаний содержит факты и знания, по которым в зависимости от входной информации принимается то или иное решение.

Факты представляют собой информацию о лингвистических переменных (табл. 1) и располагаются во внутренней базе данных экспертной системы (рис. 2).

Рис. 2 Окно «Лингвистическая переменная», закладка - «Температура процесса»

ISSN 0136-5835. Вестник ТГТУ. 2005. Том 11. № 4. Transactions TSTU. 875

Знания об использовании фактов и исходных данных представляются в виде нечетких правил в формате ЕСЛИ... ТО... . Например:

1) ЕСЛИ Весткани = малый И Температурапроцесса = малая ИЛИ Вес ткани = малый И Температура_процесса = средняя ИЛИ Вес ткани = средний И Температура процесса = малая ТО Схема = I;

2) ЕСЛИ Вес ткани = малый И Температура процесса = большая ИЛИ Вес ткани = средний И Температура процесса = средняя ИЛИ Вес ткани = большой И Температура процесса = малая ИЛИ Вес ткани = большой И Температура процесса = средняя ТО Схема = II;

3) ЕСЛИ Вес ткани = средний И Температура процесса = большая ИЛИ Вес ткани = большой И Температура процесса = большая ТО Схема = III.

Правила извлекаются от эксперта и располагаются во внешнем текстовом файле данных экспертной системы.

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

В разработанной системе извлечение знаний осуществляется с помощью программных средств, анализирующих грамматику описания знаний (эта грамматика задает форму представления знаний) - лексического и синтаксического анализаторов, и генератора кода [3].

Грамматика описания знаний имеет вид:

<правило> ®{ЕСЛИ <условие> ТО <результат> ;}.

<условие> ® <список переменныхусловия>

<список переменных условия> ® <выражение>{И/ИЛИ <список переменных условия> } / (<список переменныхусловия>)

<результат> ® <выражение>

<выражение> ® <переменная> = <значение>

<переменная> ® ид.

<значение> ®конст

Лексический анализатор преобразует исходный текст правил с помощью таблиц элементов алфавита в последовательность лексем в виде кода слов, констант и символов.

Исходный текст считывается пословно из файла в строковую переменную, которая анализируется с помощью таблиц слов, констант алфавита и идентификаторов, заданных пользователем. Определяется тип переменной (слово, константа, идентификатор, символ), ищется ее место в соответствующей таблице алфавита или, если там она отсутствует, в таблице идентификаторов пользователя. На выходе код каждой переменной записывается в трехмерный массив (в первую ячейку - номер правила, во вторую ячейку - номер слова в правиле, в третью - тип таблицы и номер в таблице).

Примеры кодировочных таблиц представлены в табл. 2 - 5.

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

Правило №1

(1,0) (3,0) (2,0) (4,0) (1,3) (3,1) (2,0) (4,1) (1,2) (3,0) (2,0) (4,0) (1,3) (3,1) (2,0) (4,2) (1,2) (3,0) (2,0) (4,3) (1,3) (3,1) (2,0) (4,1) (1,1) (3,2) (2,0) (4,4) (2,1)

Т аблица 2

Т аблица 3

Зарезервированные слова

Номер Наименование

0 ЕСЛИ

1 ТО

2 ИЛИ

3 И

Т аблица 4

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

Номер Наименование

0 Вес ткани

1 Температура процесса

2 Схема

Символы

Номер Наименование

0 =

1 ;

2

3 (

4 )

Т аблица 5

Константы

Номер Наименование

0 малый

1 малая

2 средняя

3 средний

4 I

5 большая

6 большой

7 II

8 III

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

Входным параметром метода операторного предшествования является соответствующая выбранному правилу строка массива лексем. Метод работает, пока в строке массива будет хотя бы одно слово. Функция определяет во внешнем цикле положение N1, N2 - строки и столбца в таблице отношений предшествования (табл. 6), затем она определяет положение указателя на левый элемент и на правый элемент. Лексемы, имеющие более высокий уровень предшествования, заносятся в выходную строку, на их место функция сдвигает слова, находящиеся справа, уменьшает счетчик слов на величину сдвига и продолжает анализ строки.

Например, правило 1 в результате работы метода операторного предшествования примет вид:

Правило №1

Внутреннее представление:

(3 0) (4 0) (2 0) (3 1) (4 1) (2 0) (1 3) (3 0) (4 0) (2 0) (3 1) (4 2) (2 0) (1 3) (1 2) (3 0) (4 3) (2 0) (3 1) (4 1) (2 0) (1 3) (1 2) (3 2) (4 4) (2 0) (1 0) (1 1)

На исходном языке:

Весткани малый = Температурапроцесса малая = И Весткани малый = = Температура процесса средняя = И ИЛИ Вес ткани средний = Температу-рапроцесса малая = И ИЛИ Схема I = ЕСЛИ ТО

Т аблица 6

ЕСЛИ = И ИЛИ ТО ; ид конст ( )

ЕСЛИ < < < = < <

= > > > > > < >

И < < > > < <

ИЛИ < < < > > < >

ТО < > > <

;

Ид >

К > > > > > >

( < < < =

) >

Генератор кода считывает внутреннее представление знаний и формирует объектный код в виде описания на языке экспертной системы. В разработанной системе реализована дедуктивная схема вывода на основе правила modus ponens

[4].

При заданных четких значениях входных параметров, дедуктивная схема вывода имеет вид:

L(1);

A - истина Б - истина

(1)

где L(1) - система нечетких высказываний; А' и B' - четкие высказывания

(А' : (bwecmbw'), B': ^ Ь^еапъХ)}) о значениях обобщенного входного параметра

(w' ) и выходного параметра (v)

Степень истинности данной схемы для произвольного j-го высказывания системы (1) определяется

тПр (u,) = i n [i - mwi W)+mui (u')l n... n [1 - mw, (w)+mu, (u')l n...

(2)

n [1 -mwm (w ) + mum (u') ].

При этом учитываем, что Bj - четкие высказывания и, следовательно, степень принадлежности определяется как

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Г1, при и' = и ,■

mu j (и' ) = \ j (3)

[ 0, др. с луч.

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

Рис. 3 Алгоритм обработки постфиксной записи

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

Пример выбора решения на основе изложенной схемы приведен на рис. 4.

Рис. 4 Окно «Выбор варианта»

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

Особенности реализации

Разработанная система позволяет просмотреть и отредактировать данные о лингвистических переменных: наименование, терм-множество, область определения, синтаксические и семантические процедуры, функции принадлежности.

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

Результаты работы механизма логического вывода отображаются на экране.

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

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

1 Наполнение, корректировка, поддержка базы знаний, содержащей опыт и знания экспертов о принятии решений.

2 Разработка для экспертной системы модуля автоматической проверки адекватности формируемых решений реальным.

3 Разработка модуля формирования решения в условиях неполноты информации.

4 Разработка модуля стыковки с существующими базами данных других систем.

1 Заде, Л. А. Основы нового подхода к анализу сложных систем и процессов принятия решений / Л. А. Заде // Математика сегодня. - М.: Знание, 1974. - 48 с.

2 Кафаров, Б.Б. Системный анализ процессов химической технологии / Б.Б. Кафаров, И.Н. Дорохов, Е.П. Марков // Применение метода нечетких множеств. - М.: Наука, 1986.

3 Ахо, А. Компиляторы: принципы, технологии и инструменты / А. Ахо, Р. Сети, Дж. Ульман. - М.: Издательский дом «Вильямс», 2001. - 768 с.

4 Малышев, Н.Г. Нечеткие модели для экспертных систем в САПР / Н.Г. Малышев, Л.С. Берштейн, А.В. Боженюк. - М.: Энергоатомиздат, 1991. - 264 с.

Analysis of Knowledge in Expert System of Fuzzi Decision-Making

I.L. Korobova

Department “System of Automated Design ”, TSTU

Key Words and Phrases: linguistic variable; lexical analysis; fuzzi set; fuzzi variable; knowledge representation; syntactical analysis.

Abstract: Matters of developing the expert system in terms of fuzzi decisionmaking are considered. The structure of expert system and the forms of knowledge representation are shown. The description of software developed at the department of SAD is given; it allows filling the expert system with information, analyzing and editing it, as well as making decisions.

Kenntnisanalyse im Expertensystem der ungenauen Beschlußfassungen

Zusammenfassung: Es werden die Fragen der Erarbeitung des Expertensystems unter den Bedingungen der ungenauen Beschlußauswahl betrachtet. Es ist die Struktur des Expertensystems und der Form der Kenntnisvorstellung gezeigt. Es ist die Beschreibung der am Lehrstuhl SAPR erarbeiteten Software angeführt. Sie erlaubt das Expertensystem mit den Kenntnissen anzufüllen, sie zu analysieren, zu redigieren und die Beschlusse zu erhalten.

Analyse des connaissances dans le système d’expert de la prise incertaine des solutions

Résumé: Sont examinés les problèmes de l’élaboration du système d’expert dans les conditions du choix incertain des solutions. Est montrée la structure du système d’expert et la forme de la présentation des connaissances. Est donnée la description du logidel élaboré à la chaire de CFAO permettant de compléter ce système par les connaissances, de les analyser, de les rédiger et de recevoir des solutions.

i Надоели баннеры? Вы всегда можете отключить рекламу.