На сегодняшний день компьютеры достигли ошеломляющих успехов: вспомним хотя бы раздутую в прессе победу «Deep Blue», новейшего шахматного компьютера, над чемпионом мира Гарри Каспаровым. Как сообщалось в некоторых репортажах, Каспаров чувствовал, что выступает от лица всей человеческой расы, и был подавлен проигрышем, который, по его мнению, знаменовал конец интеллектуального превосходства человека. Был ли он прав?
Не совсем. Дело в том, что шахматные компьютеры наподобие «Deep Blue» хороши в чем—то одном — и только. «Deep Blue» способен победить в мировом шахматном чемпионате, не моргнув глазом, но Каспаров может выключить компьютер, когда ему захочется побродить по комнате или выпить чашку чаю. Дело не только в том, что «Deep Blue» физически не может гулять по комнате или пить чай. Он даже не понимает, как это делается, потому что такие компьютерные программы очень специализированы: в одной области их возможности практически неограниченны, но в остальных они полностью беспомощны. Это зависит от того, для чего компьютеры предназначены.
"Философ на краю Вселенной. НФ -философия, или Голливуд идет на помощь: философские проблемы в научно -фантастических фильмах"
Компьютеры можно разделить на два вида: нерды, организованные по алгоритмическому принципу, и джоки, схема которых повторяет устройство головного мозга. «Deep Blue» — классический пример компьютера, устроенного по алгоритмическому принципу, как и большинство современных компьютеров. В их основе — фиксированные, хотя часто и очень сложные программы, состоящие из символов. В качестве примера можно привести знаменитую программу Шанка, который пытался создать для компьютера схему поведения в ресторане.[11] Такие программы иногда называют сценариями. Они предписывают, что делать и как вести себя в определенных ситуациях. Выглядят они примерно так:
Сцена 1. Появление в ресторане.
PTRANS: войти в ресторан MBUILD: найти столик MOVE: сесть
Сцена 2. Заказ.
ATRANS: попросить меню ATTEND: просмотреть его MBUILD: выбрать блюда MTRANS: сделать заказ официанту
Сцена 3. Обед.
ATRANS: принять еду у официанта INGEST: съесть еду
Сцена 4. Уход из ресторана.
MTRANS: попросить чек ATRANS: дать чаевые официанту PTRANS: подойти к кассе MTRANS: отдать деньги кассиру PTRANS: выйти из ресторана
Советую вам не очень загружать себя PTRANS'aми и MTRANS'aми: это формальные описания, придуманные Шанком. PTRANS, например, обозначает перемещение объекта в пространстве; MTRANS — изменение отношений между двумя объектами (например, ваши деньги переходят к официанту) и так далее. Основная идея ясна. Это инструкция по поведению в ресторане. Предлагается выполнять ее, чтобы визит в ресторан прошел успешно.
11
Но известно, что события развиваются не всегда так, как планируется. Поход в ресторан — это поле, «заминированное» неожиданностями. Вы входите в ресторан и обнаруживаете, что нет свободного столика. Как долго вы будете его ждать? Есть время, приемлемое для поиска или ожидания свободного столика. Три часа ходить кругами по ресторану не очень—то вежливо, по мнению раздраженных посетителей и назойливых официантов. Поэтому нужно добавить в программу пункт, указывающий, сколько времени удобно ждать свободного столика, если все они окажутся занятыми. Давайте представим, что все это время ваша спутница вполголоса (но так, чтобы все слышали) бранит вас за то, что столик не был заказан заранее, хотя она просила об этом, а ее, как всегда, не послушали. Нужен алгоритм, определяющий, что и каким тоном вы должны отвечать ей. Такие возможные события должны быть включены в ресторанный сценарий.
Предположим, что столик наконец найден и вам принесли меню. Я на это надеюсь, но на всякий случай необходимо запрограммировать пункты, предусматривающие поведение в случае, если меню принесут не сразу. Как долго полагается ждать, прежде чем подозвать официанта, и так далее. Вы просматриваете меню и решаете, какой сделать заказ. Как быть, если ваша спутница решила использовать меню в качестве плацдарма для переговоров? Сложные для понимания комбинации блюд, их глубокомысленные обсуждения с официантами, которые, не выдержав, грубят вашей даме. Требуются инструкции, как вести себя в данной ситуации. Разумеется, они включают заверения в любви к вашей спутнице и претензии к ресторану. Наконец вы получаете еду, но она оказывается не такой вкусной, как всегда. Вы подозреваете, что изведенные придирчивостью и непомерными запросами вашей спутницы шеф—повар или официант подлили в суп из лобстера какую—то гадость. Что делать? В программе должны быть указания на случай таких обстоятельств.
"Философ на краю Вселенной. НФ -философия, или Голливуд идет на помощь: философские проблемы в научно -фантастических фильмах"
Мы только коснулись бед и несчастий, которые ждут нас в ресторане. Но, думаю, общая картина ясна. Реальная программа, предусматривающая любые неожиданности, должна быть непомерно большой, даже гигантской; поэтому ни один человек не в состоянии составить ее. Такой экстремальный подход к составлению программ можно найти в проекте Дага Лената CYC. Его основная идея состоит в добавлении новых указаний до тех пор, пока программа не станет исчерпывающей. Главная проблема такого подхода состоит в неограниченном количестве непредвиденных случаев, которые могут произойти в самых обычных ситуациях — например, во время визита в ресторан. Из—за этого число инструкций возрастает до бесконечности.
Алгоритмический подход основан на таких программах. Они очень эффективны для выполнения узких, строго определенных задач, но абсолютно бессильны, когда нужно сходить в ресторан с красивой, но слишком разборчивой и жеманной спутницей. Хороши в теории, но ничего не понимают в детских пеленках — таков неутешительный вывод об этих системах.
Дата: 2018-12-28, просмотров: 267.