Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Введение элементов искусственного интеллекта в инструментальные системы программирования Мацкин Михаил Борисович

Введение элементов искусственного интеллекта в инструментальные системы программирования
<
Введение элементов искусственного интеллекта в инструментальные системы программирования Введение элементов искусственного интеллекта в инструментальные системы программирования Введение элементов искусственного интеллекта в инструментальные системы программирования Введение элементов искусственного интеллекта в инструментальные системы программирования Введение элементов искусственного интеллекта в инструментальные системы программирования Введение элементов искусственного интеллекта в инструментальные системы программирования Введение элементов искусственного интеллекта в инструментальные системы программирования Введение элементов искусственного интеллекта в инструментальные системы программирования
>

Данный автореферат диссертации должен поступить в библиотеки в ближайшее время
Уведомить о поступлении

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - 240 руб., доставка 1-3 часа, с 10-19 (Московское время), кроме воскресенья

Мацкин Михаил Борисович. Введение элементов искусственного интеллекта в инструментальные системы программирования : диссертация ... кандидата технических наук : 01.01.10. - Таллин, 1984. - 122 c. : ил. РГБ ОД, 61:85-5/1791

Содержание к диссертации

Введение

1. Общие вопросы построения интеллектуальных систем 9

1.1. Архитектура системы МИС 9

1.2. Средства представления знаний 14

1.3. Средства языкового общения 18

1.4. Средства интеллектуальной поддержки процесса общения 21

1.5. Постановка задачи 25

2. Представление знаний и языковые средства общения в системе МИС 27

2.1. Представление знаний с помощью вычислительных фреймов 27

2.2. Язык описания вычислительных фреймов 32

2.3. Языковый преобразователь системы МИС 43

2.4. Обслуживание базы знаний и организация диалога 48

3. Отладка в интеллектуальных системах 54

3.1. Настройка диагностических сообщений системы на терминологию предметной области. 55

3.2. Анализ знаний в системе МИС 61

3.3. Наблюдение за ходом решения задач 63

4. Самоанализ и адаптация системы 68

4.1. Универсальные средства самоанализа 68

4.2. Специальные средства самоанализа 79

4. 3. Адаптация знаний к решаемым задачам 84

Заключение 90

Йитература 92

Приложение 1 101

Приложение 2 106

Введение к работе

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

В настоящее время выделяются три класса интеллектуальных систем для пользователей-непрограммистов, начинающих находить практическое применение Г2] :

1) Интеллектуальные вопросно-ответные (информационно-поиско
вые) системы.

Как правило, общение с такими системами осуществляется на ограниченном естественном языке (ОЕЯ). В результате обработки входных предложений формируется запрос к базе данных. Такие системы позволяют специалисту из предметной области по запросам в естественной форме получать сведения о накопленных больших массивах информации. Основной упор в них делается на лингвистическую часть, методы и средства анализа ОЕЯ. Примеры таких систем: ПОЭТ СЗ] , ПОСОХ C4D , ДИСПУТ С5, 83 и зарубежные GUS СбЗ .ячшлз [?1

2) Экспертные системы

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

симптомы заболевания для экспертной системы в медицине) и система на основе имеющихся знаний и диалога с пользователем идентифицирует этот объект и выдает знания о нем (например, диагноз и средства лечения). Сейчас экспертные системы находят применение в медицине, биологии, геологии, проектировании, химии и т.д. Примеры таких систем мгсш D9D , шаганАЬ ЕЮ! , peoseectoe СП] , МВДФОР С12] , АСЕ С13] .

3) Расчетно-логические системы

Для них характерно оперирование со знаниями, опирающимися на формально-математические модели в управлении, планировании, экономике, проектировании и т.д. Эти системы получили наибольшее распространение в СССР - системы ПРИЗ С143 , СПОРА С15] , МАВР С16] ,

Основной качественный скачок, отличающий интеллектуальные системы от традиционных систем программирования, состоит в переходе от оперирования данными к представлению и оперированию знаниями (смысловыми семантическими категориями). Высокий уровень оперирования знаниями поддерживается средствами логического вывода, что дает возможность решать на ЭВМ новые классы задач.

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

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

