Журнал «Если», 1994 № 01
Журнал «Если», 1994 № 01 читать книгу онлайн
ЖУРНАЛ ФАНТАСТИКИ И ФУТУРОЛОГИИ
Содержание:
Брайан Олдисс.
ВРЕМЯ ЧЕЛОВЕКА.
Марина Арутюнян. МИЛЫЕ БРАНЯТСЯ…
Джеймс Уайт.
БОЛЬШАЯ ОПЕРАЦИЯ.
Александр Громов. МЕДИЦИНА СТАВИТ ВОПРОСЫ.
КОМУ РЕШАТЬ?
Черри Уайлдер.
ЛЕТО
ДВОЙНИКОВ.
Олег Орлов. ПРОДАЕТСЯ СЛАВЯНСКИЙ ШКАФ.
Мак
Рейнольдс.
УТОПИЯ.
Симон Кордонский. НА РУИНАХ «СВЕТЛОГО БУДУЩЕГО».
Гарри Гаррисон.
СТАНЬ СТАЛЬНОЙ КРЫСОЙ!Роман-игра.
Андрей Родионов. ИГРА — ДЕЛО СЕРЬЕЗНОЕ.
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
Не является исключением и разработка программ для компьютеров: те же озарения и конструирование, тот же критерий качества. Но имеется и существенное отличие: продукт «отчуждения» авторского «я» обладает поведением, которое автор описывает в виде алгоритма работы программы, предусматривая ее реакцию на разнообразные внешние воздействия, в том числе с памятью о результатах предыдущих воздействий (конечный автомат).
Это единственное отличие компьютерных программ от других продуктов творческой деятельности человека является принципиальным.
Создание компьютерной программы ближе к акту сотворения живого организма, чем рождение, например, новой научной теории или художественного фильма. И мы имеем право сделать такой вывод в силу того, что граница между «живым» и «неживым» определяется в том числе и степенью сложности самостоятельного поведения того и другого. Конечно, нельзя утверждать, что компьютерная программа является «живой» в полном и привычном понимании этого слова, но ее самостоятельная «жизнь» после отчуждения от автора должна являться предметом внимательного разбора и изучения.
Кроме поведения, компьютерная программа обладает еще одним свойством «живого» — способностью к размножению. Чаще всего этот процесс совершается опосредованно при участии человека, который «клонирует» объектный код программы при ее перезаписи, но в случае распространения исходных текстов программы, возрастает и число ее «мутаций» — видоизменений, выполненных другими программистами.
Существуют и саморазмножающиеся программы, примером которых является печально известный класс программ-вирусов.
Большинство программ подвержены еще и действию «естественного отбора», опосредованного через человека, при котором лучшие программы вытесняют более слабых конкурентов. При этом долгожители часто задают начальный уровень качества и определяют ключевые идеи, широко используемые в дальнейшем.
Многие программы обладают большими или меньшими способностями к самоорганизации (еще одна особенность, присущая живой материи). Они способны самостоятельно упорядочивать те данные, которые накапливаются в их памяти за время взаимодействия с внешним миром и даже «отчуждать» их в виде отчетов, файлов, баз данных, а иногда и в виде целых «организмов», способных к дальнейшему самостоятельному существованию.
Большие программные системы вообще могут вести себя столь сложно и разнообразно, что даже их разработчики часто не представляют себе детально и точно, какие процессы в данный момент происходят в такой системе или предсказать в точности ее дальнейшее поведение. А если в системе используются критерии вероятностного выбора поведения в зависимости от обстановки, эта задача может быть затруднена принципиально.
Итак, компьютерная программа вообще похожа на живое существо. А компьютерные игры?
Создавая компьютерную игру, автор определяет законы, по которым существует игровая Вселенная, разрабатывает объекты, подчиняющиеся этим законам, наделяет их поведением, проектирует их внешний вид, трансформации и прочее.
Как уже говорилось, иногда этот мир может быть простым и жестко детерминированным, а иногда весьма сложным, подчиненным вероятностным законам и способным к продолжительной жизни даже без участия играющего.
Объекты, существующие в таком мире, могут, в частности, быть сконструированы и как самостоятельно взаимодействующие друг с другом существа, обладающие сложным поведением, способностью к размножению, смерти, самообучению и многими другими свойствами.
Лет десять назад на «больших» компьютерах был очень популярен целый класс игр под названием
«
Star
Trek
»
(«Звездный путь»). Игры с таким названием писались разными авторами и для разных машин, но в основном под влиянием одного и того же одноименного популярного тогда телесериала. Действие происходило в далеких мирах, где космический корабль
«
Enterprise
»
с большим экипажем на борту под командованием капитана Кирка путешествовал среди звезд, сражался с вражеским флотом, защищал свои Звездные базы, заправлялся энергией и ремонтировался на них, снова сражался и т. д.
Конечно, компьютерная графика в те времена была менее совершенна, чем теперь, и в лучшем случае предоставляла возможность работать с символами на алфавитно-цифровых дисплеях, но все равно
«
Star
Trek
»
захватывал воображение, и многие из нас ностальгически вспоминают о нем до сих пор. А чего стоили «разборы полетов» с разгоряченными после игры коллегами-программистами по дороге домой в метро! Соседи по вагону с удивлением прислушивались к нашим разговорам:
«…и как только я вышел из гиперпространства, смотрю — Клинтонов штук пять, а с ними еще и Ромулан. Дай, думаю, не снимая защиты, врежу им всем фотонными торпедами, а надо-то было сразу бить фэйзером — близко они стояли… Потом еле до базы добрался, но только вошел в док — атаковали и базу…»
Романтика звездных сражений настолько увлекала, что в определенный момент кто-то из нас начинал мечтать о своей собственной игре
«
Star
Trek
».
Не всем удавалось воплотить эту мечту в новую работающую программу, но многие до сих пор безуспешно ищут на персональных компьютерах свой старый «игровой идеал».
Не устоял перед искушением написать собственный
«
Star
Trek
»
и я — и он оказался моей первой игровой программой, на которой я ощутил всю необыкновенную прелесть такой работы. Программа имела специальный генерационный файл данных, содержащий около пятисот параметров, относящихся к различным объектам игры, с вероятностными критериями их поведения. Это гарантировало невозможность точного предсказания дальнейшего развития событий в любой игровой ситуации даже для автора, что и придавало игре привлекательность в моих глазах.
Звезды и планетные системы зарождались и умирали, подчиняясь сложным параметрическим законам с вероятностными критериями: взрывались сверхновые, отказывало оборудование космического корабля, а поведение экипажа и врагов могло оказаться совершенно различным в сходных ситуациях. Наконец на каком-то этапе разработки стало возможным предоставить игру самой себе на длительный промежуток времени, например на ночь, и, вернувшись утром, узнать, как развивались события. Примерно в это же время я решил добавить в программу возможность одновременной работы с нескольких терминалов для разных участников одной и той же игры, и на этом этапе (примерно через год после начала работы) разработка закончилась.
Итоги были подведены мной значительно позже и, честно говоря, обрадовали и даже немного испугали. Я был рад, что написал большую и сложную программу, в полном объеме выполнив поставленную задачу. Но одновременно стало ясно, что на сей раз я соприкоснулся с чем-то большим, чем обычное программирование. Я приобрел некоторый опыт, который совершенно не предполагал получить в процессе работы и сделал некоторые выводы, не имеющие прямого отношения к программированию в общепринятом понимании этого слова.
Во-первых, мне довелось на практике убедиться в справедливости концепции, носящей название «Лучший из миров». Суть этой философской и физической концепции, как известно, заключается в том, что мы живем в «лучшем из миров» в том смысле, что наша Вселенная является устойчивой в силу вполне определенного соотношения значений таких физических констант, как скорость света, постоянная Планка, заряд электрона и т. п. Соответствующими расчетами показано, что лишь в очень небольшой области изменений мировых констант множество вселенных, в которых они существуют, остается устойчивым. В случае больших отклонений значений этих констант материя превращается в хаос или, что то же самое, вовсе не может организоваться из первичного хаоса. Так что нашей Вселенной повезло…
