Anatoly Levenchuk (ailev) wrote,
Anatoly Levenchuk
ailev

Category:

Программирование-компилирование и моделирование-расчеты

Higher-Order Non-Causal Modelling and Simulation of Structurally Dynamic Systems (http://www.modelica.org/events/modelica2009/Proceedings/memorystick/pages/papers/0137/0137.pdf) -- под этим названием статья, в которой рассказывается о построении компиляторов для декларативного программирования задач, в которой структура симулятора резко меняется (например, маятник качается, а затем обрывается и куда-то летит -- и вопросы: когда обрывается? куда потом летит?).

Решается выходом на мета-уровень: модель объявляется первоклассным объектом, дальше компилируется набор декларативных (тут они называются non-causal) моделей, соответствующих разным состояниям моделируемой системы.

Функциональные языки, виртуальные машины, языки для компилирования в них программ на таких языках, как Modelica, и специальные языки для моделирования систем с изменяющейся структурой (Hydra).

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

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

Программирование -- это про языки и их исполнение в разных смыслах. Моделирование -- про описание внешней предметной области. И не нужно путать одно с другим. Люди, которые работают с Eclipse Modeling Framework -- это программисты, а не модельеры...

А онтологи -- это декларативные модельеры. Но не программисты.
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 10 comments