Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
InfSystEcon.pdf
Скачиваний:
50
Добавлен:
02.04.2015
Размер:
3.29 Mб
Скачать

Используя Outlook, удаленные пользователи могут подсоединяться к Microsoft Exchange Server через Интернет для того, чтобы иметь полный доступ к электронной почте, расписаниям и общим папкам в сети их главного офиса.

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ

1.Какие программы входят в интегрированный пакет для офиса?

2.Перечислите основные интегрированные пакеты для офиса.

3.Какие функции выполняют программы-ассистенты?

4.С какой целью можно использовать Office Art?

5.Какие функции выполняет программа Microsoft Outlook?

2.6. Интеллектуальные технологии и системы

После изучения данной темы следует выполнить лабораторные работы с Excel

2.6.1. Основные понятия

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

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

Преимущества экспертных систем по сравнению с использованием опытных специалистов состоят в следующем:

достигнутая компетентность не утрачивается, может документироваться, передаваться, воспроизводиться и наращиваться;

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

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

Отличиями экспертных систем от обычных компьютерных являются:

экспертные системы манипулируют знаниями, тогда как любые другие системы – данными;

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

51

компьютерных систем они имеют потенциальную способность учиться на своих ошибках.

2.6.2. Особенности разработки ЭС

В «игре» в экспертные системы основными участниками являются: сама

экспертная система, эксперт, инженер знаний, средство построения экспертной системы и пользователь. Их основные роли, а также взаимоотношения приведены на рис. 7.

Разработчик

 

Предметный

 

 

 

инструмента

 

эксперт

Расширяет

 

 

 

 

 

и проверяет

 

Строит

 

Опрашивает

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Средства

 

 

Инженер

 

 

Конечный

 

 

Экспертная

 

построения

 

 

 

пользова-

экспертных

 

Использу

знаний

система

 

тель

систем

 

Разрабаты-

 

Исполь

 

 

-ет

 

 

 

 

вает, уточ-

 

-зует

 

 

 

 

 

 

 

 

 

няет, тес-

 

 

 

 

 

 

тирует

Дабавляет

 

 

 

 

 

 

 

 

 

 

информацию

 

 

 

 

 

Клерки

 

Рис. 7

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

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

52

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

Средство построения экспертных систем – это язык программирования, используемый инженером знаний или программистом для построения экспертной системы. Этот инструмент отличается от обычных языков программирования тем, что обеспечивает удобные способы представления сложных высокоуровневых понятий. На жаргоне ИИ термин «средство» обычно относится и к языку программирования, и к поддерживающим средствам, используемым для построения экспертной системы [4].

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

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

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

53

Средства построения

экспертных систем

Экспертная Язык построения система экспертных систем

Поддерживающие

средства

Пользователь

 

Рис. 8

 

2.6.3. Терминология экспертных систем

 

Терминологию ЭС удобно представить в виде табл. 4.

 

 

 

Значение

Таблица 4

Термин

 

 

Инженер знаний

Человек, который проектирует и создает

 

экспертную систему.

 

Инженерия знаний

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

 

Инструмент

Сокращенное

обозначение средства

построения

 

экспертной системы.

 

Искусственный интеллект

Раздел информатики, связанный с разработкой

 

интеллектуальных программ для компьютеров.

Конечный пользователь

Человек, который использует законченную

 

экспертную систему; человек, для которого

 

разработана система.

 

Поиск

Продуманно

организованный

просмотр

 

пространства возможных решений, гарантирующий

 

эффективное нахождение приемлемого решения

Пользователь

Человек, использующий экспертную систему,

 

например конечный пользователь, эксперт,

 

инженер знаний, разработчик инструмента или

 

лаборант.

 

 

51

Термин

Представление1

Средства поддержки

Средство построения экспертной системы

Эксперт

Экспертная система

Продолжение таблицы 4

Значение

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

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

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

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

2.6.4. ПреимуществаиспользованияЭС

Сам собою напрашивается вопрос: зачем разрабатывать экспертные системы? Нелучшелиобратитьсякчеловеческомуопыту, как это было в прошлом?

Существуют веские доводы в пользу применения искусственной компетентности с целью усилить возможности человеческого рассуждения. Некоторыеизэтихдоводовприведены [4] в табл. 5.

 

Таблица 5

Человеческая компетентность

Искусственная компетентность

 

 

 

 

Непрочная

Постоянная

 

Трудно передаваемая

Легко передаваемая

 

Трудно документируемая

Легко документируемая

 

Непредсказуемая

Устойчивая

 

Дорогая

Приемлемая по затратам

 

 

 

 

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

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

55

