дб. Четвертое издание джозеф Джарратано Университет Хьюстон клиэрЛэйк Гари Райли People5oft, Издательский дом "Вильямс" Москва СанктПетербург Киев 2007 ббк 32. 973. 26 018 75 Д
Скачать 3.73 Mb.
|
FriedmanHill), который, действуя независимо от других разработчиков, написал версию системы CLIPS на языке получившую название JESS и обладающую новыми характеристиками. Кроме того, Эрнест написал книгу по языку (Jess in Action: Rule Based Systems in Java) с многочисленными интересными проектами. ° JESS. Дополнение к языку CLIPS (http://herzberg.ca.sandia.gov/jess/). ° KAPICLIPS 1.0 (1р://www.cs.umbc.edu/kcpnl/software/kapiclips.shtml). Предисловие 25 Другие системы, производные от Перечень других систем, которые происходят от приведен ниже. ° PerlCLIP S (http://www.discomsys corn/- mps/dnld/clips — stuff/). ° Protege. Редактор онтологий и баз знаний для CLIPS (http://protege. stanford.edu/index. html). Интерфейс Python — CLIPS (http: //www. yodanet. corn/portal/ Products/download/clips-python.tar.gz/view). ° Интегрированная среда разработки экспертной системы CLIPS (http://starship. python.net/crew/mike/TixClips/), в которой используется интерфейс Tix (http://tix ° sourceford.net/). ° Расширение Tcl (www. colas . net/tcl/clips), созданное с помощью оболочки SWIG (http: //www. swig. огд/). ° WebCLIPS. Реализация системы CLIPS как приложения CGI (http://www.monmouth.corn/- km2580/wchome.htm). ° wxCLIPS. Среда разработки приложений систем баз знаний с графическими интерфейсами пользователя (http://www.anthemion.со.uk/wxclips/wxclips2.htm). ° ZClips Пакет, обеспечивающий взаимодействие среды Zope с системой (http://www.zope.org/Members/raystream/zZCLIPS0.1). Система CLIPS/R2 компании Production Systems Technologies (http://www.pst ° corn/clips r2 htm). ° National Research Council of Canada. Другие версии CLIPS (такие как предоставляемые Национальным научно-исследовательским советом Канады (http: //ai iit. nrc. са/IRublic/fuzzy/ f uz z yClips/ f uz zyCLI PS Index. html). ° Система FuzzyClips компании Togai InfraLogic, Inc. (http://www.ortech-engr.corn/fuzzy/fzyclips.html). ° AdaCLIPS (http: //www. telepath. corn/-dennison/Ted/ AdaClips/AdaClips.html). ° CLIPS и Perl с расширениями (http: //cape. source forge. net/). ° Многие другие версии инструментальных средств на основе CLIPS предоставлены по адресу (http://www.ghg.net/clips/OtherWeb.html). 26 Предисловие От издательства 115419, Москва, а/я 783 Киева я 152 из Украины Вы, читатель этой книги, и есть главный ее критики комментатор. Мы ценим ваше мнение и хотим знать, что было сделано нами правильно, что можно было сделать лучше и что еще вы хотели бы увидеть изданным нами. Нам интересно услышать любые ваши замечания, касающиеся книги. Мы ждем ваших комментариев. Вы можете прислать нам бумажное или электронное письмо либо просто посетить наш Web-сервер и оставить свои замечания там. Одним словом, любым удобным для вас способом дайте нам знать, нравится или нет вам эта книга, а также выскажите свое мнение о том, как сделать наши книги более интересными для вас. Посылая письмо или сообщение, не забудьте указать название книги и ее авторов, а также ваш обратный адрес. Мы внимательно ознакомимся с вашим мнением и обязательно учтем его при отборе и подготовке к изданию последующих книг. Наши координаты Е info9williamspublishing.corn WWW: http://www.williamspublishing.corn Адреса для писем из России Глава Введение в экспертные системы 1.1 Введение Настоящая глава представляет собой общее введение в тематику экспертных систем. В ней рассматриваются фундаментальные принципы функционирования экспертных систем, обсуждаются преимущества и недостатки экспертных система также описаны наиболее подходящие области их применения. Кроме того, обсуждается связь экспертных систем с другими методами программирования. 1.2 Определение понятия экспертной системы В ХХ веке было сформулировано понятие искусственного интеллекта (ИИ) и предложен ряд определений этого понятия. Одним из первых определений получивших широкое признание и до сих пор остающимся популярным, является следующее "Способ заставить компьютеры думать как люди. Распространенность этого определения подтверждается тем, что подобные взгляды пропагандируются во многих научно-фантастических фильмах. Но фактически истоком этого определения явился знаменитый тест Тьюринга, предложенный британским математиком и одним из первых исследователей в области компьютерных наук Аланом Тьюрингом (Alan Turing). В данном тесте экспериментатор пытается определить, является ли человеком или компьютерной программой то "лицо, с которым он обменивается сообщениями с помощью дистанционной клавиатуры. Объект, успешно прошедший такой тест, считается обладающим сильным искусственным интеллектом. Термин сильный искусственный интеллект пропагандируется специалистами, которые считают, что искусственный интеллект должен базироваться на строгом логическом основании, в отличие от подхода, называемого ими слабым искусственным интеллектом, базирующимся на искус Глава 1. Введение в экспертные системы ственных нейронных сетях, генетических алгоритмах и эволюционных методах. В наши дни стало очевидно, что ни один из методов искусственного интеллекта не позволяет успешно справиться со всеми проблемами лучше всего проявляет себя комбинация методов. Первая программа, прошедшая тест Тьюринга, была написана входе проведения психологических экспериментов Стивеном Вейценбаумом (Steven Weizenbaum) в 1967 году. С тех пор уровень знаний в этой области значительно возрос, а способы взаимодействия с экспериментаторами стали гораздо более совершенными, поэтому проводятся отдельные соревнования с призовым фондом в 100 тысяч долларов США, называемые соревнованиями за приз Лебнера, входе которых определяется лучшая программа (http: //www. loebner. net/Prize f/ loebner — prize html). Безусловно, в наши дни для общения с компьютером чаще всего применяются средства распознавания и синтеза речи, а не старомодный телетайп или клавиатура. Поэтому, если вас когда-либо поставит в тупик такая ситуация, что выбудете считать себя разговаривающим по телефону с человеком, а он не будет понимать, что вы ему говорите, то задайте вопрос, прошел ли он тест Тьюринга. Экспертные системы были разработаны как научно-исследовательские инструментальные средства в х годах и рассматривались в качестве искусственного интеллекта специального типа, предназначенного для успешного решения сложных задач в узкой предметной области, такой как медицинская диагностика заболеваний. Классическая задача создания программы искусственного интеллекта общего назначения, которая была бы способна решить любую проблему без конкретных знаний в предметной области (например, медицинской диагностики заболеваний, оказалась слишком сложной. Коммерческое внедрение экспертных систем произошло вначале х годов, и с того времени экспертные системы получили очень широкое распространение. В настоящее время экспертные системы используются в бизнесе, науке, технике, на производстве, а также во многих других сферах, где существует вполне определенная предметная область. В действительности дело обстоит так, что если предприятие проходит аудит в налоговом управлении или частное лицо подает заявку на получение кредитной карточки, то окончательное решение чаще всего принимает экспертная система. Выражение "вполне определенный, встретившееся в предыдущем абзаце, представляет собой ключевое слово и обсуждается более подробно ниже в данной главе. Основной смысл этого выражения состоит в том, что эксперт способен определить этапы рассуждений, с помощью которых может быть решена любая задача изданной предметной области, а это означает, что аналогичные действия могут быть выполнены и с использованием экспертной системы. Ведь если какоето лицо неспособно объяснить ход своих рассуждений, то ему лучше попытать удачу не в научной лаборатории, а в Лас-Вегасе. 1.2. Определение понятия экспертной системы 29 В качестве контрпримера можно указать, что многие специалисты пытались создавать экспертные системы для предсказания тенденций на фондовой бирже фактически подобные системы постоянно применяются на Уолл-стрит. Однако, если отслеживаются абсолютно все взлеты и падения на Уолл-стрит, тоне обнаруживаются какие-либо очевидные тенденции и экспертные системы действуют не лучше по сравнению сих создателями. Значительным преимуществом экспертных систем является то, что они способны осуществлять торговлю в реальном времени в таких условиях, что критическими становятся задержки при совершении биржевых сделок на миллисекунды, поскольку система конкурента может обнаружить такую же тенденцию, как и ваша, и быстрее выдать ордера на покупку или продажу акций стоимостью в сотни миллионов долларов, притом что быстродействие обеих систем будет намного выше по сравнению с реакцией человека. Как можно оценить результаты применения экспертных систем в этой области Печально знаменитый крах фондового рынка, наступивший в 1987 году, стал причиной введения многих новых ограничений в биржевой торговле, позволяющих исключить такие случаи, когда компьютеры продавали акции на сотни миллионов, чтобы получить прибыль в несколько сотен долларов и создать тем самым предпосылки возникновения краха. Экспертные системы представляют собой очень успешное приложение технологии искусственного интеллекта. Предложено также много гибридных подходов, позволяющих применять методы экспертных систем в сочетании с другими методами, такими как генетические алгоритмы и искусственные нейронные сети. Для обозначения систем, в которых используется искусственный интеллект, сложился общий термин — интеллектуальная система, или автоматизированная система [47]. Вообще говоря, первым шагом в решении любой задачи является определение проблемной области, или предметной области, в рамках которой необходимо найти решение. Такой подход относится не только к искусственному интеллекту, но и к обычному программированию. Нов широких кругах пользователей искусственный интеллект рассматривается как окруженный какой-то мистической завесой, поэтому многие продолжают еще верить устаревшей формулировке "Если эта задача еще не решена, то она относится к области искусственного интеллекта". Кроме того, большинство людей считают истинным еще одно определение "Благодаря применению искусственного интеллекта компьютеры приобретают способность действовать также, как они действуют в фильмах. Подобные взгляды нашли особенно широкое распространение в х годах, когда искусственный интеллект находился полностью на стадии исследований. В настоящее время с помощью искусственного интеллекта решено много практических задачи создано много коммерческих приложений. Эта тематика обсуждается в оперативных журналах, таких как РСАйсот, на конференциях ти- 30 Глава 1. Введение в экспертные системы паи в книгах [69]. Дополнительные сведения на эту тему приведены в приложении Ж. Прежде чем перейти к более подробному обсуждению искусственного интеллекта, необходимо сделать небольшое отступление и рассмотреть общую картину того, как искусственный интеллект вписывается в саму проблематику жизни и деятельности человечества. Такой подход ведет к формулировке первого вопроса "Что такое жизнь" Как описано Адами в предложено много определений понятия жизнь, в том числе физиологические, метаболические, биохимические, генетические и термодинамические. Выбор исследователем за основу того или иного определения зависит оттого, каких взглядов он придерживается. А какое определение является правильным сточки зрения рассматриваемой тематики Это полностью зависит оттого, какой аспект жизни рассматривается в данной предметной области. Но, по-видимому, самым простым является определение, сформулированное Шекспиром: "Жизнь — это история, рассказанная идиотом, наполненная шумом и яростью и незначащая ничего" (" Макбет", акт V, сцена 5). Сточки зрения компьютерных наук жизнь может быть представлена как программное обеспечение. И действительно, к книге Адами прилагается компактдиск с программным обеспечением, которое позволяет пользователю создавать искусственные формы жизни и экспериментировать с ними. Имеется также метафизическое определение жизни, столь талантливо описанное в фильмах, подобных "Матрице" (The Matrix), в которых люди "живут" внутри гигантской компьютерной программы. Другие аспекты создания искусственной жизни в компьютере рассматриваются в книге Хелмрейха [46], который обсуждает более подробно философские и даже духовные аспекты компьютеризированной искусственной жизни. А что касается биологической точки зрения, тов поисках способов создания искусственных форм жизни можно больше не ограничиваться компьютерными системами. Начиная с х годов появилась возможность клонировать млекопитающих, как овечку Долли, и компании теперь продают сельскохозяйственным предприятиям клонированных корова безутешным владельцам погибших домашних животных клонированные копии их любимцев, таких как кошки. Но метод клонирования как создания точной копии живого существа (т.е. искусственной жизни) является только первым шагом в "усовершенствовании" жизни. Например, одна группа ученых создала кролика с дополнительным геном, взятым от светлячков, чтобы он светился в темноте. Такие формы искусственной жизни не имеют ни одного естественного предка, от которого они бы происходили, поэтому в полном смысле слова представляют собой искусственную жизнь. Вместе стем такие создания являются интеллектуальными, поэтому могут также рассматриваться как обладающие искусственным интеллектом, хотя не таким, который принято считать создаваемым с использованием компьютеров 1.2. Определение понятия экспертной системы На основе понятия искусственной жизни была создана новая область творческих эволюционных систем, которые позволяют системам с искусственной жизнью корректировать свои собственные программы в ответ на эволюционное давление, как показано в книге Бентли [4]. В литературе описано много разных методов (таких как генетические алгоритмы, имеющих практическое приложение в музыке, искусстве, проектировании интегральных микросхем, архитектуре и управлении самолетом-истребителем. К книге Бентли также прилагается компакт-диск, позволяющий пользователю проводить эксперименты с творческими эволюционными системами. Следует отметить, что указанная книга посвящена изучению компьютерного представления этих система не новых биологических форм жизни, которые в будущем должны специально выращиваться в целях реализации замыслов проектировщика, например, светящихся кроликов (уже созданы, чтобы дети чувствовали себя спокойно в темноте, или обезьян, являющихся лучшими пилотами по сравнению с любым человеком. В книге де Силва [20] приведено еще одно определение интеллекта, которое выглядит таким образом "Интеллект — это способность учиться, способность приобретать, адаптировать, модифицировать и пополнять знания в целях решения задач. В данном случае обнаруживается стремление к созданию интеллектуальных машин, которые взаимодействуют с реальным миром с помощью робототехники, производственного оборудования, приборов и других аппаратных средств. Для этого требуется реализовать в машинах сложные механизмы, помогающие человеку успешно действовать, несмотря на такие особенности реального мира, как двусмысленность, расплывчатость, общность, неточность, неопределенность, нечеткость, недостоверность и необходимость учитывать ограниченную степень правдоподобия. Многие из этих тем рассматриваются ниже в данной книге, в главах 4 и 5, посвященных проблемам неопределенности. Обратите внимание на то, что предыдущее предложение само является двусмысленным. Относится ли выражение "в данной книге" к книге де Силва или к книге оригинал которой называется Expert Systems Principles and Programming? Живые существа способны успешно отвечать на вопросы, подобные этому, но роботы и компьютеры сталкиваются с затруднениями, обнаруживая аналогичные неопределенные ситуации, если в них используется только классическая логика. Еще более интересные задачи возникают при разработке искусственных интеллектуальных систем, которые являются также обладающими сознанием. Безусловно, в настоящее время о работе мозга известно уже очень многое, номы еще не знаем, где находится экран, на котором отображается сознание, или благодаря чему мы становимся теми людьми, какие мы есть. Однако новые инструментальные средства, такие как создание изображений с помощью функционального магнитного резонанса (functional Magnetic Resonance Imaging — fMRI), позволяют наблюдать в динамике активизацию различных структур мозга, контролируя связанные с этим изменения в атомах металлов. Безусловно, если бы мы Глава 1. Введение в экспертные системы использовали модель искусственно клонированного животного, то уже добились бы успеха, поскольку нет сомнений в том, что овцы и кошки обладают сознанием. Но до сих пор неизвестно, как наделить сознанием машину. Еще более важно то, что после просмотра фильмов "Терминатор" (Terminator) или "Матрица) можно понять, что, по-видимому, и ненужно, чтобы интеллектуальная машина обладала сознанием. В конце концов, ведь никто не хочет, чтобы его отключили от разъема питания, ни люди, ни компьютеры. Идеальные решения таких классических задач искусственного интеллекта, как перевод текста на естественном языке, понимание речи и создание системы машинного зрения, еще не найдены, но достаточно полезные решения могут быть предложены благодаря ограничению предметной области. Например, в наши дни несложно создать простую систему с поддержкой естественного языка, если ввод ограничивается предложениями в форме подлежащее, сказуемое и дополнение. В настоящее время системы такого типа позволяют очень успешно предоставлять дружественные интерфейсы ко многим программным продуктам, таким как системы баз данных и электронные таблицы. Кроме того, теперь имеются системы распознавания речи, независящие от диктора, которые обладают высокой точностью и не требуют обучения голосу конкретного пользователя, как при эксплуатации первых таких систем. Подобные интеллектуальные системы в сочетании с экспертными системами в конечном итоге заменят многие телефонные центры обработки заказов, которые принимают заявки от заказчиков этот период наступит после того, как указанные системы пройдут тест Тьюринга [69]. Разработан целый ряд коммерческих версий систем распознавания речи, которые работают под управлением стандартного программного обеспечения персонального компьютера и могут быть приобретены по весьма умеренным ценам. Кроме того, системы распознавания речи широко используются для бесконтактного управления сотовыми телефонами в автомобилях и обладают превосходными характеристиками распознавания, если предметная область ограничивается вводом только цифра не всех возможных слов. Синтаксические анализаторы, |