Эвристическое программирование

В отличие от моделирова­ния на уровне нейронных сетей, эвристическое программирование исследует другой уровень организации поведения, называемый опе­рационным. На этом уровне поведение рассматривается как последо­вательность мыслительных, может быть не всегда осознаваемых че­ловеком операций, выполнение которых приводит к успешному ре­шению той или иной задачи.

Обычная процедура построения моделей методом эвристического программирования строится следующим образом. Испытуемым пред­лагается решать некоторую задачу, сопровождая свои размышления устными комментариями хода своих рассуждений. Все высказывания испытуемых тщательно протоколируются. Затем протоколы подвергают анализу с целью выявления хода решения, характера применяемых операций, догадок, приемов и т. п. Полученный в ходе анализа материал используется при составлении компьютерной программы — модели данного вида поведения. Таким образом, программа является моделью не испытуемого, а протокола. Такая модель должна выполнять то, что делает испытуемый и так, как это делает он.

Следующий этап процедуры связан с исследованием работы мо­дели при решении задач того же типа, которые предлагались испы­туемым. Если процесс решения отклоняется от зафиксированного в протоколе, программа дорабатывается. Для этого могут быть постав­лены новые эксперименты с испытуемыми, получены новые прото­колы и т. д.

Использование описанной методики связано с рядом затруднений. При самоотчете испытуемый не в состоянии выделить и прокоммен­тировать все без исключения шаги выполненного им решения, осо­бенно если они связаны с догадками, неосознаваемыми заключения­ми и т.п. Соответственно такие шаги не попадают в протокол и ис­следователь должен самостоятельно заполнять разрывы, опираясь на собственные знания и догадки. Поэтому правильнее будет говорить, что окончательная программа моделирует гипотезу исследователя об изучаемом процессе — гипотезу, основанную на протоколе и опреде­ленных данных из области психологии.

Ряд трудностей заключается также в проведении анализа и интер­претации протокольных записей. Здесь необходима типизация прие­мов анализа и разработка мер, ограничивающих произвольность ин­терпретаций.

Развитие эвристического программирования связано с построени­ем разнообразных моделей, таких, как модели поведения при выборе, при определении стратегии размещения ценных бумаг и др. Однако наибольшие успехи теоретического и прикладного характера достиг­нуты при создании систем ИИ, называемых решателями задач.

Разработка программ — решателей задач преследует две основ­ные цели: во-первых, являясь моделью поведения человека в опреде­ленных условиях, решатель обладает некоторой объяснительной си­лой и может быть использован для предсказания действий человека в ходе решения; во-вторых, решатель может быть использован как со­ставная часть в системах автоматизации управления сложными объ­ектами, в частности — роботами.

Обычно решатели строятся для задач, связанных с преобразова­ниями ситуаций. В таких задачах задаются исходная и желаемая си­туации, а также набор операторов или действий, которые могут стро­го определенным образом изменять ситуации. Класс таких задач до­вольно широкий. В него входят, например, задачи формальной логи­ки, планирования целенаправленных действий и др.

История создания решателей начинается в 50-х годах циклом и следований по разработке общего решателя задач — GPS (Genera Problem Solver). Авторы GPS — А. Ньюэлл, Дж. Шоу и Г. Саймон первоначально ставили перед собой задачу создания эффективного решателя для работ в области искусственного разума. Затем они попытались рассмотреть GPS как общую теорию человеческого мышления. Эта попытка не удалась: как психологическая теория GPS отписывал слишком узкий круг феноменов мышления. Не оправдание также и надежды авторов на универсальный характер GPS как решателя: класс доступных ему задач оказался весьма узок. Позитивный вклад GPS в проблематику ИИ состоит в разработке ряда стратегии решения задач, которые используются и в современных, более совершенных решателях. Были также сформулированы основные задачи и подходы к созданию моделей мышления, решен ряд проблем методологического характера, отработаны приемы эвристического программирования и создана основа для дальнейшего совершенствования решателей задач.

Предложенные для GPS стратегии были использованы при построении ряда решателей, в том числе и для роботов. Такие решатели используются, в частности, в системе STRIPS и в ряде близких к ней систем, предназначенных для управления интегральными роботами.

Наряду с эвристическим программированием в области работ по созданию искусственного разума оформилось еще одно направление исследований, получившее название эвристического моделирования.

Добавить комментарий