Найденные нами решения отражены в некоторых статьях сборника. Кроме того, обнаружилось: любой известный нам недостаток социализма оказывается – прямо или через долгую цепочку взаимосвязей – следствием нехватки возможностей тогдашних информационных технологий. Вывод очевиден: в новом социализме этих недостатков не будет. Правда, будут другие: ничто не совершенно. Но лучше жаловаться на мелкий жемчуг, чем на жидкий суп.
Увы, значительная часть задач, выявленных в ходе исследования, выходит за пределы познаний меня, Кравецкого и Мараховского. Для их решения нужны специалисты соответствующего профиля (и весьма высокого уровня).
Скажем, задачу целеполагания – выработки единой цели развития общества в целом – можно формализовать, похоже, только на основе математической теории рефлексии – осознания своих и чужих мыслей. Она создана всего полвека назад, так что профессионалов в ней очень немного. Вдобавок её автор Владимир Александрович Лефевр четверть века назад переехал из Москвы в Ирвайн, так что основная часть знатоков рефлексии нынче обитает в Калифорнии, а привлечь их к разработке алгоритма целеполагания удастся разве что приглашением в соответствующую исследовательскую организацию (и за очень ощутимые деньги: в Калифорнии заработки высоки даже по меркам СГА).
В приложении к сборнику приведены документы, разработанные мною совместно с Кравецким и Мараховским (с существенным вкладом Сергея Васильевича Лукьяненко). В них кратко изложены причины предстоящего перехода к социализму, обрисован предварительный перечень задач, подлежащих решению ещё до этого перехода, и набросан проект организации, способной их решить (увы, авторы проекта не смогут в ней работать: там нужны другие профессии – и другой уровень профессионализма). По примерной оценке, на работу организации понадобится – по нынешним ценам – миллион долларов в месяц. Сборник можно рассматривать как заявку на соответствующий грант.
Та половина института «Пищепромавтоматика», где работаю я, делает АСУТП – автоматизированные системы управления технологическими процессами. Долгое время я обращал сравнительно мало внимания на деятельность другой половины, где рождались АСУ, то есть просто автоматизированные системы управления – уже не аппаратурой, а людьми. Хотя и было у нас немало общего: в частности, изрядную часть исходной информации для АСУ даёт автоматизированный учёт и контроль продукции, входящий в епархию АСУТП.
Но основная часть задач АСУ – планирование производства – остаётся вне сферы интересов технологов. И я заинтересовался ею, лишь когда сбои советской плановой экономики стало уже невозможно списывать на всяческие привходящие обстоятельства. И когда рассекретилось, что даже первые советские пятилетки – официальный образец эффективности планирования – были фактически провалены. То есть в начале перестройки.
Тем более что централизованное планирование – основа государственной в ту пору идеологии: коммунистической. Ведь если не управлять всей экономикой из одного центра – к чему всю её делать казённой собственностью?
Конечно, в коммунизме всегда присутствовала и идея попроще, всего из двух арифметических действий: отнять и разделить. Но она всегда подчинялась высокой цели централизованного планирования – без него «отнять и разделить» становится простым разбоем.
Зато плановое управление эту идею освящает. Сможет единый хозяин из единого центра распорядиться всеми собранными ресурсами наилучшим образом – станет лучше жить всем, даже тем, у кого ресурсы изъяты.
Недаром Карл Генрихович Маркс предлагал пролетариям Британии выкупить всю собственность у всех её хозяев. Гарантировать им прежние доходы. А самим процветать за счёт того избыточного продукта, который образуется при рациональном использовании этой собственности.
Задача планирования, хотя и требует всех четырёх арифметических действий, принципиально несложна. И вроде бы должна легко создать такой избыток.
Почему болтов и гаек не бывает поровну
«То есть как это не бывает? – возмутитесь вы. – Возьми по горсти того и другого, наверни по гайке на каждый болт – и порядок». Ну что же, установление взаимно однозначного соответствия – метод надёжный. Но когда закончите наворачивать, что-нибудь останется в избытке.
«Так почему бы не докупить недостающее?» Вопрос резонный. Для тех, кому никогда не приходилось бегать по магазинам в поисках срочно понадобившейся кисточки, клапана для смывного бачка, катушки белых ниток…
«Но почему же не производится столько, сколько нужно?» А давайте подсчитаем, сколько именно нужно.
Допустим, нужно стране сегодня болтов и гаек по 1 000 000 штук. Ну что же. Из метра шестигранного прутка болтов выходит 5, гаек – 40. Пруток катают на стане «Полонез» – по 2 500 метров в сутки. Гайки сверлят на станке «Менуэт» – по 400 в смену, а нарезают на станке «Вальс» – по 200 в смену. Болты обтачивают на станке «Танго» – по 1 000 в сутки, нарезают на станке «Румба» – по 700 в сутки.
Подсчитали, сколько всего оборудования вам надо? А теперь учтите: в «Полонез» входит 150 болтов с гайками, в «Менуэт» – 88, в «Вальс» – целых 391. В «Танго» болтов 76, а гаек всего 42–34 болта вворачиваются в резьбовые гнёзда корпуса. А в «Румбе» болтов 28, а гаек целых 103 – 75 наворачиваются на шпильки. Расчётный срок службы «Полонеза» – 10 лет, «Менуэта» – 7, «Вальса» – 3, «Танго» – 5, «Румбы» – 4. И все гайки с болтами, необходимые для их производства, тоже необходимо сделать.
Изменили план? Учли, сколько дополнительных станков нужно и сколько на них уйдёт дополнительного крепежа? Успели утереть с лица пот? Это хорошо, если успели. Потому что вбежал к вам в кабинет главный технолог по изобретениям и радостно сообщил: болты теперь можно не точить и нарезать, а штамповать на прессе «Ламбада» – целых 10 000 в смену. И болтов в этой «Ламбаде» всего 15 – но 2 из них диаметром 50 мм, а ещё один – целых 100. И гаек лишь 13 – но одна 200-миллиметровая. Так что план надо пересчитать – и срочно, иначе ещё год будем переводить металл в стружку.
На самом деле всё не так уж страшно. Все перечисленные цифры образуют давно известную математикам систему уравнений. Причём простейших – линейных. Которые нас учат решать ещё в школе.
В школьном учебнике системы линейных уравнений решают методом Крамера. Метод очень хорош для теории – используемые в нём определители находят в математике множество применений. Но один недостаток у метода есть. Число действий, необходимых для расчёта определителя, пропорционально факториалу количества уравнений.
Факториал числа – это произведение всех чисел от единицы до этого числа. И растёт факториал немыслимо быстро. Факториал четырёх – 24, восьми – 40 320, а двенадцати – уже 479 001 600! Решать методом Крамера можно лишь учебные примеры. А для реальных систем с десятками и сотнями уравнений он неприменим.
Такие системы часто встречаются в астрономии. Видный астроном, «король математиков» Карл-Фридрих Гаусс разработал в конце XVIII века новый метод решения систем линейных уравнений. Изумительно простой метод – число действий в нём пропорционально всего лишь третьей степени числа уравнений.
«Пропорционально» – не значит «равно». Но в методе Гаусса коэффициент пропорциональности достаточно мал. Для простоты примем его равным единице. Тогда для системы в десять уравнений нужна всего тысяча арифметических действий – работа для человека с карандашом и бумагой всего на час-другой. И даже систему в сотню уравнений можно решить за миллион действий – всего несколько недель. А если нанять для расчётов целую бригаду (как поступал Гаусс), то самые сложные астрономические расчеты можно выполнять в считанные дни.
Но план производства содержит столько уравнений, сколько разных видов продукции производится. В середине 1970-х годов, когда великий кибернетик Виктор[1] Михайлович Глушков впервые в СССР опубликовал те рассуждения, которые я сейчас упрощённо пересказываю, в СССР производилось 20 миллионов видов продукции. Значит, для расчёта плана необходимо было решить систему из 20 000 000 уравнений. И выполнить для этого 8 000 000 000 000 000 000 000 действий.
Устали считать нули? Ну, это можно сделать и не вручную, а на компьютере. Самый быстродействующий тогда советский компьютер выполнял в секунду 1 000 000 операций. И требовалось ему для расчета плана 8 000 000 000 000 000 секунд – примерно 16 000 000 000 лет.
Правда, в методе Гаусса многие действия можно выполнять параллельно. То есть подключить к делу сразу многие компьютеры. Да и сами компьютеры с каждым днем работают быстрее. Сейчас есть уже и с быстродействием миллиарды операций в секунду. И если подключить к делу целый миллион (а больше нет во всём мире) компьютеров со стомиллионным быстродействием, план для СССР можно будет вычислить всего за 160 лет…