Вообще, это я только для краткости обозначил два довольно обширных явления частоупотребимыми и уже затёртыми словами. Явления, которые за всем этим стоят, гораздо шире и глубже простых слов «рынок» и «план». На самом деле это – два подхода к решению проблем. А ещё более на самом деле – и сами подходы раскладываются по двумерному базису. То есть, являют собой пару значений из двух пар диалектических противоположностей. Пары противоположностей такие:
1. Коллективная или персональная оптимизация.
2. Прямая или косвенная оптимизация.
Из названий осей базиса мало что ясно, поэтому стоит их расшифровать и проиллюстрировать примерами.
Для начала введём понятие «целевая функция». Это – некоторая функция от интересующих нас параметров, которая в условных единицах показывает, насколько «хорошим» является для нас (точнее, для некоторой группы людей, которые и занимаются оптимизацией) каждое конкретное сочетание параметров.
Например, есть у человека цель забраться на вершину горы. Тогда за целевую функцию он может взять высоту своего нахождения относительно уровня моря – чем выше, тем лучше. Максимума данная функция очевидно будет достигать в самой высокой точке горы, что совпадает с желанием человека оказаться на её вершине.
Сразу видно, что целевая функция не всегда демонстрирует очевидные способы достижения её глобального максимума. Так, если человек в качестве критерия правильности своих действий возьмёт приращение значения целевой функции – высоты – между состояниями «до действия» и «после действия», то таковой выбор будет подталкивать его из каждой точки перемещаться в более высокую. Если гора имеет единственный пик и пологие, без впадин, склоны, то рано или поздно человек достигнет вершины. При наличии же, например, других, более низких пиков – локальных максимумов, человек вполне может «застрять» на одном из них. Ведь выбранный им критерий, при достижении человеком локального пика, будет свидетельствовать, что шаг в любую сторону ухудшает положение вещей – с локального пика человеку надо будет некоторое время спускаться, чтобы затем начать подъём на главный. (рисунок)
Уже из первого примера понятно, что оптимизация – не простой и не очевидный процесс. Даже если целевая функция во всех деталях описана. А ведь бывает, что её вид известен только приблизительно. В таком положении становится ещё тяжелее.
Однако оптимизационные задачи человек был вынужден решать с незапамятных времён – даже до своего формирования как вида в общем-то. Надо питаться, надо размножаться. Пища не всегда есть, следовательно, следует делать запасы, а не съедать всё сразу. В какой пропорции? Сколько съедать сразу, сколько оставлять в запасе, сколько отдавать потомству? Понятно, что при неочевидности решения и, самое главное, при неочевидности постановки задачи пути оптимизации будут разниться. И они разнятся. С самого начала разнятся.
Для начала прачеловеки сбиваются в стаю. Оказывается, что ряд проблем в стае решается эффективнее, чем вне её. Единственная человеческая особь не в состоянии завалить мамонта, но двадцать-тридцать особей, действуя согласованно, с этой задачей справляются. Это – первая намётка для коллективного решения проблемы. Но только намётка. В более широком смысле коллективное решение проблемы сводится не только к действиям, предпринимаемым для решения, но и к коллективному поиску решения. Охота на мамонта начинается с продумывания стратегии и тактики охоты. И вот тут появляются первые варианты – выработать план в результате обсуждения (коллективное решение), пойти на охоту и каждому ориентироваться по ситуации (персональное решение), прислушаться ли к словам вождя (промежуточный вариант). От выбора способа зависит результат.
Итак, коллективной оптимизацией называется совместный поиск метода решения и совместные действия по воплощению метода в жизнь. Персональной оптимизацией называется поиск метода и его воплощения одним человеком. В последнем случае, кроме того, возможно, что разные люди решая схожие задачи действуют в своих интересах, но против интересов друг друга. То есть, конкурируют.
Следует отметить, что при персональной оптимизации однако вполне возможны коллективные действия. Отличием методов является то, что коллективная оптимизация со стороны выглядит как работа некоторого единого механизма, а персональная – как совокупность работы отдельных его деталей. Но не сводится ли второе к первому? Вопрос правильный, но об этом чуть позже.
Второй момент, несколько более сложный для понимания – прямая и косвенная оптимизации. В примере с подъёмом на гору говорилось, что некоторый человек оценивает верность своих действий по приращению высоты. Собственно, это косвенная оптимизация и есть. «Главная» целевая функция задана абсолютными величинами высоты, но человек, забирающийся на гору, вводит вторую, вспомогательную целевую функцию – зависимость «хорошести» состояния, от предшествующего ему перемещения в пространстве. Чем больше было перемещение по оси Z, тем новое состояние лучше. Лучше чего? С одной стороны, лучше прежнего. С другой – просто лучше. Ибо «лучше» в данном аспекте понимается как значение вспомогательной целевой функции.
Иными словами, при косвенной оптимизации оптимизируется не основная целевая функция, а некоторая вспомогательная. При этом вводится предположение, что оптимизация вспомогательной целевой функции является тождественной оптимизации основной. Пример с горой, кстати, сразу показывает, что такое предположение не всегда верно.
То есть, прямая оптимизация – поиск максимума основной целевой функции. Косвенная оптимизация – поиск максимума вспомогательной целевой функции с предположением, что таким образом отыщется и максимум основной. (рисунок)
Рассмотрим для примера команду шахматистов. Их цель – сыграть десять партий против другой команды и как можно большее количество партий выиграть. Варианты стратегий различны. Один из них – распределиться по десяти доскам из расчёта один человек на одну доску и играть каждому по партии. Второй вариант – сыграть предварительно друг с другом для выяснения уровня мастерства и после этого решения принимать коллективно, опираясь на сведения о силе каждого члена команды. Первый вариант – персональная оптимизация, второй – коллективная. Следует отметить, что в обоих случаях решалась ровно одна и та же задача, причём целью была победа коллектива, а не отдельного шахматиста. Иными словами, персональная оптимизация вполне может использоваться для достижения общего блага.
Выигрыш в шахматной партии наступает, когда королю соперника поставлен мат. Следовательно, чем выше вероятность постановки мата, тем лучше. Повышение вероятности постановки мата сопернику – прямая оптимизация. Однако не всегда понятно, какие действия повышают вероятность, а какие понижают. Начинающий шахматист, в частности, может ввести для себя вспомогательную целевую функцию: качество ситуации оценивается по соотношению ценностей съеденных фигур самого шахматиста и его соперника. В некоторой степени такая вспомогательная функция является приближением основной. А шахматист, соответственно, занимается косвенной оптимизацией. Опять же следует отметить, что косвенная оптимизация в ряде случаев тоже позволяет решить проблему.
Теперь возникает вопрос, если на благо коллектива могут работать все способы, если все способы позволяют решить оптимизационную задачу, то что же лучше? Рынок, как метод персональной косвенной оптимизации, или план, как метод оптимизации коллективной и прямой? И есть ли разница, каким из способов пользоваться?
Тут я теряюсь в догадках – разочарует или заинтригует мой ответ. А ответ такой:
План всегда лучше рынка. Но им не всегда можно воспользоваться.
Чтобы лучше понять эту мысль, рассмотрим варианты шахматного соревнования, приводящие к совершенно разным стратегиям коллективной игры. Так, если партии не ограничены по времени, то для коллектива наиболее выгодная стратегия – поручить игру на всех досках самому сильному игроку из команды, а остальных наделить совещательным голосом, дабы исключить возможные ошибки по недосмотру со стороны наиболее сильного игрока.
Конечно, если цель команды именно выиграть наибольшее количество партий, а не поразвлечь всех игроков, её составляющих.
Действительно, при отсутствии временно́го лимита наилучшие ходы с наибольшей вероятностью вычислит наисильнейший же игрок. А остальные, не исключено, смогут помочь ему советом в тех местах, где он по какой-то причине лучших ходов не заметил. При этом команда имеет возможность вычислить наилучшего игрока, например, вышеописанным путём – проведением соревнования внутри команды.
Нестеснённый по времени игрок будет решать задачу прямой оптимизации – постановку мата сопернику. Ему нет нужды вводить какие-то вспомогательные функции для оценки своих действий. Грубо говоря, он может просто просчитывать все возможные ходы соперника для каждого своего хода, причём не на один ход вперёд, а до конца партии. В этом варианте очевидно будет достигнут наилучший вариант из возможных, что, собственно, и говорилось во фразе про абсолютное преимущество плана (как прямой коллективной оптимизации) над рынком (как оптимизации персональной и косвенной).
Однако в реальности шахматисты не располагают неограниченным временем. Партия как правило ограничена парой часов, а в ряде случаев так и вообще пятью минутами. Время начала партии опять же определено и не может быть сдвинуто, что существенно ограничивает эксперименты по поиску самого сильного игрока команды.
В данный момент я даже не рассматриваю ещё одно ограничение – требование к каждому игроку команды лично играть положенные ему партии.
В таких условиях преимущество наилучшей ранее стратегии постепенно начинает исчезать. Положим, например, что на все десять партий команде отведено пять минут. Причём, стартуют все партии одновременно. Легко видеть, что в этом случае наисильнейший игрок, буде он даже определён заранее, физически не успеет провести десять игр. И, соответственно, за счёт этого большую часть игр команда проиграет.
Здесь наилучшей стратегией для команды будет распределение игроков по доскам в соответствии с их физическими возможностями. То есть, наилучшему игроку поручат играть уже не все партии, а одну-две – то есть, столько, сколько он сумеет эффективно сыграть. Второму после него по силе – опять же одну-две и так далее. При ещё более жёстких лимитах времени описанная стратегия сведётся к своему предельному случаю: один игрок на одной доске.
Более того, игрокам (даже самым сильным) уже некогда будет просчитывать игру до самого конца. Малое время, отведённое на ход, вынудит игроков оптимизировать не основную, а вспомогательные функции – количество и стоимости съеденных фигур, некую «ощущаемую интуитивно» силу своего положения или слабость положения соперника и так далее. Да, от наилучшего в абсолюте варианта действительно приходится отказаться, но в обмен на это удастся достичь лучших результатов в данной конкретной ситуации.
Таких примеров можно привести ещё целое множество. Например, в большой по площади средневековой империи правитель вынужден делегировать власть своим представителям на местах. Даже понимая, что тем самым он теряет неоценимые преимущества централизованной власти. Централизованная власть действительно обладает возможностью концентрации и переброски ресурсов, которую власть наместников просто не в состоянии обеспечить из-за отсутствия у них права управлять другими областями. Однако если приказ из центра доходит до окраин за месяцы или даже годы, то оную концентрацию просто не удастся обеспечить вовремя. Когда враг уже на пороге, некогда ждать приказов из центра. Противостоять врагу надо здесь и сейчас. А приказ придёт тогда, когда его уже некому будет выполнять.
Аналогичным образом в воинских соединениях производится разделение полномочий командиров. В идеале, конечно, самый-самый генерал мог бы отдать приказы каждому солдату лично. И такие, заранее подготовленные и просчитанные приказы, выполненные идеальными исполнителями дали бы наилучший результат. Однако в реальности нет самого-самого генерала. Каждый из генералов имеет свои сильные и слабые стороны. И даже если бы самый-самый был, то у него просто не было бы времени для расчёта действий каждого солдата и не было бы возможностей достаточно быстро свои приказы до солдат доносить.
По этой причине даже в такой централизованной структуре как армия вводятся уровни полномочий. Генштаб управляет наиболее высоким стратегическим уровнем, командующие армиями решают вопросы, касающиеся стратегического функционирования их армий в соответствии с приказами генштаба, офицеры решают вопросы своих подразделений, причём, на каждой ступени в их полномочия вносится всё больше и больше элементов тактики (то есть, действий непосредственно «сейчас» – на коротких временных отрезках). Офицеры же самого низкого уровня отдают команды уже непосредственно солдатам.
В этих двух примерах видна всё та же закономерность – реальные условия накладывают ограничения на прямую коллективную оптимизацию, делая более выгодной персональную косвенную. Последняя однако несёт за собой настолько существенные проблемы, что в каждых конкретных условиях следует стремиться к сохранению наибольшей из возможных доли прямой коллективной оптимизации.
Проблемы же в основном такие: во-первых, персональная оптимизация в любом случае связана с личной целевой функцией каждого агента-оптимизатора. Личная же целевая функция по отношению к коллективной всегда является косвенной. Иными словами, желание каждого самому лично хорошо кушать вовсе не гарантирует того, что хорошо кушать будет каждый член их совокупности. Такое происходит из-за того, что личные интересы зачастую входят в противоречие с другими личными интересами.
Кстати, коллективные интересы аналогичным же образом входят в противоречие с личными, однако количество вариантов удовлетворения личных интересов при коллективной оптимизации существенно больше, чем оное при оптимизациях персональных.
Во-вторых, как это было показано в примере с горой, косвенная оптимизация далеко не всегда приводит к глобальному максимуму. Часто она может привести только к одному из локальных максимумов, а в некоторых случаях, так и вообще устремить ситуацию к худшему из возможных состояний.
В-третьих, свобода манёвра в плане концентрации и распределения её ресурсов у прямой коллективной оптимизации несопоставимо выше, чем у персональной косвенной. Грубо говоря, десять рабочих как коллектив смогут поднять такое бревно, которое каждый отдельный рабочий из их числа поднять не сможет.
Однако приведённые выше рассуждения говорят о том, что прямая коллективная оптимизация хоть и гораздо эффективней персональной косвенной, но не всегда возможна к выполнению в данных конкретных условиях на данных конкретных временных промежутках. И фразу «в каждых конкретных условиях следует стремиться к сохранению наибольшей из возможных доли прямой коллективной оптимизации» надо бы прояснить в плане того, когда, к чему и как стремиться.
Действительно, в этой фразе не содержится никаких конкретных критериев выбора рыночной или плановой стратегии оптимизации. А без них, как легко догадаться, делать выбор очень и очень непросто. Для того же, чтобы эти критерии разработать, следует внести в рассмотрение ещё одно понятие, которое лично мне в явном виде никогда не встречалось, поэтому я ввёл его сам лично и назвал «вычислительной мощностью системы».
Название, допускаю, не самое удачное из возможных, однако суть отражает. Смысл этого понятия в том, чтобы некоторым образом дать характеристику способности системы адекватно среагировать на стоящие перед ней задачи. Под «адекватностью» в данном случае понимается «наилучшим способом за минимальное время, не превышающее некоторый объективный временной предел». А упомянутый «временной предел» – это такое обобщённое понятие по фразам вида «дом надо потушить до того, как он сгорел дотла».
Вычислительная мощность, как численная величина – это значение некоторой функции над параметрами системы. Я пока не готов в явном виде предоставить эту функцию, однако попробую описать её характеристики.
Параметрами функции являются стоящие перед системой задачи. Результат функции – некоторая оценка выполнимости этих задач в рамках системы, времени, требующегося на их решение, и качества результатов решений задач. Для каждой задачи в рамках системы, по видимому, существует более одного варианта решения, которые можно воплотить в жизнь за время, меньшее предельного срока. Некоторые же задачи, напротив, за отведённое время системой решены быть не могут. Это создаёт определённые сложности в совокупной по всем задачам оценке вычислительной мощности, поэтому имеет смысл разбить суммарную вычислительную мощность на частные – по отдельным задачам. А совокупную вычислительную мощность считать как значение некоторой функции над частными вычислительными мощностями. Про эту совокупную функцию вполне ясно, что её значение тем больше, чем больше значения частных мощностей, однако, если некоторые частные задачи вообще не имеют решений, то таковое должно существенно понизить совокупную мощность даже если другие частные задачи решение имеют.
Теперь, после проделанного упрощения, рассмотрим уже вычислительную мощность относительно отдельных задач. Как уже говорилось, задача может иметь более одного решения в рамках предельного временного диапазона или не иметь ни одного. В случае отсутствия решений функция должна принять особое значение «решения нет». Если же решений несколько, то для каждого из них считается значение некоторой функции-характеристики решений, про которую известно, что она обратно пропорциональна времени, требуемому на решение, и прямо пропорциональна качеству этого решения (которое определяется, собственно, целевой функцией, о которой говорилось в начале статьи). Среди значений функции-характеристики для каждого решения следует выбрать наибольшее, которое будет считаться соответствующим наилучшему решению из возможных в данных условиях, и это же значение следует принять в качестве частной вычислительной мощности системы по отношению к данной задаче.
Функцию-характеристику решений можно усложнить, добавив в неё оценки рисков, потребления ресурсов и так далее, но не суть, смысл останется тем же:
Вычислительная мощность системы по отношению к данной задаче – это наибольшее значение функции-характеристики решения задачи в рамках рассматриваемой системы на всём множестве возможных её решений за допустимый для решения промежуток времени.
Совокупная же вычислительная мощность системы – это значение некоторой функции над значениями частных вычислительных мощностей каждой задачи, которые система призвана решать.
Вот эта самая характеристика – вычислительная мощность – и есть тот самый критерий, согласно которому следует делать выбор в пользу плановой или рыночной стратегии оптимизации.
Чем выше вычислительная мощность системы, тем выгоднее плановая стратегия в решении поставленных задач в рамках условий, в которых эта система работает.
Тут наверно стоит поточнее сказать, что имеется в виду под «системой». И заодно пояснить, что такое «условия, в рамках которых система работает». Если обращаться к примеру с шахматистами, то условия в этом примере – это правила игры, правила проведения турниров и состав команд. То есть, то, что задано «извне» по отношению к команде, и то, что сами игроки изменить не в состоянии. Команда же, как совокупность составляющих её интеллектов – это система и есть. Иными словами, условия — это неподдающееся контролю системы на данном этапе, система — то, что ищет решение среди возможных в данных условиях.
Надо отметить, что команда шахматистов определяется в качестве «системы» в отрыве от избранной ей стратегии. Как раз выбор стратегии победы – это и есть элемент того самого управления или оптимизации, который должен пресловутую победу обеспечить. И вот, чтобы выбрать стратегию, команда-система оценивает собственную вычислительную мощность, заранее установив (по-видимому, из предыдущего своего опыта) соответствие численного её значения и выбираемых на его основании пропорций между рыночной и плановой оптимизацией. То есть, между персональной косвенной и коллективной прямой.
При бесконечных запасах времени вычислительная мощность системы оказывается бесконечно же большой, что побуждает команду выбрать плановый подход – коллективную прямую оптимизацию. При крайне малых временны́х запасах вычислительная мощность, напротив, оказывается весьма малой, что свидетельствует в пользу предпочтения рыночной стратегии – персональной и косвенной оптимизации.
Ровно то же самое имеет место быть и в других примерах выбора стратегий. Так, при вторжении врага в отдалённые области средневековой империи государству как системе не хватает вычислительной мощности для централизованного отражения агрессии, что побуждает к делегированию полномочий и уменьшению централизации в пользу свободы действия наместников – эдакий вынужденный переход от плана к рынку. При отсутствии врагов на границах срабатывает обратный рефлекс – вычислительной мощности достаточно для планового развития экономики государства, что зачастую и проделывается. В общем, логика понятна.
Заодно становится понятным и другой, тщательно замаскированный обычно аспект. Часто при агитации за рынок против плана напирают на то, что плановая система не в состоянии реагировать на быстро меняющуюся ситуацию. Из этого делается вывод, что рынок в любом случае единственно правильный выбор. Хотя есть вполне очевидная альтернатива – повысить вычислительную мощность системы. Или даже просто воспользоваться уже имеющейся вычислительной мощностью.
Оптимизация может быть не только краткосрочной, то есть, отвечающей на вопрос «что нам делать прямо сейчас?». Имеет смысл смотреть в будущее и кроме решения задач наилучшим в данный момент способом, стремиться вдобавок к увеличению вычислительной мощности системы с целью перехода в будущем на более эффективную в рамках высокой вычислительной мощности плановую экономику.
И такие повышения мощностей в истории неоднократно наблюдались. Например, в античности мало кому удавалось создавать крупные и одновременно устойчивые империи. При увеличении расстояний способность центра управлять окраинами снижалась, что приводило к ослаблению способности империи сопротивляться как внешним, так и внутренним деструктивным элементам. Однако римляне решили эту задачу: по пути своего следования и по мере завоеваний они строили дороги и «античный телеграф». Таким образом, вычислительная мощность системы возрастала до невообразимых в те времена высот. Система получала возможность быстрой связи с окраинами, как в плане передачи приказов, так и в плане переброски армий. В результате Рим как огромное даже для нынешних времён государство продержался много веков, показав потомкам пример того, что вычислительная мощность животворящая делает.
Конечно, термины «вычислительная мощность» и «переброска армий» вместе странно смотрятся. Хотя по сути переброска армий в рамках данного термину «вычислительная мощность» определения – это оно самое. Элемент, так сказать, особого рода вычислений – решений системой насущных задач.
В результате разрушения связей между провинциями Римской империи и роста вычислительных мощностей соседних государств, Рим таки проиграл и распался. Подобное же мы пронаблюдали и в случае с Советским Союзом. Но оба примера никоим образом не показывают неэффективности плана. Нет, они говорят только о том, что план следует поддерживать адекватной сложности положения вычислительной мощностью. Это не всегда делается, откуда и проистекают всевозможные горькие катаклизмы.
А средства для роста вычислительных мощностей, они есть. Прогресс в компьютерных технологиях, достигнутый за последние три десятилетия, дал беспрецедентный в истории повод для роста вычислительных мощностей государств (в перспективе, конечно, одного государства – всепланетного). При таких раскладах грех не воспользоваться ситуацией. Плановая экономика с полным обсчётом всех технологических цепочек, мгновенной реакцией на изменения, полномасштабным и автоматизированным сбором статистики была возможна уже в девяностых. И такая система дала бы человечеству несопоставимо лучшие результаты, нежели главенствующий повсеместно рынок с небольшой долей государственного регулирования (преимущественно в области ограничений, а не созидания). Располагая куда большим объёмом статистики и технологических знаний, нежели у любой самой крупной корпорации, всепланетный Госплан за пару десятилетий решил бы проблему нищеты и даже бедности, устремил бы к нулю вероятность кризисов, позволил бы отказаться от войн по причине устранения противоречий между народами и классами (последнее вполне понятно – классы в данного рода системе довольно быстро бы вообще перестали существовать как явление). И всё это технически достижимо не то, что сегодня, а уже вчера. Цена вопроса планирования всей экономики – пара десятков современных среднестатистических компьютеров. Сбор статистики, конечно, дороже, но тоже технически достижим уже вчера – штрихкоды в кассах, видеокамеры для оценки загруженности магазинов, системы добровольного голосования и заказов, да оно ведь всё есть уже, надо только собрать всё это воедино.
Эффективная плановая экономика не невозможна, напротив, она – реальность сегодняшнего дня. По плану работают корпорации. Бюджеты государств – это план. Компьютеры и выход в сеть есть чуть ли не у каждого. А если и не у каждого, то всё равно особым чудом они давно уже не кажутся. Бери, как говорится, да пользуйся. Однако выше уже говорилось о таком недостатке персональной оптимизации, как противоречие персональных целевых функций. Некоторым людям их персональные цели диктуют борьбу с плановой экономикой. Не по причине её неэффективности для социума, а по причине её неэффективности для решения их личных задач. Сейчас у них есть возможность быть выше остальных, иметь больше материальных благ и прав, работать меньше, но иметь больше привилегий и так далее. Собственно, они вполне логичные на сегодняшний день процессы и тормозят. В том числе, при помощи излагаемых для потенциальных адептов рынка сказок о неэффективности плановой экономики.
← Ctrl ← Alt
Ctrl → Alt →
← Ctrl ← Alt
Ctrl → Alt →