Читать «Искусственный разум» онлайн - страница 34

Алексей Григорьевич Чачко

Теперь ЭВМ прощупывает слова, стоящие в тексте справа от шаблона. Первым ей попадается слово "была". Проверка по списку объектов приводит к неудаче: "была" в нем не значится. Что ж, машина сдвигается на одно слово вправо и испытывает "Энн". С "Энн" все в порядке, она человек и второй объект сравнения. Заметим, кстати, что, если бы проверка, сделанная слева от шаблона, окончилась неуспешно, машина сдвинулась бы еще левее и продолжала свое прощупывание до тех пор, пока первый претендент в объекты сравнения не оказался обнаруженным.

Итак, ЭВМ установила, что Мэри и Энн - люди, и записала эти факты на своем языке: "(МЭРИ/ЧЕЛОВЕК), (ЭНН/ЧЕЛОВЕК).

Шаблон "в О раза (раз) ▫, чем" не единственный в условиях задачи. Цепкая, как вышколенная охотничья собака, машина поднимает из зарослей текста еще одного "зверя": "было О тогда, сколько ▫ сейчас". Она справедливо заключает: речь идет о периоде времени между прошлым и настоящим и помечает свое открытие: (ПЕРИОД/МЕТКА).

Дальше проще. Слово, стоящее в задаче непосредственно после числа, должно быть размеренностью этого числа, например 60 км/ч или 5 см. У нас после числа 2 находится слово "раза". Машина проверяет это "раза", используя список размерностей, который содержит и км/ч, и м3, и амперы, и вольты - весь пантеон физических величин, а для "раз" или "раза" в нем сказано: безразмерная величина (БРВ).

Как видим, программа Д. Боброва содержит списки объектов и размерностей. И еще одним списком обогатил программист память своей машины - списком вопросительных слов: "когда", "сколько", "на сколько", "через сколько". Вот ЭВМ и пометила: (СКОЛЬКО/ВОПР СЛОВО).

Второй этап машинной переработки условий задачи завершился - смыслы слов уточнены. Теперь ЭВМ берется за разрезание текста на куски. Из длинной, петлей свившейся ленты слов она нарезает короткие "сосиски"-предложения. Этих предложений три, и все они предельно просты и четки.

Первое предложение. Используя свои знания о периоде времени, машина обозначила его символом неизвестного: "Y ЛЕТ НАЗАД".

Второе предложение. На ловца и зверь бежит - ЭВМ обнаружила в тексте еще один шаблон. Немного подправив и дополнив, она вычитала в условиях: "было О тогда, сколько ▫ сейчас". И выразила это отношение по-простому: "равно"; возраст Энн теперь и возраст Мэри Y лет назад равны между собой!

Третье предложение. В нем прямо, без уверток сказано, что требуется узнать в задаче.

Разбор задачи окончен. Решение ее не представляет труда. На последнем этапе своей работы машина обозначает искомый возраст через X и составляет два уравнения. В машинном изложении они выглядят несколько старомодно, будто их написал математик XVII века. Позже я скажу о причинах этой старомодности, а пока уравнения в обычной алгебраической записи:

Х=24-Y

24=2(Х-Y).

Машина решает их: Х=18, Y=6, После чего печатает:

(РЕЗУЛЬТАТ) (ЭНН 18 ЛЕТ).