Найти в Дзене
Стив Май

Всё есть алгоритм

На днях опубликовал статью, кратко резюмирующую пользу воображения в образовании: Почему объяснять полезно и "симулятор" реальности. То, что я называю "симулятор" - возможность моделировать в воображении реальность и, главное, получать "виртуальный" опыт, который отлично дополнит реальный, и создаст мощное подспорье в изучении школьной программы. Идея "симулятора" взялась не на пустом месте - нечто подобное есть в разных психологических школах, я просто объединил кое-какие концепции, важные именно с точки зрения образования. Под статьёй разгорелись нешуточные страсти в комментариях. Некоторые мысли (как моих оппонентов, так и мои собственные) весьма глубокие и выходят далеко за рамки обсуждения симулятора, поэтому требуют отдельного рассмотрения. В сумме там набралось мыслей на несколько статей - они разнообразные по тематике и аргументации, их много. В этот раз я хочу разобрать тезис, который обозначил в заголовке. умение пользоваться симулятором - это точно такой же предмет как фи
Оглавление

На днях опубликовал статью, кратко резюмирующую пользу воображения в образовании:

Почему объяснять полезно и "симулятор" реальности.

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

Под статьёй разгорелись нешуточные страсти в комментариях. Некоторые мысли (как моих оппонентов, так и мои собственные) весьма глубокие и выходят далеко за рамки обсуждения симулятора, поэтому требуют отдельного рассмотрения. В сумме там набралось мыслей на несколько статей - они разнообразные по тематике и аргументации, их много. В этот раз я хочу разобрать тезис, который обозначил в заголовке.

"Всё есть алгоритм". Всё есть предмет (школьный).

умение пользоваться симулятором - это точно такой же предмет как физика или гимнастиска

В образовании важно развести вот какие два момента.

Скажем, ученик понимает физику. Предмет такой. Он знает законы Паскалей, умеет их применять, и не просто по алгоритмам, а прямо понимая. Может даже мысленно представить себе задачу и решить её в симуляторе. Олимпиады всякие, пятёрки-шмятёрки. Какие там ещё критерии понимания?

Это понимание предметной области. Конкретного предмета. Физики. Математики. Истории.

А теперь, скажем, умение грамотно писать. Вот это к какой предметной области относится? К математике? Там ведь надо писать не "премые", а "прямые". К физике? И тут надо писать не "притижение". Не. К истории. Там надо следить, чтобы не получилось "пабидил".

Это метапредметный навык, мета-навык.

К мета-навыкам можно отнести умение читать и понимать смысл, писать внятно без ошибок, формулировать мысли, арифметический счёт и так далее. Симулятор - тоже такой мета-навык. Один из. Я лично считаю его весьма важным.

Мета-навык как отдельный предмет

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

Но важный момент. Нельзя научить читать и понимать прочитанное просто так само по себе. Нужен какой-то реальный материал, на котором ребёнок будет учиться. Книги, которые он будет читать, чтобы научиться читать. Тексты, которые он будет писать. Мысли, которые он будет формулировать.

То есть, сам по себе предмет "чтение" "правописание" "моделирование" "симулирование" не может существовать. Он должен иметь какой-то другой предмет в качестве материала. Для чтения хорошо подходит литературоведение (изучает художественные тексты), для моделирования - математика, для симулирования - все (я считаю, что это наиболее универсальный мета-навык, который везде одинаково полезен).

Это разделение на предметные и общеучебные навыки даже закреплено в ФГОС.

Всё ли можно свести к конечному алгоритму

Разве "прогоняя в симуляторе _разные_ варианты <...>", [человек] не следует алгоритму, который формирует другой алгоритм?

Этот тезис (из разряда курицы и яйца) оспаривать весьма трудно. Не потому что он ошибочный, а потому что он как раз правильный.

