В коммерческой деятельности имитационные модели часто помогают принять решение, позволяющее максимизировать прибыль предприятия. Рассмотрим следующую проблему. Поставщик сервиса для мобильной связи выбирает оборудование автоматической телефонной станции и задается вопросом, сколько потребуется телефонных каналов для получения максимальной прибыли?
Подобная задача часто встречается у коммерческих компаний. Например, справочная служба компании имеет несколько телефонных каналов, а дозвониться и получить справку очень трудно. Как следствие, компания теряет клиентов и, значит, возможность увеличить количество продаж, уменьшаются товарооборот и прибыль компании. Если поставщик сервиса имеет телефонную станцию с малым числом каналов, то у него будет большое число неудовлетворенных абонентов.
Сформулируем нашу проблему в случае поставщика сервиса более точно. Пусть правила тарифного плана таковы, что каждый обслуженный телефонный вызов приносит некоторый доход, а за каждый отклоненный вызов поставщик сервиса должен заплатить штраф. Покупка оборудования АТС и содержание каждого канала обходятся в некоторую сумму, зависящую от числа каналов АТС. Варьируя число каналов, можно найти то оптимальное их число, которое принесет максимальный доход. Аналитически проблему эту решить нельзя, поскольку все функции здесь неаналитические. Решение проблемы возможно с помощью оптимизации, которая использует имитационную модель для нахождения значения заданного функционала при конкретных значениях параметров.
На рис. 3.3 представлена структура имитационной модели, с помощью которой решается эта проблема. Генератор заявок имитирует приход вызовов. Обслуживающий прибор в данном случае может обслужить вызов, только если есть свободный ресурс (канал соединения). Блок "Ресурсы" имитирует наличие ограниченного числа ресурсов, это число можно задать параметром. Блок "Анализ" направляет поступившие вызовы либо на обслуживающий прибор, если есть свободный ресурс (канал), либо на выход из системы при отсутствии свободного канала. Все блоки рис. 3.3 также есть в библиотеке AnyLogic, поэтому построение имитационной модели из таких блоков с настройкой их параметров займет у разработчика всего несколько минут.
Для того чтобы определить зависимость прибыли от числа N каналов, нужно подсчитать стоимость покупки станции и содержания каналов, при моделировании подсчитать доход за все обслуженные вызовы в течение некоторого времени и штраф за все необслуженные вызовы за это время.
Изменяя параметр./V имитационной модели, можно для каждого его значения получить возможную прибыль и выбрать наилучшее, оптимальное значение параметра. В AnyLogic встроен оптимизатор OptQuest — широко известный алгоритм поиска оптимума неаналитических функций (продукт фирмы OptTek, http://www.opttek.com/products/), который автоматизирует описываемую процедуру. Поэтому в AnyLogic достаточно просто выполняется поиск значений параметров модели, максимизирующих либо минимизирующих некоторый функционал при определенном множестве ограничений.
В главе 9 построена полная имитационная модель и решена задача максимизации прибыли поставщика сервиса для мобильной связи. На рис. 9.17 показана работа оптимизатора OptQuest при решении этой проблемы. Первоначально выбранное значение числа каналов приводит к финансовым потерям поставщика сервиса в размере 0.3 у. е. каждую минуту. С помощью оптимизации, выполненной на основе имитационной модели, найдено оптимальное число каналов, дающее ему прибыль в 0.37 у. е. каждую минуту.
Модель роста рынка
В статье [RM00] приводится типичное высказывание менеджера крупной маркетинговой компании, у которого буквально "раскрылись глаза" после того, как он с помощью имитационной модели проанализировал влияние процессов в своей компании на рост рынка ее продукции: "Мы даже не зна ли, насколько мы были слепы. Хорошо представляя себе нашу собственную часть бизнеса, мы никогда не понимали, какое влияние наши действия оказывают на другие группы".
Процессы, происходящие в природе и обществе, настолько взаимосвязаны, что их изучение по отдельности невозможно. Только изучение всей системы целиком со всеми петлями причинных связей может привести к корректному пониманию системы. Именно это является основой системной динамики — парадигмы исследования сложных систем как взаимосвязанных процессов. Системная динамика рекомендует описать сложную систему сетью причинно-обратных связей ее процессов, а затем выполнить компьютерное моделирование и анализ этой сети (провести эксперименты типа "что-если") для нахождения закономерностей развития системы. Компьютерная имитация такого описания помогает понять влияние различных политик на поведение систем со сложной структурой взаимосвязей.
Использование методов системной динамики некоторые авторы называют системным мышлением, поскольку оно развивает интуицию и концептуальное понимание в анализе сложных систем.
Рисунок 3.4, заимствованный из работы [RM00], показывает, что даже в простой системе маркетинга существуют источники конфликтов отдельных подразделений компании за общие ресурсы, различные и даже конфликтующие цели подразделений, которые не всегда совпадают с целями всей компании. Глава 13 посвящена рассмотрению данного направления в имитационном моделировании. В этой главе проанализированы типовые модели системной динамики и средства их реализации в среде AnyLogic.