Более 40 лет назад, 1968 год… Группа под руководством Николая Николаевича Константинова создает математическую модель движения животного (кошки). Машина БЭСМ-4, выполняя написанную программу решения обыкновенных (в математическом смысле слова) дифференциальных уравнений, рисует мультфильм «Кошечка», содержащий даже по современным меркам удивительную анимацию движений кошки, созданную компьютером.
При моделировании механизма полезно иметь возможность получать изображения различных состояний механизма. При этом удобно использовать такой способ задания формы механизма, при котором информация о его положении в данном состоянии и информация о его устройстве были бы разделены. Это требование вполне естественно. В человеческом языке такое разделение имеет место. Скажем, слова «моя кошка» обозначают определенный предмет. При этом ничего не сказано о позе кошки. Можно сказать, что мы стремились к такому способу задания информации о форме предмета, чтобы все, что относится к понятию «кошка вообще», было отделено от информации о положении и позе кошки в данный момент.
Практическим признаком того, что информация обладает указанным свойством, является то, что становится просто и удобно задавать машине законы движения механизма. В случае кошки информация о ее походке и траектории, т. е. сценарий ее движения, задается совершенно независимо от информации о форме. Нужно только, чтобы в описании формы присутствовали переменные, о которых говорится в описании движения. Требования, которые мы предъявляем к информационной системе, можно сформулировать так: это должна быть такая система задания информации о предмете, пользуясь которой легко писать программы, которые выдают мультфильм о предмете по самым разнообразным сценариям.
Наша работа задумана как пробный шаг в направлении создания программ, моделирующих механизмы, и не преследовала никаких целей, кроме опробования некоторой системы задания формы предмета с точки зрения вышеуказанных требований. Мы задаем программе строение тела кошки и законы ее движения и получаем мультфильм (некоторые кадры приводятся на рис. 1), на котором кошка делает несколько шагов, постепенно замедляясь, поворачивает голову и останавливается. Подбирая уравнения, определяющие походку, мы заботились только о внешнем благополучии, а не о том, чтобы описывать истинные физиологические механизмы управления. Но наша программа может быть полезна и для физиологов. Если мы имеем гипотезу о механизме походки, которую мы можем записать в виде дифференциальных уравнений (как правило, второго порядка) относительно переменных, участвующих в описании позы кошки, то мы можем с помощью нашей программы посмотреть, как эта гипотеза работает (о гипотезах см. [5, 6, 7]). Принятая система задания информации удобна для механизмов, являющихся шарнирными системами, состоящими из твердых частей. С известным приближением такой системой является молекула. Программу, подобную нашей, можно применять для визуализации гипотез о строении и работе молекул при химических реакциях (см. [2, 3]).
Интересно провести опыт использования программ, рисующих мультфильм, в качестве вспомогательной техники при создании художественных мультфильмов. Работу над одним монтажным куском длительностью от 10 до 30 сек можно представить себе так. Художник-математик должен записать действующих лиц этого куска в виде нашей или подобной информационной системы, а их движения в пределах этого куска — в виде дифференциальных уравнений. Затем машина печатает бумажную ленту — «папирфильм». После этого художники рисуют по папирфильму мультфильм. Таким образом, по-прежнему зритель увидит руку художника. Смысл же всего этого в том, что моделирование движения сделано машиной — это как раз та часть работы, с которой человек справляется плохо (сошлемся на одного из мультипликаторов — [1]; для того чтобы нарисовать танец лягушки, он заснял танец настоящей балерины и, используя этот фильм как модель движения, рисовал по нему фильм о лягушке).
В качестве рисующего устройства использовалась широкая печать — АЦПУ-128. Градация яркости не применялась, и качество изображения сравнительно невысокое. Но большее и не требуется при нашей системе задания формы предметов — рисунки производят неприятное впечатление, если качество передачи формы на бумаге выше, чем качество информации о форме. Когда передача на бумаге приблизительная, воображение зрителя восполняет недостающие детали именно так, как нужно, и впечатление от рисунков получается приличное. Еще лучше выглядит фильм в движении, так как моделирование движения имеет более высокое качество, чем моделирование формы. Зритель получает много «хорошей» информации, и восполнение недостающего облегчается. Интересно, что многие зрители после просмотра фильма не помнили, что изображение было просто теневой проекцией.
Изображения, приведенные на рис. 1, прежде чем попасть на страницы этой книги, прошли следующие стадии:
Работа выполнена на кафедре общих проблем управления механико-математического факультета Московского университета. Отладка программы и ее эксплуатация проводились в Вычислительном центре Московского государственного педагогического института им. В. И. Ленина.
1. Что такое брусок
2. Кошка как дерево или формула
3. Немного о некоторых технических деталях
4. Чтение дерева
5. Моделирование движения кошки
6. Координация движения различных лап
Константинов Н. Н., Минахин В. В., Пономаренко В. Ю. Программа, моделирующая механизм и рисующая мультфильм о нем // Проблемы кибернетики. — 1974. — Выпуск 28. — Стр. 193-209