Всё можно свести к алгоритмам, потому что любое конкретное совершённое кем-то действие без каких-либо исключений можно записать в виде конечного выполнимого списка команд. Выполнение подъёма переворотом - можно записать. Обучение - можно. Изобретение - можно. То есть, всё, что когда-либо кто-нибудь делал, всегда можно свести к конечному алгоритму.

Правда, зачастую это можно сделать лишь постфактум, когда команды уже не нужны, потому что все шаги алгоритма уже выполнены.

ТРИЗ

Отсюда, кстати, растут ноги у ТРИЗ (теория решения изобретательских задач). Генрих Альтшуллер как раз и попытался записать в виде некоторого усреднённого алгоритма процессы всевозможных изобретений и рационализаторств.

ТРИЗ - это такая попытка "симптоматического" описания процесса изобретения. Поэтому применение ТРИЗ - это лишь попытка воспроизвести симптомы. Что в простонародье зовётся гомеопатией. Не в том смысле, что это не работает, а в том смысле, что это не описывает внутренних механизмов, а лишь систематизирует внешние проявления. (Кстати, так работают и нейросети.)

Алгоритм создания алгоритмов

Вопрос в другом - откуда взялись эти шаги ДО того, как они были выполнены? Вот в чём задача обучения - сделать так, чтобы эти шаги появлялись.

К сожалению, часть человеческого мышления не поддаётся алгоритмизации. Это именно та творческая часть, которая отвечает за создание нового.

В фильме "Рэмбо" (вроде, вторая часть) генерал рассказывал историю о скульпторе, который кучу лет работал над куском камня, а когда закончил, и все восхищались, то сказал, что скульптура всегда была в камне, нужно было лишь отсечь лишнее.

Можно ли записать алгоритм, следуя которому, каждый желающий смог бы в куске камня увидеть скульптуру?

Кто-то когда-то любой алгоритм изобрёл "с нуля". В том смысле, что прошёл шаги, которые после записал. Но способ пройти эти шаги нельзя записать в виде более примитивных шагов.

Можно ли научить созданию алгоритмов

Да, безусловно. Но для этого нужен опыт создания алгоритмов.

Мы не знаем, какие шаги нужно предпринять, чтобы создать алгоритм "с нуля". Но это и не требуется. Достаточно того, что мы знаем, в какой ситуации человек создаёт алгоритм "с нуля" (с некоторой вероятностью).

То есть, достаточно лишь поставить человека в нужные условия, и он как минимум попытается создать алгоритм. Разумеется, для старта нужны простые и давно известные алгоритмы (чтобы их легко было и разработать, и проверить).

Скажем, вот конкретный пример. Алгоритм умножения матриц "строка на столбец". Кто в здравом уме будет его разрабатывать заново? Да никто. Его просто берём и используем. Даже более того, нафиг не надо его понимать! Достаточно знать, что такой алгоритм математичен, а другие - нет. Он не подходит для первичного обучения.

Но вот алгоритм деления "уголком". Его, мало того, что можно вывести самому (даже для третьеклассника - разумеется, под руководством учителя), так ещё и можно понять, почему он такой, где здесь скрытые оптимизации, что держим в уме, и где рыбу заворачивали.

И это будет полезно с точки зрения образования. Полезно - потому что это даст мощнейший опыт создания новых алгоритмов, которые человек ещё не знает. Опыт разбора алгоритма - почему он именно такой, а не какой-то другой.

Достаточно лишь не навязывать эти алгоритмы, а ставить ребёнка в такие условия, чтобы изобретение алгоритма было бы единственным выходом.

Тут есть маленькая ремарка - какую бы ситуацию ни подкинул ученику учитель, есть шанс, что алгоритм не будет изобретён. Тем не менее, даже неудачные попытки уже создадут нужный опыт.

Кроме того, у нас есть ещё куча возможностей научить ребёнка изобретать работающие алгоритмы - сложения, умножения, решения уравнений, доказательств...

А как можно сделать сильным человека, за которого все тяжести поднимают?