Компьютерные информационные технологии (КИТ). Технологии искусственного интеллекта ч.1
Лекция 9
Технологии искусственного интеллекта ч.1
Основные понятия искусственного интеллекта
Искусственный интеллект (ИИ) - это наука о концепциях, позволяющих компьютерам выполнять задачи которые у людей выглядят разумными. В общем случае дать определение интеллекта в обычном смысле этого слова невозможно, потому что интеллект - это сплав многих навыков в области обработки и представления информации.
Центральные задачи ИИ состоят в том, что бы сделать компьютер более полезными и чтобы понять принципы, лежащие в основе интеллекта. Для этого необходимо знать, каким образом ИИ может помочь специалистам в различных предметных областях в разрешение трудных проблем.
Термин искусственный интеллект (ИИ , AI – artificial intelligence) был предложен в 1956 году на семинаре в Дартмутском колледже (США). Семинар был посвящен разработке методов решения логических задач (не вычислительных) с помощью вычислительных машин. Следует отметить, что был сделан неудачный перевод английского понятия artificial intelligence на русский язык, и поэтому в русском языке это понятие носит несколько фантастический оттенок. На самом деле artificial intelligence означает «умение рассуждать разумно».
Основные области применения ИИ:
- Доказательства теорем;
- Игры;
- Распознавание образов;
- Принятие решений;
- Адаптивное программирование;
- Сочинение машинной музыки;
- Обработка данных на естественном языке;
- Обучающиеся сети (нейросети)
В экономике в настоящее время получают широкое распространение экспертные системы, системы поддержки принятия решений и нейросети.
В общем случае функциональная структура использования ИИ состоит из трех компонент (комплексов):
- Исполнительная система
- Интеллектуальный интерфейс пользователя
- База знаний
Первый комплекс представляет собой совокупность средств, выполняющих программы (исполнительную систему), спроектированных с позиций эффективного решения задач, имеет в ряде случаев проблемную ориентацию. Исполнительная система (ИС) объединяет всю совокупность средств, обеспечивающих выполнение сформированной программы.
Второй комплекс - совокупность средств интеллектуального интерфейса, имеющих гибкую структуру, которая обеспечивает возможность адаптации в широком спектре интересов конечных пользователей. Интеллектуальный интерфейс – это система программных и аппаратных средств, обеспечивающих для конечного пользователя использование компьютера для решения задач, которые возникают в среде его профессиональной деятельности либо без посредников либо с незначительной их помощью.
Третьим комплексом средств, с помощью которых организуется взаимодействие первых двух, является база знаний, обеспечивающая использование вычислительными средствами первых двух комплексов целостной и независимой от обрабатывающих программ системы знаний о проблемной среде. База знаний (БЗ) - занимает центральное положение по отношению к остальным компонентам вычислительной системы в целом, через БЗ осуществляется интеграция средств ВС, участвующих в решении задач.
Базы знаний, представляют собой некий аналог обычных баз данных, но содержат информацию не в виде таблиц или записей с полями, а в виде утверждений о чем-либо, например "туристическая фирма предоставляет услуги населению" или "студенты являются наиболее активной частью населения". Доступ к этой информации осуществляется не через команды поиска, а с помощью формулируемых на естественном языке вопросов, например "может ли туристическая фирма предоставлять услуги студентам?".
Отметим, что в настоящее время используются такие модели представления знаний, как продукционная модель, основанная на построении правил «ЕСЛИ - ТО»; фреймовая модель, в которой описывается один концептуальный объект, а его конкретные свойства в структурных элементах этого фрейма; семантические сети, где узлы сети соответствуют понятиям и объектам, а дуги – отношениям между этими объектами
Экспертные системы
В повседневной жизни мы постоянно сталкиваемся с экспертами в самых различных областях человеческой деятельности- врачи, преподаватели, референты и т.д. Имея огромный багаж знаний, касающихся предметной области, они умеют точно сформулировать и правильно решить задачу.
В течение последних десятилетий многочисленные попытки исследователей были направлены на создание систем, способных заменить специалиста в конкретной предметной области, т.е. решать задачи в отсутствии людей- экспертов.
Эти системы получили название экспертных систем .
В ходе исследований выяснилось, что среди задач, решаемых экспертами, формализованные задачи составляют лишь малую часть, в то время как основная их масса относится к числу неформализованных.
Экспертные системы отличаются и от других видов информационных систем:
· Экспертные системы имеют дело с предметами реального мира, операции с которыми обычно требуют наличия значительного опыта, накопленного человеком.
· Экспертная система должна за приемлемое время (достаточно малое) найти решение, которое было бы не хуже, чем то, которое может предложить специалист в этой предметной области.
· Экспертная система должна обладать способностью объяснить, почему предложено именно такое решение, и доказать его обоснованность. Пользователь должен получить всю информацию, необходимую ему для того, чтобы быть уверенным, что решение принято "не с потолка". Экспертная система проектируется в расчете на взаимодействие с разными пользователями, для которых ее работа должна быть, по возможности, прозрачной.
В настоящее время существует несколько определений экспертных систем (их иногда называют также «инженерия знаний» или «системы, основанные на знаниях»).
Одним из наиболее популярных определений экспертной системы является следующее:
Под экспертной системой понимается система, объединяющая возможности компьютера со знаниями и опытом эксперта в такой форме, что система может предложить разумный совет или осуществить разумное решение поставленной задачи. Дополнительно желаемой характеристикой такой системы является способность системы пояснять по требованию ход своих рассуждений в понятной для спрашивающего форме.
Приведенное определение, позволяют выделить ряд базовых структурных элементов экспертной системы.
Как и любая система, основанная на знаниях, экспертная система обязательно содержит в своем составе базу знаний и механизм логических выводов. Зачастую для представления фактический знаний используется отдельный механизм - база данных, а в базе знаний остаются лишь процедурные знания. Кроме того, для ведения базы знаний и дополнения ее при необходимости знаниями, полученными от эксперта, требуется отдельный модуль приобретения знаний.
Другим важным компонентом экспертной системы является пользовательский интерфейс, необходимый для правильной передачи ответов пользователю в удобной для него форме. Кроме того, пользовательский интерфейс необходим и эксперту для осуществления манипуляций со знаниями.
И наконец, в экспертной системе должен присутствовать модуль, который способен при помощи механизма логического вывода, "предложить разумный совет или осуществить разумное решение поставленной задачи", сопровождая его по требованию пользователя различными комментариями, поясняющими ход проведенных рассуждений. Модуль, реализующий эти функции, называется модулем советов и объяснений. Следует отметить, что механизм объяснений играет весьма важную роль, позволяя повысить степень доверия пользователя к полученному результату. Кроме того, он важен не только для пользователя системы, но и для эксперта, который с его помощью определяет, как работает система и как используются предоставленные им знания.
Базовая структура экспертной системы показана на рис.1.
Перечисленные структурные элементы являются наиболее характерными для большинства экспертных систем, хотя в реальных условиях некоторые из них могут отсутствовать.
Экспертная система может полностью взять на себя функции, выполнение которых обычно требует привлечения опыта человека-специалиста, или играть роль ассистента для человека, принимающего решение. Другими словами, система (техническая или социальная), требующая принятия решения, может получить его непосредственно от программы или через промежуточное звено — человека, который общается с программой. Тот, кто принимает решение, может быть экспертом со своими собственными правами, и в этом случае программа может "оправдать" свое существование, повышая эффективность его работы. Альтернативный вариант — человек, работающий в сотрудничестве с такой программой, может добиться с ее помощью результатов более высокого качества. Вообще говоря, правильное распределение функций между человеком и машиной является одним из ключевых условий высокой эффективности внедрения экспертных систем.
Важность экспертных систем состоит в следующем:
- технология экспертных систем существенно расширяет круг практически значимых задач, решаемых на компьютерах, решение которых приносит значительный экономический эффект;
- ЭС будут играть ведущую роль во всех фазах проектирования, разработки, производства, распределения, продажи, поддержки и оказания услуг;
- технология ЭС, получившая коммерческое распространение, обеспечит революционный прорыв в создании интеллектуально взаимодействующих модулей.
Использовать ЭС следует только тогда, когда разработка ЭС возможна, оправдана и методы инженерии знаний соответствуют решаемой задаче. Применение ЭС может быть оправдано одним из следующих факторов:
- решение задачи принесет значительный эффект, например экономический;
- использование человека-эксперта невозможно либо из-за недостаточного количества экспертов, либо из-за необходимости выполнять экспертизу одновременно в различных местах;
- использование ЭС целесообразно в тех случаях, когда при передаче информации эксперту происходит недопустимая потеря времени или информации;
- использование ЭС целесообразно при необходимости решать задачу в окружении, враждебном для человека.
При разработке реальных экспертных систем в большинстве случаев используют так называемые языки искусственного интеллекта типа ЛИСП и ПРОЛОГ.