Научные доклады научно-практической конференции студентов, аспирантов,
молодых ученых и специалистов «Интегрированные модели, мягкие вычисления,
вероятностные системы и комплексы программ в искусственном интеллекте». М.:
Физматлит. 2009. T.2, с. 72–89.
МОДЕЛИРОВАНИЕ ЭКОНОМИЧЕСКИХ АГЕНТОВ ПРИ
ПОМОЩИ КОНЕЧНЫХ АВТОМАТОВ
И.И. ГНИЛОМЕДОВ
УДК 519.713.4
Аннотация. В работе предложен новый подход к построению агентных экономических моделей. Агентные модели, предложенные ранее, использовали обучение агентов при помощи нейронных сетей, набор нечетких инструкций и прочие обучающие алгоритмы.
Предложенная в данной работе модель основывается на том, что процесс производства каждого агента может быть представлен в виде конечного автомата. Показано, что на основе автоматного подхода можно естественным образом промоделировать такие базовые экономические понятия, как промежуточные товары, комплементарные товары, товары субституты. Будут приведены результаты экспериментов с моделью, подтверждающие, что поведение модели согласуется с экономической теорией.
Ключевые слова: Агентные модели, экономическое моделирование, конечные автоматы.
Abstract. We offer a novel approach to building agent-based economic models. Agent-based models considered before have been using agents based on neural nets, fuzzy instructions, and other learning algorithms. Our model represents the production process of each agent as a finite state machine. We show how to naturally model basic economic notions such as intermediate goods, complementaries, substitutes, and others. We present experimental results that show that our model’s behaviour agrees with economic theory.
Keywords. Agent-based models, economic modeling, finite state machines.
1. Введение и постановка задачи. Многоагентные подходы играют все большую роль при построении экономических моделей. Существующие агентные экономические модели, как правило, применяют агентов с предопределенными стратегиями поведения или используют различные алгоритмы машинного обучения для адаптации агентов.
В настоящей работе рассматривается экономическая модель, предполагающая, что поведение экономических агентов при производстве одних товаров/ресурсов из других, близко к поведению конечных автоматов. Выбранный математический объект (конечный автомат) является достаточно простым вычислителем, а, следовательно, прост для анализа. Есть основания полагать, что грамотным построением конечного автомата можно достаточно хорошо приблизить реальное поведение экономических агентов. Предложенный способ подходит для моделирования рынков абсолютной и монополистической конкуренции.
Целью данной работы является разработка экономической модели, пригодной для программной реализации и исследование адекватности этой модели на эксперименте. Ключевым аспектом модели будет применение конечных автоматов для эмуляции поведения экономических агентов.
2. Обзор существующих экономических моделей. Классическим примером экономического моделирования является модель общего равновесия Вальраса. В этой модели рассматривается экономика, в которой производится N различных видов продукции при помощи M p = ( p1,..., pN )T – вектор различных факторов производства. Пусть w = ( w1,..., wM )T – вектор цен на факторы произцен продукции, а водства. На рынке существует K фирм, находящихся в состоянии абсолютной конкуренции. Считаем, что каждая фирма способна произвоq (i ) = (q1( i ),..., pNi ) )T – вектор выпусдить любой из N товаров. Пусть x ( i ) = ( x1(i ),..., xM) )T – вектор затрат факi ка продукции i-й фирмой, а торов производства i-й фирмы.
Производственная функция задана неявно:
(i ) = (q1(i ),..., qNi ), x1(i ),..., xM) ) = 0.
( (i Условие максимизации прибыли фирмы:
i = pT q (i ) wT x ( i ) max при (i ) = (q1(i ),..., qNi ), x1(i ),..., xM) ) = 0.
( (i Проведя поиск условного максимума методом Лагранжа, можно получить законы общего равновесия Вальраса.
1. В условиях рыночного равновесия общий доход потребителей вместе с общей прибылью всех фирм должен равняться общей стоимости товаров.
2. Стоимость совокупного избыточного спроса тождественно равна нулю, причем это условие должно выполняться для всех цен, а не только для равновесных.
Такой подход обладает следующими недостатками:
• моделируется идеальная ситуация, в которой все агенты ведут себя оптимально;
• рассматривается равновесие в статической модели с неизменной обстановкой на рынке, тогда как в реальности рынок стремится прийти к равновесию в мире с постоянно меняющимися условиями.
В работе [1] строится агентно-ориентированная модель валютного рынка. Жизнь виртуального экономического мира состоит из серии раундов. В каждом раунде курсы валют фиксированы и одинаковы для всех участников. Агенты принимают решение: какую валюту они будут продавать, какую покупать и в каком объеме. После того, как все решения будут приняты, вычисляется избыточный спрос или предложение по каждой валюте. В зависимости от величины и знака избытка определяется сдвиг цен на следующий раунд. Принимая решения, агенты руководствуются прогнозами новостных изданий. Как отмечает автор этой работы, в наши дни мир переполнен источниками, предлагающими свои экономические прогнозы. Поэтому агенты модели в работе [1] фокусируют свое внимание лишь на ограниченном наборе поставщиков новостей. Агенты каждому источнику приписывают индекс доверия и на основании этих данных строят собственный прогноз.
Стратегия поведения агентов (построение доверительных индексов и принятие решения, сколько и чего покупать) реализована при помощи самообучающихся нейронных сетей.
В работе [2] описывается модель, рассматривающая товарные и валютные рынки, а также рынки ценных бумаг и рабочей силы. Модель представляет собой гибрид нейронной сети и системы нечеткой логики (Neuro-Fuzzy Expectation Generator – NFEG). При создании экономического мира применяется концепция ограниченной рациональности агентов. Приведем сценарий работы модели:
1. Задается набор нечетких правил вида:
IF (unemployment = "high") THEN (inflation = "low").
2. Правила преобразуются в нейронную сеть. Сеть обучается алгоритмом контролируемого обратного распространения (Controlled Error Backpropagation (CEBP)):
контроль за тем, чтобы соблюдались нечеткие правила, сформулированные на шаге 1;
контроль за «ограниченной рациональностью» агентов;
контроль за тем, чтобы поведение нейронной сети имело экономический смысл.
3. На каждом шаге моделирования происходит дообучение сети, так как каждый следующий период предоставляет информацию для обучения.
Более широкий обзор существующих вычислимых экономических моделей можно найти в работах [3–6].
С другой стороны, агентный подход с использованием конечных автоматов широко используется в приложениях. Значительную роль автоматный подход и SWITCH-технология играет при разработке систем, реагирующих на события, и в технологии современного программирования [7–10]. В работе [11] многоагентные системы, основанные на конечных автоматах, применены для компьютерной 3D-анимация; в работе [12] предложен способ ориентирования и поиска пути агентов в игровом виртуальном пространстве на базе конечных автоматов. Существуют также и другие приложения.
Однако автору данной работы не удалось найти описаний экономических моделей, представляющих агентов в виде конечных автоматов.
3. Описание модели.
3.1. Базовые определения. Эмуляция экономического мира в данном случае состоит из последовательности раундов. В каждом раунде выделяются три стадии: регистрация предложений о продаже, закупка ресурсов и производство. В процессе моделирования будем наблюдать за такими явлениями, как динамика цен на товары, динамика объема продаж и динамика производственной активности агентов.
Конечный автомат – это направленный граф с пометками на вершинах FA =< V, E, > V – множество вершин графа. – алфавит автомата, множество входных воздействий.
e =< v1, v2, > означает, что можно переходить из вершины v1 в вершину v2, если на вход подали. В автомате выделяют вершину ных вершин автомата.
Часто имеет смысл каждому ребру автомата приписывать еще и выходное воздействие. Тогда: Tr =< V, E,, >, (часто в литературе такие автоматы называют трансдьюсерами [11])..
Путем в автомате называется упорядоченное множество:
где ILabel = { i,..., L1}, выходной меткой: OLabel = { i,..., L 1}.
Циклом называется путь, у которого начало и конец совпадают. В разд. 4. 5 приведен пример автомата. Более подробную информацию о конечных автоматах и трансдьюсерах смотри в работе [13].
3.2. Моделирование процесса производства. Представим производство каждого предпринимателя в виде конечного автомата (будем называть его производственным автоматом). Состояние конечного автомата соответствует стадии готовности изделия. Начальное состояние автомата соответствует «нетронутой» заготовке. Далее заготовка переходит из цеха в цех, подвергаясь на каждом этапе определенной обработке. Это соответствует переходу конечного автомата из одного состояния в другое.
Каждая процедура обработки требует затрат определенных ресурсов. Пусть входным воздействием ребер конечного автомата будет соответствующий набор ресурсов (эти ресурсы необходимо будет затратить на переход). У каждого экономического агента будет внутреннее хранилище ресурсов. Переход будет осуществляться только в том случае, если в хранилище есть достаточное количество ресурсов.
Отметим, что и в реальном и в моделируемом мире товар, изготовляемый на одном производстве, может являться сырьем для другого производства. Эти два понятия обозначают одно и то же: ресурсы. В настоящей работе будет упоминаться слово «сырье», когда речь идет о его использовании в производстве и «товар», когда речь идет о готовом изделии (результате производства). Слово «ресурс» будет употребляться, когда нет смысла специально отмечать: речь идет о потреблении, или изготовлении.
Заготовка переходит от одного этапа обработки к другому до тех пор, пока не достигнет окончательной готовности. Это будет соответствовать приходу конечного автомата в терминальное состояние. В конце концов, изделие помещается на склад готовой продукции, где и ожидает своего поступления на рынок.
Промоделируем это следующим образом: добавим переход из терминального состояния в начальное. Сопоставим этому переходу набор ресурсов, необходимый на упаковку продукции и перевозку на склад, или на рынок. Сопоставим каждому ребру еще и «выходное воздействие» – набор произведённых ресурсов. Наличие как входного, так и выходного воздействия является «естественным» для конечных автоматов.
Цикл в конечном автомате производства будет аналогичен производственному циклу агента. Входная метка этого пути будет соответствовать затратам агента на отработку производственного цикла. Выходная метка цикла – произведенные в процессе товары.
3.3. Моделирование рынка. Механизм рынка призван решать один из основных вопросов экономики: как перераспределять произведенные ресурсы.
Опишем работу агентов с виртуальным рынком. Пусть производитель хочет продать ресурс A. При этом он регистрирует на рынке предложение о продаже, указывая свою цену и количество товара. Когда агент хочет купить ресурс, он обращается к виртуальному рынку с просьбой выдать ему предложения о продаже данного ресурса. Рынок случайным образом выбирает часть зарегистрированных предложений о продаже и возвращает этот список агенту. Предприниматель выбирает наиболее выгодные предложения и производит закупку. Этим моделируется то, что в реальном мире участники не обладают полными знаниями о рынке.
3.4. Интерпретация базовых аспектов экономики. Пока рассматриваемая нами система предполагала моделирование при помощи линейного автомата. Точнее говоря, автомат представлял собой простой цикл, возможно с пред-периодом. Действительно, изделие продвигалось от одной стадии готовности к другой, при этом автомат последовательно изменял свое состояние.
Однако в реальном производстве дела обстоят так, что один и тот же станок можно использовать в разных целях. Немного разные способы использования станков дают возможность заводу производить не единственный товар, а целый модельный ряд, или даже группу товаров. Такое разнообразие товаров очень легко интерпретировать в автоматной модели производства. Для этого позволим автомату ветвиться. В зависимости от того, какие ребра проходит производство, будут изготавливаться, например, кроссовки той или иной модели, или даже домашние тапочки.
В реальном мире предприниматели постоянно адаптируют свою стратегию производства и поведения на рынке, но они не могут мгновенно вносить требуемые изменения. В рассматриваемом подходе к моделированию производства легко интерпретируется задержка в принятии решений. Если автомат находится в состоянии S и оно не является начальным, то прежде, чем переводить производство на принципиально новое русло, придется завершить цикл.
Поведение предпринимателей, как правило, лишь близко к оптимальному так как:
агенты не обладают полными знаниями об окружающем мире;
предприниматели не вычислительные центры и не могут просчитать вообще все возможные варианты.
В модели это выражается так: при построении производственной стратегии (куда продвигаться по автомату), или стратегии поведения на рынке, программные агенты руководствуются простой логикой.
Приведем описание стратегии поведения агентов, применяемой в численных экспериментах с моделью. Для этого потребуется понятие:
производственный цикл – замкнутая последовательность переходов конечного автомата. Вначале агент выбирает какой-либо производственный цикл и придерживается его. Периодически агент запускает процедуру анализа обстановки на рынке. Она заключается в том, что при помощи обхода в глубину (смотри раздел «Алгоритмы для работы с графами» в работе [14]) перебираются все возможные производственные циклы. Каждый цикл оценивается с точки зрения прибыльности. Если в результате найден более выгодный цикл, то агент далее придерживается уже его.
При закупке ресурсов, агент запрашивает у рынка предложения о продаже, выбирает из них наиболее выгодное и закупает необходимое количество. Таким образом, агент в нашей модели – это пара: < FA, Strat >, где FA – конечный автомат, описывающий производство, а Strat – алгоритм, управляющий производством и отвечающий за стратегию поведения на рынке.
В экономической теории часто рассматривается понятие сопряженных товаров. Под сопряженными понимаются взаимозаменяемые или взаимодополняющие товары. В экономической теории понятие сопряженных товаров, как правило, используют при изучении реакции рынка на изменение цен. Для этого рассматривается показатель перекрестной эластичности спроса:
Q0B, Q1B – величина спроса на благо B до и после изменения цены где Перекрестная эластичность показывает, на сколько единиц изменится величина спроса на товар B, если цена на товар A изменится на 1%.
Если товары A и B никак не сопряжены, то их показатель перекрестной эластичности будет равен нулю.
Если A и B – взаимозаменяемые товары (субституты), то перекрестная эластичность будет положительной, так как повышение цены на товар B приведет к тому, что часть покупателей перейдет на потребление товара A и спрос вырастет.
Если же товары A и B взаимодополняющие (комплементарные), то их перекрестная эластичность отрицательна. Повышение цены на товар B приведет к уменьшению на него спроса, а, следовательно, и спроса на товар A, так как они используются вместе.
Вот естественный способ интерпретации взаимозаменяемых/дополняющих товаров. Комплементарными товарами будут те, которые часто используются в последовательных ребрах конечного автомата, а субститутами – те, которые часто используются в параллельных ребрах конечного автомата. Отношение товаров моделируется следующим образом: производственный ресурс – продукт: если A производится из B, то ребра автомата, производящего A содержат B, как входной ресурс.
3.5. Пример работы экономического агента. Рассмотрим конечный автомат, моделирующий производство каждого предпринимателя: вершина 0 – стартовое состояние автомата, вершины 3, 5 – терминальные (рис. 1).
Рис. 1. Конечный автомат, моделирующий производство На ребрах знаком «-» помечен расход ресурсов (входные воздействия), а знаком «+» – готовая продукция (выходное воздействие).
Пусть приведенный автомат производства принадлежит агенту A.
Пусть на рынке есть еще и агенты B1,..., BN. Их производства не известны, но известно, что они поставляют на рынок ресурсы R1, R2, R3, R4.
Опишем сценарий работы этих агентов в двух производственных циклах.
1.1 Регистрация предложений по продаже. Пусть агенты B1,..., BN в совокупности зарегистрировали на рынке такие предложения:
1.2. Принятие решения, что производить. Агент A, проанализировав положение на рынке, счел, что путь {0, 1, 2, 3} – дешевле и решил избрать его. Замечание: зарегистрированные на рынке предложения о продаже являются тайной для агента A. Он руководствовался, например, ранее накопленной статистикой о ценах.
1.3. Закупка ресурсов. Агент A хочет купить R1 в количестве 1.0.
Он посылает рынку запрос на покупку R1. Рынок случайным образом выбирает два предложения из трех имеющихся. Например, {, }. Агент A выбирает наиболее выгодное предложение: и закупает ресурс R1.
1.4. Переход. Агент A передвигается по ребру 0 1.
На протяжении раундов 2 – 4 происходят аналогичные действия, но у агента A уже нет возможности выбирать: в каком направлении двигаться.
Предположим, что в раунде 3 агенты BF, BR, BS регистрируют предложения по продаже ресурса R3:, Допустим, агент A некоторым образом обнаружил наличие дешевого товара R3 при полном отсутствии предложения на товар R4. В этой ситуации становится ясным, что выгоднее двигаться по пути {0, 4, 5}, но агент A не может переключиться на него мгновенно: необходимо завершить производственный цикл. В раунде 4 агент A завершает производственный цикл: 3 0.
5.1. Регистрация предложений по продаже. Пусть поведение B1,..., BN аналогично описанному в п. 1.1. Агент A регистрирует предложение по продаже:, руководствуясь соображением: мои издержки на производство 10 единиц R3 составили 1.0 * 1. + 1.0 * 1.0 + 10.0 * 1.0 = 12.0. Следовательно, цена меньше 1.2 экономически невыгодна, а по цене 2.0 можно продать товар тем, кому не повезет и рынок не выдаст:.
5.2. Принятие решения что производить. Агент A решает производить по пути: {0, 4, 5}.
5.3. Закупка ресурсов. Аналогично п. 1.3.
5.4. Переход. Агент A передвигается по ребру 0 4.
Затем переход 4 5, а после 5 0. Агент A может регистрировать предложения вида, если, конечно, он уверен, что он монополист на рынке товара R4.
4. Эксперименты.
4.1. Кривая производственных возможностей. Кривой производственных возможностей называется график функции зависимости максимального объема выпуска товара A при фиксированном объёме выпуска товара B, который может произвести данное общество при текущем развитии экономики. Эта кривая должна быть выпуклой вверх. Это соответствует закону возрастания экономических затрат.
Согласно этому закону производство каждой следующей единицы любого блага потребует отказа от все большего числа других благ.
Пользуясь этим законом можно формально доказать выпуклость вверх кривой производственных возможностей. Рассмотрим экономический мир в двух состояниях X, Y. Пусть в состоянии X производитQ A товара A и Q B товара B, а в состоянии Y соответственно:
Q A + и Q B и,, достаточно малы. Тогда закон возрастания экономических затрат можно интерпретировать, как то, что отношеB убывает с ростом Q : каждые следующие произведенные ние:
единиц товара B требуют отказываться от все больших единиц товара A. Однако при достаточно малых, отношение близко к проQ A = F (Q B ). следовательно, эта производная изводной функции монотонно убывает, следовательно, кривая выпукла вверх.
Сценарий данного эксперимента выглядит так. Пусть производится только два вида товаров: автомобили (A) и одеяла (B). В виртуальном мире есть набор агентов, и у каждого есть свое производство (свой производственный автомат). Производство каждого агента характеризуется своим отношением автомобили/одеяла. Больше того:
каждый агент может настраивать свой автомат по-разному. За счет настройки он может варьировать отношение эффективности: автомобили/одеяла. Есть некоторый «командный центр», который определяет, какое отношение автомобили/одеяла в данный момент времени наиболее желанно.
Когда у агента появляется выбор по какому исходящему ребру двигаться, он выбирает направление, которое наилучшим образом соответствует пожеланию «командного центра». Сам же «центр» в конкретный момент времени имеет возможность доверить производство лишь фиксированной части агентов (выбирает он, конечно, же тех, кто наилучшим образом соответствует текущему плану).
Таким образом, в этом экономическом мире существует две стадии принятия решений: сначала «центр» принимает решение о том, каких агентов выбрать, затем выбранные агенты решают, как настроить своё производство. За счет того, что поведение агентов и центра близко к оптимальному, достигается выполнение закона возрастания экономических затрат. Результат эксперимента показан на рис. 2.
Рис. 2. Кривая производственных возможностей Как видно из графика, кривая очень близка к выпуклой вверх. Незначительные локальные нарушения связаны с тем, что поведение агентов лишь приближено к оптимальному.
4.2. Затоваривание. Генерируем экономический мир со следующим свойством: если эмулировать один производственный цикл каждого агента, то суммарно всех ресурсов будет произведено на 10% больше, чем потрачено.
Если запустить такую модель, то через какое-то время на складах производителей будет гораздо больше товаров (ресурсов), чем промышленность способна потреблять. Такая ситуация в экономике называется затовариванием. В этом случае должна наблюдаться тенденция монотонному снижению цен. На рис. 3 показан график цен.
Как видно из этого рисунка, они действительно снижаются. На рис. 4 показана активность агентов в процентах.
Рис. 4. Активность производства при затоваривании Первоначально активны все агенты. Постепенно те агенты, чье производство нерентабельно уходят с рынка, и экономика приходит к стабильной ситуации. График на рис. 5 показывает динамику объемов продаж при затоваривании.
Когда активны все агенты, продажи максимальны. По мере ухода с рынка убыточных производителей, продажи снижаются. В результате наблюдается стабильная ситуация с незначительными колебаниями.
4.3. Равновесие. Однако в реальном мире подобная ситуация наблюдается редко. Это вызвано тем, что в реальной экономике существуют конечные потребители. Они и обеспечивают спрос на те блага, которые не использует производство. Введем нового агентапотребителя, который будет только скупать излишки ресурсов.
Наличие такого агента должно стабилизировать ситуацию, привести к равновесию. Результаты эксперимента приведены на рис. 6, 7.
Как видно из графиков цен и объёмов продаж, сначала ситуация на рынке колеблется, а затем действительно приходит к равновесию.
4.4. Отношение сырье-товар. В этом эксперименте ресурсы разделены на две группы: r0, …, r2 и r3, …, r8. Производство каждого ресурса в большой степени зависит от ресурсов его же группы и в малой – от ресурсов противоположной группы (для производства r требуется сравнительно много r1, r2 и сравнительно мало r3, …, r8). В момент времени 1000 некоторый агент начинает в больших количествах скупать ресурс r0. Поэтому цены на ресурс r0 растут. Производителям ресурсов r1 и r2 приходится вкладывать больше средств в свое производство, тогда как производители ресурсов r3, …, r сохраняют свои издержки практически на прежнем уровне. В итоге цены на ресурсы r1 и r2 реагируют ростом, а цены на ресурсы r4, …, r8 – практически не изменяются. На рис. 8 приведен график динамики цен.
На этом рисунке r0 – пунктир с длинными линиями; r1 – пунктир с короткими линиями; r2 – пунктир длинный-короткий.
4.5. Комплементарные товары. Здесь ресурсы r0, r1 и r являются дополняющими – они часто являются входными воздействиями на последовательных ребрах автоматов производства. Повышение цен на ресурс r0 приводит к снижению величины спроса на этот товар, и как следствие, реже используют и сопутствующие ему ресурсы r1 и r2. Следовательно, спрос на ресурсы r1 и r2 должен снизиться.
Ранее было указано, что комплементарные товары часто встречаются на последовательных ребрах производственных автоматов.
При порождении автоматов для данного эксперимента искусственно повысим вероятность появления ресурсов r0, r1, r2 на последовательных ребрах. Пусть в момент времени 1000 некоторый агент начинает в больших количествах скупать r0. Рынок реагирует на это повышением цен: так как все ресурсы взаимосвязаны по принципу ресурс-товар, то издержки производства растут. Однако, на графике рис. 9 видно, что реакция динамики цен на товары r1 и r2 незначительна.
Это вызвано тем, что снижение спроса производителей на товары r0 влечет и снижение спроса на товары r1,r2, как на дополняющие товары. Это означает, что на формировании цен товаров r1 и r2 оказывают влияние как повышающие факторы, так и понижающие.
рис. 10 содержит только графики комплементарных товаров r0,…, r2.
Рис. 10. Комплементарные товары: r0, r1, r На рис. 11 приведен результат того же эксперимента, однако здесь дополняющими являются только товары r0 и r1. Видно, что цены товара r2 тоже реагируют резким повышением.
4.6. Товары-субституты. В этом эксперименте товары r0,r1, r2 являются взаимозаменяемыми. Это означает, что они часто встречаются на параллельных ребрах автоматов. Повышение цен на товар r0 приводит к тому, что фирмы переводят свое производство на использование более дешевых заменителей: r1 и r2. В результате ожидается снижение спроса на r0 и повышение спроса на товары r1 и r2.
Пусть в момент времени 700 некоторый агент начинает в больших количествах скупать товар r0. Программные агенты анализируют каковы будут издержки и прибыль, если в ветвящихся вершинах автомата выбирать альтернативные пути. Если расчеты показывают, что пути, на которых не используют товар r0 дешевле, то агенты будут двигаться в этом направлении. Сейчас стоит обратить внимание не на графики цен, а на графики спроса, которые приведены на рис. 12.
На этом графике r0 – пунктир из длинных штрихов, r1 – из коротких, r2 – длинный-короткий. Из графиков видно, что спрос на товар r0 снижается, а спрос на товары r1, r2 – возрастает, что и следовало ожидать.
Заключение. Как и в любой другой, в предлагаемой модели можно выделить ряд ограничений в применении. Построенная модель принадлежит к классу агентно-ориентированных. При этом знания об окружающем мире каждого агента ограничены, а поведение агентов лишь приближено к оптимальному. Однако, несмотря на простое поведение каждого агента, система может демонстрировать интересное поведение. Это означает, что для получения адекватных результатов необходимо большое число агентов. Следовательно, модель может использоваться только для рынков с малым участием каждого предпринимателя (рынки абсолютной конкуренции и монополистической конкуренции).
Перспективным направлением развития модели является ее обучение на имеющихся данных с рынка. Если получится обучить модель по данным с торгов на бирже, то можно строить предположения о поведении рынка в ближайшем будущем.
Подведем итоги работы.
1. Предложена модель экономики, в которой поведение агентов строится на основе конечных автоматов. Приведено обоснование того, что конечный автомат естественным образом моделирует производственный процесс рассматриваемого класса.
2. Предложены аспекты экономической теории, которые легко промоделировать при помощи конечных автоматов (промежуточные ресурсы, сопряженные товары).
3. Поставлен ряд экспериментов с моделью, результаты экспериментов согласуются с предложенной экономической теорией.
4. Выявлены ограничения использования модели. Адекватные результаты можно получить только при работе с рынками, в которых мало участие каждого агента.
5. Указан путь дальнейшего развития.
Литература 1. Zimmermann G., Neuneier R., Grothmann R. Multi-agent FX-Market Modeling Based on Cognitive Systems // Proceedings of the Artificial Neural Networks – ICANN 2001. Lecture Notes in Computer Science.
Vol. 2130. 2001, pp. 767–774.
2. Black F. Exploring General Equilibrium. The MIT Press. Cambridge.
Massachusetts, 1995.
3. Kooths S., Mitze T., Ringhut E. Forecasting the EMU Inflation Rate:
Linear Econometric Versus Non-Linear Computational Models Using Genetic Neural Fuzzy Systems // Advances in Econometrics. Vol. 19.
2004, pp. 145–173.
4. LeBaron B. Agent-based Computational Finance. Handbook of Computational Economics, L. Tesfatsion and K. Judd (eds.). NorthHolland. Amsterdam. 2006, pp. 1187–1232.
5. Tesfatsion L. Agent-Based Computational Economics: A Constructive Approach to Economic Theory. Handbook of Computational Economics. L. Tesfatsion and K. Judd (eds.). North-Holland, Amsterdam. 2006, pp. 831–880.
6. Kooths S. Modelling Rule- and Experience-Based Expectations Using Neuro-Fuzzy Systems / Computing in Economics and Finance. Fifth Conference of the Society for Computational Economics. Boston, 1999.
7. Shalyto A., Tukkel N. SWITCH-Technology: An Automated Approach to Developing Software for Reactive Systems // Programming and Computer Software, Vol. 27. 2001. No.5, pp. 260–276.
программирование задач логического управления. СПб.: Наука.
1998, 628 с.
9. Шалыто А.А. Логическое управление. Методы аппаратной и программной реализации. СПб.: Наука. 2000, 780 с.
10. Шалыто А.А. Автоматное проектирование программ.
Алгоритмизация и программирование задач логического управления // Известия РАН. Теория и системы управления. 2000.
11. Rudomin I., Millan E., Hernandez B. Fragment shaders for agent animation using finite state machines // Simulation Modelling Practice and Theory. Vol. 13. 2005. Issue 8, pp. 741–751.
12. Stuver N., Gardner R. Intelligent Pathfinding. Final Report. CIS 665.
Penn Engineering University, 2007.
13. Lothaire M. Applied Combinatorics on Words. Cambridge University Press, 2005.
14. Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. Алгоритмы.
Построение и анализ. М.: Вильямс, 2005.
Гниломедов Иван Иванович – магистрант факультета информационных технологий и программирования Санкт-Петербургского государственного университета информационных технологий, механики и оптики (СПбГУ ИТМО). Область научных интересов:
экономическое моделирование, теория автоматическиx переговоров, теория игр, теория графов, машинное обучение. [email protected]; СПбГУ ИТМО, пр. Кронверкский, д.49, Санкт-Петербург, 197101, РФ. Научный руководитель – С. И. Николенко.