Искусственный разум | страница 62



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

ЛЮБОЗАР сглаживает различия, производит разумные действия. В этом он тоже сходен с человеком. В житейских ситуациях мы обычно знаем, какого рода действия уместны оправданны, а какие запрещены или бессмысленны. Скажем, если хочешь иметь бананы, уместно взять их рукой, но совсем неуместно запеть во весь голос.

В отличие от человека ЛЮБОЗАР не имеет житейского опыта, он не жил в реальном мире и этим похож на новорожденного ребенка. Один из создателей ЛЮБОЗАРа Г. Саймон пишет: "Если не считать нескольких врожденных рефлексов, у новорожденного нет средств для разумного увязывания информации от органов чувств с действиями. Поэтому для его начального обучения очень важно, чтобы он узнал, что определенные действия или последовательности действий приведут к изменению состояния мира в том виде, в каком он его воспринимает. И пока он не накопил достаточно таких знаний, для него мир чувств и мир действий - два отдельных, совершенно не связанных между собой мира. И только по мере того как опыт помогает ему увязать элементы одного мира с другим, он получает возможность воздействовать на мир целенаправленно".

Чтобы решать задачу, ЛЮБОЗАР, кроме перечня различий, должен располагать еще перечнем допустимых действий. В задаче "Обезьяна и бананы" их четыре: идти, передвинуть ящик, залезть и схватить бананы.

Мало перечислить различия и действия, нужно еще связать их между собой так, как они связаны в реальном мире. В ЛЮБОЗАРе для этого предусмотрена таблица связей, в которой пересекаются действия и различия.

Таблица связей указывает, какое действие уменьшает данное различие, а какое не имеет ни малейшего к нему отношения. Без этой таблицы ЛЮБОЗАР применял бы свои действия наобум, как младенец; с этой таблицей он ближе к предусмотрительному взрослому человеку.

В задаче "Обезьяна и бананы" действие "залезть", например, связано только с различием между обезьяной и ящиком. Впрочем, давая ЛЮБОЗАРу эту задачу, программисты решили немного его запутать, поставили во всех клетках в таблице связей кресты, то есть сказали машине: "Все действия желательны для уменьшения всех различий".

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