ПАМ'ЯТЬ ТА ІСТОРІЯ
УДК 682 + 531.6, 519
Г.Б. ЕФИМОВ, М.В. ЕФИМОВА
РАБОТЫ Д.Е. ОХОЦИМСКОГО ПО СИМВОЛЬНЫМ ВЫЧИСЛЕНИЯМ НА КОМПЬЮТЕРЕ И ПРОГРАММИРОВАНИЮ
Анотація. У статті описуються праці академіка Д.Є. Охоцимського, ветерана ІПМ ім. М.В. Кел-диша, з програмування, починаючи з перших вітчизняних обчислювальних машин, з комп ’ютерної алгебри, програмних комплексів розрахунку і управління польотами космічних апаратів, управління рухом і сприйняття рухомих роботів.
Ключові слова: історія науки, комп ’ютерна алгебра, програмування, космонавтика.
Аннотация. Описываются труды академика Д.Е. Охоцимского, ветерана ИПМ им. М.В. Келдыша, по программированию, начиная с первых отечественных вычислительных машин, по компьютерной алгебре, программным комплексам расчета и управления полетами космических аппаратов, управления движением и восприятием подвижных роботов.
Ключевые слова: история науки, компьютерная алгебра, программирование, космонавтика.
Abstract. The works of professor D. Okhozimsky, a colleague of M. Keldysh and S. Korolev, in Programming and Computer Algebra are discussed. D. Okhozimsky is a pioneer of using first soviet computers in the area of Cosmonautics, Robotics and the Programs for space vehicles control.
Keywords: history of science, computer algebra, programming, space research.
1. Введение
В 2011 году исполнилось 90 лет со дня рождения Дмитрия Евгеньевича Охоцимского (1921-2005), выдающегося ученого, академика Российской академии наук. Его главные достижения относятся к механике космических полетов. Охоцимский Д.Е. был ближайшим соратником М.В. Келдыша, Главного теоретика космонавтики, и С.П. Королева, ее Главного конструктора. Работы Дмитрия Евгеньевича и руководимого им отдела № 5 Института прикладной математики РАН относятся к теории движения и управления ракет, динамике космических полетов. Им, вместе с сотрудниками, параллельно с ОКБ С.П. Королева и другими, рассчитывались траектории полетов первого спутника Земли, первых полетов к Луне и создания ее спутников, полетов к Марсу и Венере. Была рассчитана возможность спуска человека с орбиты спутника, полет первого космонавта Юрия Гагарина и другие замечательные достижения советской космонавтики, принесшие славу нашей стране и нашей науке [1, 2]. Одновременно Д.Е. Охоцимский активно и творчески использовал вычислительную технику, был ее энтузиастом, следил за ее развитием и использовал ее в своих работах и работах своего коллектива.
2. Первые, пионерские работы на ЭВМ
Исследования полетов в космосе, как и другие работы института, требовали большого объема сложных вычислений и опирались на использование электронных вычислительных машин (ЭВМ), которые создавались в те же годы, для решения тех же задач, на новые методы
расчета и средства программирования. Вычислительный центр ИПМ (ОПМ - Отделения прикладной математики МИАН имени В. А. Стеклова, как он назывался в первые годы из соображений секретности) был одним из самых первых в стране, его вычислительная машина М-20 имела заводской номер 1. Институт объединял физиков, математиков, механиков, программистов и создателей вычислительных машин. Среди них широко известные в области программировании лица: А.А. Ляпунов, М.Р. Шура-Бура, Э.З. Любимский, Ю.И. Янов, И.Б. Задыхайло, В.С. Штаркман, Д.А. Карягин и многие другие. Разработчиками машин во главе с А.Н. Мямлиным были созданы машины “Восток”, Рефал-процессор ЕС-2702, многопроцессорные суперкомпьютеры МВС-100 и МВС-1000 в 1990-е годы и в наши дни 100К, названный в честь юбилея М. В. Келдыша.
Дмитрий Евгеньевич был не просто пользователем передовой вычислительной техники, не ограничивался помощью вычислителей и программистов, он проявлял живейший интерес ко всем новейшим веяниям в развитии и использовании ЭВМ. Интересовался новинками, включая средства системного программирования, поощрял их освоение и внедрял их в работы руководимого им отдела. Первой работой в отделе на ЭВМ был расчет действия сильного взрыва в атмосфере - это был ведущий профиль работ, которыми занимались в только что созданном институте. Вычислительный центр ОПМ тогда был оснащен механическими вычислительными машинами “Мерседес“ [3]. Но уже создавались первые отечественные вычислительные машины. Использование ЭВМ БЭСМ-2, по современным меркам убогой (сравнимой, наверное, с компьютером хорошего мобильного телефона), позволило Дмитрию Евгеньевичу с сотрудниками получить точное решение задачи, недоступной по сложности и объему вычислений для расчетов на “Мерседес“ [3, 4].
Другой работой этого начального этапа применения ЭВМ, в которой Дмитрий Евгеньевич был среди пионеров и энтузиастов даже в ИПМ, были создание методики и расчет времени существования спутника. Эта работа опубликована в особом выпуске “У спехов физических наук” в 1957 году, накануне запуска первого спутника, вместе с другими трудами по космической тематике. В этой работе был применен метод численного осреднения движения спутника в атмосфере для расчета времени его существования [2, 5]. Вычислительных машин было мало, время работы на них было остро дефицитным. Об этом можно судить по письму М.В. Келдыша в 1956 году с просьбой выделить 30 часов машинного времени для расчетов полетов спутников [6]. В.А. Егоров, например, считал траектории полетов к Луне, на основании которых вскоре проектировали первые полеты к ней, по ночам, на “Стреле”, потихоньку, вне плановых работ [2, 7, 8].
3. Работы по символьным вычислениям на ЭВМ
Пионерским был зачин Д.Е. Охоцимского и в области преобразований формул на ЭВМ [9]. Идея научить компьютер проводить преобразования формул в традициях привычной классической математики привлекала многих первопроходцев в области компьютерных вычислений. Работы в области небесной механики занимали среди них ведущее место благодаря большому заделу в классических методах, типах задач, в необходимости работать с громоздкими выражениями [10-12]. Сейчас эта область получила имя компьютерной алгебры (КА) [11-13]. Дмитрий Евгеньевич построил решение в задаче о разгоне космического аппарата двигателем малой тяги (электроракетным) с орбиты спутника до ухода его в межпланетный полет. Две асимптотики для раскручивающейся спиральной траектории строились в виде формальных степенных рядов в окрестности сингулярных точек (центра притяжения и бесконечности, до которых продлевалась в обе стороны спираль разгона) и соединялись в регулярной области численно. Расчет был проведен на машине “Стрела”.
Это была реализация программы по компьютерной алгебре на ЭВМ и построение асимптотических разложений, прозвучавшей в пленарном докладе академика А.А. Дородницына на Первой Всесоюзной конференции по программированию в 1956 году [13]. Тогда
же ей была посвящена работа А. А. Стогния, предложившего алгоритм дифференцирования функции и построения аналитического решения на МЭСМ, одной из первых отечественных ЭВМ [13, 14]. Расчет траектории полета аппарата с использованием компьютерной алгебры поставил Дмитрия Евгеньевича в ряд пионеров нового направления в программировании.
Построение асимптотических разложений в автоматическом режиме с помощью рекуррентной процедуры на ЭВМ происходило по следующей схеме. В области действия асимптотик, вблизи центра притяжения и вдали от него, имеется малый параметр £ (переменная) - расстояние от центра притяжения в первом случае и величина, ему обратная, во втором. Асимптотики в той и другой области строились в виде степенных полиномов по степеням X, причем переменные масштабированием приводились к величинам ~ const.
Оператор производной в форме Xjd / d% преобразует степенной полином Xа£ в XiaiX с коэффициентами, умноженными на показатель степени каждого монома. В левых частях уравнений движения собирались старшие относительно малого параметра члены, а в правых частях - переменные и их комбинации, имеющие множителем положительную степень малого параметра. Таким образом, уравнения принимают рекуррентный вид, и их левые части образуют систему уравнений, линейную относительно входящих в нее переменных.
Вычисление переменных в виде полиномов начиналось заданием нулевых их коэффициентов - постоянных. Одни из них определялись при выделении особенностей, масштабировании переменных, другие суть произвольные постоянные и задавались произвольно (их значения определялись в процессе решения краевой задачи при соединении асимптотик участком численного счета). Подставив полиномы с известными коэффициентами при £ в правые части уравнений, в силу их рекуррентности в правой части имеем известные коэффициенты при первой степени X как функции нулевых коэффициентов полиномов. Для определения коэффициентов при первой степени X имеем линейную систему уравнений в левой части с известными свободными членами. Если определитель этой системы не равен нулю, все коэффициенты при первой степени X определяются. Процедуру повторяем и определяем нужное число коэффициентов полиномов вплоть до заданной степени X .
Определитель левой части системы уравнений может обращаться в нуль независимо от номера степени X , если имеет место вырождение системы уравнений, например, резонанс. Тогда система должна быть преобразована к невырожденному виду. Если имеет место вырождение при определенной степени X (из-за переменных коэффициентов от X d / dX ), то один из коэффициентов - произвольная постоянная; ее значение задает траекторию из семейства, представляемого асимптотикой. Построение асимптотик в виде полиномов автоматизировалось с помощью программ для работы со степенными полиномами, которые задавались векторами коэффициентов с фиксированным положением коэффициента при данной степени £. Система программ в машинных кодах была разработана Т.И. Фроловой при консультации А. С. Фролова. Это была одна из первых отечественных программ по КА [10, 15].
Продолжением этой задачи стала диссертация Г.Б. Ефимова, аспиранта Дмитрия Евгеньевича. Спираль разгона вблизи центра притяжения была не единственной особой траекторией, а включала целое семейство, переменные задачи представлялись полиномами Фурье с аргументом - полярным углом р, с коэффициентами в виде полиномов по степеням малого параметра X, монотонной функцией расстояния до центра притяжения. В компьютерной алгебре эти объекты носят название рядов Пуассона. Совместно с Т.И. Фроловой был разработан достаточно сложный комплекс программ для работы с этими рядами на “М-20” и решена серьезная и громоздкая задача [16]. Работы по КА для задач небесной механики и механики космического полета проводили в отделе А.П. Маркеев, М.Л. Лидов с сотрудниками,
А.Г. Сокольский, В. А. Сарычев с С. А. Гутником, в наши дни - А.С. Кулешов, М. А. Ваш-
ковьяк и др. [10-12]. Дмитрий Евгеньевич вошел в комиссию Академии наук по автоматизации программирования.
4. Программистские работы в других направлениях
Дмитрий Евгеньевич интересовался всеми новинками в области компьютеров и программирования и осваивал их, в том числе лично и с ближайшими помощниками. Когда в ИПМ появилась импортная машина с дисплеем (без полного матобеспечения и документации), он организовал ее освоение, на ней же была выполнена анимация движения модели шагающего робота и эволюция галактик при их гравитационном взаимодействии. Последняя знакома многим: она в течение многих лет была заставкой популярной телепередачи “Очевидное -невероятное”. Эти пионерские работы показали мощь компьютерной визуализации и внесли заметный вклад в соответствующие области науки [17-19].
Пятый отдел ИПМ участвовал в разработке траекторий полетов к Луне, Марсу, Венере, к их искусственным спутникам. Были проведены пионерские работы по баллистике, управлению и навигации полетов аппаратов в космосе, создавались большие комплексы программ [2, 8]. По предложению М.В. Келдыша и С.П. Королева, в ИПМ был создан Баллистический центр для обеспечения управления полетом пилотируемых кораблей и автоматических аппаратов. На основе разработанных алгоритмов и программ были созданы программные комплексы для управления полетом комических аппаратов на всех участках и этапах полетов [19, 20]. Работа баллистического центра обеспечивала повседневное сопровождение большого числа космических аппаратов и, из-за большого объема работ, зачастую круглосуточных, требовала автоматизации при использовании этих программных средств. Потребовалось создать комплексы автоматизированной обработки поступающих с пунктов слежения данных и интерактивные системы реального времени высокой производительности для управления полетом космических аппаратов. Операторы баллистики выполняли лишь функции контроля за процессами в системе и могли оперативно вмешиваться в них.
Для создания комплекса потребовалось разработать его облик и реализовать целый ряд системных и программных идей. В его состав входило несколько ЭВМ, выполнявших вычисления, и машина управления ими. Был создан супервизор - надстройка над операционными системами машин для обеспечения их совместной работы. Разработан монитор для комплексного управления задачами (баллистическими расчетами) и данными (потоками информации) с банком данных для информации различного рода. Вместе с двумя другими Баллистическими центрами центр ИПМ в течение многих лет успешно обеспечивал и обеспечивает полеты многочисленных отечественных космических аппаратов. Дмитрий Евгеньевич вложил много сил в создание комплекса, старался, чтобы он соответствовал самым современным достижениям отечественной вычислительной техники, системного и программного обеспечения, чтобы операторы баллистики центра (немногочисленные в сравнении с персоналом других центров) имели максимум удобств в своей нелегкой работе [20-22].
Еще один большой комплекс работ был связан с ракетно-космической системой “Энергия-Буран”. Проведенный по поручению М.В. Келдыша анализ американской многоразовой системы “Спейс-шатл” показал, что она имеет двойное назначение и США могут с ее помощью создавать серьезную угрозу безопасности страны [8, 23]. На высшем уровне было решено создавать аналогичную систему “Энергия-Буран”. ИПМ и отдел приняли в ее разработке самое активное участие, в том числе в научном и программном обеспечении спуска орбитального корабля “Буран” на аэродром в автоматическом режиме. Сюда входили работы по моделированию различных участков полета, разработка алгоритмов управления, создание матобеспечения бортового вычислительного комплекса, проверка бортового программного обеспечения для участка спуска. Полет и посадка “Бурана” в автоматическом режиме прошли успешно. Американский аэрокосмический журнал назвал посадку “Бурана” выдающимся нашим достижением после первого спутника и полета Гагарина [23].
5. Исследования программистского плана в робототехнике
С конца 1960-х годов Дмитрий Евгеньевич вместе со значительной частью сотрудников отдела и учениками начал осваивать новую область - робототехнику [2, 19]. В процессе этих исследований развивались и применялись различные области искусственного интеллекта, системного программирования и теории управления. Разрабатывались различные аспекты машинного видения, элементов искусственного интеллекта, компьютерной графики и др. [24-27]. Для построения алгоритмов движения роботов, с учетом препятствий, определения положения в пространстве, выбора пути движения и т.п. разрабатывались алгоритмы многоуровневого типа [24]. Были разработаны и реализованы программные системы управления ситуацией и движением робота [25]. Дмитрий Евгеньевич с увлечением отслеживал развитие различных направлений и задач, погружался в обсуждение возникающих проблем и идей, прилагал много сил для реализации их в макетах и образцах роботов разного рода и нескольких поколений. Программистская компонента всех этих работ была, очевидно, весьма значительна, в том числе и системная компонента, которую в отделе развивали в сотрудничестве и параллельно с работами программистов других отделов и смежных организаций, занимавшихся этой темой [26].
6. Выводы
В процессе многолетних работ по механике космического полета и робототехнике Дмитрий Евгеньевич выполнил многочисленные исследования с применением самых совершенных на тот момент средств вычислительной техники и программных средств. Он стимулировал их развитие в отделе и вместе с другими отделами института принимал в них самое активное участие. В процессе этих работ в отделе выросла целая школа прекрасных специалистов высокого уровня - как в области механики и управления, так и в программировании.
Работа поддержана грантами РФФИ 09-01-00299 и НШ.1123.2008.1.
СПИСОК ЛИТЕРАТУРЫ
1. Келдыш М.В. Избранные труды. Ракетная техника и космонавтика / Келдыш М.В.; под ред.
B.С. Авдуевского, Т.М. Энеева. - М.: Наука, 1988. - 430 с.
2. Прикладная механика и управление движением: сб. статей, посвященный 90-летию со дня рождения Д.Е. Охоцимского [Электронный ресурс]. - М.: ИПМ им. М.В. Келдыша, 2010. - 368 с. - Режим доступа: http://keldysh.ru/memory/okhotsimsky.
3. Казакова Р.К. Точечный взрыв в атмосфере / Р.К. Казакова // Прикладная механика и управление движением. - М., 2010. - С. 107 - 118.
4. Расчет точечного взрыва с учетом противодавления / Д.Е. Охоцимский, И.Л. Кондрашова, З.П. Власова [и др.] // Труды Математического института им. В.А. Стеклова. - М.: Изд-во АН СССР, 1957. - Т. Ь. - 150 с.
5. Охоцимский Д.Е. Определение времени существования искусственного спутника Земли и исследование вековых возмущений его орбиты / Д.Е. Охоцимский, Т.М. Энеев, Г.П. Таратынова // УФН. -1957. - Т. 63, Вып. 1а. - С. 33 - 50.
6. Келдыш М.В. О выделении машинного времени на ЭВМ для расчетов по ИСЗ. Письмо М.А. Лаврентьеву / М.В. Келдыш // Ракетная техника и космонавтика. - М., 1988. - С. 234 - 235.
7. Егоров В.А. О некоторых задачах динамики полета к Луне / В.А. Егоров // УФН. - 1957. - Т. 63, Вып. 1а. - С. 73 - 117.
8. Охоцимский Д.Е. Прикладная небесная механика и управление движением / Д.Е. Охоцимский, Т.М. Энеев, Э.Л. Аким [и др.] // Прикладная механика и управление движением. - М., 2010. -
C. 328 - 367.
9. Охоцимский Д.Е. Исследование движения в центральном поле сил под действием постоянного касательного ускорения / Д.Е. Охоцимский // Космические исследования. - 1964. - Т. 2, № 6. - С. 817 -842.
10. Ефимов Г.Б. Компьютерная алгебра в Институте прикладной математики им. М.В. Келдыша [Электронный ресурс] / Г.Б. Ефимов, Е.Ю. Зуева, И.Б. Щенков // Математическое моделирование. -2001. - Т. 13, № б. - С. 11 - 18. - Режим доступа: http://library.keldysh.ru/prep_ls.asp; Efimov G.B. On the History of Computer Algebra at the Keldysh Institute of Applied Mathematics / G.B. Efimov, I.B. Tshenkov, E.Yu. Zueva // SoRuCom 200б. J. Impagliazzo, E. Proydakov ^ds.). - Schpringer, IFIP AICT 357, 2011. - Р. 220 - 227.
11. Ефимов Г.Б. Из истории развития и применения компьютерной алгебры в ИПМ им. М.В. Келдыша / Г.Б. Ефимов // Математичні машини і системи. - 2003. - № 2. - С. 9б - 105; Ефимов Г.Б. Из истории развития и применения компьютерной алгебры в Институте прикладной математики имени М.В. Келдыша / Ефимов Г.Б., Зуева Е.Ю., Щенков И.Б. - М., 2003. - (Препринт ИПМ № 27). - Режим доступа: http://library.keldysh.ru/prep_ls.asp.
12. Грошева M.B. История использования аналитических вычислений в задачах механики [Электронный ресурс] / M.B. Грошева, Г.Б. Eфимов, В.А. Cамcонов. - М.: ИПМ им. М.В. Келдыша РАН, 2005. - 87 с. - Режим доступа: http://library.keldysh.ru/prep_ls.asp; Ефимов Г.Б. Об истории использования отечественных систем символьных преобразований в механических приложения [Электронный ресурс] / Г.Б. Ефимов, М.В. Грошева // Математичні машини і системи. - 2008. - № 1. - С. 85 -90. - Режим доступа: http://library.keldysh.ru/prep_ls.asp; Ефимов Г.Б. Из истории отечественной компьютерной алгебры [Электронный ресурс] / Г.Б. Ефимов, М.В. Грошева // Математичні машини і системи. - 2009. - № 2. - С. б1 - б7. - Режим доступа: http://library.keldysh.ru/prep_ls.asp.
13. Ершов А.П. Становление программирования в СССР. Ч.1. Начальное развитие. Ч.2. Переход ко второму поколению языков и машин / Ершов А.П., Шура-Бура М.Р. - Новосибирск: ВЦ СО АН СССР, 197б. - 42 с.; 41 с. - (Препринт № 12, № 13); Кибернетика. - 197б. - № б. - С. 141 - 1б0.
14. Стогний А.А. Решение на ЦВМ одной задачи, связанной с дифференцированием функций / А.А. Стогний // Проблемы кибернетики. - 19б2. - №7. - С. 189 - 200.
15. Ефимов Г.Б. Работы Д.Е. Охоцимского по разгону космического аппарата с малой тягой и исследования по полетам с малой тягой в Институте прикладной математики / Г.Б. Ефимов // Прикладная механика и управление движением. - М., 2010. - С. 57 - 72.
16. Ефимов Г.Б. Предельное решение в задаче об оптимальном разгоне аппарата с малой тягой в центральном поле / Г.Б. Ефимов // Космические исследования. - 1970. - Т. 8, № 1. - С. 2б - 45.
17. Платонов А.К. Алгоритмы построения изображения на экране дисплея / Платонов А.К., Боровин Г.К., Карпов И.И., Лазутин Ю.М., Ярошевский В.С. - М., 1972. - (Препринт № б7/ИПМ АН СССР).
18. Козлов Н.Н. Приливное взаимодействие галактик / Н.Н. Козлов, Р.А. Сюняев, Т.М. Энеев // ДАН СССР. - 1972. - Т. 204, № 3. - С. 579 - 582.
19. Платонов А.К. О построении движений в баллистике и мехатронике / А.К. Платонов // Прикладная механика и управление движением. - М., 2010. - С. 127 - 222.
20. Аким Э.Л. Движение искусственных спутников Земли. Межпланетные полеты / Э.Л. Аким, Т.М. Энеев // Прикладная механика и управление движением. - М., 2010. - С. 7 - 28.
21. Аким Э.Л. Определение параметров движения космического летательного аппарата по данным траекторных измерений / Э.Л. Аким, Т.М. Энеев // Космические исследования. - 19б3. - Т. 1, №1. -
С. 5 - 50.
22. Информационно-вычислительная интерактивная система для баллистического обеспечения полета космических аппаратов / Э.Л. Аким, А.Н. Мямлин, Г.С. Попов [и др.] // Труды 4 Объединенных научных чтений по космонавтике. Секция “Прикладная небесная механика и управление движением”. - М., 1980. - С. 5 - 15.
23. Сихаулидзе Ю.Г. Слово об академике Д.Е. Охоцимском / Ю.Г. Сихаулидзе // Прикладная механика и управление движением. - М., 2010. - С. 273 - 291.
24. Охоцимский Д.Е. Алгоритмы управления шагающим аппаратом, способным преодолевать препятствия / Д.Е. Охоцимский, А.К. Платонов // Известия АН СССР, техническая кибернетика. - 1973. - № 3. - С. 3 - 10.
25. Макаров И.М. Научные проблемы программного обеспечения робототехнических систем / И.М. Макаров, Д.Е. Охоцимский, А.К. Платонов // Программное обеспечение промышленных роботов. - М.: Наука, 198б. - С. 5 - 20.
26. Платонов А.К. Системное программное обеспечение задач робототехники / А.К. Платонов, Ю.М. Лазутин, В.С. Ярошевский // Программное обеспечение промышленных роботов. - М.: Наука, 198б.- С. 110 - 122.
27. Зуева Е.Ю. Компьютерное зрение в ИПМ им. В.М. Келдыша РАН - история развития / Е.Ю. Зуева [Электронный ресурс] // Математичні машини і системи. - 2009. - № 4. - С. 18 - 26. - Режим доступа: http://library.keldysh.ru/prep_ls.asp.
Стаття надійшла до редакції 14.07.2011