Вычислительное мышление, октябрь 2020

Oct 12, 2020 13:54

Жизнь с computer thinking ползёт медленно, но я не переживаю: мой опыт показывает, что ровно в такие периоды случаются какие-то драматические изменения -- и я нахожу себя в какой-нибудь совершенно новой области, получаю совершенно новый опыт. Главное -- я копаю вычислительное мышление, и там:
-- связи с эпистемологией. Про эпистемологию и causal inference лучше всего написано у Pearl в The Book of Why (2018), неплохо также у Billy Koen в Discussion of the method (2003, основная идея в том, что идёт tinkering и находятся эвристики по этому поводу), и дальше про собственно вычисления/доказательства, предсказания и объяснения у David Deutsch в его паре книжек ("Структура реальности" (https://b-ok.cc/book/2902987/e2df2c, "Начало бесконечности" https://b-ok.cc/book/2703035/908de5)-- но вне связи с говорящимся в The Book of Why. Нужно сделать какую-то гармонизацию материала.
-- связь computations с бесконечным развитием. Это у того же Дойча, но нужно связать с работами Stanley и Lehman по open-endedness. Как сделать хороший генератор? Мутации мутациями, но как попадать в полностью новые объяснения?
-- принцип свободной энергии https://en.wikipedia.org/wiki/Free_energy_principle, который называют и active inference, то есть это тоже про вычисления, "активные вычисления". Вроде как это тоже нужно учитывать. Вот тут видео с Karl Friston на эту тему (начиная с этой темы): https://www.youtube.com/watch?v=NwzuibY5kUs&t=2585s
-- computer science как естественная наука. Это пока у Дойча, но есть ведь куча ещё литературы, и это нужно копать.
-- связь с operations research, это по той же линии "естественной науки": работы на ограниченных ресурсах, вычисления на ограниченных ресурсах.
-- курс должен выжить при переходе к массовому квантовому компьютингу. Похоже, что массовый этот компьютинг случится лет через 6-10 (оптимисты обещают настольный квантовый вычислитель к этому времени, и я склонен верить: тут экспоненциальный рост уже идёт).
-- прицелиться с уровнем глубины изложения (вузовский курс, но полезный условному директору стадиона -- не как производственный/прикладной, а как часть методологической подготовки)
-- онтология: моделирование данных и как это связано с собственно вычислениями. Это пока более чем таинственное место. Были попытки затеять разговор на эту тему в группе "Типы в языках программирования, моделирования и представления знаний" https://t.me/typeslife, но они пока были безуспешными.
-- не столько компьютерная архитектура в её текущем для фон-неймановского компьютинга виде аппаратного и программного стека, сколько понимание разниц цифровой, квантовой, оптической архитектур в их многообразии.
-- практическая часть (другими словами: нужно ли пробовать хоть что-то программировать на курсе computer thinking, то есть решать задачи для понимания материала? Это ведь не должно быть просто изложением SoTA, это должно быть как-то осознанно).

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

Естественная наука -- её предметом являются объяснения поведения физических/материальных объектов в их взаимодействии на разных системных уровнях. Фильтрация плохих объяснений в конечном итоге идёт проведением физического эксперимента (теория, которая плохо предсказывает результаты эксперимента, уменьшает свой вес в SoTA набора теорий данной науки). Объяснения включают в себя возможность предсказаний (предсказания не главное, если у вас хорошее объяснение -- вы предскажете, а если есть предсказание без объяснения, то будут проблемы). Объяснения даются на разных системных уровнях, эмерджентность ликует и искрится: химия, биология вполне себе такие науки более высоких системных уровней. Базисная наука -- физика, и в ней есть много интересных начинаний (типа той же constructor theory от Дойча, http://constructortheory.org/, эта теория ищёт универсальность в законах физики, как в computer science ищут универсальности в вычислениях/доказательствах).

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

Математика -- искусственная/абстрактная наука (то есть разница в теориях определяется разницей в результатах доказательств) об объяснениях абстрактных/трансцедентных сущностей. Доказательства (вычисления в физическом мире, соответствующие лучшему известному в информатике -- неважно, в мозгах, классических или квантовых компьютерах) используются для исключения ложных объяснений и обнаружения абстрактных/математических истин, требующих объяснения. Доказательства выходят из информатики, а в математике только используются! Поэтому за "основаниями математики" нужно идти в информатику, а из информатики идти в физику.
Всё это превращается в длинное приключение, но и сразу было понятно, что кавалерийским наскоком тема не берётся.
Previous post Next post
Up