Привет, друзья! Продолжается наш курс по основам искусственного интеллекта. Я, все еще пока, Роман Душкин и у нас продолжается третий модуль нашего курса, в котором мы рассматриваем технологии. В след за искусственными нейронными сетями, которые мы чуть-чуть изучили в прошлом видео, сегодня мы узнаем про другую технологию, которая в свое время очень сильно продвинулась, но потом утихла. Я веду речь об экспертных системах и их развитии в системах поддержки принятия решений. Поехали! Развитие экспертных систем началось чуть-ли не с началом эры искусственного интеллекта. И разработка этого класса систем была вторым существенным прорывом в исследованиях. Экспертная система основана на 3 ранее рассмотренных подходах: предоставление знаний, символьных вычислений и обработке естественного языка. Когда идея экспертных систем только родилась, у пионеров искусственного интеллекта, казалось, что достаточно посадить эксперта, который тщательно формализует свою проблемную область на выбранном формализме предоставления знаний и система сможет самостоятельно вырабатывать решения в любых ситуациях этой проблемной области. Однако, этот наивный подход столкнулся с серьезными проблемами самого разного характера. В первую очередь возникли проблемы организационного характера, если так можно выразиться, хотя в целом они не являются непреодолимым. Разработка экспертных систем серьезно провисла. Дело в том, что эксперты не стремятся делиться своим знаниям, особенно в целях его неограниченного распространения и применения. Ведь, если экспертная система будет решать все задачи за человека, в заданной проблемной области, то зачем нужен эксперт? Другими словами это вполне обоснованные опасения специалиста в том, что если он поделится своим знанием, то тем самым размоет свою полезность и востребованность. Тем не менее, вопрос вполне решаем, с учетом того, что большая часть, действительно нужных знаний изложена в письменных источниках, статьях и книгах. И их можно использовать для построения баз знаний интеллектуальных систем. Тем не менее, в конечном итоге, даже нашлись эксперты, которые были крайне заинтересованы в создании подобных систем и они начали работать над базами знаний. И тут-то обнаружился следующий проблемный аспект, экспертные знания в общем-то не так просто формализовать. Их прямой перевод на язык формальной логики возможен только в очень ограниченных случаях, а в большей части экспертные знания представляют собой переплетение тех самых НЕ-факторов. Они неполны, часто противоречивы, особенно если рассматривать знания нескольких экспертов. Неточны, в силу не точности измерений и фундаментальной неопределенности реального мира. Часто знания выражаются на нечетком естественном языке и для решения повседневных задач этого достаточно, но совершенно недостаточно для формализации в виде баз знаний. Даже, появление профессии когнитолога или инженера по знаниям не помогло, пришлось развивать математический аппарат. В итоге эта проблема была побеждена и сегодня существует большое количество формализмов и методов обработки знаний с Не-факторами. Но и наличие НЕ-факторов в знаниях экспертов не стало такой серьезной проблемы как динамика в знаниях. Знания - это не статическая, заранее и навсегда установленная догма, которую можно за программирование один раз и дальше пользоваться всегда. В процессе исследования оказалось, что знания - это эволюционирующая сущность, истинная природа которой скрывается от исследователей. А потому было очень сложно формализовать то, как знания изменяются в процессе своей эволюции. Понятно было, что этот процесс можно описать такими словами, как "обучение, актуализации" и тому подобное. Однако, от этого проще не становилось. Как осуществлять обучение экспертной системы? Когда наступает тот самый момент характеризующие необходимость актуализировать знания проблемные области? Кто должен актуализировать знания? Может ли система самостоятельно актуализировать и наполнять свою собственную базу знаний? Это немногие широкого ряда вопросы, которые стали перед первыми разработчиками экспертных систем. На некоторые из таких вопросов полноценных и исчерпывающих ответов нет до сих пор. Хотя, в целом описанные сложности, привели к приостановке развития экспертных систем и методологии их построения. До сих пор есть, как отдельные экспертные системы в очень узких проблемных областях, так и целые довольно проработанные фреймворки - оболочки для построения экспертных систем. Что характерно, постепенно этот инструментарий впитывал в себя все эти новые математический формализмы, которые позволяли справиться с НЕ-факторами и динамичностью знаний. И сегодня существующие и развивающиеся фреймворки, для экспертных систем, представляют собой очень продвинутое программное обеспечение. Хотя, надо признать, что в основном все они основаны на обработке символьной информации. Так что, давайте рассмотрим общую архитектуру экспертной системы и кратко опишем компоненты экспертных систем представленных в ней. 1. Это база знаний, которая содержит знания экспертной системы о проблемной области. В режиме штатной работы, обычно, база знаний не изменяется, а потому информация из нее берется машиной вывода в режиме "только чтение". Изменения базы знаний осуществляется в режиме "обучения систем экспертов". Однако в последнее время наибольший интерес представляют экспертные системы, которые имеют возможности самообучения в процессе работы с пользователями. 2. "Рабочая память" содержит факты, которые вводятся пользователем при помощи интерфейса, либо как-то иначе добываются экспертной системой из внешнего мира, например, с сенсоров. При помощи фактов, машина вывода активирует знания из базы знаний и выводит новые факты, которые также помещаются в рабочую память. 3. "Машина вывода"- это ядро экспертной системы. Она получает знания из базы знаний и факты из рабочей памяти, а также запросы пользователя через интерфейс взаимодействуя с ним. Далее происходит цикличная работа с рабочей памятью и при необходимости с пользователем, когда на основе имеющихся фактов и знаний осуществляется вывод новых фактов их уточнения у пользователя или запросу у него дополнительных фактов. В конечном итоге, машина вывода, получает результаты вывода и выдает их пользователю через интерфейс с ним. 4. "Интерфейс пользователя" представляет собой тот механизм, при помощи которого, пользователь взаимодействует с экспертной системой. В самом начале развития этого направления планировалось, что интерфейс пользователя будет естественно языковым. Однако, с анализом естественного языка возникли существенные проблемы, а потому чаще всего использовался формализованный ввод, иногда даже похожий на естественный языковой. Экспертная система может быть интегрирована и в информационную систему более высокого уровня, тогда как уже было указано выше, в ее рабочей памяти информация может поступать не только посредством интерфейса пользователя, но и из других систем или, например, сенсоров. Если экспертная система используется при управлении каким-нибудь технологическим процессом. Например, есть экспертная система для распознавания неизвестного, опасного вещества, по его визуальным характеристикам. Эта экспертная система интегрирована в систему поддержки принятий решений при ликвидации последствий дорожно-транспортных происшествий, с участием транспортных средств перевозящих опасные грузы. В экспертную систему приходит информация из химической лаборатории с результатами анализа неизвестного вещества и постфактум происходит обновление базы знаний. С другой стороны интегрированная экспертная система может выдавать свои заключения не только конечному пользователю, но и другим системам или даже исполнительным устройствам. В той же самой СППР, экспертная система выдавала заключение по неизвестному веществу, не только командиру группы ликвидации, но и в лабораторию для анализа в качестве предварительного результата. Другими словами, сегодня экспертные системы могут использоваться, как полноценные и законченные блоки для создания комплексных систем управления с возможностью взаимодействия, не только со специально обученные пользователями, но и с другими системами. Это позволяет нарисовать более целостную диаграммы того, что представляет собой экспертная система в своем окружении. С учетом вышесказанного получается полноценная обобщенная кибернетическая и система взаимодействующая со средой. И такое взаимодействие осуществляется в парадигме символьных вычислений. Интересным является вопрос, в составе каких более крупных систем могут включаться экспертные системы? Самый тривиальный ответ, это в составе систем автоматического управления, автоматизированных систем управления. Это традиционная область использования экспертных систем, особенно, в хорошо формализуемых проблемных областях. Например, системы автоматического управления технологическими процессами, вполне могут управляться при помощи достаточно небольших экспертных систем, база знаний которых содержит несколько сотен продукций. Так к примеру, управление лифтовым хозяйством осуществляется при помощи использования небольшой экспертной системы, которая применяет методы нечеткой математики, для планирования движения лифтов. Но, наиболее интересным является другой ответ на этот вопрос. Эта система поддержки принятия решений, про которую я уже упоминал. К системам этого класса относятся такие информационные системы, которые готовят для лиц принимающих решения обоснованные и объяснимые решения в сложных ситуациях. Ведь, сегодня с развитием аналитических методов и появлением новых математических формализмов, для обработки больших объемов данных, для поиска закономерностей, в том числе скрытых, система поддержки принятия решений получили второе дыхание. И сегодня этот класс систем используется в большом количестве областей применений, для снятия с аналитиков и руководителей рутинной работы по сбору и анализу больших массивов информации подготовки к принятию решений. Например, очень часто СППР используется, именно, в случае выхода какого-либо ведомства в режим ситуационного управления кризисных ситуаций. СППР используется в МВД, ГИБДД, МЧС, Министерстве обороны, но они также проникают в министерства экономического блока и крупные коммерческие корпорации. Но, на этом я спешу закруглиться и детали о том, как строить свои собственные экспертные системы и система поддержки принятия решений, вы узнаете на углубленным курсе по этой теме, в рамках нашей специализации. А пока все. С вами был Роман Душкин. Всех благ и до новых встреч. Пока.