Журнал «Компьютерра» №36 от 04 октября 2005 года
Шрифт:
Из этого тупика есть два выхода. Первый — условно экстенсивный. Примерно таким пользуются метеорологи и астрономы. Будучи не в состоянии прогнозировать мультипараметрические системы индуктивно, они начали активно использовать суперкомпьютеры. Выглядит это так. Берется суперкомпьютер (одна штука), загоняются в него все возможные данные, как-то: сила ветра, температура и атмосферное давление по разным метеостанциям, а также изменение в реперных точках, а суперкомпьютер гоняет терафлопы, симулируя ситуацию и выдавая прогноз. Прогноз может быть довольно точным, но, разумеется, не всегда. Риту вот американские синоптики переоценили, хотя вероятность того, что ураган ослабнет, захлебнувшись в теплых прибрежных водах,
Второй вариант как раз вытекает из темы нашей статьи: возможность виртуализации экономики путем создания замкнутой экономической модели в рамках компьютерной игры. Достигнув определенного уровня развития, этот игровой мир начинает сращиваться с реальностью. На eBay начинают продавать за реальные деньги виртуальные компании, появляется твердый курс виртуальной валюты к доллару или евро, а артефакты, дающие преимущество в игре, становятся предметом спекуляции.
И когда сращивание реального и виртуального миров доходит до такой степени, мы получаем симулятор жизни. Иными словами, мы не прогнозируем развитие событий — мы просто проигрываем событие в системе с заданными условиями. Происходит симуляция экономических процессов, в которой участники не воображаемы, а реальны, их поступки и реакции не ограничиваются допущениями прогноза, а вполне осязаемы.
Достоинства этого способа несомненны: мы практически избавляемся от возможных погрешностей оценок, то есть нам не нужно что-то округлять или обобщать — любые действия участников будут лишены неизбежных в других моделях неопределенности и допущений.
В результате мы получаем полигон для обкатки экономических инноваций, позволяющий обойтись без упреков в экспериментах на народных чаяньях. Представьте, что приватизацию 1993 года и шоковую терапию сначала проверяют на сообществе какого-нибудь крупного игрового сервера. Тяжело вздыхаете? Так-то… С большой долей вероятности можно допустить, что многих ошибок удалось бы избежать.
Конечно, и этот способ не лишен недостатков. И главный из них — примитивизм системы. Любое копирование жизни, даже самое точное, всегда оказывается скуднее оригинала, упуская полутона и мелкие детали.
Есть сложности и с социальной выборкой. Все-таки заставить отождествлять для себя игру и жизнь можно лишь небольшую группу людей, как правило, молодых. И даже для самых приспособленных к подобному отождествлению жизнь и игра — разные вещи, где совершенно иные риски и ставки. Не случайно в идеализированных условиях игры, гораздо ярче, чем в жизни, проявляется оптимум Парето — в руках 20% игроков сосредотачивается 80% ресурсов. И всякие попытки админов убрать это распределение приводят к серьезным нарушениям игрового процесса. Сложные системы требуют сложных решений.
И все же модели, основанные на РПГ, представляются наиболее перспективными полигонами для обкатки самых разных задач (не только экономических), где прогнозировать приходится поведение людей и социальных групп.
РЕПОРТАЖ: Виртуальное присутствие
Москву посетил Никлаус Вирт (Niclaus Wirth). Известен он в России прежде всего как создатель языка Pascal. Знаменитый профессор Высшей политехнической школы в Цюрихе (ETH; в ней, кстати, учились Альберт Эйнштейн и Джон фон Нейман) и директор Института компьютерных систем при ETH, Вирт уже оставил преподавание и активную научную деятельность.
Приехал он в Москву в сопровождении своего давнего коллеги, профессора той же ETH Юрга Гуткнехта, активно продолжающего его дело. Вашему покорному слуге удалось побывать на лекции и последовавшей затем пресс-конференции, которая проходила в Главном лектории Политехнического музея,
Организовано было все очень по-домашнему, чему способствовал интеллигентный юмор лектора и живая реакция состоявшей в основном из студентов аудитории, хором помогавшей переводчику, спотыкавшемуся то на «cardinal type», то на «source code».
Так как все мы теперь завязаны на компьютеры, то от той картинки, которую мы ежедневно видим на экране, в значительной степени зависит наш стиль жизни. По крайней мере, не меньше, чем от телевизионной картинки. Язык программирования Pascal и его потомки Modula-2 и Oberon, как и вся остальная деятельность их создателя Никлауса Вирта, — явление общекультурное, их значение не ограничивается рамками компьютерных технологий. Такое заявление я могу себе позволить, опираясь на взгляды Вирта, никогда не устававшего противопоставлять коммерческий и творческий подход к программированию. Можно выразиться так: швейцарец Вирт является бОльшим противником пресловутого «американского» подхода к человеческой деятельности (когда успех измеряется ростом продаж в текущем квартале), чем многие наши доморощенные «патриоты», муссирующие тему о «бескорыстии русского народа». «Сама мысль о том, что человек может испытывать удовлетворение от хорошо выполненной работы — просто потому, что эта работа творческая и профессиональная, признана абсурдной. Не ценится ничего, кроме экономического успеха и его денежного выражения» — это из интервью восьмилетней давности. Правда, в отличие от этих самых «патриотов», Вирт знает, о чем говорит, потому что довольно долго проработал в Америке, в самой колыбели новых технологий — Стэнфордском университете, а в молодости даже учился у изобретателя оконного интерфейса Дуга Энгельбарта.
Вирту глупо задавать вопрос типа «а сами-то что сделали такого, чтобы критиковать Microsoft?» Он сильно выделяется из плеяды многих знаменитых теоретиков-академиков, блестящие труды которых так и остались главой в истории компьютерных технологий, не найдя никакого применения на практике. Например, про Oberon поклонники говорят так: он во всем лучше Java, кроме количества затраченных рекламных денег. Sun официально никогда не заявляла, но и не отрицала, что в основу Java были в значительной степени положены идеи Oberon, что выразилось в выплате Вирту (точнее, видимо, ETH) некоей (небольшой, впрочем, по свидетельству Вирта) суммы за исходные коды. И самим понятием виртуальной машины мы тоже обязаны Вирту, — еще в начале 70-х, одновременно с языком Pascal, он придумал абстрактную P-машину, исполняющую специальный P-код, который интерпретировался на каждом конкретном устройстве.
Избранные вопросы-ответы на лекции и после нее
Что вы думаете о C#?
— Это просто реакция Microsoft на Java, а если вы хотите, чтобы я ответил на этот вопрос что-либо позитивное, то скажу, что C# — это не такой кошмар, как С++.
Как вы относитесь к case-технологиям, в частности к языку UML?
— Я не большой поклонник UML. Графики подходят для реализации маленьких идей, но не для больших мыслей.
Почему коммерческие продукты делаются не на Oberon, а на С++?
— Это вас нужно спросить, как представителей университета, — а почему университеты перешли на С++?
В свое время Sun купила лицензию на Oberon. Означает ли это, что при написании нового компилятора придется покупать лицензию?
— Нет, конечно. Мы всегда следовали принципу открытых исходников. Компания Sun, как и некоторые другие, купила исходные коды. За очень небольшие деньги, кстати. Они досконально исследовали этот код и через семь лет после выхода Oberon выпустили Java. В Java заимствовано несколько идей из Oberon, но они коррумпировали его синтаксисом языка С. С точки зрения продавцов это был умный ход.