постояннопрактиковаться и упражняться, чтобы сохранить свой профессиональный уровень в некоторой предметной области. Любой значительный перерыв в деятельности эксперта может серьезно отразиться на его профессиональных качествах. Лозунг «пользуйся или утратишь» здесь, разумеется, уместен. Однако этот призыв не касается искусственной компетентности. Однажды полученная, она сохраняется навсегда, если только не произойдет непредвиденная авария с памятью ЭВМ. Ее сохранность не связана с ее использованием.

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

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

И последнее преимущество искусственной компетентности – ее невысокая стоимость.

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

2.6.5. Разделение обязанностей ЭС и человека

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

56

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

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

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

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

Эксперты могут непосредственно воспринимать весь комплекс входной сенсорной информации, будь то визуальная, звуковая, осязательная или обонятельная. У экспертной системы есть только символы, через которые представлены концепции базы знаний. Поэтому сенсорную информацию необходимо преобразовать в символьную форму, которая понятна системе. При преобразовании теряется некоторая часть информации, особенно когда визуальные сцены отображаются во множество объектов и взаимосвязей между ними. Старая английская поговорка «Картина стоит тысячи слов о ней» (соответствует русской «Лучше один раз увидеть...») в данном случае оказывается еще слишком слабым высказыванием!

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

57

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

В табл. 5 мы осуществили сравнение человеческой и искусственной компетентности, сделав акцент на достоинствах искусственной. Анализ ее недостатков приведен в табл.6.

 

Таблица 6

Человеческая компетентность

Искусственная компетентность

 

 

 

 

Творческая

Запрограммированная

 

Приспосабливающаяся

Нуждается в подсказке

 

 

 

 

Использует чувственное восприятие

Использует символьный ввод

 

Широкая по охвату

Узконаправленная

 

 

 

 

Использует общедоступные знания

Использует специализированные знания -

 

 

 

 

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

В качестве примера применения здравого смысла рассмотрим следующую ситуацию [4]. Допустим, перед вами история болезни, которая сообщает, что пациент весит 14 фунтов и имеет возраст 110 лет. Вы сразу же заподозрите, что в эти данные вкралась ошибка – не потому, что человек не может носить 14 фунтов или не может достигнуть 110 лет, а потому, что сочетание того и другого в принципе невозможно. На самом деле, предполагаете вы, случайно были перепутаны две строки. Экспертная система, разработанная для помощи врачам в принятии решений, не отлавливает таких ошибок, если только ей не заданы таблицы возможных отношений возраст/вес для проверки такого рода данных.

Знания здравого смысла включают знания о том, что вы знаете и чего вы не знаете. Например, если у вас спросить номер телефона вашего прежнего места жительства, вы станете копаться в своей памяти, пытаясь восстановить эту информацию. Если у вас спросить номер телефона премьер-министра Англии, вы сразу же поймете, что не можете дать ответ и даже не станете пытаться вспомнить. Если у вас спросят телефонный номер Шекспира, вы сразу поймете, что ответа не существует, ибо во времена Шекспира телефонов не было. Когда задается вопрос экспертной системе, на который она не может ответить или на который не существует ответа, она может потратить много времени, перебирая данные или правила в поисках решения. И, что еще хуже, не найдя решения, экспертная система «подумает», что это произошло из-за

58

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

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

2.6.6. ОрганизацияЭС

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

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

ФАКТЫ: Резервуар 23 содержит серную кислоту.

Истец был травмирован переносной электропилой. ПРАВИЛА: Если проверка наличия ионов сульфата дала

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

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

Факты и правила в экспертной системе не всегда либо истинны, либо ложны; иногда существует некоторая степень неуверенности в достоверности факта или точности правила. Если это сомнение выражено явно, то оно называется «коэффициентом уверенности». Использование коэффициента уверенности иллюстрируется примером, приведенным ниже.

ФАКТЫ: Строение 3074 содержит резервуар 23 с коэффициентом уверенности 1.0.

Электропила была недоброкачественна с коэффициентом уверенности 0.8.

ПРАВИЛА: Если разлитым материалом является серная кислота с коэффициентом уверенности 1.0, то источником разлива являетсястроение3047 скоэффициентомуверенности0.9. Если изделие недоброкачественно с коэффициентом уверенности >0.5, то теория строгой ответственности применима с коэффициентом уверенности 1.0.

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

59

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

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

Предотвратить захват самолетов на коммерческих авиалиниях

Предотвратить посадку террористов на самолет

 

 

Эвристика

Алгоритм

 

 

 

 

 

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

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

Рис. 9

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

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

60

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

называется системой, основанной на знаниях.