средства представления знаний,

средства логического вывода,

средства языкового общения.

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

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

отладка знаний и задач;

поддержание и ведение базы знаний;

диагностика в терминах исходного языка общения;

обеспечение наблюдения за ходом решения задач;

информационное обеспечение;

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

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

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

В основу исследований в настоящей работе положен подход, опирающийся на понятие вычислительного фрейма. Идея такого подхода принадлежит Э.Х.Тыугу С17И .

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

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

обеспечение возможности представления на ЭВМ знаний о понятиях и объектах из соответствующих предметных областей и оперирования с ними;

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

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

I) Обоснован и исследован способ представления знаний для расчетно-логических систем на основе понятия вычислительного фрейма, отличающийся от известных тем, что наряду с наглядностью и структурированностью представления он допускает эффективные средства обработки представленных знаний с использованием логического вывода,

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

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

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

Данная диссертационная работа проводилась согласно программам для решения научно-технических проблем ГКНТ СССР 0.80.14 (задание 09,22 "Создать и ввести в эксплуатацию систему генерации проблемно-ориентированных пакетов программ для многопроцессорного вычислительного комплекса "Эльбрус-I") и проблемы I.12.2.1 по теме "Исследование методов искусственного интеллекта" . Результаты исследований реализованы в системе МИС, ее версии для МВК "Эльбрус-I" системе ПРИЗ-Э С18],и в системе ПРИЗ.

Справки, подтверждающие внедрение результатов данной диссертационной работы, приведены в приложении I.

Основные результаты работы докладывались на:

советско-финском симпозиуме по интерактивным системам в Тбилиси в 1979 г.,

Всесоюзной конференции "Автоматизация производства пакетов прикладных программ" в Таллине в 1980 г.,

ІУ Всесоюзном совещании по автоматизации проектирования электротехнических устройств в Таллине в 1981 г.,

общемосковском семинаре "Проблемы искусственного интеллекта" в Москве в 1982 г.,

семинаре проекта "Диалог" в Тарту, 1982 г.,

Всесоюзной школе по пакетам прикладных программ во Владивостоке в 1982 г.,

П международной конференции "Искусственный интеллект и информационно-управляющие системы роботов" в Смоленице (ЧССР) в 1982 г.,

Всесоюзной конференции "Применение математической логики" в Таллине в 1983 г.

Кроме того, результаты работы докладывались и обсуждались на семинарах Института кибернетики АН ЭССР и сектора программного обеспечения.

Основное содержание работы отражено в публикациях 19-25, 73].

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

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

Вторая глава посвящена описанию средств представления знаний для расчетно-логических систем на основе понятия вычислительного фрейма, рассматривается язык описания вычислительных фреймов УТОПИСТ-Э, описываются языковый преобразователь системы МИС и средства ведения базы знаний.

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

Четвертая глава посвящена описанию методов и средств самоанализа состояний для расчетно-логических систем и адаптации представленных в системе знаний к решаемым задачам.

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

Средства представления знаний

В настоящее время выделяются следующие основные способы представления знаний: I) Семантические сети С 323 . В наиболее общем виде знания в них представляются в виде ориентированного графа. Вершины графа соответствуют понятиям или ситуациям, а дуги - отношениям между ними. Вершинам и дугам графа могут быть приписаны имена, которые для вершин носят в основном ссылочный характер, а для дуг соответствуют элементам множества отношений, определенных на графе. Благодаря однозначному соответствию между вершинами сети и понятиями, которые они представляют, и наблюдаемостью взаимоотношений между понятиями семантические сети обладают естественностью и наглядностью. Это определяет их широкую распространенность в системах понимания естественного языка С32П , системах управления СЗЗИ , СУБД ZM1 . Для поиска вывода на семантических сетях используются ассоциативные и сопоставляющие алгоритмы С35] . В терминах графов -- это нахождение путей, построение транзитивного замыкания, вы деление подграфов с определенными свойствами С36, 37 И . К недостаткам представления знаний в виде семантических сетей относятся слабая модульность, однородность представления понятийной структуры и зависимостей и отсутствие средств описания по аналогии. Семантические сети в большей степени подходят для представления высказываний о внешнем мире, чем для представления моделей внешнего мира С26] . 2) Фреймовое представление С38И . Оно основывается на способе представления знаний по аналогии.

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

