Шрифт:
Интервал:
Закладка:
Компьютеры точно следуют программам и делают именно то, что написано в инструкциях. Работает ли наш мозг так же, как компьютер? Логичны ли мы? Следуем ли мы своим планам так же точно, как компьютер? Оказывается, у мозга есть весьма серьезные ограничения, которые приводят к довольно странным явлениям. Если понять эти странности, можно усовершенствовать технологии. Однако ясно одно: контролирует происходящее мозг, а не вы.
Люди в роли компьютеров
У человеческого мозга и компьютера есть много общего. Наша способность думать, интеллект и самоощущения возможны благодаря тому, что мозг производит массу вычислений. С помощью сложной сети нейронов он обрабатывает информацию, поступающую от органов чувств, принимает решение, что с ней делать, и в результате мы действуем в окружающем мире.
Ученые до сих пор не имеют полного представления о том, как работает мозг, но это неудивительно. В конце концов, в нем приблизительно столько нейронов, сколько капель воды в олимпийском плавательном бассейне. А это очень много!
Сформулируем вопрос следующим образом: думают ли люди как компьютеры, чтобы облегчить себе повседневную жизнь? Похожи ли особенности нашего мышления на вычисления компьютеров? Если мы собираемся заняться компьютерным моделированием жизни, то, чтобы создать роботов, которые бы выживали столь же успешно, как мы, сначала нужно понять, как мы воспринимаем и понимаем мир. Но начнем с другого, хотя и связанного с этой темой, вопроса: естественно ли для нас вычислительное мышление?
Повседневное вычислительное мышление
Как мы знаем, мозг склонен проводить сопоставление с образцом, применяя нечто вроде порождающих правил, — компьютеры часто программируют на это. Мы автоматически реагируем на стимул, следуя заданным правилам. Например, если звонит телефон, я, особенно не задумываясь, подниму трубку. Если в дверь постучат, то я ее открою.
Если посмотреть, как мы, люди, планируем задачи, то окажется, что и здесь мы применяем вычислительное мышление. Например, абстрагирование: мы часто игнорируем детали, чтобы упростить то, чем занимаемся, — разбираясь со сложной ситуацией, мы каждый раз выделяем элементы, которые кажутся нам важными. Представьте, что вы описываете любимый сериал близкому другу. Вероятно, вы опишете не те вещи, на которых сделали бы акцент, если бы надо было написать сочинение на эту тему.
Мы используем декомпозицию, устанавливая цели и подцели, когда составляем план. Например, наша цель — сходить в магазин, чтобы купить еду на неделю. В этом случае у нас будут примерно такие подцели: не забыть взять сумку, заехать в магазин, взять все необходимое, заплатить — и так далее. Цель «взять все необходимое» снова разбивается на подцели. Приехав в магазин, мы, как правило, не задумываемся, где находятся нужные нам товары. И когда мы ищем яйца, нас не интересует, где стоят хлопья для завтрака. Мы делим проблему на отдельные части.
То есть мы применяем вычислительное мышление не только потому, что нас ему научили. Мыслить таким образом для нас довольно естественно, по крайней мере в определенной степени. В то же время информатика учит делать это тщательно и в контексте точных алгоритмических решений.
Вычислительное мышление компьютера
Как мы уже отмечали, сейчас пишется все больше программ, которые позволяют компьютерам не просто заниматься вычислениями, но и мыслить вычислительно. В компьютерных программах тоже используется декомпозиция. Чтобы их было легче писать, разработчики раскладывают инструкции на отдельные шаги или процедуры, так же, как мы разделяем цели на подцели. Это значит, что, продвигаясь к желаемому результату в процессе выполнения инструкций, программа проходит через различные этапы плана, примерно так же, как это делаем мы. Они используют сопоставление с образцом применительно к порождающим правилам, и системы машинного обучения позволяют им увидеть даже более сложные шаблоны. В программах для зрительного распознавания используются фильтры, которые прячут лишние детали, прибегают к своего рода абстракции. Чем больше мы стремимся усовершенствовать искусственный интеллект, тем больше копируем навыки нашего мозга. Как мы видели, знание сводится к вычислению, по крайней мере на уровне нейронов. Так думаем ли мы как компьютеры?
Разница между нашим мозгом и компьютерами может проявиться, если тщательнее рассмотреть, как мы выполняем планы. Вычислительное мышление для нас естественно, однако это не значит, что мы вычисляем так же, как компьютер. Дана ли нам от природы способность выполнять план так же точно, как компьютер? Нет.
Головоломное планирование
Предлагаем вам попробовать вариацию на тему старой головоломки. Она покажет, как люди задумывают и выполняют свои неформальные планы.
Фермерша отправляется в ближнюю деревню с овчаркой по имени Дымка, которую всегда берет с собой. Чтобы попасть в деревню, нужно переплыть реку с быстрым течением. На другом берегу живет изобретательница, которая сделала приспособление, позволяющее быстро перебраться через поток. Оно состоит из веревки, блоков и сиденья для одного человека. Местные жители условились всегда оставлять сиденье со стороны деревни, где живет изобретательница, чтобы она могла каждый вечер убирать его. В конце концов, она ничего не берет за переправу. Добравшись до реки, фермерша перетягивает сиденье с другой стороны. Она садится, прижимает к себе Дымку, перебирается через реку и продолжает путь в деревню.
В один прекрасный день она покупает курицу и мешок зерна. Возвращаясь домой, она приходит на берег и быстро понимает, что у нее проблема. Она может перевезти с собой только что-то одно. Придется переправляться несколько раз. Но если она оставит курицу и зерно на любом берегу, курица склюет зерно. Точно так же, если она оставит вместе Дымку и курицу, собака напугает птицу и та перестанет нести яйца. Но Дымка не ест зерно, значит, его можно спокойно оставить с ней.
Запишите последовательность шагов (конечно, это будет алгоритм!), которую нужно пройти фермерше, чтобы переправить всех и вся в целости и сохранности и продолжить путь. Помните, что собака и курица, а также курица и зерно не должны оставаться без присмотра.
Сначала решите головоломку, а потом читайте дальше.
Автоматические ошибки
Мы, люди, делим выполняемые задания на подцели, но, как выяснилось, в отличие от компьютеров, мы обычно забываем о подцелях и не заботимся о последствиях. Это происходит потому, что объем нашей краткосрочной памяти ограничен. Если в настоящий момент нам надо запомнить слишком много, то неизбежно что-то упустим из внимания, так как концентрируемся на более важном. Что ваш мозг считает самым важным? Приоритет получают цели, которых вы хотите достичь, в отличие, например, от необходимости навести порядок. Вряд ли вы забудете включить свет — без этого будет не видно, что вы делаете. Однако легко забыть его выключить перед уходом. Почему? Потому что вы достигли своей цели в комнате и ваш мозг переключился на новую важную цель — ту, ради которой вы уходите из комнаты.