Кибернетическое бессмертие Дмитрий Сошников Спецвыпуск: Хакер, номер #052, стр. 052-016-3 Вопросы эффективного представления знаний в машинном виде являются весьма нетривиальными и во многом зависят от поставленных задач. Весьма широко распространено представление знаний в виде правил "если - то" (продукционное представление), в виде сети связанных определенными отношениями объектов (семантические сети), в виде иерархического множества объектов с определенными свойствами (фреймовое представление) и на языке логики предикатов (логическое представление). Благодаря множеству представлений существует множество различных программных средств для создания баз знаний, называемых также оболочками экспертных систем. Среди них можно отметить CLIPS и JESS, а также более профессиональную среду моделирования G2. Во многих случаях бывает удобнее реализовывать базу знаний на языках программирования искусственного интеллекта (ЛИСПе, Прологе) или на традиционных языках программирования. Чаще всего базы знаний используются при создании экспертных систем - программ, способных играть роль человека-эксперта в некоторой предметной области, то есть, как правило, предоставлять консультации по некоторым проблемам в режиме "вопрос - ответ". Например, экспертная система в книжном интернет-магазине может рекомендовать приобрести конкретные книги или книги конкретных жанров с учетом потребностей, предпочтений и даже настроения пользователей. Простой пример диалога пользователя с экспертной системой может выглядеть так: Листинг ЭС: Какой жанр книг вы предпочитаете? П: Техническую литературу. ЭС: В какой области? П: Microsoft Office. ЭС: Вы программист или продвинутый пользователь? П: Программист. ЭС: Вас интересует программирование для платформы Microsoft .NET? П: Да. ЭС: Вас интересует какой-нибудь конкретный продукт? П: Visio. ЭС: Могу порекомендовать "Microsoft Office Visio 2003 не для дилетантов", Леонтьев Б.К., ЗАО "Новый издательский дом", 2005 год. Примером "советующих" экспертных систем в области торговли может стать небезызвестный проект Yandex GURU (http://guru.yandex.ru), дающий советы при выборе товаров. Структура типовой экспертной системы показана на рис.1. Основным модулем системы является база знаний, содержащая множество знаний эксперта о предметной области. Базы знаний реальных экспертных систем содержат тысячи и десятки тысяч (иногда сотни тысяч) правил. Данные о конкретной решаемой задаче содержатся в рабочей памяти - туда заносятся начальные данные, ответы пользователя, а также полученные системой в ходе рассуждений выводы. Собственно, за проведение рассуждений отвечает процессор логического вывода, который пытается применить правила базы знаний к решению конкретной задачи. |