На основе фреймового представления, получившего широкое распространение, разработан целый ряд систем: EELU39D , PRLC40] , даОС C4I, 57] и другие. KEL выделяется универсальностью и полнотой описания, но сложен в реализации .PEL представляет собой расширение языка ЛИСП средствами описания фреймов, f - язык системы ДИЛОС распадается на два языка: f4 - язык внутреннего представления фраз естественного языка и f - средство конструирования модели внешне-го мира. Фреймы обладают большими выразительными возможностями, модульностью и удобством представления знаний. Однако механизмы манипулирования и вывода для фреймового представления развиты слабо. Основными средствами управления вычислениями для языков фреймового типа являются: повестка дня - список, в который пользователем заносятся действия (процедуры), которые надо выполнить. Действия могут снабжаться приоритетами; процедурный справочник - представляет собой таблицу, в которой перечисляются особые ситуации и действия, которые надо выполнить при возникновении таких ситуаций. Процедурный справочник заполняется пользователем; сопоставление фреймов. Здесь понимается как синтаксическое, так и семантическое сопоставление. Пользователь сам обязан реализовать алгоритм сопоставления, ему предоставляется только набор примитивов, обрабатывающих простые случаи сопоставления. 3) Языки математической логики [42] . Знания в них представляются в виде логических формул в известных логических исчислениях. Центральное место при этом занимает язык, базирующийся на классическом исчислении предикатов первого порядка, для которого предложены методы автоматического вывода (метод резолюций и его модификации [43]). Широкое распространение получила основанная на методе резолюций система PROLOG [54] . Кроме классических логик для представления знаний используются интуиционистская логика [44] и неклассические псевдофизические логики (временная, пространственная, причинная и т.д.), позволяющие вскрыть и зафиксировать временные, пространственные и причинно-следственные отношения [48] .

При наличии развитых процедур вывода, языки математической логики для представления знаний обладают слабой наглядностью и скорее могут выступать как внутреннее, чем внешнее представление знаний. 4) Продукционные системы С45И . Они получили распространение в связи с развитием экспертных систем. Знания в таких системах представляются в виде фактов и правил вывода (продукций). В продукциях выделяются две части: условие - булевское выражение предикатных функций и действие, которое выполняется при истинности условия. Условиям и действиям могут быть сопоставлены доверительные оценки, используемые при выводе. Продукционные системы позволяют представлять знания из областей, для которых не разработаны адекватные математические модели (химия, биология, медицина и др.) и обеспечивать их обработку и логический вывод. Недостатком продукционных систем является неструктурированность представленных знаний и сложность подцержания и сохранения целостности базы знаний. Кроме перечисленных выше способов представления знаний разработаны производные от них или сходные способы представления: ЕХ - коды С46И , синтагматические сети СЗЗИ , сети ограничений Г47И и другие, разработанные для применения в конкретных областях. Им в большей или меньшей степени присущи достоинства и недостатки, свойственные описанным способам представления знаний. Основной вывод из анализа известных подходов к представлению знаний и применению их в расчетно-логических системах состоит в следующем.

Язык описания вычислительных фреймов

