
- •Лекция 6. Интеллектуальные информационные системы в экономике
- •1. Интеллект и интеллектуальные задачи
- •2. Понятие искусственного интеллекта. История развития систем искусственного интеллекта
- •3. Основные направления исследований в области ии
- •4. Экспертные системы. Применение экспертных систем в экономике
- •5. Структура экспертной системы
- •6. Классификация экспертных систем
- •7. Примеры экономических экспертных систем
- •9. Нейронные системы
- •9. Системы извлечения знаний
5. Структура экспертной системы
Обобщенная структура экспертной системы представлена на рис.3.3. Реальные ЭС могут иметь более сложную структуру, однако блоки, изображенные на рисунке, непременно присутствуют в любой ЭС, поскольку представляют собой стандарт de facto структуры современной ЭС. Итак, если система объявлена ее разработчиками как экспертная, то только наличие всех этих блоков гарантирует реальное использование аппарата обработки знаний.
В целом процесс функционирования ЭС можно представить следующим образом: пользователь, желающий получить необходимую информацию, через пользовательский интерфейс посылает запрос к ЭС. Проблемы ставятся перед системой в виде совокупности фактов, описывающих некоторую ситуацию. Затем блок логического вывода, пользуясь базой знаний, генерирует и выдает подходящую рекомендацию, объясняя ход своих рассуждений при помощи подсистемы объяснений.
Дадим краткую характеристику основных элементов ЭС:
Пользователь – специалист предметной области, для которого предназначена система. Обычно его квалификация недостаточно высока, поэтому он нуждается в помощи и поддержке своей деятельности со стороны ЭС.
Для построения БЗ, как это отображено на рис. 3.3, требуется провести опрос специалистов, являющихся экспертами в конкретной предметной области, а затем систематизировать, организовать и снабдить эти знания указателями, чтобы впоследствии их можно было легко извлечь из базы знаний. Для того чтобы решить проблему «передачи» знаний, которыми обладают эксперты, системе, необходим определенный систематический стиль мышления. Кроме того, необходимы, с одной стороны, знания в области математической логики и методов представления знаний, с другой – знания возможностей ЭВМ, программного обеспечения, в частности, языков и систем программирования.
Таким образом, требуется участие в разработке ЭС особого рода специалистов, обладающих указанной совокупностью знаний и выполняющих функции «посредников» между экспертами в предметной области и ЭС. Такие специалисты получили название инженеров по знаниям (knowledge engineers), а сам процесс разработки ЭС и других интеллектуальных программ, основанных на представлении и обработке знаний называется инженерией знаний (knowledge engineering). Синонимами термина «инженер по знаниям» служат названия: когнитолог, инженер-интерпретатор, аналитик. В развитых зарубежных странах специальность «инженер знаний» введена во многих вузах, в России основы инженерии знаний изучаются пока в рамках специализаций по системному программированию.
Интерфейс пользователя – комплекс программ, реализующих диалог пользователя с ЭС как на стадии ввода информации, так и при получении результатов.
Основным отличием ЭС от других программных продуктов является использование не только данных, но и знаний, а также специального механизма вывода решений и новых знаний на основе имеющихся. В ЭС известен алгоритм обработки знаний, а не алгоритм решения задачи. Применение этого алгоритма может привести к получению такого результата при решении конкретной задачи, который не был предусмотрен. Более того, алгоритм обработки знаний заранее неизвестен и строится по ходу решения задачи на основании эвристических правил. При этом качество получаемых решений обычно не хуже, а иногда и лучше достигаемого специалистами. Знания о предметной области, необходимые для работы ЭС, определенным образом формализованы и представлены в памяти ЭВМ в виде базы знаний.
База знаний (БЗ) – ядро ЭС. БЗ представляет собой совокупность знаний предметной области (правил или эвристик), записанную на машинный носитель в форме, понятной эксперту и пользователю (обычно на некотором языке, приближенном к естественному).
Параллельно представлению знаний в виде, доступном пониманию человека, БЗ существует во внутреннем «машинном» представлении. Построение ЭС по модульному принципу позволяет постепенно наращивать их базы знаний. Качество ЭС в целом определяется размером и качеством базы знаний.
Блок логического вывода (синонимы: интерпретатор, решатель, дедуктивная машина, машина вывода) – это программа, моделирующая ход рассуждений эксперта на основании знаний, имеющихся в БЗ.
Подсистемы объяснений – программа, позволяющая пользователю получить ответы на вопросы: «Как была получена та или иная рекомендация?», «Почему система приняла такое решение?». Ответ на вопрос «как» – это представление всех шагов цепи умозаключений, приведших к данному решению, с указанием использованных фрагментов БЗ. Ответ на вопрос «почему» – ссылка на умозаключение, непосредственно предшествующее полученному решению, т. е. возвращение на один шаг назад. Развитые подсистемы объяснений поддерживают оба типа вопросов.
Интеллектуальный редактор базы знаний (подсистемы приобретения знаний) – программа, предоставляющая инженеру по знаниям возможность создавать БЗ в диалоговом режиме.
Интеллектуальный редактор БЗ включает в себя подсистему вложенных меню, шаблонов языка представления знаний, подсказок и других сервисных средств, облегчающих работу с базой.
Коллектив разработчиков экспертной системы.
Особое внимание в процессе разработке ЭС следует уделить формированию коллектива разработчиков – группы специалистов, ответственных за создание системы. Как видно из рис. 3.3, в состав коллектива разработчиков входят как минимум три категории участников – пользователи, эксперты и инженеры по знаниям. Кроме того, в создании ЭС принимают участие программисты. Таким образом, минимальный состав коллектива разработчиков включает четыре человека, в реальности же он объединяет 8-10 и более человек. Численное увеличение коллектива разработчиков связано с тем, что возникает необходимость учета мнений нескольких пользователей, помощи нескольких экспертов. При этом увеличивается потребность как в проблемных, так и в системных программистах. На Западе в этот коллектив дополнительно традиционно включают менеджера и технического помощника. При отсутствии профессионального менеджера руководителем коллектива разработчиков, участвующим во всех стадиях разработки, является инженер по знаниям, поэтому к его квалификации предъявляются самые высокие требования. В целом уровень и численность группы зависят от характеристик поставленных задач.
Как показал опыт многих разработок, активная работа всех категорий специалистов команды разработчиков требуется на этапе первоначального приобретения знаний. Этот этап может длиться от нескольких недель до нескольких месяцев. На этапе приобретения знаний возможно возникновение трудностей чисто психологического порядка: при создании БЗ системы эксперт может препятствовать передаче своих знаний, опасаясь, что впоследствии его функции будут переданы «машине». Но эти страхи безосновательны, поскольку ЭС не способны обучаться, они не обладают «здравым смыслом» и интуицией, хотя в настоящее время ведутся разработки ЭС, реализующих идею самообучения (см. п. 3.1.3). ЭС «уверенно» работает лишь в типовых ситуациях. Она также удобна в случаях, когда человек находится в состоянии стресса. В наиболее сложных ситуациях, требующих нестандартных рассуждений и оценок, эксперт-человек пока еще незаменим.
Таким образом, при подборе группы разработчиков ЭС необходимо учитывать не только те знания и навыки, которыми обладают ее члены, но и их психологические свойства. Психологическая совместимость членов группы во многом определяет ту атмосферу, которая складывается в процессе групповой работы. Успешность выбора и подготовки коллектива разработчиков ЭС определяет эффективность и продолжительность всего процесса разработки.