Справочник от Автор24
Поделись лекцией за скидку на Автор24

Имитационное моделирование

  • 👀 343 просмотра
  • 📌 287 загрузок
Выбери формат для чтения
Загружаем конспект в формате doc
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Конспект лекции по дисциплине «Имитационное моделирование» doc
Раздел 4. Экономико-математические методы Тема 4.10. Имитационное моделирование 4.10.1. Область применения имитационного моделирования. Как уже отмечалось, модели линейного программирования наиболее успешно применяются при планировании усилий, связанных с реализацией комплексных проектов. Если плановый период имеет большую протяженность (например. 10 лет или более), соответствующая многошаговая модель линейного программирования, как правило, содержит лишь среднегодовые показатели. При этом влияние результатов оптимизации на показатели, характеризующие текущие операции на отрезках продолжительностью от 1 недели до 1 месяца, в явной форме не учитывается. Если же рассматри­вается плановый период значительно меньшей продолжительности (скажем, от 3 месяцев до 1 года), то соответствующая модель полностью абстрагируется от вариаций плановых показателей на временных отрезках продолжительностью от 1 рабочего дня до 1 недели. Таким образом, анализ, осуществляемый в рамках линейного про­граммирования, обычно не позволяет определить правила, с помощью которых можно было бы перейти от рекомендуемого плана к про­цедурам его реализации на отрезках времени, меньших по сравне­нию с интервалами, которые рассматриваются моделью. Ограниченность анализа, основанного на использовании метода линейного программирования, обусловлена также отсутствием достоверной информации относительно будущего. Неопределенность про­гнозов в той или иной степени свойственна всем задачам планирова­ния. Модели динамического программирования, напротив, вполне при­годны для анализа мультивременных задач планирования в условиях неопределенности и, таким образом, подходят для построения опти­мальных стратегий. Однако по сравнению с моделями линейного программирования динамические оптимизационные модели способны в реальных условиях описывать лишь чрезвычайно упрощенные операционные системы. Как было показано в теме 4.9, если исклю­чить случаи, когда исследуемая система характеризуется небольшим количеством переменных состояний, вычислительные процедуры при нахождении решений для моделей динамического программиро­вания оказываются неимоверно трудоемкими. Ориентированные на использование математического аппарата вероятностные динамические модели, в частности модели управления запасами и модели массового обслуживания, также обладают анало­гичным недостатком (темы 4.6 и 4.7). Чтобы найти численное решение для такого рода моделей, приходится не только ограничиваться случаями, когда операционная система обладает небольшой размер­ностью, но и вводить упрощающие предположения относительно самой схемы функционирования исследуемой системы. Так, напри­мер, с помощью характерных для теории массового обслуживания математических методов, невозможно полностью адекватным образом проанализировать «поведение» очередей в ремонтных мастер­ских. Соответствующие стохастические модели могут служить лишь грубым приближением протекающих в действительности процессов формирования и обслуживания очередей. Итак, несмотря на то, что математическое программирование и стохастическое моделирование имеют широкий диапазон приме­нения, при рассмотрении многих важных задач организационного управления возникает необходимость обращаться к совершенно иным методам анализа. Методы, изложенные в предыдущих темах, не смогут обеспечить исчерпывающего анализа таких задач организационного управления, как 1) Формирование инвестиционной политики при перспективном планировании. Инвестиционная политика крупных фирм должна, в частности, учитывать финансовое обеспечение научно-исследова­тельских и опытно-конструкторских работ при создании новых видов продукции, возможности расширения рынка сбыта, критериальные оценки основных проектов, оценку степени риска при планировании тех или иных комплексов работ, источники финансирования (кредит, привлечение капитала продажей акций и т. д.), увеличение фонда заработной платы, размещение и сокращение финансовых активов, сравнительную оценку вариантов слияния с другой фирмой и при­обретения последней и т. п. Полноценная модель, с помощью которой можно было бы анализировать различные вариан­ты инвестиционной политики, должна учитывать стохастическую природу и динамический характер инвестирования, а также преду­сматривать способ просеивания огромного количества стоящих перед фирмой альтернатив. 2) Выбор средств обслуживания (или оборудования) при текущем планировании. Здесь рассматриваются задачи типа определения количе­ства контрольных прилавков в большом торговом центре, количества бензоколонок на бензозаправочной станции и количества лифтов в строящемся здании. Можно привести много других примеров, в которых рассматриваются вопросы распределения кадров, плани­ровка заводских помещений, выбор мощности оборудования и т. д. Типичными вопросами, возникающими в связи с решением задачи выбора средств обслуживания или оборудования, являются вопросы, начинающиеся словами «сколько», «каких размеров», «как разместить». 3) Разработка планов с обратной информационной связью и опе­рационных предписаний. К важным задачам данного класса относится, например, задача выработки правил составления календарных планов на предприятиях с мелкосерийным производ­ством, комбинатах по ремонту различных изделий, вычислительных центрах и т. д. Эти предписания, или операционные алгоритмы, долж­ны учитывать гарантийные сроки выполнения заказов, потребности в обслуживании, наличные ресурсы, производственные мощности, темпы повышения квалификации рабочих (или приток дополни­тельной квалифицированной рабочей силы), уровень снабжения сырьем, по мере поступления информации о новых уже выполненных заказах предприятие сталкивается с задачей уточнения или пол­ного пересмотра своих планов-графиков. Почему описанные выше классы задач с трудом поддаются анали­зу? Причина заключается в необходимости одновременного учета факторов неопределенности, динамической взаимной обусловленности текущих решений и последующих событий, в комплексной взаимо­зависимости между управляемыми переменными исследуемой опера­ционной системы, а в ряде случаев также и в том, что требуется рас­сматривать строго дискретную и четко определенную последователь­ность интервалов времени. Такого рода «глобальные» системные задачи обладают слишком большой размерностью и наличием слиш­ком большого количества внутренних взаимосвязей, в силу чего их не удается решить методами математического программирования. Решения, принимаемые по вопросам, порождаемым перечисленными выше проблемами, нередко приводят к очень большим затратам и существенным образом влияют на будущие стоимостные характеристики функционирования системы и на эффективность деятельности фирмы в целом. Поэтому руководи­тели такого рода фирм крайне заинтересованы в применении систем­ного подхода к решению возникающих перед ними задач с тем, чтобы анализ организационно-управленческих ситуаций отличался более высоким качеством по сравнению с анализом, основанным на чистой интуиции или на опыте. Наиболее эффективным из существующих в настоящее время методов является имитационный подход. В настоящей теме наша основная цель заключается в том, чтобы дать описание метода имитационного моде­лирования и определить, какого рода задачи могут этим методом решаться. Мы не собираемся рассматривать вопросы, связанные с построением и анализом имитационных моделей (или схем) во всех подробностях. Эти вопросы излагаются в специальных работах, посвященных проблемам имитационного моделирования, а также в учебных пособиях, которые выпускаются фирмами-изготовителями ЭВМ и содержат описание специализированных языков для состав­ления имитационных машинных программ. 4.10.2. Сущность имитационного подхода. При имитационном подходе, прежде всего, строится экспериментальная модель системы. Затем производится сравнитель­ная оценка конкретных вариантов функционирования системы путем «проигрывания» различных ситуаций на рассматриваемой модели. Обычно представляется слишком неудобным и дорогостоящим решать задачи организационного управления путем имитации реаль­ных действий, как, например, это делается в армейских условиях во время различного рода учений. Более предпочтительным является представление сложной функциональной системы с помощью логико-математической модели, «заложенной» в ЭВМ. При этом факторы неопределенности, динамические характеристи­ки и весь комплекс взаимосвязей между элементами исследуемой системы представляют в виде формул, хранящихся в ЭВМ. Имитирование системы начинают с некоторого вполне конкретного исходного состояния. В результате принимаемых решений, а также вследствие ряда контролируемых и неконтроли­руемых событий, среди которых могут быть и события случайного характера, система переходит в последующие моменты времени в другие состояния. Эволюционный процесс таким образом продол­жается до тех пор, пока не наступит конечный момент планового периода. Отрезки времени внутри планового периода нередко ока­зываются четко определенными и образуют упорядоченную последо­вательность на достаточно большом периоде имитирования. Поэтому имитационный эксперимент сопряжен с огромным количеством вы­числений, выполняемых ЭВМ с большой скоростью. Такое отражение в ЭВМ реального процесса длительностью в несколько лет за несколь­ко минут называют сжатием времени. Многие специалисты по исследо­ванию операций смотрят на машинное имитирование как на средство, к которому прибегают лишь в самых крайних случаях. Это отношение объясняется двумя причинами. Первая из них связана с характером самих результатов имитирования. Когда модель содержит элементы неопределенности, каждый ответ, вытекающий из конкретного акта имитирования, необходимо рассматривать только как оценку, верную с точностью лишь до стати­стических погрешностей. Так, например, имитационная модель образования очереди дает лишь оценку ее средней длины и соответ­ствующую вероятность задержки. Следовательно, делая выводы об относительных преимуществах различных пробных вариантов с учетом результатов имитационных тестов, необходимо проявлять осторожность при оценке флуктуаций, сопровождающих исследуемый процесс. Вторая причина недоверия к имитационному методу определяется способом его практического использования. Если функциональная система настолько сложна, что для ее рассмотрения неприменимы такие методы операционных исследований, как линейное и динами­ческое программирование или обычный анализ в рамках теории вероятностей, то построение имитационной модели и последующий анализ результатов имитирования в этом случае, скорее всего, будут сопряжены со значительными трудностями. Многие из склонных к опрометчивым выводам операционистов не без досады убедились, что, как и реальная действительность, «имитационный мир» оказы­вается трудно постижимым — имитационная модель приводит к тако­му количеству разнообразных исходов, что в результате получаемую информацию не так-то легко интерпретировать. Цель имитационного моделирования состоит в воспроизведении по­ведения исследуемой системы на основе результатов анализа наибо­лее существенных взаимосвязей между ее элементами. Результаты исследования имитационной модели, как правило, представляют собой оценки значений операционных (функциональных) характе­ристик той системы, поведение которой имитируется. Так, например, при имитационном моделировании функционирования любой систе­мы массового обслуживания практический интерес могут представ­лять такие показатели, как средняя продолжительность обслу­живания «клиента», средняя длина очереди, доля времени вынужденного простоя системы обслуживания и т.д. Имитационное моделирование следует рассматривать как статистический эксперимент. В отличие от описанных выше математичес­ких моделей, результаты которых отражали устойчивое во времени поведение системы, результаты, получаемые в имитационной моде­ли, представляют собой наблюдения, подверженные эксперимен­тальным ошибкам. Это означает, что любое утверждение, касающее­ся характеристик моделируемой системы, должно основываться на результатах соответствующих статистических проверок. Метод, используемый для решения перечисленных выше задач, который в известном смысле является предшественником совре­менного имитационного моделирования, известен давно. Это — ме­тод Монте-Карло. Его основная идея состоит в использовании вы­борок для получения искомых оценок. Процесс получения выборок требует, чтобы решаемая задача была описана соответствующим вероятностным распределением, в соответствии с которым и осу­ществляются выборки. Популярность метода Монте-Карло применительно к решению теоретических задач стала падать в конце 50-х годов. Больший ин­терес стал проявляться к способу анализа сложных практических задач, который стали называть имитационным моделированием. Имитационное моделирование, подобно методу Монте-Карло, осно­вано на использовании выборок оценивания результатов работы системы. В этом отношении многие идеи, возникшие в связи с мето­дом Монте-Карло, нашли непосредственное приложение в имита­ционном моделировании. К этим идеям относятся использование случайных чисел для получения выборок в соответствии с некоторым вероятностным распределением и разработку способов уменьшения объема выборок, необходимых для надежной оценки результата. Изложенные выше соображения позволяют также понять, почему метод имитационного моделирования удается реализовать только с помощью ЭВМ. Для получения статистической надежности, доста­точной для обоснования управляющих решений, как правило, требует­ся многократное повторение имитационных тестов. Отсутствие единой теории имитационного моделирования на ЭВМ есть одновременно «и благо, и зло». Положительным здесь является то, что имеется возможность строить имитационные модели любой степени сложности при огромном количестве динамических взаимо­связей, а также при отсутствии стационарности и наличии взаимно коррелированных стохастических элементов. Отрицательным же моментом является то, что по мере усложнения модели оценка степени ее адекватности оказывается весьма затруднительной. 4.10.3. Целевая установка имитационного моделирования. При построении имитационной модели, пред­назначенной для углубленного анализа проблем организационного управления, преследуют по крайней мере одну из следующих целей: 1) Изучение действующей функциональной системы. Рассмотрим промышленную фирму, которая недавно зарегистрировала увеличе­ние числа заказов на свою продукцию и отметила затем заметное ухудшение качества обслуживания своих клиентов в части соблю­дения сроков выполнения этих заказов. У этой фирмы может появить­ся желание построить имитационную модель, с помощью которой можно было бы изучить, каким образом существующие процедуры определения сроков выполнения принимаемых заказов, календарного планирования производства и оформления заявок на поставку сырья порождают наблюдаемые задержки. 2) Анализ гипотетической функциональной системы. Обратимся к больнице, руководство которой рассматривает вопрос внедрения новой системы управления запасами медицинских препаратов. Руко­водство больницей может изъявить желание построить с использова­нием ретроспективных данных имитационную модель, чтобы прове­рить, каким будет средний уровень средств, связанных в запасах, и как часто будут возникать нехватки различных видов препаратов в случае, если будет реализован предлагаемый план. 3) Проектирование более совершенной функциональной системы. Рассмотрим предприятие с мелкосерийным производством, в котором станочные мощности распределены в соответствии с приоритетами, присвоенными выполняемым работам. У фирмы может появиться желание построить имитационную модель для нахождения эффектив­ного способа определения системы приоритетов с тем, чтобы все работы могли выполняться без больших задержек и чтобы при этом коэффициент использования оборудования предприятия был доста­точно высок. 4.10.4. Этапы построения и использования имитационной модели. Ниже приводится краткая характеристика каждого из основных видов работ, которые необходимо выполнить с целью практической реа­лизации метода имитационного моделирования: Шаг 1. Построение модели. Содержание данного этапа почти не отличается от содержания этапа построения модели любого другого типа. Опасность при этом заключается в излишней детализации модели, которая может привести к слишком большим затратам машинного времени при выполнении соответствующего эксперимента. Лучший способ уберечься от такого рода опасности заключается в том, чтобы постоянно помнить о конкретной цели исследования. Например, если модель должна помочь в выборе одного из двух вариантов размещения нового складского помещения, то, по-видимому, нет необходимости при построении имитационной модели делить плановый период на часы или дни: вполне достаточно использовать отрезки времени, продолжительность которых равняет­ся 1 недели. Однако если с помощью модели нужно решить, сколько в новом складе должно быть погрузочно-разгрузочных платформ (например, одна или две), то, возможно, возникнет необходимость имитировать процесс функционирования упомянутого складского помещения, ориентируясь на отрезки времени продолжительностью от 5 до 15 мин. Шаг 2. Разработка проекта эксперимента. Операционист сможет уменьшить вероятность той или иной ошибки и, таким образом, потери времени, если он подробно разработает сопровождающие эксперимент процедуры до того, как модель будет «приведена в дей­ствие». Это означает, что операционисту необходимо тщательно продумать, какие функциональные характеристики имитируемой системы планируется измерять. Кроме того, следует определить, с помощью какого метода математической статистики будут учиты­ваться флуктуации экспериментальных данных, полученных в резуль­тате этих измерений. Шаг 3. Разработка программного обеспечения. Весь имитацион­ный эксперимент проводится на ЭВМ. Другими словами, все стадии эволюционного развития модели, так же как и генерирование случайных событий, протекают в ЭВМ. Если имити­руемая система обладает очень простой структурой, то может ока­заться, что при разработке соответствующего «вычислительного варианта» модели удобнее всего использовать один из стандартных языков программирования. Однако представляется более вероятным, что предпочтение будет отдано одному из языков моделирования, такому, как Симскрипт или GPSS, трансляторы с которых имеются для многих ЭВМ. Пример 4.10.1. Имитационное моделирование фондовой биржи. Мистер N хочет оценить степень оптимальности некоторой кон­кретной стратегии приобретения и продажи акций. Для упрощения схемы рассуждений предположим, что он приобретает или продает только какие-нибудь одни акции. В рассматриваемый момент времени он обладает пакетом в 100 акций, каждая из которых оценивается на текущий момент в 10 у.е. Для простоты, допустим также, что цена акции может ежедневно меняться только на 1 у.е. Держатель акций совершает не более одной сделки в день и платит за каждую сделку комиссионные в размере 2% стоимости реализуе­мых акций (как в случае приобретения, так и в случае продажи); разумеется, в некоторые дни таких сделок может и не быть. Мистер N хочет проверить степень прибыльности следующей стра­тегии: 1) обладая пакетом акций, необходимо продать его, как только цены на акции начинают падать; 2) в противном случае следует приобретать акции, как только цены на них начинают возрастать. Если мистер N обладает пакетом акций, то, согласно стра­тегии, он сохраняет его в течение всего периода, когда цены на акции либо не меняются, либо возрастают; если же мистер N не располагает акциями, то он воздерживается от их приобретения в течение периода, когда уровень цен на них либо остается без изменений, либо падает. Чтобы произвести оценку такой стратегии, мистер N должен, кроме того, сделать некоторое предположение относительно харак­тера суточных изменений цен на акции. На основе анализа ретро­спективных данных мистер N строит модель изменения цен, пред­ставленную на рис.4.10.1. Цена одной акции в n-й день n-й день Цена одной акции в (n -1)-й день Возрастает Остается без изменения Падает Возросла по сравнению с (n-2)-м днем 1/2 1/4 1/4 Осталась такой же, как и в (n -2)-й день 1/4 1/2 1/4 Упала по сравнению с (n - 2)-м днем 1/4 1/4 1/2 Р и с. 4.10.1. Вероятности изменения цен на акции Проиллюстрируем эту таблицу, рассмотрев в ней вторую и третью строки. Если как в понедельник, так и во вторник цена одной акции равняется 10 у.е. то, по мнению N, в среду цена одной акции будет равняться 11 (возрастет) с вероятностью 1/4, 10 (остается без изменения) с вероятностью 1/2 и 9 (упадет) с вероятностью 1/4 (см. вто­рую строку). Если же во вторник цена одной акции равняется 9 у.е., то, как полагает N, в среду одна акция будет стоить 10 у.e. с веро­ятностью 1/4, 9 с вероятностью 1/4 и 8 с вероятностью 1/2 (см. третью строку). Заметим, что в случае, когда цена акции возра­стает, N считает, что с вероятностью 1/2 она будет продолжать воз­растать; аналогичные суждения он выносит и в тех случаях, когда цена акции не меняется или начинает падать. Прежде чем начинать имитационный процесс, необходима генерация конкретных ситуаций, которые происходят в соответствии с распределением вероятностей, приведенным на рис. 4.10.1, и отражали бы стохастический дрейф цен. Один из наиболее простых способов такого рода генерации заключается в бросании двух монет; при этом соответствие между случайными исходами при бросании монет и генерируемыми ситуациями можно представить с помощью таблицы, приведенной на рис. 4.10.2. Нетрудно убедиться, что при таких правилах соответствия гене­рируется распределение вероятностей, полностью совпадающее с рас­пределением, которое предполагалось мистером N. Цена одной акции в (n-1)-й день Цена одной акции в п-й день Возрастает Остается без изменения Падает Возросла по сравнению с (n-2)-м днем Герб и решетка Два герба Две решетки Осталась такой же, как в (n-2)-й день Два герба Герб и решетка Две решетки Упала по сравнению с (n-2)-м днем Два герба Две решетки Герб и решетка Рис. 4.10.2. Стохастическое изменение цен, полученное путем бросания монет Пусть имитируется период продолжительностью 20 дней, каждый из которых соответствующим образом занумерован (день 1, день 2, день 3 и т.д.). При этом пару монет нужно бросать 20 раз; результаты последовательного бросания монет представлены в таблице на рисунке 4.10.3. Для определения соответствующей последовательности цен на акции необходимо задать начальные условия, а именно цену одной акции в день 0, а также информацию относительно того, наблю­далось или не наблюдалось в этот день изменение цены по отноше­нию к предшествующему дню. Пусть цена одной акции в день 0 равнялась 10 у.е. и сов­падала с соответствующим пока­зателем в предшествующий день. При таких начальных условиях и при выпадании после первого бросания герба и решетки цена одной акции в день 1 равняется 10 у.е. (см. вторую строку таб­лицы на рис. 4.10.2). Тогда, по­скольку цены в день 0 и в день 1 совпадают, в день 2 выпадание двух решеток означает, что цена одной акции в соответствии со вто­рой строкой таблицы на рисунке 4.10.2 падает до 9. Поскольку в день 2 наблюдалось понижение цены (по отношению к дню 1), выпадание (при третьем бросании монет) двух гербов указывает на то, что в день 3, согласно третьей строке таблицы, цена одной акции будет равняться 10. (Читателю предлагается самостоятельно проверить данные, содержащиеся в таблице на рис.4.10.3 для дней 5, 10, 15 и 20). день Результат бросания монет Направление изменения вчерашней цены Изменение сегодняшней цены Цена акции - - - 10 1 г/р Без изменения Без изменения 10 2 2р - “ - Убывает 9 3 2г Убывает Возрастает 10 4 2г Возрастает Без изменения 10 5 2г Без изменения Возрастает 11 6 г/р возрастает возрастает 12 7 2г - “ - Без изменения 12 8 2р Без изменения Убывает 11 9 2г убывает Возрастает 12 10 г/р возрастает возрастает 13 11 2р - “ - Убывает 12 12 г/р убывает убывает 11 13 2р - “ - Без изменения 11 14 2г Без изменения Возрастает 12 15 г/р возрастает возрастает 13 16 г/р - “ - - “ - 14 17 2р - “ - Убывает 13 18 г/р убывает убывает 12 19 г/р - “ - - “ - 11 20 2р - “ - Без изменения 11 Рис. 4.10.3. Имитирование изменения цен День Цена акции у.е. Решение Кол-во акций, имеющихся на руках Стоимость акций, у.е. Наличные деньги, у.е. 10 100 1000 1 10 100 1000 2 9 Продать 882,00 3 10 Купить 86 860 4,80 4 10 86 860 4,80 5 11 86 946 4,80 6 12 86 1032 4,80 7 12 86 1032 4,80 8 11 Продать 931,88 9 12 Купить 76 912 1,64 10 13 76 988 1,64 11 12 Продать 895,40 12 11 895,40 13 11 895,40 14 12 Купить 73 876 1,88 15 13 73 949 1,88 16 14 73 1022 1,88 17 13 Продать 931,90 18 12 931,90 19 11 931,00 20 11 931,90 P и с.4.10.4. Результаты имитации рассматриваемой стратегии за 20-дневный период. Теперь, используя конкретные данные об изменении цен в течение 20-дневного периода, мы можем проверить, насколько правильной является стратегия мистера N. Результаты имитирования подробно представлены в таблице на рис. 4.10.4. (В эту таблицу для удобства ее использования перенесены также данные об изменении цен, указанные в таблице на рис. 4.10.3.) Решения, приведенные в третьем столбце, определяются непосредственно ценами на акции в предшествующие два дня и принятой стратегией поведения. Данные, содержащиеся в трех последних столбцах, получены в результате дополнительных вычислений. Проиллюстрируем результаты, приведенные в таблице на рис. 4.10.4, рассмотрев ряд конкретных ситуаций. Так, например, в день 2 мистер N продает имеющиеся у него 100 акций по цене 9 у.е; однако он должен при этом уплатить 2% комиссионных, что состав­ляет 18 у.е. (0.029100). Следовательно, в результате продажи акций он получает наличными 882 у.е. (900 — 18). В день 3 он вновь приобретает пакет акций. При этом он снова должен упла­тить 2% комиссионных, так что фактически каждая акция ему обходится в 10.20 у.е. Поскольку сумма наличных денег у N рав­няется 882, он может приобрести лишь 86 акций, оставив себе налич­ными 4,80(882 - 8610.20). Заметим, что сумма наличных денег у N в конце рассматриваемого периода (т.е. по истечении 20 дней) оказывается равной 931.90 у.е. и меньше той суммы, которую он имел бы, если бы вместо того, чтобы придерживаться указанной стратегии, он продал свои 100 акций, имевшиеся у него в наличии, в день 0 и, таким образом, получил бы после уплаты комис­сионных 980 у.е. Является ли рассмотренная нами стратегия (при всех принятых предположениях) выгодной? Вероятно, нет. Однако с выводами торопиться не следует. Предположим, что вместо произвольным образом выбранного нами периода имитирования (20 дней) был бы назначен период в 40 или 10 дней. К какому заключению мы бы пришли в этих случаях? Или представим себе, что при том же 20-дневном периоде генерация ситуаций путем бросания монет производилась бы повторно. Можно ли утверждать, что окончательный результат, полученный с помощью упомянутой стратегии, по-прежнему казался бы неудовлетворительным? Пока можно лишь сказать, что выводы относительно степени «доброкаче­ственности» рассматриваемой стратегии действительно частично зави­сят от статистического разброса имитационных данных, а также от продолжительности периода имитирования. При дальнейшем анализе модели мы увидим, что заключи­тельная оценка стратегии осложняется тем обстоятельством, что по мере увеличения длины имитируемого периода диапазон возмож­ных исходов для N увеличивается. Более того, если даже при увели­чении продолжительности рассматриваемого периода стратегия и при­водит к росту ожидаемого выигрыша (т. е. ожидаемой суммы налич­ных денег, получаемых в результате игры на бирже), то вероятность разорения на промежуточных этапах все равно остается. Таким образом, мы видим, что даже такой простой пример имитационного моделирования порождает ряд весьма сложных вопросов относительно меры эффективности выбираемой стратегии и метода проектирования научно обоснованного эксперимента по проверке этой эффективности. 4.10.5. Особенности процедуры построения модели. Рассмотрим три аспекта процедуры построения модели: определение формирующих модель компонентов, проверка модели на адекватность и надежность, уточнение параметров модели и измерение ее основных характеристик. Компоненты модели. Структуру имитационной модели в большинстве случаев удобно описывать, определяя содержание фигурирую­щих в ней динамических процессов и результатов функционирова­ния имитируемой системы. Динамические процессы в рассмотренной выше имитационной модели фондовой биржи включают последова­тельные моменты заключения сделок мистером N, который придер­живается определенного правила принятия решений, учитывая при этом факторы, определяющие изменения уровня цен на акции. Резуль­таты рассматриваемой деятельности определяются количеством акций, которыми обладает N, суммой имеющихся у него наличных и его общим капиталом. Результаты функционирования реальной системы, как правило, атрибутированы (т. е. имеют вполне определенный физический смысл). Так, например, когда цена акции известна, пакет акций, которым располагает N, имеет денежное выражение. Кроме того, наблюдаются атрибутивные связи, устанавливающие способ суммирования результатов функционирования системы. Например, полный капитал мистера N состоит как из имеющихся у него наличных, так и из его пакета акций. В любой момент времени имитационная модель находится в неко­тором вполне определенном состоянии. Состояние системы характе­ризуется не только результатами, полученными к текущему моменту времени, но нередко включает в себя и некоторые ретроспективные данные. Так, например, состояние системы в начале любого дня при имитировании фондовой биржи описывается вчерашним уровнем цен на акции, направлением изменения позавчерашней цены на одну акцию, числом имеющихся у N акций и суммой наличных, которыми он располагает. Модель может учитывать также экзогенные события, т. е. изме­нения, не обусловленные предысторией имитируемого процесса. Например, в случае имитационного моделирования фондовой биржи мистер N независимо от результатов применения выбранной им стратегии может в день 21 «ввести в игру» дополнительно 1000 у.е. (за счет имеющихся у него сбережений). Зная состояние системы и ее динамику, можно определить «дей­ствия» и состояния системы во все последующие моменты времени. Имитационные модели, обладающие эволюционной структурой, часто называют каузальными. Отметим, что при построении каузальной модели необходимо знать, каким образом система функционирует в пределах каждого отрезка времени рассматриваемого периода. Например, в случае имитирования фондовой биржи каждый день прежде всего необходимо определить цену одной акции, после чего вырабатывается решение относительно целесообразности либо приобретения, либо продажи акций (либо принимается решение ничего не предпринимать). На прак­тике цена акций на бирже может несколько раз меняться в течение дня, так что построенная нами модель представляет собой лишь грубое приближение к действительности. В модели предполагается также, что если мистер N продает свои акции, то он в конце дня получает за них наличными; аналогичным образом, если мистер N покупает акции, то он оплачивает их наличными в конце того же дня. В действительности подобного рода биржевые сделки не всегда завершаются так быстро. Адекватность и надежность модели. Позволяет ли модель разоб­раться в существе имитируемого процесса и можно ли с ее помощью прийти к надежным умозаключениям? В конечном счете, поскольку имитационная модель может описывать реальные явления лишь приближенно, ее следует оценивать по возможности проведения на ее основе анализа управляющих решений, представляющих собой предмет конкретного операционного исследования. Определив цель имитационного эксперимента, операционист стро­ит каждый элемент модели с надлежащей степенью детализации и точности. Здесь необходимо сделать предостережение. Опытные специалисты по имитационному моделированию утверждают, что даже для начинающего операциониста не представит труда построить модель из отдельных компонентов, каждый из которых будет соот­ветствовать действительности, однако после «сшивания» отдельных частей получаемая в результате модель может вести себя не так, как имитируемая реальная ситуация. Поэтому не следует слепо предполагать, что имитационная модель как единое целое является в достаточной степени точной только потому, что каждая из состав­ляющих ее частей, рассматриваемая изолированно от других, пред­ставляется вполне адекватной описываемому процессу. Это предосте­режение особенно важно по той причине, что цель имитационного моделирования заключается в воспроизведении поведения всей функциональной системы в целом, а не отдельных ее частей. Параметры и измеряемые характеристики модели. Абстрактное описание элементов имитационной модели — это только полдела. Необходимо еще собрать достаточно данных, которые описывали бы эти элементы полно и адекватно. Недостаток в такого рода данных может повлечь за собой необходимость пересмотра самого способа построения модели. Особую осторожность следует проявлять в тех случаях, когда используются данные, полученные путем экстраполяции, а также в тех случаях, когда измеряемые характеристики не стационарны. Необходимо также проявлять внимательность при имитировании явлений циклического (или периодического) характера. В тех случа­ях, когда такого рода явления действительно имеют место, при выбо­ре переменных, подлежащих измерению в процессе эксперимента, следует быть весьма осмотрительным. Если, например, учитывать только «конечные значения», то может оказаться, что получаемое решение будет отличаться сильной чувствительностью к степени точности задания имитируемого планового периода. Применение имитационных моделей в большинстве случаев сопря­жено с учетом случайных событий. Так, например, в имитационных моделях очередей к числу случайных переменных относятся время поступления заявки на обслуживание и время обслуживания; в моде­лях управления запасами такого рода переменными являются уровни спроса и сроки поставок; в моделях же, описывающих научно-иссле­довательские и опытно-конструкторские работы, случайными оказы­ваются события, связанные с открытиями новых видов продукции. При имитировании такого типа процессов нередко приходится проиг­рывать процесс на модели тысячи и десятки тысяч раз с тем, чтобы адекватно отразить закономерности соответствующего распределения вероятностей. 4.10.6. Использование случайных чисел. В имитационных моделях выборка, соответствующая любому вероятностному распределению, производится на основе использо­вания случайных чисел из интервала [0, 1]. Прежде чем объяснить, как осуществляются выборки, введем статистические условия, кото­рым должны удовлетворять случайные числа в интервале [0, 1]. 1. Все числа из континуума [0, 1] могут появляться с одинаковой вероятностью. 2. Последовательные положения точек в интервале [0, 1] гене­рируются абсолютно случайным образом, т.е. они независимы и некоррелированные. Для получения случайных чисел в интервале [0, 1] применяют­ся арифметические методы, причем главным образом те, которые достаточно легко реализуются с помощью ЭВМ. Наиболее часто используется мультипликативный конгруэнтный метод, когда слу­чайные числа генерируются с помощью рекурсивной формулы. Соответствующие статистические проверки показывают, что этот метод позволяет получать случайные числа, распределенные равномерно в интервале [0, 1]. Кроме того, параметры рекурсивного выражения можно подобрать так, чтобы количество случайных чисел, получен­ных до того, как они начнут повторяться, было достаточным для проведения одного полного прогона модели. В табл. 4.10.1 приведено 180 случайных чисел, полученных таким методом. Для удобства стоящая слева десятичная запятая опущена. Можно, разумеется, утверждать, что случайные числа, получаемые с помощью арифме­тических операций, не являются истинно случайными, даже если они удовлетворяют статистическим тестам. Действительно, все эти числа «определены» заранее, как только задано начальное значение для рекурсивного выражения. Поэтому полученные подобным обра­зом числа иногда называются псевдослучайными в отличие от истин­но случайных, для генерации которых используется совершенно иной подход. Одно из главных преимуществ арифметического метода генера­ции случайных чисел состоит в возможности получать одинаковые последовательности чисел каждый раз, когда это требуется. Так, ес­ли сравниваются две различные программы, использование одина­ковых последовательностей случайных чисел дает гарантию того, что различие в результатах обусловлено разницей в программах, а не ошибкой эксперимента. Таблица 4.10.1 058962 352943 586999 345500 790012 630566 364609 128099 673284 497110 769774 234646 767638 286650 811154 287072 479909 422037 893129 821570 891254 953397 699089 391962 948578 826125 429090 139412 974665 593277 787674 386551 613960 230243 902490 342756 519930 712470 595449 160463 934123 603734 178239 655823 210783 542293 356707 259606 347270 747163 357549 420822 306993 054556 564395 895364 692630 697501 551336 030504 220998 051455 319740 455344 854407 028341 480379 627205 439814 994034 005875 088946 480798 084273 178448 312230 267349 794021 357985 001720 788457 715256 195421 735221 652531 298202 916428 814746 640618 510998 300419 203535 517436 272799 979865 424002 725225 535325 684924 291621 585405 887838 058382 359749 633051 560561 665907 950391 709176 701533 826616 645896 435829 801902 888953 116597 699005 144655 576880 159382 764371 151787 031383 822207 650795 504908 172286 489546 386699 914280 005383 803777 774217 411304 499874 297506 286166 039436 661127 611829 720835 818541 423735 175532 239580 857687 989902 220226 412235 491375 238133 006422 895334 314207 827234 135543 368147 988993 620635 822874 351526 703292 056012 006447 534569 149393 085234 166865 234088 902734 309612 733068 611896 073756 935472 949026 274906 108197 175026 076380 Имея генератор случайных чисел R, распределенных равномерно, можно получать выборки, распределенные по другим законам, например, экспоненциальное распределение времени обслуживания может быть получено из формулы: р= -(1/)lnR, (4.10.1) где  - средняя скорость обслуживания. Покажем на простом примере, каким образом используются выборки случайных чисел из интервала [0, 1]. Пример 4.10.2. Игра с бросанием монеты. В игре с монетой иг­рок А выигрывает у игрока В 10 руб., если монета падает решеткой вверх (Р), и проигрывает 10 руб., если выпадает герб (Г). Предпо­ложим, что монета правильная, так что события «Р» (как и события «Г») имеют место в 50% случаев. Другими словами, вероятность исхода Р и вероятность исхода Г равняются Р {Р} = 0,5, Р {Г} = 0,5. Поскольку все случайные числа по определению равномерно рас­пределены в интервале [0, 1], можно предложить следующие пра­вила для определения исхода игры. Обозначим генерируемое слу­чайное число через R и будем считать, что если 0< R <0.5, то имеет место исход Р, а если 0.5< R <1, то будет исход Г. Такое распределе­ние R в интервале [0, 1] в точности эквивалентно условию равно­вероятности Р и Г. Для того, чтобы показать, как моделируется игра с бросанием монеты, предположим, что игроки А и В повторяют бросание 10 раз. Это эквивалентно получению 10 случайных чисел в интервале [0,1]. Воспользуемся первыми 10 числами из первого столбца табл. 4.10.1, которые и будут представлять указанные бросания монеты. Последовательными исходами игры будут соответственно Р, Г, Р, Г, Г, Г, Р, Г, Г и Р. Окончательно в результате 10 бросаний игрок А проигрывает игроку В 60-40=20 руб. Естественно, что с ростом числа броса­ний мы будем ожидать «ничейного» результата, т. е. когда ни один из игроков не сумеет выиграть. Таким образом, чем продолжительнее прогон, тем меньше разброс резуль­татов, а значит, тем более точные оценки мы получаем. Другими словами, для улучшения результатов моделирования предпочти­тельнее получать наблюдения после достижения стационарных условий. 4.10.7. Имитационное моделирование как статистический эксперимент. Основная цель рассмотренного выше примера – привлечь вни­мание к тому факту, что имитационное моделирование не ограничи­вается разработкой модели и написанием машинной программы; моделирование представляет собой статистический эксперимент, и его результаты необходимо рассматривать именно с этой точки зре­ния. В частности, для любого эксперимента, связанного с модели­рованием, необходимо ответить на следующие вопросы: 1. Какова должна быть продолжительность прогона для дости­жения стационарных условий? 2. Каким образом получать статистически независимые наблю­дения? 3. Каким образом можно получать результаты моделирования, оставляя затраты на разумном уровне и не слишком жертвуя точ­ностью? 4. Сколько наблюдений требуется для достижения необходимого значения доверительных интервалов? Эти вопросы никак нельзя считать простыми, и мы пока отложим их обсуждение. Рассмотрим приемы построения и эксплуатации отлаженной имитационной модели, имея в виду некоторые важные идеи, которые не удается описать с помощью простого метода Монте-Карло. Первый шаг к созданию имитационной модели состоит в описании реально существующей системы с использованием характеристик основных событий. Событие определяется как точка во времени, в которой происходят изменения характеристик системы. Обычно изменения имеют место в тех случаях, когда кончается один процесс (или несколько процессов) и начинаются другие. Для получения требуемых результатов моделирования достаточно наблюдать систе­му в те моменты, когда происходят события. Для иллюстрации идеи использования событий в имитационном моделировании рассмотрим пример системы массового обслужива­ния с одним узлом обслуживания. Пример 4.10.3. Целью модели­рования такой системы является оценивание операционных харак­теристик обслуживающей системы, в том числе среднего времени пребывания клиента в очереди, средней длины очереди и доли вре­мени простоя системы. Операционные характеристики процесса массового обслуживания могут менять свои значения либо в момент поступления дополнительного требования на обслуживание, либо при завершении обслуживания. К обслуживанию очередного клиен­та могут приступить немедленно, но не исключена и необходимость ожидания, когда клиенту придется занять место в очереди. С другой стороны, после завершения обслуживания система может присту­пить к обслуживанию следующего клиента. Однако при отсутствии очереди система начинает простаивать. Можно получить необходи­мую информацию, наблюдая различные условия, которые возникают при наступлении того или иного события. Например, можно сле­дить за длиной очереди следующим образом. При поступлении нового клиента длина очереди увеличивается на единицу, если система функционирует. Аналогично длина очереди уменьшается на едини­цу, если обслуживание завершено и очередь непустая. Для эксплуатации любой имитационной модели необходимо выбрать единицу времени. В зависимости от природы моделируемой системы такой единицей может быть минута, месяц и т.п. Например, при моделировании работы аэропорта в качестве единицы времени можно использовать и одну минуту, если интенсивность работы аэропорта высокая (крупный город), и один час, если аэропорт не очень загружен (небольшой город). Покажем теперь, как эксплуатируется типичная имитационная модель. Допустим, что надо моделировать работу системы в течение Т единиц времени. Работа начинается с данными, относящимися к нулевому моменту времени, и отмечаются соответствующие события на шкале времени в хронологическом порядке. Таким образом, модель функционирует, «перепрыгивая» от одного события к другому, не­посредственно за ним следующему. Каждое событие сопровождается корректировкой протокола, отражающего возможные изменения в показателях функционирования. Резкие переходы (скачки), совершаемые моделью при переходе от одного события к другому, указывают на то, что про­цесс протекает в дискретном времени, откуда появилось название «дискретное моделирование». Пусть в среднем в систему поступает =3 клиента в час, а время обслуживания одного клиента равно 0.2 ч или 0.6 ч с равной вероятностью 0.5. Клиенты обслуживаются согласно дисциплине «первым пришел – первым обслуживаешься»; длина очереди, а также источник поступления клиентов не ограничены. Пусть система начинает работу при пустой очереди, тогда первая заявка на обслуживание поступает через р1= -(1/3)ln0.058962=0.94 ч. (используем формулу (4.10.1) для получения случайных чисел, распределенных по экспоненциальному закону, при этом берем псевдослучайные числа из табл.4.10.1.) Следующая заявка поступит в момент t=0.94+ (-1/3)ln0.673284=1.07. Время обслуживания первого клиента, задаваемое очередным (третьим) случайным числом R= 0.479909 из табл. 4.10.1, равно 0.2 ч, тогда время окончания его обслуживания будет равно 0.94+0.2=1.14, значит, второй клиент будет стоять в очереди 1.14-1.07=0.07 ч. Третья заявка поступает в момент t=1.07+ (-1/3)ln0.948578=1.09 и становится в очередь. Следующая заявка поступает в момент t=1.09+ (-1/3)ln0.61396=1.25. Второй клиент начинает обслуживание в 1.14 и оканчивает (R=0.934123) в 1.14+0.6=1.74, значит, третий клиент находится в очереди 1.74-1.09=0.65 и т.д. Поступление Поступление Поступление Конец Поступление Конец первого второго третьего обслуживания четвертого обслуживания клиента клиента клиента первого клиента второго клиента клиента Т 0 0.94 1.07 1.09 1.14 1.25 1.74 Процедура повторяется до тех пор, пока не будет промоделирован весь интервал Т. После этого можно определить различные характеристики системы массового обслуживания, такие как доля времени простоя, среднее время ожидания, средняя длина очереди и т.п. Процедура имеет большое сходство с физическим экспериментом. Пример 4.10.4. Построим имитационную модель системы управления запасами. Пусть ежедневно вначале учитываются объемы заказов на пополнение, подлежащие реализации в данный день, осуществляются поставки клиентам и, наконец, производится оценка оставшегося объема запасов и оформляется (при необходимости) дополнительный заказ на пополнение запасов, который исполняется через L дней. Допустим, что заказывается Q единиц продукции всякий раз, когда имеющийся уровень наличия запасов меньше либо равен s. Процедура 1. Просматриваем последовательно дни с t=1 до t=Т. Если подошел срок исполнения заказа на пополнение, то объем наличных запасов увеличиваем на Q. Процедура 2. Генерируем для дня t коммерческий спрос в объеме q, предполагая для него некоторое распределение вероятностей (используем генератор случайных чисел или другие методы, обеспечивающие получение случайных величин заданного распределения). Процедура 3. Сокращаем объем наличных запасов на величину q. Сравниваем остаток с уровнем s. Если остаток меньше либо равен s, устанавливаем срок исполнения заказа на пополнение на t + L. Переходим к процедуре 1. В результате эксплуатации данной имитационной модели могут быть получены количественные показатели, характеризующие средний ежедневный объем наличных запасов, число случаев неудовлетворенного спроса, количество дней, когда оформлялся заказ на пополнение и т.п. Пусть Q=2, s=1, L=2. Предположим, что спрос q может принимать значения 1 или 3 с вероятностями 0.5. Начальные условия для первого дня: наличные запасы равны 2, заказа на пополнение нет. Проимитируем данную систему управления запасами на 20-дневном интервале, генерируя случайный спрос с помощью бросания монеты: орел – q =1, решка – q =3. Результаты занесем в табл.4.10.2 Таблица 4.10.2. День Запасы на утро спрос На какой день пополняем? Удовлетворение спроса в % 1 2 3 На 3 66.7 2 3 3 0+2 3 На 5 66.7 4 3 5 0+2 1 На 7 100 6 1 1 100 7 0+2 1 На 9 100 8 1 3 33.3 9 0+2 1 На 11 100 10 1 1 100 11 0+2 1 На 13 100 12 1 3 33.3 13 0+2 3 На 15 66.7 14 1 15 0+2 1 На 17 100 16 1 3 33.3 17 0+2 1 На 19 100 18 1 1 100 19 0+2 1 На 21 100 20 1 3 33.3 Можно вычислить теперь средний процент удовлетворения спроса: (03+33.34+66.73+10010)/20=66.66, средний ежедневный объем наличных запасов: (03+71+102)/20=1.35. Модель несколько усложнится, если избыток спроса (по отношению к уровню запасов) прибавляется к спросу в последующий интервал времени. Пример 4.10.5. Корпорация "ELA" занимается производством легковых автомобилей. Аккумуляторы для модели "Lunar" компания закупает на стороне, у внешнего поставщика. На основе прошлого опыта специалисты "ELA" оценили, что спрос на аккумуляторы за неделю можно аппроксимировать нормальным распределением со средним значением 500 и стандартным отклонением 10 для промежутка от 470 до 530. Начальный запас аккумуляторов составляет 2000 шт., причем администрация компании приняла решение о подачах заказов на партии аккумуляторов размером в 2500 шт. каждый раз, когда их запас опускается ниже уровня в 1500 шт. Кроме того, прошлый опыт показывает, что интервалы времени между подачей заказа и осуществлением поставок изменяются следующим образом: Таблица 4.10.3. Распределение времени поставки заказа фирмы "ELA" Время поставки заказа, недель 1 2 3 4 Вероятность 0,20 0,50 0,25 0,05 Единичная стоимость хранения запасов равна 0,50 ф. ст. в неделю и рассчитывается для общего размера запаса, оставшегося на конец недели. Стоимость заказа – 50 ф. ст., а отсутствие аккумуляторов на складе оценивается в 20 ф. ст. в неделю. Используя имитационную модель для периода в 20 недель, оценим среднюю стоимость проведения изложенной выше политики в неделю. Принимается предпосылка о том, что все расчеты производятся в конце недели, а подачи заказов и поставки по ним – в начале недели. Решение. Переменными являются спрос и время поставки заказа. Так как спрос аппроксимируется непрерывным нормальным распределением, будем моделировать переменную спроса с шагом в 5 аккумуляторов. Например, вероятность спроса, равного 510 аккумуляторам, будет оцениваться с помощью соотношения Р(507,5< спрос < 512,5). Используя формулу Муавра-Лапласа и приложение 2, построим таблицы нормального распределения интервалов случайных чисел для времени поставки заказа (табл.4.10.4) и для спроса за неделю (табл.4.10.5). Теперь воспользуемся генератором случайных чисел и осуществим моделирование, результаты которого приведены в табл.4.10.6. Таблица 4.10.4. Распределение Таблица 4.10.5. Распределение интервалов случайных чисел интервалов случайных чисел для времени поставки заказа для спроса за неделю Таблица 4.10.6. Моделирование управления запасами Неделя Запас на начало недели Спрос Запас на конец недели Повтор­ный заказ, Да/нет Время поставки Дефицит Случай­ное число Объем Случай­ное число Недели 1 2000 034 480 1520 2 1520 743 505 1015 3 1015 738 505 510 Да 95 4 4 510 636 505 5 5 5 964 520 515 6 0 736 505 505 7 2500 614 505 1995 8 1995 698 505 1490 9 1490 637 505 985 Да 73 3 10 985 162 490 495 11 495 332 495 12 2500 616 505 1995 13 1995 804 510 1485 14 1485 560 500 985 Да 10 1 15 3485 111 490 2995 16 2995 410 500 2495 17 2595 959 515 1980 18 1980 774 510 1470 19 1470 246 495 975 Да 76 3 20 975 762 505 470 Итого 10050 22865 1020 Подведем итоги: Среднее значение спроса – 10050/20 = 502,5 аккумуляторов в неделю. Средний размер запаса на конец недели – 22865/20 = 1143,25 аккумуляторов в неделю. Средний размер дефицита – 1020/20 = 51,0 аккумуляторов в неделю. Число заказов, поданных в течение 20 недель, равно, 4, следовательно, среднее число заказов в неделю – 4/20 = 0,2. Ожидаемая стоимость в неделю =1143,250,50+5120+0,250= 1602 ф. ст. Как и в предыдущих примерах, процесс моделирования следует продолжить, чтобы убедиться, что достигнутые условия действительно характеризуют стационарное состояние модели. Имитационные модели можно также применять при исследовании поведения системы управления запасами в условиях альтернативных вариантов политики подачи заказов. Это позволит администрации выбрать тот вариант, который наилучшим образом отвечает поставленным целям. До сих пор рассматривались лишь такие имитационные модели, которые в определенной степени аппроксимируют реальные ситуации. Их назначение – имитирование условий функционирования опера­ционных систем с целью определения последствий принятия тех или иных управляющих решений. К данному классу моделей тесно при­мыкают имитационные модели, с помощью которых пытаются решать задачи поиска цели и целенаправленного поведения. В этих моделях обнаруживаются элементы так называемого искусственного интел­лекта. К числу широко известных примеров машинных программ, в кото­рых заложены элементы искусственного интеллекта, относятся про­граммы игры в шахматы и шашки. Имели место случаи, когда такого рода программы находили применение и в связи с решением задач организационного управления. Среди этих приложений можно выде­лить самостоятельную группу, в которой основным объектом иссле­дования являются бихевиориальные качества руководителя. Мерой эффективности модели бихевиориальной ориентации является ее способность генерировать решения, согласующиеся с управляющими решениями, которые вырабатывает личность, чье поведение модель имитирует. Другая группа моделей нацелена на решение сложных комбинаторных задач, аналогичных задачам, рассмотренным в теме 4.5. Методы, в которых используются модели данного класса, иногда называют эвристическими. В частности, ряд моделей эвристического характера был разработан в связи с решением комплексных задач календарного планирования. Приведенный ниже пример поможет читателю уловить основную идею метода эвристического программирования. Пусть с помощью имитационной модели пытаются построить такой график размещения заказов на предприятии с мелкосерийным произ­водством, при котором имеющееся оборудование используется с максимальной эффективностью. Машинное имитирование начинается с пробного размещения нескольких заказов. Затем определяется следующий заказ, подлежащий включению в разрабатываемый гра­фик, и рассматриваются различные ограничения, определяются даты исполнения и подбирается оборудование требуемой производитель­ности. В результате такого анализа ЭВМ может пересмотреть график размещения некоторых предыдущих заказов. Короче говоря, в машин­ной модели заложена стратегия «продвижения вперед с учетом ретро­спективных данных». Такая модель является самообучающейся. Она опирается на метод «проб и ошибок» и после серии последова­тельных тестов приводит к одному из допустимых графиков разме­щения заказов. Если формирующие стратегию предписания разрабо­таны достаточно тщательно, этот график, как правило, оказывается вполне удовлетворительным. Нередко получаемый график является почти оптимальным; при этом степень оптимальности оценивается с учетом конкретного критерия эффективности, который по построе­нию содержит элементы эвристики, заложенные в самой стратегии. Методы имитационного моделирования на ЭВМ находят также применение в операционных играх. Широкое распространение полу­чили так называемые деловые игры, в которых принимают участие несколько команд игроков; при этом каждая команда представляет «свою фирму». Участвующая в игре команда принимает решения относительно цен, объемов производства, организации рекламы и т. д. ЭВМ выполняет двойную задачу: она ведет учет всех шагов участ­вующих в игре сторон и одновременно оценивает экономические последствия принятия тех или иных управляющих решений играю­щих фирм. В последнее время деловые игры нашли широкое применение в области подготовки кадров административных работников. Они используются также при анализе динамических характеристик боль­ших систем, функционирующих в условиях конкуренции с другими системами, каждая из которых придерживается своей «стратегии поведения». Мы рассмотрели метод Монте-Карло, в котором всем переменным модели ставится в соответствие определенное множество дискретных значений. Данный метод позволяет на основе собранной исходной информации сгенерировать для каждой переменной соответствующее распределение вероятностей. Из этих рас­пределений с помощью случайных чисел получают значения переменных модели, которые используют затем в процессе моделирования. Методы имитационного моделирования, хотя и не приводят к получению оптимальных решений, как, например, методы линейного программирования, однако, позволяют выработать направления политики, приводящей к лучшим результатам. Но прежде, чем внедрять какой-либо из результатов, изученных по имитационной модели, в практику, необходимо произвести оценку ее надежности и, осуществив расчеты на более длительный период, получить репрезентативные характеристики. Обычно расчеты по имитационным моделям проводятся с помощью пакетов прикладных программ.
«Имитационное моделирование» 👇
Готовые курсовые работы и рефераты
Купить от 250 ₽
Решение задач от ИИ за 2 минуты
Решить задачу
Помощь с рефератом от нейросети
Написать ИИ

Тебе могут подойти лекции

Смотреть все 938 лекций
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot