Алгоритмы и комплекс программ для решения задач имитационного моделирования объектов прикладной экономики
На правах рукописи
Грибанова Екатерина Борисовна
АЛГОРИТМЫ И КОМПЛЕКС ПРОГРАММ ДЛЯ РЕШЕНИЯ ЗАДАЧ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ ОБЪЕКТОВ ПРИКЛАДНОЙ ЭКОНОМИКИ
Специальность 05.13.18
Математическое моделирование, численные методы
и комплексы программ
АВТОРЕФЕРАТ
диссертации на соискание ученой степени
кандидата технических наук
Томск – 2009
Работа выполнена в Томском государственном университете систем управления и радиоэлектроники.
Научный руководитель: | доктор технических наук, профессор Мицель Артур Александрович |
Официальные оппоненты: | доктор технических наук, профессор Сущенко Сергей Петрович (Томский государственный университет) |
кандидат технических наук, доцент Кочегуров Александр Иванович (Томский политехнический университет) | |
Ведущая организация: | Новосибирский государственный университет экономики и управления |
Защита состоится 5 марта 2009г. в 17-00 часов на заседании диссертационного совета Д 212.268.02 при Томском государственном университете систем управления и радиоэлектроники по адресу: 634050, г.Томск, пр. Ленина, 40, ком. 203.
С диссертацией можно ознакомиться в Научной библиотеке Томского государственного университета систем управления и радиоэлектроники по адресу: г. Томск, ул. Вершинина, 74
Автореферат разослан 3 февраля 2009 г.
Ученый секретарь диссертационного совета Д 212.268.02 к.т.н. | Р.В. Мещеряков |
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность
Имитационное моделирование является мощным инструментом исследования сложных бизнес-процессов и систем и позволяет решать трудноформализуемые задачи в условиях неопределенности. Поэтому данный метод позволяет совершенствовать системы поддержки принятия решений, улучшая тем самым экономические показатели организаций, уменьшая риск от реализации решений и экономя средства для достижения той или иной цели. Многие крупные компании (Xerox, Motorola, IBM, Intel, Ford) используют программы, предоставляющие возможность имитации принимаемых решений и исследования возможных изменений в экономической системе, возникающих в результате действия различных факторов, т.е. позволяющие выполнять проверку гипотез «что будет, если…». Кроме того, различными университетами создаются учебные программы-имитаторы для подготовки специалистов и выработки у них навыков принятия решений в сложившейся ситуации.
Считается, что Т. Нейлор был одним из первых, кто применил методы имитационного моделирования для исследования экономических процессов. Его монография «Машинные имитационные эксперименты с моделями экономических систем» легла в основу многих последующих работ по имитационному моделированию экономических процессов.
Реализация имитационных моделей может быть выполнена с помощью различных средств: языков программирования, стандартных пакетов прикладных программ, языков и сред моделирования. Считается, что основным недостатком имитационных моделей, реализуемых с помощью универсальных языков программирования, пакетов прикладных программ, является их специфичность и сложность повторного использования. С другой стороны, среды моделирования могут включать избыточные функции и не всегда позволяют рассматривать особенности исследуемой области, всех возможных правил системы.
В связи с этим возрастает интерес к использованию объектно-ориентированного подхода при разработке архитектуры программы, т.к. это позволяет создать инструмент, который может обеспечить с одной стороны хорошую поддержку специфичных задач имитации, а с другой - расширяемость, интеграцию моделей различных типов. К преимуществам данного подхода, появление которого связано с возникновением языка SIMULA в начале 60-х годов прошлого века, относят более простую модификацию полученных решений, возможность использования существующего программного кода для создания новых разработок, а применяемые концепции (объект, класс, наследование, сообщение) нередко соответствуют нашему способу видения вещей в исследуемой области реального мира. В настоящее время с помощью данного подхода разрабатываются различные инструменты для решения задач в экономике. Предпринимаются попытки создания как универсального средства (пакеты Pilgrim, AnyLogic), так и предметно-ориентированных систем, осуществляющих имитацию цепей поставок (SISCO, D-SOL, SCSF), систем массового обслуживания (SimJAVA, ObjectSim), отдельных агентов (RePast, AScape), торгов (JASA, Имитрейд) и т.д. Кроме того, разрабатываются различные библиотеки классов (например, Java Simulation Library, MoTor, Supply Chain Training Library), использование которых может значительно упростить создание программ.
Однако, несмотря на довольно многочисленное число разработок в этой области, в литературе отсутствуют работы, посвященные созданию программ с поэтапным выполнением имитации. Здесь каждый этап может представлять своеобразный «срез» алгоритма имитации, который приводит к появлению моментов останова моделирования. На основе подобной структуры можно реализовать программы, требующие выполнение каких-либо действий пользователя прежде перехода к следующему этапу. Данные условия довольно часто используются в имитационных деловых играх и тренажерах. Кроме того, применение поэтапной имитации позволяет работать с программой в ручном режиме, когда пользователь самостоятельно управляет модельным временем (режим, в котором данное действие выполняется программно обычно называется автоматическим, а под классическим режимом понимается ситуация, когда продвижение модельного времени осуществляется автоматически, а моменты останова имитации отсутствуют), имея при этом возможность изменять значения входных параметров в различных периодах.
Таким образом, создание подходов к разработке программных комплексов имитационного моделирования экономических объектов, в том числе обеспечивающих поэтапное выполнение имитации, разработка расширяемых шаблонов и каркасов для решения задач в определенной области, применение которых позволяет экономить действия разработчиков путем использования в качестве базиса существующей иерархии классов и механизмов, является, по мнению автора, актуальной задачей. Для описания архитектурных решений будет применен The Unified Modeling Language (UML).
Цель работы
Целью данной работы является разработка моделей, алгоритмов и программных комплексов, обеспечивающих поэтапную имитацию экономических объектов.
Для достижения цели необходимо было решить следующие задачи:
- Разработка имитационных моделей экономических объектов; создание алгоритмов имитации.
- Разработка архитектур программных комплексов, обеспечивающих поэтапную имитацию экономических объектов, в том числе систем управления запасами и аукционов, регулируемых Федеральным законом № 94.
- Реализация программных комплексов имитационного моделирования экономических объектов: «Запас», «Имитатор», «Аукцион».
Методы исследования
При выполнении диссертационной работы использовались методы имитационного моделирования и Монте-Карло, принципы объектно-ориентированного анализа и проектирования, теория управления запасами, теория массового обслуживания и методы математической статистики.
Научная новизна
Научная новизна данной диссертационной работы заключается в следующем:
- Предложен подход к созданию программных комплексов имитационного моделирования экономических объектов, который, в отличие от существующих, основан на декомпозиции моделирующего алгоритма и представлении его в виде графа решения задачи.
- Впервые предложена имитационная модель торгов, проводимых с целью поставки товаров и услуг для государственных, муниципальных нужд.
- Разработаны три архитектуры программных комплексов, выполняющих имитацию объектов прикладной экономики, в том числе систем управления запасами и аукционов. Основное отличие от базовой архитектуры заключается в использовании циклических обходов графа решения задачи.
Практическая значимость
Практическая значимость результатов работы заключается в следующем:
- Программные комплексы «Имитатор» и «Запас» могут быть использованы студентами ВУЗов в качестве лабораторного практикума при изучении дисциплин «исследование операций в экономике», «имитационное моделирование экономических процессов».
- Программный комплекс «Аукцион», в основе которого лежит имитационная модель аукциона, позволяет воспроизводить ход торгов, регулируемых Федеральным законом №94, с учетом поиска предпоследнего участника, и может быть использован специалистами в качестве инструмента исследования и обучения новым механизмам проведения аукциона. Проведенное с его помощью исследование позволило оценить характеристики исследуемых механизмов проведения торгов в выбранных условиях.
- Разработанные архитектуры могут быть применены для создания новых программных комплексов имитационного моделирования в области экономики.
Достоверность результатов
Достоверность результатов обусловлена применением общепризнанных теоретических законов и вычислительных алгоритмов; результатами проведенных численных экспериментов, которые были сопоставлены с данными, полученными другими авторами, а также рассчитанными с применением аналитических методов; привлечением специалистов, имеющих сведения о том, как должна функционировать реальная система (для проверки результатов работы программы «Аукцион»); внедрением материалов диссертации в учреждения г. Томска.
Положения, выносимые на защиту
На защиту автором выносятся следующие основные положения:
- Предложенный подход к разработке программных комплексов имитационного моделирования экономических объектов позволяет создавать программы, в которых имитация и решение смежных задач может выполняться поэтапно. На его основе разработаны три программных комплекса имитационного моделирования.
- Имитационная модель торгов позволяет проводить исследование аукционов, регулируемых Федеральным законом от 21 июля 2005 года №94-ФЗ, в ходе выполнения которых определяется победитель и поставщик, сделавший предпоследнее предложение цены контракта.
- Архитектуры программных комплексов «Аукцион», «Запас», «Имитатор», позволяющих в классическом либо ручном поэтапном режиме выполнять имитационное моделирование аукционов, регулируемых Федеральным законом №94, систем управления запасами и других объектов прикладной экономики.
Апробация работы
Результаты работы докладывались на следующих конференциях: «Научная сессия ТУСУР» в 2005, 2006, 2007 г., «Молодежь и современные информационные технологии», 2007 г., «Современное образование: традиции и новации», 2006 г., «Электронные средства и системы управления», 2007.
Доклады на конференциях Научная сессия ТУСУР 2005, 2006, 2007 были награждены дипломами второй, первой и второй степени соответственно. Студенческая работа «Система имитационного моделирования экономических объектов», представленная на всероссийский конкурс студенческих работ в 2005г., в первом туре, проходившем в ТУСУР, заняла первое место в номинации «студент», а на всероссийском конкурсе на лучшую научную работу по естественным, техническим и гуманитарным наукам отмечена дипломом Министерства образования и науки. Кроме того, на первом внутривузовском туре Открытого конкурса на лучшую научную работу студентов по естественным, техническим и гуманитарным наукам в 2006 году работа «Автоматизированная система имитационного моделирования управления запасами» была награждена грамотой.
Публикации по теме работы
Публикации по теме работы. Основное содержание работы отражено в 31 публикации, из них 8 статей (в том числе 4 статьи опубликованы в журнале из списка ВАК), 7 учебных пособиях (из них 2 с грифом СибРумц). Кроме того, зарегистрированы 3 программы в ОФАП.
Личный вклад автора
Основные научные результаты получены автором самостоятельно. Постановка задачи была выполнена научным руководителем Мицелем А.А. Постановка задачи разработки имитационной модели аукциона, проверка работы программы «Аукцион» принадлежит Каштановой О.В. Реализация программ «Имитатор», «Запас» и «Аукцион» на языке высокого уровня выполнена автором.
Структура диссертации
Диссертация состоит из введения, пяти глав, заключения, списка использованных источников (103 наименований), а также приложений, включающих результаты экспериментов, описание программных комплексов и акты внедрения. Общий объем работы составляет 157 страниц.
ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ
В первой главе дается обзор программных продуктов, поддерживающих имитационное моделирование. В первую очередь приводятся достоинства и недостатки использования универсальных языков программирования, стандартных прикладных пакетов программ, языков и сред имитационного моделирования. Далее рассматривается пакет Excel и язык программирования Java в качестве средств реализации имитационных моделей, а также дается обзор наиболее популярных систем имитационного моделирования – начиная с языков GPSS и SIMULA до современных отечественных и зарубежных инструментов: Anylogic, Arena и т.д.
Данная работа посвящена созданию программных комплексов, предоставляющих возможность поэтапного выполнения имитации системы и работы с реализованной программой в ручном режиме. При ее выполнении были использованы результаты, приведенные в диссертации Бойченко И.В. «Программное обеспечение моделирования, обработки и анализа данных лидарного зондирования газового состава атмосферы».
Во второй главе представлен подход к разработке программ имитационного моделирования объектов прикладной экономики, основанный на декомпозиции моделирующего алгоритма на этапы (рис.1) и представлении его в виде графа решения задачи. Полученная таким образом структура позволяет осуществлять следующие действия: контролировать результаты, полученные на каждом этапе; автоматически пересчитывать этапы при изменении параметров; применять различные методы решения локальных задач каждого этапа. Для ее реализации было использовано представление в виде многосвязного списка, каждый элемент которого является объектом класса «Узел» и может ссылаться на любое количество предков и потомков (для решения своей задачи «Узел» включает ссылку на класс «Расчет», содержащий метод «решение»). Модификация базовой архитектуры необходима в связи с динамическим характером рассматриваемых процессов и выполнением многократных прогонов имитационной модели и касается, прежде всего, процедуры обхода, циклически вызывающей узлы графа. Здесь возврат к исходной вершине регулируется с помощью операторов проверки условий переходов (в качестве таких условий может, например, рассматриваться окончание периода моделирования или завершение прогона).
![]() |
![]() |