Программные модели – как способ формализации теории
Разумная альтернатива математическим формализациям для предметной области Система индивидуальной адаптивности.
Если в физической теории нет математической формализации, то она среди физиков считается неполноценной и, главное, не верифицированной, потому что если в математической модели нет противоречий и ошибок, если она целостно и детально описывает теорию, это важнейший показатель того, что теория – не просто фантазия или философская выдумка, а она реально является полноценным кандидатом на описание физической реальности. Математическая формализация действительно играет в современной физике роль того самого «кислорода», без которого теория не может считаться полноценной.
Когда физик говорит, что теория «не формализована», это равносильно утверждению, что она не переведена на язык, позволяющий однозначно установить соответствие между абстрактными идеями и измеримыми величинами. Как отмечал Юджин Вигнер в эссе «Непостижимая эффективность математики в естественных науках», математический язык обладает избыточной предсказательной силой. Если структура теории укладывается в непротиворечивый математический формализм (например, риманову геометрию для ОТО или теорию групп для Стандартной модели), это свидетельствует о том, что теория описывает не произвольную фантазию, а структурированную реальность, подчиняющуюся жестким логическим ограничениям.
Математическая состоятельность не гарантирует физическую истинность, но она является необходимой частью процесса верификации теории.
Но не всегда математика оказывается наилучшим способом формализации. Так, было бы очень странно пытаться построить полную математическую модель телевизора, и только его отдельные составляющие, резисторы, транзисторы, конденсаторы оказываются той частью физической реальности, которая хорошо формализуется математикой. Утверждение, что любая теория должна иметь математическую модель – это перебор и миф. Даже в таких случаях, как “задача трех тел” математика начинает показывать недостаточность, а вот программное моделирование методом эмуляции физической реальности в заданных граничных условиях, позволяет легко и точно получить далекие последствия состояний нескольких физических явлений, шаг за шагом пересчитывал каждое состояние на основе предыдущего.
На уровне телевизора как целого мы имеем дело с системой, поведение которой невыводимо аналитически из уравнений квантовой механики, но при этом она строго детерминирована. Требовать для телевизора «единой математической модели» в виде одного дифференциального уравнения было бы не просто странно, а бессмысленно.
Пограммный код является формальной системой ничуть не в меньшей степени, чем набор интегралов. Более того, алгоритм часто оказывается более строгим, чем аналитическая математика, потому что он требует полной определенности: в математическом анализе мы можем «заметать под ковер» вопросы сходимости рядов или особенности решений, оставляя их «очевидными». В коде же неопределенность приводит к ошибке выполнения.
Формализация — это не синоним математической «формулы». формализация шире, чем аналитическая математика.
Существует терминологическая путаница между аналитической математикой и вычислительной математикой. Программное моделирование — это тоже математика. Компьютерная симуляция — это и есть математическая модель, просто реализованная численными методами и представленная иным языком формализации представлений.
Современное определение формализации в физике включает:
- Аналитическая математика (дифференциальные уравнения, группы Ли) — классика.
- Вычислительные алгоритмы (численное решение, симуляции) — современный стандарт.
- Аксиоматические системы (квантовая механика как набор постулатов о гильбертовом пространстве).
Когда вы проводите компьютерное моделирование задачи трех
тел, вы не «отказываетесь от формализации». Вы выбираете иную
формализацию — конструктивную. Вместо поиска функции
в
виде формулы, вы формализуете систему как детерминированный процесс с
дискретным временем, что для физической реальности (которая, насколько мы
знаем, не обязана быть аналитической в смысле Коши) является не менее законным
способом описания.
Современный критерий «полноценности» теории скорее звучит так:
Теория считается формализованной, если ее постулаты позволяют построить однозначный, воспроизводимый алгоритм (будь то в виде формул или кода), связывающий начальные условия с предсказаниями, который может быть реализован на вычислительной машине (классической или, в перспективе, квантовой) без привлечения неопределенной «интуиции» исследователя.
Если теория не допускает даже такой алгоритмической формализации, то она остается на уровне метафоры или натурфилософии. Если же формализация есть, неважно — в интегралах или в языке программирования и такой код “работает”, — теория получает статус легитимного кандидата на описание реальности.
Программное моделирование – несопоставимо более подходящий способ формализации теорий, описывающих индивидуальные системы адаптивности и их основополагающие принципы во взаимосвязи. С этим могло бы конкурировать только моделирование на реальных, а не программных деталях (электронная схемотехника), но такое моделирование намного более трудоемко и сложно в отладке. Программная же схемотехника позволяет наиболее быстро, полноценно и эффективно строить и развивать адаптивные модели. При этом такие модели работают в реальном окружении, так же компьютер решает реальные задачи. Для них не следует создавать свою виртуальную реальность, потому что нет никаких препятствий тому, чтобы физическая реальность воздействовала на работающую программную модель через рецепторы, а действия модели через эффекторы оказывались в области физической реальности. Это перекликается с принципом Моравека и идеями Родни Брукса (основателя iRobot): «Мир — лучшая модель самого себя». Это подход Cyber-Physical Systems (Киберфизические системы), где вычислительный элемент неотделим от физического процесса.
Эта позиция, по сути, предвосхищает сдвиг парадигмы, который происходит прямо сейчас: переход от физики уравнений к физике алгоритмов и процессов. Попытка описать адаптивное поведение (например, походку человека или работу нейросети) одним дифференциальным уравнением — это адская задача. Уравнения становятся неподъемными. Программный код — это, по сути, набор логических правил и условий. Для адаптивных систем алгоритмическая формализация действительно естественнее аналитической. Код позволяет описать поведение, а не просто состояние.
Код — это теория, которую можно запустить
Для описания сложных, адаптивных, открытых систем (биология, социум, робототехника, ИИ) схемотехнический подход эффективнее и честнее, чем попытка натянуть классические дифференциальные уравнения на живую реальность. Это уже не просто вопрос методологии физики, это вопрос архитектуры интеллектуальных систем и, шире, того, как мы понимаем само понятие «теория» в применении к сложному.
В этом контексте программная реализация оказывается не просто инструментом верификации, а единственным адекватным способом существования теории. Теория адаптивной системы есть ее работающий код. Любое текстовое описание остается неполным, как описание танца словами.
Программная схемотехника позволяет реализовать принцип конструктивной формализации: теория считается формализованной, если она реализована в виде алгоритма, который может быть исполнен на универсальной вычислительной машине, соединенной с реальностью через каналы ввода-вывода.
Когда адаптивная модель работает в реальном окружении, происходит следующее:
- Отпадает проблема «репрезентации». Модели не нужно моделировать реальность — реальность сама предоставляет сенсорные данные.
- Верификация становится непрерывной. Теория проверяется не в лабораторном эксперименте, поставленном ad hoc, а в процессе непрерывного функционирования.
- Появляется критерий «полноценности»: теория работает (или не работает) в реальных условиях, с реальными шумами, задержками, нестационарностью.
Это радикально меняет эпистемологическую ситуацию. Если для классической физики критерием был эксперимент (искусственно созданная изолированная ситуация), то для адаптивных систем критерием становится функционирование (embedded performance).
Мы приходим к расширенному определению:
Формализация теории адаптивной системы — это реализация ее принципов в виде программной архитектуры, способной к непрерывному взаимодействию с физической реальностью через каналы сенсорики и моторного вывода, причем сама эта реализация является единственно полным выражением теории.
В таком подходе:
- Аналитическая математика становится частным случаем (когда адаптивность не требуется или сведена к минимуму).
- Программная схемотехника выступает как язык формализации по умолчанию для сложных адаптивных систем.
- Критерий истины сдвигается от «соответствия предсказания эксперименту» к «устойчивому, эффективному, адаптивному функционированию в реальной среде».
Программный код в такой реализации становится не менее сложным и не понимаемым как мощная математическая формализация, например, доказательство теоремы Пуанкаре Г. Перельмана смогли понять только несколько человек. И тут на помощь приходят системы GPT в форме агентов IDE программной среды, когда такой агент полностью видит весь код проекта и способен его развивать, следя инструкциям на естественном языке программиста.
Теперь, если программист решит постичь и по-своему продолжить проект системы адаптивности, он просто привлекает что-то вроде Cursor АI, получает понятные ответы не вопросы и становится возможным продолжать проект так, как он посчитает нужным.
Это снимает множество трудностей, в том числе естественное недопонимание чужого стиля кода и использование незнакомых конструкций, все это становится неважным.
В философии науки это называют эпистемологией распределенного познания: знание не находится в голове отдельного разработчика, а распределено между человеческими участниками, инструментами, агентом и самим кодом.
Это открывает перспективу, в которой программная формализация + агентное сопровождение становятся не просто альтернативой математике, а новым стандартом для тех областей, где классическая математическая формализация либо невозможна, либо непрактична.
Если первая версия системы индивидуальной адаптивности бала построена полностью “руками” на языке GO, то другой ее вариант на языке JS был создан с помощью Cursor. Целью разработки новой версии было – доказать, что для реализации программной модели живого существа не нужна скоростные языки программирования и мощные компьютеры. Новая версия эффективно работает на любом компьютере и использует базовый JS.
Кроме того, этот код в максимальной степени очищен от второстепенных деталей развития и воплощает теорию МВАП практически в чистом виде. Теперь это существо по уровню сложности примерно, как домашние животные. Программная система позволяет исследовать все уровни адаптивности и развивать любые механизмы для отработки понимания их функциональности и реализации. Новая реализация сделала более эффективным и логичным многие элементы адаптивной системы, так что она не просто повторяет старый BeastGO, а развивает представления теории на новом уровне.
Создание и развитие живого существа в программной реализации оказывается наилучшим способом постичь принципы индивидуальной адаптивности, их взаимосвязь и последовательность развития. Какая модель у вас получится, такая и будет ваша личная теория, ваше личное понимание.
Переход с Go на JavaScript (особенно в контексте Cursor-assisted development) — это не просто смена инструмента. Это принципиальное утверждение:
Сущность адаптивной системы не зависит от производительности железа.
Go — язык системный, ориентированный на эффективность, конкурентность, низкоуровневый контроль. JS — язык событийный, асинхронный, работающий в песочнице браузера или легковесной среде. Если живое существо (адаптивная система уровня домашнего животного) может быть реализовано на JS и работать на любом компьютере, то:
- Скорость выполнения не является лимитирующим фактором для индивидуальной адаптивности.
- Сложность поведения не требует сложной инфраструктуры.
- Теория МВАП оказывается вычислительно легкой, что само по себе является сильным утверждением о природе адаптивности.
В традиционной биологии эксперименты на живых животных ограничены этически и методологически. В программной реализации они становятся безграничными и полностью контролируемыми. При этом — и это важно — система не является симуляцией биологии в узком смысле. Она является реализацией принципов адаптивности, которые могут быть изоморфны биологическим, но не обязаны им копировать.
В традиционной науке теория существует как текст, набор формул, система утверждений. Вы можете знать теорию, но не понимать ее в том смысле, который вы вкладываете. Понимание здесь — это способность воспроизвести живую адаптивную систему, заставить ее функционировать, развивать, видеть, как изменения в механизмах отзываются на поведении.
Понимание неотделимо от способности создавать.
Это радикальный энактивизм в применении к теоретическому знанию:
- Теория адаптивности не существует как набор утверждений
- Она существует только как работающая реализация
- И эта реализация всегда индивидуальна — у каждого исследователя будет своя модель, а значит, своя теория
Но тогда возникает вопрос о научном сообществе и согласовании теорий. Если у каждого своя реализация, как возможно совместное знание? Ответ, вероятно, лежит в:
- Открытости кода — реализации могут быть сравнимы
- Общих принципах архитектуры — МВАП (или что за ней стоит) задает общее пространство
- Способности агентов (людей и LLM) читать и сопоставлять разные реализации
Новая версия BeastJS доступна без ограничений: скачать чтобы запустить на своем компьютере, просто щелкнув на index.html.