Текстовой формой представления вычислительных фреймов в системе МИС является язык УТОПИСТ-Э, который представляет собой новую версию языка УТОПИСТ системы ПРИЗ. УТОПИСТ-Э представляет собой расширяемый язык "ОЧЕНЬ высокого уровня". В нем можно выделить две основные части: часть описаний - служит для представления знаний о предметной области и описания семантической модели задачи; часть действий - служит, для постановок задач на описанной модели задачи и манипулирования с объектами этой модели. Базовым понятием части описаний является понятие вычислительного фрейма. Исходя из структуры вычислительного фрейма, описанной ранее, он задается описанием своих элементов. Для этого в языке имеются средства описания компонент, отношений и условий. Описание компоненты включает указание имени компоненты и типа ее возможных значений. Этот тип может быть стандартным для Системы МИС (REAL1, INTEGER1 , STRING», SPACE1, LOGICAL ), ССЫЛКОЙ на другие вычислительные фреймы или неопределенным ( ШГБЕРПТЕО, что соответствует описанию слота.

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

Отношения описываются указанием их имен, спецификацией параметров, указанием ролей, которые эти параметры играют в отношении (Ш входные; OUT1- выходные; WEAK - с л або с вяз энные, то есть либо входные, либо выходные в зависимости от задачи; Ю -сильносвязанные, что соответствует наличию побочного эффекта), рангом отношения (число выходных параметров, обязательно указывать для слабосвязанных параметров), а также ссылкой на модуль, реализующий данное отношение ( IMPLEMENTATION ).

В приведенном примере отношение BR может быть использовано для вычисления значения любой из компонент В, С или D, если известны значения двух других компонент. Для вычислений используется модуль ЕХ2, написанный на одном из алгоритмических языков. Параметры модуля ЕХ2 позиционно соответствуют параметрам отношения БЕ .

В языке также имеются средства непосредственного задания отношений арифметического, логического и строкового типа, а также арифметических уравнений. Тип выражения определяется типом входящих в него элементов. Пример 2.3 L, м, її : LOGICAL ; А, В, С : INTEGER ; X1 : EEL L = M & її; X2 : EEL A = 2 ж Б + С; X3 : EEL1 A + В + С = 0; Для отношений арифметического типа все параметры являются слабосвязанными с рангом, равным I, В качестве элементов отношения могут выступать не только элементарные компоненты, но и вычислительные фреймы. Кроме того элементы отношений могут принадлежать различным фреймам, а также являться ссылкой (пока неразрешенной) на поименованные слоты. Данная возможность способствует проведению неявной унификации компонент фрейма при описании задач. Условия применимости отношения задаются в виде выражения, принимающего значение логического типа, сопоставляемого данному отношению, или в виде предикатов вычислимости, сопоставляемых отношениям и вырабатывающих истинное значение, если указанная в них подзадача (ARG1 ,EES ) разрешима.

Пример 2.6. SET : ( ЕЕМВЕЕ : UNDEFINE ; ID : INTEGEE ; KEY : STRING1; NEXT : INTEGER ; SEQ : EEL1 Ш1 IB , NEXT OUT MEMBER IMEL MOD(SETNEXT); DIE : EEL IN1 ID, КЕТ OUTr MEMBER IMIV MOD(SETKEY); ); Б данном примере MEMBER является именем слота, тип которого будет указан при определении конкретного множества. Не только компоненты вычислительного фрейма могут задаваться ссылкой на другие вычислительные фреймы, но и сам новый вычислительный фрейм может быть определен через уже описанные фреймы. В языке УТОГШСТ-Э этому соответствуют конструкции копирование и копирование с переделками. Простейший вариант копирования состоит в задании при определении компоненты фрейма или самого фрейма его типа ссылкой на другой вычислительный фрейм или компоненту вычислительного фрейма, как это имело место при определении Р в примере 2.1. Ссылка представляет собой указание имени соответствующего вычислительного фрейма. Другой вариант копирования - с переделками. При копировании с переделками указывается фрейм-прототип (его имя) и дополнительные свойства. Дополнительными свойствами могут быть заполнение слотов, если таковые имеются, или задание дополнительных отношений. Заполнение слотов может происходить либо описанием типа данного слота, как это имеет место при простом копировании, либо, в дополнение к этому, связыванием отношением эквивалентности данного раскрытого слота и фрейма, определяющего его тип.

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

Анализ знаний в системе МИС

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

Как было показано на рис. І.І, в системе МИС имеются следующие постоянные (сохраняющиеся от сеанса к сеансу) знания: база знаний, библиотека программ, библиотека шаблонов, В данном параграфе рассматриваются разработанные для системы МИС средства выдачи информации о постоянных знаниях системы. Особое внимание при этом уделяется наглядности выдаваемой информации и соответствию ее терминологии общения. 1) В системе МИС сведения о предметной области задаются в ви де вычислительных фреймов и могут сохраняться от сеанса к сеансу в базе знаний. Использование фрейма из базы знаний возможно ссыл кой на его имя (механизм копирования с переделками). База знаний системы МИС имеет древовидную структуру, причем имена вершин, следующих непосредственно за корнем, образуют оглавление базы знаний, а поддеревья, соответствующие этим вершинам, разделы. Подчиненность одной вершины дерева базы знаний другой соответствует появлению дополнительного уровня скобок в описании этой компоненты. Терминальным вершинам соответствуют простые компоненты описания - объекты простых типов языка УТОПИСТ. Кроме того, имеются отношения, которые могут связывать компоненты разных уровней описания. В системе МИС реализована подсистема ARCHIVE , осуществляющая вывод пользователю содержимого базы знаний. Вызов подсистемы ABCHIVE осуществляется с помощью директивы EXEC : EXEC1 ARCHIVE; После этого пользователю предлагается набор возможных действий: распечатка оглавления базы знаний, распечатка компоненты базы знаний с указанным именем, распечатка содержимого всего архива. Распечатка архива выдается в текстовом виде, практически не отличающемся от исходного описания понятий. Листинг имеет структурный вид, каждое предложение печатается на отдельной строке и имеется сдвиг текста, соответствующий переходу к поддереву. 2) Другим набором данных, которым пользуется система МИС при обработке исходного текста задачи, является библиотека программ, реализующих отношения из описанных вычислительных фреймов. Эта библиотека является стандартной библиотекой загрузочных модулей. В системе МИС имеется программа LOAD , распечатывающая оглавление этой библиотеки - имена программ из библиотеки. Программа bOAD вызывается с помощью директивы EXEC . EXEC LOAD; 3) При описании входного языка реализуемой системы имеется возможность воспользоваться языковым преобразователем. Поэтому пользователю может оказаться полезным во время работы посмотреть содержимое библиотеки шаблонов, используемой языковым преобразователем. Она представляет собой стандартную текстовую библиотеку. Для выдачи ее содержимого реализована подсистема МАСКО.