Как показано на рис. 10, в сущности все экспертные системы являются системами, основанными на знаниях, но не наоборот. Программу ИИ для игры в «крестики и нолики» нельзя будет считать экспертной системой, даже если в ней знания о предметной области отделить от остальной программы.

Программы

Демонстрируют интеллектуальное

искусственного

поведение умелым применением эвристик

интеллекта

 

Системы,

Делают знания предметной области

основанные на

явными и отделяют их от остальной части

знаниях

 

Экспертные

Применяют экспертные знания к

системы

сложным задачам реальной жизни

 

 

Рис. 10

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

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

вать знания, чтобы ее можно было считать умелой в каком-либо виде деятельности.

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

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

61

Экспертная система
База знаний (знания предметной области)
Факты
Правила
Интерпретатор
Диспетчер
Механизм вывода (общие знания о решении задач)
Рис. 11

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

Его структура зависит и от специфики предметной области, и от того, как знания структурированы и организованы в экспертной системе. Многие языки высокого уровня, предназначенные для построения экспертных систем, например EMYCIN, имеют механизм вывода, в некотором смысле встроенный в язык как его часть2). Другие языки более низкого уровня, например LISP, требуют, чтобы создатель экспертной системы спроектировал и реализовал механизм вывода.

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

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

Что касается механизма вывода, то здесь дело не ограничивается выбором «все или ничего». Так некоторые инструменты построения экспертных систем, например, HEARSAY-3, имеют набор встроенных механизмов вывода, но позволяют разработчику модифицировать или переопределять их для большего соответствия с предметной областью.

2.6.7. Представлениезнаний

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

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

62

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

Представление знаний с использованием правил

Правила обеспечивают формальный способ представления рекомендаций, указаний или стратегий; они часто подходят в тех случаях, когда предметные знания возникают из эмпирических ассоциаций, накопленных за годы работы по решению задач в данной области. Правила выражаются в виде утверждений типа ЕСЛИ – ТО:

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

-Если рН жидкости меньше 6, разлившийся материал – кислота.

-Если разлившийся материал – кислота, и он пахнет уксусом, разлившийся материал – уксусная кислота.

В экспертных системах, основанных на правилах, предметные знания представляются набором правил, которые проверяются на группе фактов или знаний о текущей ситуации. Когда часть правил ЕСЛИ удовлетворяет фактам, то действие, указанное в части ТО, выполняется.

Представление знаний с использованием семантических сетей

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

сети состоят из точек, называемых

узлами,

и связывающих их дуг,

 

 

 

 

 

описывающих отношения между узлами. Узлы в

 

 

 

 

 

семантической

сети

соответствуют

объектам,

 

 

Корабль

 

 

 

 

 

 

концепциям или событиям

 

 

 

 

 

 

 

 

 

 

 

Является

В качестве простого примера рассмотрим

 

 

предложения «Куин Мери является океанским лайнером» и

 

 

Океанский

 

«Каждый океанский лайнер является кораблем». Они

 

 

лайнер

 

могут быть представлены через семантическую сеть, как

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

Является

дуг: является.

 

 

 

Куин

Мери

Рис. 12

Представлениезнанийсиспользованиемфреймов

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

63

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

 

 

 

Отчет

 

 

 

 

 

 

 

 

 

 

является

является

 

 

 

 

 

 

 

 

 

Отчет о

 

 

 

Технический

продвижениии

 

 

 

отчет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

является

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Отчет о

 

 

 

 

продвижении №15

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 13

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

Наиболее важные термины данной темы собраны в табл. 7.

 

Таблица 7

Термин

Значение

Алгоритм

Формальная процедура, которая гарантирует получение

 

оптимального или корректного решения.

База знаний

Часть системы, основанной на знаниях, или экспертной

 

системы, содержащая предметные знания.

 

 

Диспетчер

Часть механизма вывода, которая решает, когда и в каком

 

порядке применять различные «куски» предметных знаний.

 

 

Знания

Информация, необходимая программе для того, чтобы эта

 

программа вела себя интеллектуально.

Интерпретатор

Часть механизма вывода, которая решает, каким образом

 

применять предметные знания.

Коэффициент

Число, которое означает вероятность или степень

уверенности

уверенности, с которой можно считать данный факт или

 

правило достоверным или справедливым.

64

 

Продолжение таблицы 7

Термин

Значение

Механизм вывода

Та часть экспертной системы, в которой содержатся

 

общие знания о схеме управления решением задач.

Правило

Формальный способ задания рекомендаций, директив

 

или стратегий, выраженных в виде ЕСЛИ предпосылка

 

ТО заключение, или ЕСЛИ условие, ТО действие.

Предметные знания,

