Смекни!
smekni.com

Создание и развитие искусственного интеллекта (стр. 3 из 4)

· определить характер решаемых задач;

· выделить объекты предметной области;

· установить связи между объектами;

· выбрать модель представления знаний;

· выявить специфические особенности предметной области.

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

Выделение предметной области представляет собой первый шаг абстрагирования реального мира.

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

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

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

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

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

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

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

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

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

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

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

2. Определите точно цель решения задачи.

3. Вникните как можно глубже в существо задачи.

4. Установите подцели, разбив задачу на подзадачи.

5. Выявите специфические особенности предметной области.

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

7. Участвуя вместе с экспертом в решении нескольких прикладных задач, выявите приемы, которые он применяет. Подробно их опишите.

8. Выберите инструментальные средства, необходимые вам для создания системы. Этот выбор будет зависеть от типа решаемой задачи, ваших финансовых возможностей и сложности предметной области.

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

Приступите к созданию базы знаний. Выявите объекты предметной области, взаимосвязи между ними, виды иерархий, разбейте объекты на классы. Структурируйте базу знаний в соответствии с представлением эксперта о строении предметной области.

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

Модели приобретения знаний

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

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

Существуют, по меньшей мере, три уровня методов оснащения системы экспертными знаниями:

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

Программа может заполнить пробелы в знаниях, например из литературы, описывая объекты или формируя этапы работ.

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

Итак, рассмотрим модели приобретения знаний.

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

Модель взаимодействия эксперта с системой на ранних этапах развития искусственного интеллекта

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

Модель приобретения знаний ЭС с помощью инженера знаний.

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

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

Модель приобретения знаний ЭС с помощью интеллектуального редактора

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

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