Подсистема мдсво предлагает пользователю следующий набор возможных действий: распечатка оглавления макробиблиотеки - имен макросов, распечатка содержимого раздела с указанным именем, распечатка макрошаблона из раздела с указанным именем, распечатка содержимого всей макробиблиотеки. 4} Сведения об имеющихся сервисных программах, а также основные сведения о системе МИС пользователь может получить с помощью программы HELP , вызываемой директивой EXEC . ЕХЕС? HELP; Кроме указанных в предыдущем параграфе постоянных знаний, в системе имеются временные знания, которые содержат сведения о текущем состоянии решаемой задачи - конечные и промежуточные результаты работы системы. К ним относятся: модель задачи, синтезированный алгоритм решения в случае разрешимой задачи и множество вычислимых компонент модели и применимых для их вычисления отношений в случае неразрешимой задачи, генерируемый код, таблица распределения памяти, генерируемый текст на УТОПИСТ-Э в случае использования языкового преобразователя. I) Исходный текст программы на языке УТ01ШСТ-Э транслируется во внутреннее текстовое представление, называемое в дальнейшем MZT . Таким образом, в MZT содержится текущее состояние представленных знаний о решаемой задаче. Структура ШТ похожа на структуру базы знаний и является иерархической. Поэтому для выдачи содержимого MZT реализована подсистема М2Т, аналогичная по функциям подсистеме ARCHIVE . Вызов этой подсистемы происходит следующим образом: EXEC Mza?; Подсистема MZT предлагает пользователю следующий набор действий: распечатка всего внутреннего текстового представления задачи, распечатка поддерева MZT с указанным именем.

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