Знания о предметной области, например геологические

знания о предметной

знания в экспертной системе для поиска место-

области

рождений.

Представление знаний

Процесс структурирования предметных знаний с целью

 

облегчить поиск решения задачи.

Семантическая сеть

Метод представления знаний посредством сети узлов,

 

соответствующих концепциям или объектам, связанных

 

дугами, которые описывают отношения между узлами.

 

 

Система, основанная

Программа, в которой предметные знания представлены

на знаниях

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

Фрейм

Метод представления знаний, когда свойства связы-

 

ваются с вершинами, представляющими концепции или

 

объекты. Свойства описываются в терминах атрибутов

 

(называемых слотами).

Эвристики

Правило, которое упрощает или ограничивает поиск

 

решений в предметной области, которая является

 

сложной или недостаточно изученной.

2.6.8. СравнениеЭСитрадиционныхпрограмм

Еще один способ определить экспертные системы – это сравнить их с обычными программами. Самое главное различие состоит в том, что экспертные системы манипулируют знаниями, тогда как обычные программы манипулируют данными. Фирма Teknowledge, которая занимается производством коммерческих экспертных систем, описывает эти различия, как показано в табл. 8.

 

Таблица 8

Обработка данных

Инженерия знаний

 

 

 

Представление и использование

Представление и использование знаний

данных.

 

 

Алгоритмы

Эвристики

Повторный прогон

Процесс логического вывода

Эффективная обработка боль-

Эффективная обработка больших баз знаний

ших баз данных

 

 

 

 

 

65

2.6.9. Основныехарактеристикиэкспертныхсистем

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

Экспертная

система

Должна

 

 

 

 

 

 

 

Достигать экспертного уровня решений

 

Обладать

 

 

Компетент-

 

 

 

 

 

Быть умелой

 

 

 

 

ностью

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Иметь адекватную работоспособность

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Представлять знания в символьном виде

 

 

 

 

Символь-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ным рас-

 

 

 

Переформулировать символьные знания

 

 

 

 

суждением

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Работать в предметной области,

 

 

 

 

 

 

 

 

 

содержащей трудные задачи

 

 

 

 

Глубиной

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Использовать сложные правила

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Исследовать сети рассуждения

 

 

 

 

Самосозна-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нием

 

 

Объяснять свои действия

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 14

2.6.10. Работы, выполняемые при создании экспертных систем

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

66

 

Как можно

 

Требования

 

 

 

 

Понятия

 

 

Какие понятия

 

 

охарактеризовать

 

 

 

важные аспекты

 

 

необходимы для

 

 

 

 

 

 

получения решения?

 

 

 

 

задачи?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Концептуализация

 

 

 

 

Идентификация

 

 

 

 

 

 

 

 

 

 

 

 

Переформулирование

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Перепроектирование

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Уточнение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Как можно

 

Структура

 

Какие

Правила

 

Как можно

 

формально

 

 

правила

 

подтвердить

 

представить

 

 

 

воплощают

 

 

правила?

 

значения?

 

 

 

 

знания?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Формализация

 

 

Реализация

 

Тестирование

 

 

 

 

 

 

Рис. 15

 

 

 

 

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

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

67

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

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

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

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

Экспертные системы создаются для решения разного рода проблем, типы которых можно сгруппировать в категории (табл. 9).

 

Таблица 9

Категория

Решаемая проблема

Интерпретация

Описание ситуации по информации, поступающей от

 

датчиков.

Прогноз

Определение вероятных последствий заданных ситуаций.

 

 

Диагностика

Выявление причин неправильного функционирования

 

системы по результатам наблюдений.

 

 

Проектирование

Построение конфигурации объектов при заданных

 

ограничениях.

Планирование

Определение последовательности действий.

 

 

Наблюдение

Сравнение результатов наблюдений с ожидаемыми

 

результатами.

68

 

 

Продолжение таблицы 9

Категория

 

Решаемая проблема

Отладка

Составление рецептов исправления неправильного

 

функционирования системы.

Ремонт

Выполнение последовательности предписанных исправлений.

 

 

Обучение

Диагностика, отладка и исправление поведения обучаемого.

 

 

Управление

Управление поведением системы как целого.

 

 

Ниже перечислены некоторые из предметных областей, в которых

применяются экспертные системы.

 

Инженерное дело

Метрология

Информатика

Промышленность

Компьютерные системы

Сельское хозяйтсво

Медицина

Управление процессами

Космическая техника

Физика

Математика

Химия

Военное дело

Электроника

Геология

юриспруденция

2.6.11. Структура систем принятия решения (экспертных систем)

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

принятия решения.

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

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

69

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]