Планиверсум. Виртуальный контакт с двухмерным миром - Александр Дьюдни
Шрифт:
Интервал:
Закладка:
Примерно с этого и началась работа над программой 2DWORLD. В первом семестре студенты под моим руководством не только описали в программе некоторый набор объектов и закон сохранения энергии, но и создали целую систему планет, вращающихся вокруг звезды. Особенную популярность у студентов завоевала одна из планет, которую они назвали Астрия. К концу первого семестра начались разговоры о том, чтобы нарисовать карту на этой планете и населить ее живыми существами — астрийцами. Я подавил эти стремления в зародыше: семестр подходил к концу, и до экзаменов оставалось всего ничего. Да и осуществить идею было нереально — мои студенты были не настолько уж сильными программистами.
В любом случае 2DWORLD оказалась очень полезной программой, и работать с ней было невероятно интересно. Особенно мне запомнился процесс формирования галактики из хаотического скопления звезд. Короче говоря, я пришел к выводу, что проект удался и что я был прав, когда решил ограничить физическое пространство модели двумя измерениями. Благодаря этому студенты поняли, что такое настоящее моделирование.
Но самым ценным в этой работе, по-моему, было то, что кроме навыков программирования студентам пригодились познания в самых разных областях науки. Им пришлось изучить немало технической литературы. И, более того, чтобы дать им представление о том, как можно развивать подобные идеи, я заставил их прочесть «Флатландию» Эббота, «Случай во Флатландии» Хинтона и «Сферландию» Бюргера. Во всех этих научно-фантастических произведениях описаны модели двухмерной вселенной, населенной такими же двухмерными обитателями. Такое домашнее чтение должно было пробудить у студентов интерес к дальнейшему изучению этой темы.
В следующем семестре я хотел, чтобы мои студенты написали программу, моделирующую взаимодействие внутри пищевой цепочки, но они были так увлечены программой 2DWORLD, что я уступил и позволил им дальше работать над ней. За семестр они успели описать поверхность Астрии и даже создали модели одноклеточных организмов, живущих в воде. Некоторые из этих существ «пожирали» своих собратьев, так что моя задумка о пищевой цепочке все-таки осуществилась, хотя и не совсем так, как я рассчитывал. Должен признаться, к этому времени я и сам очень сильно увлекся. Частенько мы засиживались в лаборатории допоздна, наблюдая за тем, как крохотные создания скользят и мечутся в своем двухмерном мирке, охотясь друг на друга.
Но вскоре семестр закончился и начались экзамены. Я думал, что распрощаюсь с 2DWORLD по крайней мере до осени, но сразу после экзаменационной сессии ко мне пришли трое студентов, очень способные ребята. Им хотелось продолжить проект, и они даже нашли себе работу в городе, чтобы остаться здесь на лето. Один из них, четверокурсник с факультета биологии Уинстон Чен, хотел разработать более сложные модели живых организмов. Двое других студентов изучали программирование. Хью Ламберт мечтал создать «гибкую, многоцелевую систему запросов», которая позволила бы обмениваться информацией с 2DWORLD. Алиса Литтл предложила идею о том, как улучшить и ускорить работу программы. Энтузиазм ребят произвел на меня сильное впечатление, и я не смог им отказать. К тому же компьютер, на котором они собирались работать, все равно летом простаивал. Да я и сам был рад руководить проектом и дальше.
Сейчас, вспоминая события того лета, я вижу, что именно этот разговор стал для нас переломным моментом. Множество раз, заходя в лабораторию, я обнаруживал там трех студентов. Наша лаборатория была оснащена одной из новейших «больших ЭВМ», подключенной к графическому терминалу и еще к нескольким терминалам в разных частях здания. Обычно, заглядывая в комнату, я видел одну и ту же картину: кто-то из студентов сидит за терминалом и экспериментирует с кодом программы, а двое других склонились над столом и увлеченно обсуждают распечатки. Время от времени я предлагал им свою помощь. Они вежливо рассказывали мне о ходе экспериментов, но обычно я чувствовал себя скорее зрителем, чем участником. Меня восхищали модели живых существ, которые придумал Чен, и новая система моделирования, предложенная Алисой Литтл. Ее идея заключалась в том, чтобы программа могла «сфокусироваться» на небольшом участке двухмерной вселенной, где выполнялось моделирование, а ситуация за пределами этого участка выстраивалась приблизительно. Вместе с Ламбертом они пытались разработать систему словесных запросов, чтобы можно было выяснять, какие «фоновые процессы», не отображаемые на экране, выполняются внутри системы.
К концу лета я рассчитывал, что «неразлучная троица» распадется. Студенты получили дипломы, и двое из них могли бы устроиться на высокооплачиваемую работу в компьютерной индустрии. Но Литтл решила писать диссертацию по вычислительной технике, а Ламберт остался работать на кафедре лаборантом. Меня их решение слегка насторожило, особенно когда они оба попросились ко мне в ассистенты. Я выбрал Литтл из-за ее стремления к научной карьере, но, к своему удивлению, на первом же занятии по математическому моделированию увидел среди студентов Ламберта. Я с ужасом понял, что и этот учебный год пройдет под знаком программы 2DWORLD.
Кто бы сомневался. Новое поколение студентов уже было наслышано о проекте и ни над чем другим они работать не хотели. Похоже, 2DWORLD задевала что-то в душах ребят. Может, они просто не успели повзрослеть? Или так проявлялся дух времени, увлечение компьютерными играми вроде «Войн на орбите» или «Космических гонок»? И все же я был убежден, что на моих занятиях студенты должны заниматься чем-то более серьезным. Поэтому первые две недели мы посвятили изучению генераторов случайных чисел.
К 2DWORLD мы перешли не сразу. К тому времени она успела превратиться в большую и достаточно сложную программу, которую нужно было долго изучать. Нам с Алисой Литтл понадобилось несколько недель на то, чтобы ознакомить студентов с работой программы и подготовить для них отдельные рабочие проекты. Чен оставил нам довольно странную модель экосистемы: океан, населенный несколькими видами растений и животных, причем и те и другие — плотоядные. По-видимому, в двухмерном мире плотоядные растения оказались в более выгодном положении, чем в нашей реальности. Кроме того, Чен придумал животное, отдаленное похожее на лягушку, и назвал его «трог». Это существо могло жить и на суше, и в океане. С другой стороны, новая система моделирования, разработанная Алисой, просто творила чудеса: благодаря ей, добавление новых деталей почти не увеличивало время вычислений. Наверное, именно это и уберегло 2DWORLD от чрезмерной громоздкости.
(adsbygoogle = window.adsbygoogle || []).push({});