Специальные средства самоанализа

Специальные средства самоанализа предназначены для учета при анализе ошибочной ситуации специфических знаний о решаемой задаче или классе задач. Характерные особенности специфических знаний о задачах состоят в следующем. Во-первых, эти знания являются экспертными (субъективными) и содержат накопленный опыт решения подобных задач в отличие от объективных зависимостей, существующих между объектами задачи, которые содержатся в описании вычислительного фрейма. Во-вторых, они обладают не полной степенью достоверности, что заставляет их применять лишь в исключительных случаях (наличие ошибок), когда описываемая задача все равно не может быть решена, и они воспринимаются лишь как рекомендации пользователю. Приведем примеры таких специфических знаний. Опыт показывает, что если во фрейме задачи на движение содержатся несколько компонент типа UTTEEVAL , то концевые точки этих интервалов, как правило, соединены определенным образом между собой. Аналогичные практические соображения имеются относительно компонент типа ОТРЕЗОК в геометрических задачах.

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

Другим примером специфических знаний о задачах является частное забывание пользователями установления соответствующего контекста описания в базе знаний при использовании СУБД Еви [80] , созданной с помощью систем ПРИЗ и МИС. Специальные средства самоанализа должны в этом случае проверить наличие соответствующего описания в базе знаний, и если оно там присутствует , то неверно определен контекст, а если отсутствует, то не используется соответствующая база знаний.

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

Общий вид задания специальных знаний о задачах близок к виду переопределения диагностических сообщений и имеет следующую форму: шаблон BEGET условие : действие... END Шаблон имеет вид, описанный в параграфе 3.1. Условие определяется как логическое выражение, состоящее из функций, принимающих значение ТЕПЕ1 или FALSE , отрицания, обозначаемого (l ), конъюнкции ( , ) и дизъюнкции ( і ). В постпроцессор встроены следующие функции; а) 0BJ (арг ...) -дает значение TRUE , если компоненты 0BJA (арг ...) с именами, указанными в качестве аргу ментов содержатся во фрейме задачи. 0BJA производит поиск в базе знаний. б) EEIiA (арг ...) - дает значение TRUE1 , если компоненты REL (арг ...) с именами, указанными в качестве аргу ментов во фрейме задачи связаны отноше нием, EELA - осуществляет поиск в ба зе знаний. В качестве аргументов этих функций могут выступать имена, допустимые в языке УТОГЖСТ-Э, в том числе и составные, а также конструкции вида: х : ат&7 , где имя в смысле УТОШСТ-Э. Данная конструкция означает список имен компонент вычислительного фрейма задачи, которые были описаны с помощью фрейма-прототипа, заданного как имя . в) СА1 Ь (арг) - дает значение TRUE , если функция с именем, указанным в качестве аргумента и содержащаяся в пользовательской библиотеке, принимает значение TRUE1. Эта функция позволяет пользователю задавать собственную нестандартную проверку условий. г) ОШ) (арг ..,) - дает значение ТВПЕ1 , если исполь зовался языковый преобразователь и для описания задачи использовались в указанном порядке макроопределения с именами, указанными в качестве аргументов. д) C0UHT (арг) - дает значение ТШБ1 , если номер текущей введенной строки входного текста больше, чем аргумент. Примеры условий: OBJ ( И, 12 ), HEL ( И, 12 ) : І С0ШГТ ( 10 ) : CALL (ЛНАЬ ) : Действие представляет собой исполнение программы, содержащейся в пользовательской библиотеке и имеет вид: EXEC (арг), где арг - имя исполняемой программы. Использование заданных таким образом специфических знаний о задачах происходит стандартным для постпроцессора образом. В случае обнаружения ошибок в тексте задачи, а также неразрешимости поставленной задачи происходит проверка соответствия предложения входного текста виду, заданному шаблоном. Если имеется соответствие, то происходит проверка условий, и для тех из них, которые дают истинное значение, выполняются соответствующие действия.

Похожие диссертации на Введение элементов искусственного интеллекта в инструментальные системы программирования