Экспертные системы

Стремление разрешить проблемы, порожденные комбинаторным взрывом, привели к тому, что в течение примерно последнего десятилетия усилия специалистов по ИИ все более концентрировались на одном из направлений этой области, получившем название «экспертные системы».
Чтобы справляться с простейшими проблемами повседневной жизни, нам совсем не обязательно понимать правила и алгоритмы, которыми мы при этом бессознательно пользуемся. Однако существует множество областей человеческого знания, где информация и накопленный опыт тщательно систематизированы и теперь представляют собой упорядоченные алгоритмические структуры. Когда человек усваивает количество информации, достаточное для понимания всего комплекса знаний, накопленных в конкретной области, он становится специалистом, или экспертом, в этой области. Экспертные системы — это компьютерные программы, в которых заложен весь запас накопленных человеком знаний и его опыт в таких областях, как медицина, физика, химия, юриспруденция, геология и т. д., что открывает доступ к соответствующей информации. Новизна экспертных систем и пристальное внимание к ним объясняются тем, что создатели не только попытались использовать их как хранилища знаний, которыми пользуются эксперты-люди, но и воспроизвести здесь структуру знаний, обеспечив эти системы необходимыми средствами для логических рассуждений и выводов, а также своего рода интуицией, т. е. всем тем, чем располагает эксперт, решая ту или иную конкретную задачу. Следовательно, общение с экспертной системой в большей степени напоминает консультацию с настоящим экспертом, нежели простое обращение к базе данных, сводящееся к выборке интересующей нас фактической информации. Подобная программа не только сообщает свое мнение, но и объясняет, каким путем она к нему пришла и почему на нем остановилась (такие объяснения она дает на основе обратной трассировки процессов логических рассуждений и списка правил, которыми она пользовалась в ходе рассуждений). Программа может также задавать пользователю вопросы, а его ответы позволяют ей подтвердить свой диагноз или отказаться от него. Она может даже подкрепить свое мнение цифровыми выкладками, показывающими, например, в каком проценте случаев данный ответ более вероятен, чем другой. Особенно это важно при учете бланков строгой отчетности.
В действительности работа экспертных систем чрезвычайно сложна, и это породило сегодня новую самостоятельную дисциплину — инженерию знаний, — назначение которой заключается в том, чтобы преобразовывать накопленный человеком в той или иной области опыт в форму, удобную для ввода в программы. Ключевым моментом здесь является учет того обстоятельства, что эксперт в своих действиях никогда не следует простым правилам типа «если А, то В». Он приходит к заключению, взвешивая целый ряд факторов, каждый из которых имеет то или иное значение в зависимости от конкретных обстоятельств, причем многие из подобных факторов можно оценить лишь в свете конкретного опыта. Мысль эксперта, по-видимому, следует более извилистым путем, и его рассуждения, скорее всего, можно представить в такой форме: «Если А, то В будет вероятнее, чем С, но лишь сопоставив D и Б, можно точно сказать, так это или нет».
При проектировании экспертных систем наиболее важны, пожалуй, два фактора. Прежде всего та информация, которую предоставляют эксперты-люди, — а именно материал, составляющий базу знаний программы, — должна иметь такую форму, которая позволяет связать между собой утверждения посредством импликаций, явным образом характеризующих их соотношения. Технически это означает, что подобные зависимости должны формулироваться в рамках некой логической системы, называемой исчислением предикатов. В принципе это система классической логики, которая позволяет делать заключение на основе двух или более утверждений, содержащих общие элементы. В качестве иллюстрации приведем традиционный пример из школьного учебника логики: «Все греки — люди. Сократ — грек. Следовательно, Сократ — человек». Ученые из Марсельского университета разработали новый машинный язык Пролог, позволяющий перевести всю информацию, которую необходимо сообщить машине, в форму, легко преобразуемую в высказывания, пригодные для исчисления предикатов. Уже сегодня этот язык оказывает существенную помощь создателям экспертных систем.
Вторая важная особенность экспертных систем заключается в том, что в отличие от большинства компьютерных программ база знаний (т. е. часть программы, содержащая данные) отделена здесь от той части программы, которая управляет манипуляцией данными. Последняя часть программы (ее называют интерпретатором знаний) в свою очередь подразделяется на систему логических выводов, которая осуществляет пошаговое управление «тактикой решения задачи», и координирующую систему, которая осуществляет контроль за «стратегией» решения.
Значительные успехи метода экспертных систем и еще более внушительные перспективы, которые они открывают в таких областях, как медицина, где знания и опыт уже сегодня накапливаются столь быстро, что это превосходит возможности их усвоения и использования экспертами-людьми, послужили причиной воскрешения интереса к ИИ в последние годы. Однако пока не ясно, смогут ли технические средства, составляющие основу экспертных систем, принести существенную пользу робототехнике. Достижения в разработке экспертных систем во многом объясняются тем, что эти системы имеют дело с информацией, которая уже организована в виде формальных структур, благодаря чему ею могут манипулировать программы, не имеющие никакого опыта взаимодействия с «реальным миром» и никаких знаний относительно его, хотя именно на такой основе и строилась изначально структура всего процесса экспертизы.
Роботы же представляют собой машины, и весь смысл их существования состоит во взаимодействии с реальным миром, который они, естественно, должны понимать. Маловероятно, что они смогут воспользоваться формализованными экспертными системами, покуда у них не возникнет более полное представление о «болтах и гайках» окружающего их реального мира. Возьмем простейший пример: создание экспертной системы, способной анализировать причины поломки автомашины, имело бы важное практическое значение; располагая базой основных данных и имея в своем распоряжении оператора, способного проводить необходимые испытания и сообщать их результаты, такая программа смогла бы с помощью соответствующих тестов выявить причину неисправности, из-за которой холодным зимним утром машина не заводится. Однако такая экспертная система мало поможет механику-роботу, если мы не обеспечим его машинным зрением и манипуляторами, умеющими снимать карбюратор или вывинчивать свечу зажигания.
По-видимому, нет смысла строить роботы, которые оказались бы механическими подобиями некоего хрестоматийного кабинетного ученого-эксперта, который, детально разбираясь в теории электромагнетизма, не в состоянии заменить перегоревшую электрическую лампочку.

С помощью графического видеотерминала для описания молекулярной структуры Филип Кук консультируется с программой LHASA — «экспертом» по химическим процессам определенного класса. Подобные экспертные системы обеспечивают доступ к знаниям всем интересующимся..