Шрифт:
Интервал:
Закладка:
Математика нечетких объектов вполне справится с этой ситуацией. Компьютер, вооруженный нечетким алгоритмом, не оплошает: найдет, куда идти, решит, что взять, и вернется когда положено. Для облегчения физического труда человечество изобрело тысячи различных машин, а для автоматизации труда умственного придумана пока лишь одна серьезная машина - электронная вычислительная. В этой и предыдущей главах мы осознали ее реальные возможности, оценили пробивную силу четких и охватывающую гибкость размытых алгоритмов. Теперь стали нам по плечу реальные программы Искинта.
Бассейны, поезда и любопытная муха
Мальчик жаловался, горько плача:
- В пять вопросов трудная задача!
Мама, я решить ее не в силах,
У меня и пальцы все в чернилах,
И в тетради места больше нету,
И число не сходится с ответом!
Дм. Кедрин
Мэри сейчас уже зрелая женщина, ей 39 лет. Да и Энн не столь молода. Но специалисты познакомились с ними в 1963 году, когда Д. Бобров запустил в дело свою интеллектуальную программу.
(РЕШАЕТСЯ ЗАДАЧА)
(МЭРИ ВДВОЕ БОЛЬШЕ ЛЕТ, ЧЕМ БЫЛО ЭНН, КОГДА МЭРИ БЫЛО СТОЛЬКО ЛЕТ, СКОЛЬКО СЕЙЧАС ЭНН. ЕСЛИ МЭРИ 24 ГОДА, ТО СКОЛЬКО ЛЕТ ЭНН. ВОПР)
Программа отпечатала условия задачи и продолжала:
(ЗАМЕНИМ ПОРЯДКОВЫЕ ЧИСЛИТЕЛЬНЫЕ НА КОЛИЧЕСТВЕННЫЕ)
(МЭРИ В 2 РАЗА БОЛЬШЕ ЛЕТ, ЧЕМ БЫЛО ЭНН, КОГДА МЭРИ БЫЛО СТОЛЬКО ЛЕТ, СКОЛЬКО СЕЙЧАС ЭНН. ЕСЛИ МЭРИ 24 ГОДА, ТО СКОЛЬКО ЛЕТ ЭНН. ВОПР)
(УТОЧНИМ СМЫСЛЫ СЛОВ)
(МЭРИ/ЧЕЛОВЕК) В2(РАЗА/БРВ) БОЛЬШЕ ЛЕТ, ЧЕМ БЫЛО (ЭНН/ЧЕЛОВЕК), КОГДА (МЭРИ/ЧЕЛОВЕК) БЫЛО СТОЛЬКО ЛЕТ, СКОЛЬКО (ЭНН/ ЧЕЛОВЕК) СЕЙЧАС (ПЕРИОД/МЕТКА). ЕСЛИ (МЭРИ/ЧЕЛОВЕК) 24 ГОДА, ТО (СКОЛЬКО/ ВОПР СЛОВО) ЛЕТ (ЭНН/ЧЕЛОВЕК) (ВОПР ЗНАК) (МЕТКА)
(ПЕРЕЙДЕМ К ПРОСТЫМ ПРЕДЛОЖЕНИЯМ)
(ВОЗРАСТ (МЭРИ/ЧЕЛОВЕК) В 2(РАЗА/БРВ) ВОЗРАСТ (ЭНН/ЧЕЛОВЕК) Y ЛЕТ НАЗАД (ПЕРИОД/МЕТКА))
(Y ЛЕТ НАЗАД ВОЗРАСТ (МЭРИ/ЧЕЛОВЕК) РАВЕН ВОЗРАСТУ (ЭНН/ЧЕЛОВЕК) ТЕПЕРЬ (ПЕРИОД/МЕТКА))
(СКОЛЬКО/ВОПР СЛОВО) СЕЙЧАС (ЭНН/ЧЕЛОВЕК) ЛЕТ (ВОПР ЗНАК/МЕТКА)
(СОСТАВИМ УРАВНЕНИЯ) (РАВЕН X (ЭНН/ЧЕЛОВЕК) ВОЗРАСТ) (РАВЕН 24 (МЭРИ/ЧЕЛОВЕК) ВОЗРАСТ) (РАВЕН ((ЭНН/ЧЕЛОВЕК) ВОЗРАСТ) ((МЭРИ/ЧЕЛОВЕК) ВОЗРАСТ) МИНУС Y)
(РАВЕН ((МЭРИ/ЧЕЛОВЕК) ВОЗРАСТ) УМНОЖИТЬ НА 2(( (ЭНН/ЧЕЛОВЕК) ВОЗРАСТ) МИНУС Y))
(РЕЗУЛЬТАТ) (ЭНН 18 ЛЕТ)
Итак, машина нашла возраст Энн. Что же здесь удивительного? Задача, которая стояла перед ней, была несложной, детской задачей, ее без труда решит третьеклассник. А ЭВМ способна разрешить гораздо более серьезные проблемы.
Удивительное здесь в постановке задачи, а не в ее решении. Удивительное в том, что машина разобралась в условиях, а не в том, что вычислила ответ.
Условия задачи про Энн и Мэри изложены непривычно для машины, неформально, свободно, на естественном языке, да еще с примесью загадочности. Каждый из нас, людей, призадумается, прежде чем расставить по местам все эти "сейчас" и "было..., когда", "вдвое больше" и "столько..., сколько", прежде чем уловить суть дела в хороводе имен: Мэри... Энн... Мэри... Энн...
Машина, снабженная программой Д. Боброва, понимает естественный язык и умеет распутать хитросплетения в условиях задачи. Присмотримся к тому, как она это делает.
Прежде всего ЭВМ заменяет порядковые числительные количественными, то есть слова числами. В нашей задаче потребовалась одна такая замена: повествовательное "вдвое" уступило место арифметическому "в 2 раза". Легко понять, как это произошло. В памяти ЭВМ хранится список замен: вдвое -> в 2 раза, втрое -> в 3 раза, пятикратно -> в 5 раз, удвоить -> увеличить в 2 раза и т. д. Машина просто прошлась по списку замен, хранящемуся в ее памяти, и обнаружила подходящую замену.
Второй этап понимания условий задачи много труднее первого. "Уточним смыслы слов" - отважно предложила ЭВМ. А как она их собирается уточнять?
Опираясь на шаблоны. Текст условий разных арифметических задач обязательно содержит одинаковые, стандартные, неизменные от задачки к задачке словосочетания. Вот пример такого словосочетания-шаблона: "в О раза (раз) ▫, чем". Претендентами на место кружка могут быть в шаблоне числа, а на место квадратика - некоторые слова: "больше" или "меньше", "быстрее" или "медленнее", "чаще" или "реже", "легче" или "тяжелее". Мы легко узнаем наш шаблон в словосочетаниях: "встречался с Леной в 3 раза реже, чем хотелось бы" и "поезда ходят в 1,7 раза медленнее, чем в Японии". Он же, этот шаблон, таится в условиях бобровской задачи: "Мэри в 2 раза больше лет, чем было Энн..."
ЭВМ ничего не знает о шаблоне. Она просматривает текст условий задачи слово за словом, слева направо. Все слова ей чужие и непонятные до тех пор, пока не обнаруживается сравнительная конструкция.
Но вот шаблон найден, и забрезжил свет в непроглядной тьме! Машина тут же принимается искать, что с чем сравнивается, выуживает из текста задачи объекты сравнения; первый из них должен находиться в тексте где-то слева от шаблона, а второй - справа от шаблона.
В нашем случае шаблон таков: "в два раза больше лет, чем". Ближайшее к нему левое слово в тексте "Мэри". По списку объектов, помещенному заботливым Д. Бобровым в память машины, ЭВМ устанавливает, что "Мэри" подходящий претендент, что "Мэри" - имя человека.
Теперь ЭВМ прощупывает слова, стоящие в тексте справа от шаблона. Первым ей попадается слово "была". Проверка по списку объектов приводит к неудаче: "была" в нем не значится. Что ж, машина сдвигается на одно слово вправо и испытывает "Энн". С "Энн" все в порядке, она человек и второй объект сравнения. Заметим, кстати, что, если бы проверка, сделанная слева от шаблона, окончилась неуспешно, машина сдвинулась бы еще левее и продолжала свое прощупывание до тех пор, пока первый претендент в объекты сравнения не оказался обнаруженным.
Итак, ЭВМ установила, что Мэри и Энн - люди, и записала эти факты на своем языке: "(МЭРИ/ЧЕЛОВЕК), (ЭНН/ЧЕЛОВЕК).
Шаблон "в О раза (раз) ▫, чем" не единственный в условиях задачи. Цепкая, как вышколенная охотничья собака, машина поднимает из зарослей текста еще одного "зверя": "было О тогда, сколько ▫ сейчас". Она справедливо заключает: речь идет о периоде времени между прошлым и настоящим и помечает свое открытие: (ПЕРИОД/МЕТКА).
Дальше проще. Слово, стоящее в задаче непосредственно после числа, должно быть размеренностью этого числа, например 60 км/ч или 5 см. У нас после числа 2 находится слово "раза". Машина проверяет это "раза", используя список размерностей, который содержит и км/ч, и м3, и амперы, и вольты - весь пантеон физических величин, а для "раз" или "раза" в нем сказано: безразмерная величина (БРВ).
Как видим, программа Д. Боброва содержит списки объектов и размерностей. И еще одним списком обогатил программист память своей машины - списком вопросительных слов: "когда", "сколько", "на сколько", "через сколько". Вот ЭВМ и пометила: (СКОЛЬКО/ВОПР СЛОВО).
Второй этап машинной переработки условий задачи завершился - смыслы слов уточнены. Теперь ЭВМ берется за разрезание текста на куски. Из длинной, петлей свившейся ленты слов она нарезает короткие "сосиски"-предложения. Этих предложений три, и все они предельно просты и четки.
Первое предложение. Используя свои знания о периоде времени, машина обозначила его символом неизвестного: "Y ЛЕТ НАЗАД".
Второе предложение. На ловца и зверь бежит - ЭВМ обнаружила в тексте еще один шаблон. Немного подправив и дополнив, она вычитала в условиях: "было О тогда, сколько ▫ сейчас". И выразила это отношение по-простому: "равно"; возраст Энн теперь и возраст Мэри Y лет назад равны между собой!
Третье предложение. В нем прямо, без уверток сказано, что требуется узнать в задаче.
Разбор задачи окончен. Решение ее не представляет труда. На последнем этапе своей работы машина обозначает искомый возраст через X и составляет два уравнения. В машинном изложении они выглядят несколько старомодно, будто их написал математик XVII века. Позже я скажу о причинах этой старомодности, а пока уравнения в обычной алгебраической записи:
Х=24-Y
24=2(Х-Y).
Машина решает их: Х=18, Y=6, После чего печатает:
(РЕЗУЛЬТАТ) (ЭНН 18 ЛЕТ).
Да, именно так. В 1963 году Энн было 18 лет, Мэри 24 года, а Д. Боброву 27 лет. Все были молоды в 1963 году, когда Д. Бобров защитил докторскую диссертацию в Массачусетском технологическом институте. Исследования по Искинту в США еще только разворачивались.
Теперь они ведутся там широким фронтом, и наиболее удачные программы будут описаны в этой книге. Если внимательно вглядеться в пеструю картину заокеанских исследований, то обнаружатся серьезные противоречия. Прежде всего многие исследовательские задачи ставятся стихийно, по законам спроса - предложения, и оказываются потому случайными, не помогающими прогрессу Искинта, а скорее вредящими ему. Другие работы слишком "приземлены" (за абстрактную теорию не платят), что губительно для направления, родившегося на стыке философии, кибернетики, психологии и лингвистики.
- Два пола. Зачем и почему? Эволюционная роль разделения на два пола с точки зрения кибернетики - Виген Геодакян - Прочая научная литература
- Здоровье во время карантина. Как защитить себя и свою семью - Анча Вячеславовна Баранова - Здоровье / Медицина / Прочая научная литература
- Дворец великого князя Алексея Александровича - Тамара Малинина - Прочая научная литература
- Создать общество социальной гармонии. Эврика - Эдуард Гончаренко - Прочая научная литература
- Русская расовая теория до 1917 года. Том 2 - Владимир Авдеев - Прочая научная литература
- Научный метод познания. Ключ к решению любых задач - Устин Чащихин - Прочая научная литература
- Держава Сасанидов. 224-652 годы - Михаил Юрьевич Мочалов - История / Прочая научная литература / Путешествия и география
- Мир истории : Россия в XVII столетии - Виктор Иванович Буганов - История / Прочая научная литература
- Анатомия разума. Об интеллекте, религии и будущем - Эрвин Рудольф Йозеф Александр Шрёдингер - Прочая научная литература / Публицистика
- Самая большая тайна разума. Что такое сознание, и как это работает - Василий Терехов - Прочая научная литература