Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

каком-то наборе элементов и взаимосвязей, которые надлежит изу­чить, имея в виду вполне определенную цель, перед нами было бы бесконечное число связей и сочетаний



Очертив цели и задачи исследования и определив границы сис­темы, мы далее сводим реальную систему к логической блоксхеме или к статической модели. Мы хотим построить такую модель реальной системы, которая, с одной стороны, не будет столь упрощена, что станет тривиальной, а с другой - не будет столь детализирована, что станет громоздкой в обращении и чрезмерно дорогой. Опасность, которая подстерегает нас при построении логической блок-схемы ре­ально действующей системы, заключается в том, что модель имеет тенденцию обрастать деталями и элементами, которые порой ничего не вносят в понимание данной задачи.

Поэтому почти всегда наблюдается тенденция имитировать избы­точное число деталей. Во избежание такого положения следует стро­ить модель, ориентированную на решение вопросов, на которые тре­буется найти ответы, а не имитировать реальную систему во всех подробностях. Закон Парето гласит, что в каждой группе или сово­купности существует жизненно важное меньшинство и тривиальное большинство. Ничего действительно важного не происходит, пока не затронуто жизненно важное меньшинство. Системные аналитики слиш­ком часто стремились перенести все усугубленные деталями сложнос­ти реальных ситуаций в модель, надеясь, что ЭВМ решит их пробле­мы. Такой подход неудовлетворителен не только потому, что возрас­тают трудности программирования модели и стоимость удлиняющихся экспериментальных прогонов, но и потому, что действительно важные аспекты и взаимосвязи могут потонуть в массе тривиальных деталей. Вот почему модель должна отображать только те аспекты системы, которые соответствуют задачам исследования.

Во многих исследованиях моделирование может на этом закон­читься. В удивительно большом числе случаев в результате точного и последовательного описания ситуаций становятся очевидными де­фекты и "узкие" места системы, так что необходимость продолжать исследования с помощью имитационных методов отпадает.

ПРИКЛАДНОЕ ПРОГРАММИРОВАНИЕ В ТЕХНИЧЕСКИХ СИСТЕМАХ

ЛЕКЦИЯ N 16

ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ

ФОРМУЛИРОВАНИЕ МОДЕЛИ

Каждое исследование охватывает и сбор данных, под которым обычно понимают получение каких-то "численных" характеристик. Но это только одна сторона сбора данных. Системного аналитика должны интересовать входные и выходные данные изучаемой системы, а также информация о различных компонентах системы, взаимозависимостях и соотношениях между ними. Поэтому он заинтересован в "сборе как количественных, так и качественных данных; он должен решить, ка­кие из них необходимы, насколько они соответствуют поставленной задаче и как собрать всю эту информацию. Учебники обычно сообщают студенту нужную для решения задачи информацию без ссылок на то, как она была собрана и оценена. Но когда такой студент впервые сталкивается с реальной задачей и при этом сам должен определить, какие данные ему нужны и как их отобрать, то голова у него идет кругом.

Создавая стохастическую имитационную модель, всегда прихо­дится решать, следует ли в модели использовать имеющиеся эмпири­ческие данные непосредственно или целесообразно использовать тео­ретико-вероятностные или частотные распределения. Этот выбор име­ет фундаментальное значение по трем причинам. Во-первых, исполь­зование необработанных эмпирических данных означает, что, как бы вы ни старались, вы можете имитировать только прошлое. Использо­вание данных за один год отобразит работу системы за этот год и не обязательно скажет нам что-либо об ожидаемых особенностях ра­боты системы в будущем. При этом возможными будут считаться толь­ко те события, которые уже происходили. Одно дело предполагать, что данное распределение в своей основной форме будет неизменным во времени, и совсем иное дело считать, что характерные особен­ности данного года будут всегда повторяться. Во-вторых, в общем случае применение теоретических частотных или вероятностных расп­ределений с учетом требований к машинному времени и памяти более эффективно, чем использование табличных данных для получения слу­чайных вариационных рядов, необходимых в работе с моделью. В-третьих, крайне желательно и даже, пожалуй, обязательно, чтобы аналитик-разработчик модели определил ее чувствительность к изме­нению вида используемых вероятностных распределений и значений параметров. Иными словами, крайне важны испытания модели на чувс­твительность конечных результатов к изменению исходных данных. Таким образом, решения относительно пригодности данных для ис­пользования, их достоверности, формы представления, степени соот­ветствия теоретическим распределениям и прошлым результатам функ­ционирования системы - все это в сильной степени влияет на успех эксперимента по имитационному моделированию и не является плодом чисто теоретических умозаключений.

В конечном счете перед разработчиком модели возникает проб­лема ее описания на языке, приемлемом для используемой ЭВМ. Быст­рый переход к машинному моделированию привел к развитию большого числа специализированных языков программирования, предназначенных для этой цели. На практике, однако, каждый из большинства предло­женных языков ориентирован только на ограниченный набор машин. Имитационные модели обычно имеют очень сложную логическую струк­туру, характеризующуюся множеством взаимосвязей между элементами системы, причем многие из этих взаимосвязей претерпевают в ходе выполнения программы динамические изменения. Эта ситуация побуди­ла исследователей разработать языки программирования для облегче­ния проблемы трансляции. Поэтому языки имитационного моделирова­ния типа GPSS, Симскрипт, Симула, Динамо и им подобные являются языками более высокого уровня, чем универсальные языки типа Форт­ран, Алгол и Бейсик. Требуемая модель может быть описана с по­мощью любого универсального языка, тем не менее какойлибо из спе­циальных языков имитационного моделирования Может обладать теми или иными преимуществами при определенных характеристиках модели.

Основные отличия языков имитационного моделирования друг от Друга определяются: 1) способом организации учета времени и про­исходящих действий; 2) правилами присвоения имен структурным эле­ментам; 3) способом проверки условий, при которых реализуются действия; 4) видом статистических испытаний, которые возможны при наличии данных, и 5) степенью трудности изменения структуры моде­ли.

Хотя некоторые из специальных языков имитационного моделиро­вания обладают очень нужными и полезными свойствами, выбор того или иного языка, как это ни печально, чаще всего определяется ти­пом имеющейся машины и теми языками, которые известны исследова­телю. И если существует выбор, то правильность его, по-видимому, зависит от того, в какой степени исследователь владеет методами имитационного моделирования. В некоторых случаях простой язык, который легко понять и изучить, может оказаться более ценным, чем любой из более <богатых> языков, пользоваться которым труднее вследствие присущих ему особенностей.

ПРОВЕРКА МОДЕЛИ

Проверка модели представляет собой процесс, в ходе которого достигается приемлемый уровень уверенности пользователя в том, что любой вывод о поведении системы, сделанный на основе модели­рования, будет правильным. Невозможно доказать, что та или иная имитация является правильным или <правдивым> отображением реаль­ной системы. К счастью, нас редко занимает проблема доказательст­ва <правдивости> модели. Вместо этого нас интересует главным об­разом справедливость тех более глубоких умозаключений, к которым мы пришли или к которым придем на основании имитационного модели­рования. Таким образом, нас волнует обычно не справедливость са­мой структуры модели, а ее функциональная полезность.

Проверка модели-этап чрезвычайно важный, поскольку имитаци­онные модели вызывают впечатление реальности, и как разработчики моделей, так и их пользователи легко проникаются к ним доверием. К сожалению, для случайного наблюдателя, а иногда и для специа­листа, искушенного в вопросах моделирования, бывают скрыты исход­ные предположения, на основе которых строилась данная модель. По­этому проверка, выполненная без. должной тщательности, может при­вести к катастрофическим последствиям.

Такого процесса, как <испытание> правильности модели, не су­ществует. Вместо этого экспериментатор в ходе разработки должен провести серию проверок, с тем чтобы укрепить свое доверие к мо­дели. Для этого могут быть использованы проверки трех видов. При­меняя первую из них, мы должны убедиться, что модель верна, так сказать, в первом приближении. Например, следует поставить такой вопрос: не будет ли модель давать абсурдные ответы, если ее пара­метры будут принимать предельные значения? Мы должны также убе­диться в том, что результаты, которые мы получаем, по-видимому, имеют смысл. Последнее может быть выполнено для моделей существу­ющих систем методом, предложенным Тьюрингом. Он состоит в том, что людей, непосредственно связанных с работой реальной системы, просят сравнить результаты, полученные имитирующим устройством, с данными, получаемыми на выходе реальной системы. Для того чтобы такая проверка была несколько более строгой в научном отношении, мы можем предложить экспертам указать на различия между несколь­кими выборками имитированных данных и аналогичными выборками, по­лученными в реальной системе.

Второй метод оценки адекватности модели состоит в проверке исходных предположений, и третий - в проверке преобразований ин­формации от входа к выходу. Последние два метода могут привести к необходимости использовать статистические выборки для оценки средних значений и дисперсий, дисперсионный анализ, регрессионный анализ, факторный анализ, спектральный анализ, автокорреляцию, метод проверки с помощью критерия <хи-квадрат> и непараметричес­кие проверки. Поскольку каждый из этих статистических методов ос­нован на некоторых допущениях, то при использовании каждого из них возникают вопросы, связанные с оценкой адекватности. Некото­рые статистические испытания требуют меньшего количества допуще­ний, чем другие, но в общем эффективность проверки убывает по ме­ре того, как исходные ограничения ослабляются.

Способы оценки имитационной модели делят на три категории:

1) верификацию, используя которую экспериментатор хочет убедить­ся, что модель ведет себя так, как было задумано; 2) оценку адек­ватности - проверку соответствия между поведением модели и пове­дением реальной системы и 3) проблемный анализ-формулирование статистически значимых выводов на основе данных, полученных путем машинного моделирования. Для осуществления этой оценки часто бы­вает необходимо предпринять целый ряд действий, начиная от поэ­тапного испытания модели на настольном калькуляторе (это делается перед компоновкой машинной программы из этих этапов) до проведе­ния полевых испытаний. Как бы то ни было, сами эти испытания свя­заны с трудностями, присущими эмпирическому исследованию; к числу таких трудностей относятся следующие ситуации: 1) высокая стои­мость получения данных вынуждает пользоваться небольшими выборка­ми; 2) данные чрезмерно разделены На различные группы и 3) ис­пользуются данные, достоверность которых сомнительна.

Таким образом, вопрос оценки адекватности модели имеет две стороны: приобретение уверенности в том, что модель ведет себя таким же образом, как и реальная система; установление того, что выводы, полученные из экспериментов с моделью, справедливы и кор­ректны. Оба эти момента в совокупности сводятся к обычной задаче нахождения равновесия между стоимостью каждого действия, связан­ного с оценкой адекватности модели, ценностью получаемой все в больших количествах информации и последствиями ошибочных заключе­ний.

СТРАТЕГИЧЕСКОЕ И ТАКТИЧЕСКОЕ ПЛАНИРОВАНИЕ

Мы определили имитационное моделирование как экспериментиро­вание с помощью модели с целью получения информации о реально действующей системе. Отсюда следует, что мы должны позаботиться о стратегическом планировании, т. е. о том, как планировать экспе­римент, который дает желаемую информацию. Планирование экспери­ментов широко применяется в биологических и физических науках, а теперь и в моделировании систем. Цель использования планируемых экспериментов двоякая: 1) они обеспечивают экономию с точки зре­ния уменьшения числа требуемых экспериментальных проверок и 2) они задают структурную основу обучения самого исследователя.

Цель любого экспериментального исследования, включая модели­рование, заключается в том, чтобы больше узнать об изучаемой сис­теме. Эксперимент представляет собой процесс наблюдения и анали­за, который "позволяет получить информацию, необходимую для при­нятия решений. План эксперимента дает возможность выбрать метод сбора исходной информации, содержащей необходимые сведения о яв­лении или системе, которые позволяют сделать важные выводы о по­ведении изучаемого объекта. В экспериментальном исследовании мож­но выделить два типа задач: 1) определение сочетания параметров, которое оптимизирует переменную отклика, и 2) объяснение соотно­шения между переменной отклика и контролируемыми в системе факто­рами. Для обеих этих задач разработано и доступно для использова­ния множество планов постановки экспериментов.

Далее, чтобы обучение было успешным, требуется полное ис­пользование накопленных ранее знаний, что в свою очередь необхо­димо при выдвижении возможных гипотез, подлежащих проверке, и стратегий, подлежащих оценке. Хороший план эксперимента позволяет разработать стратегию сбора исходных данных, полезных для такого синтеза и выдвижения гипотез. Существующие в настоящее время ме­тоды планирования экспериментов и аналитические методы очень хо­рошо удовлетворяют нашим потребностям. Математические описания, сопутствующие планированию эксперимента, предоставляют нам много возможных альтернатив. Методы извлечения информации, содержащейся в планах эксперимента, хорошо описаны и обычно легко осуществимы. Таким образом, планирование эксперимента может в значительной ме­ре облегчить синтез новых сведений и выдвижение новых идей и в. то же время уменьшить затраты времени, усилий и денежных средств.

Тактическое планирование, вообще говоря, связано с вопросами эффективности и определением способов проведения испытаний, наме­ченных планом эксперимента. Тактическое планирование прежде всего связано с решением задач двух типов: 1) определением начальных условий в той мере, в какой они влияют на достижение установивше­гося режима, и 2) возможно большим уменьшением дисперсии решений при одновременном сокращении необходимых размеров выборки.

Первая задача (т. е. определение начальных условий и их вли­яния на достижение установившегося режима) возникает вследствие искусственного характера функционирования модели. В отличие от реального объекта, который представлен моделью, сама имитационная модель работает эпизодически. Это значит, что экспериментатор за­пускает модель, делает свои наблюдения и <останавливает> ее до следующего прогона. Всякий раз, когда начинается прогон, модели требуется определенное.время для достижения условий равновесия, которые соответствуют условиям функционирования реальной системы. Таким образом, начальный период работы модели искажается из-за действия начальных условий запуска модели. Для решения задачи, вопервых, необходимо исключить из рассмотрения данные, относящие­ся к некоторой части начального периода, и, вовторых, следует вы­бирать такие начальные условия, которые уменьшают время, необхо­димое для достижения установившегося режима. Разумно выбранные начальные условия могут уменьшить, но не полностью свести к нулю время переходного процесса. Поэтому дополнительно необходимо оп­ределить время начала измерений.

Вторая задача тактического планирования связана с необходи­мостью оценить точность результатов эксперимента и степень надеж­ности заключений или выводов. Это немедленно ставит нас лицом к лицу с такими вопросами, как изменяемость условий, размер выборки и повторяемость результатов. В любом эксперименте из ограниченно­го объема полученных данных мы стремимся извлечь как можно больше информации. Для уменьшения разброса характеристик было предложено несколько методов (в основном в связи с процедурами взятия выбо­рок), которые могут существенно снизить требуемый размер выборки и число повторений эксперимента. Использование очень больших вы­борок может в конечном счете решить все тактические проблемы ими­тационного моделирования, но обычно ценой больших затрат машинно­го времени и времени, необходимого для последующего анализа ре­зультатов. Чем сложнее имитационная модель, тем более важен этап тактического планирования, выполняемого перед проведением экспе­риментов.

ЭКСПЕРИМЕНТИРОВАНИЕ И АНАЛИЗ ЧУВСТВИТЕЛЬНОСТИ

После завершения этапов разработки и планирования мы наконец осуществляем прогон модели с целью получения желаемой информации. На этом этапе мы начинаем находить недостатки и просчеты в нашем планировании и повторяем наши усилия до тех пор, пока не достиг­нем первоначально поставленных целей.

Одним из наиболее важных понятий в имитационном моделирова­нии является анализ чувствительности. Под ним мы понимаем опреде­ление чувствительности наших окончательных результатов к измене­нию используемых значений параметров. Анализ чувствительности обычно заключается в том, что величины параметров систематически варьируются в некоторых представляющих интерес пределах и при этом наблюдается влияние этих вариаций на характеристики модели. Почти в любой имитационной модели многие переменные рождаются на основании весьма сомнительных данных. Во многих случаях их значе­ния могут быть определены только на основе предположений опытного персонала или с помощью весьма поверхностного анализа некоторого минимального объема данных. Поэтому чрезвычайно важно определить степень чувствительности результатов относительно выбранных для исследования величин. Если при незначительных изменениях величин некоторых параметров результаты меняются очень сильно, это может служить основанием для затраты большего количества времени и средств с целью получения более точных оценок. В то же время, ес­ли конечные результаты при изменениях величин параметров в широ­ких пределах не изменяются, то дальнейшее экспериментирование в этом направлении неоправданно и не является необходимым.

Имитационное моделирование идеально подходит для анализа чувствительности благодаря тому, что экспериментатор здесь может успешно контролировать весь ход эксперимента. В отличие от экспе­риментирования с реальными системами пользователь модели, распо­лагая возможностями абсолютного контроля над своей моделью, может варьировать по желанию любой параметр и судить о поведении модели по наблюдаемым результатам.

РЕАЛИЗАЦИЯ ЗАМЫСЛА И ДОКУМЕНТИРОВАНИЕ

Последние два элемента, которые должны быть включены в любое задание по моделированию, это реализация замысла и документирова­ние. Никакое задание на моделирование не может считаться успешно завершенным до тех пор, пока оно не будет принято, понято и ис­пользовано. Наибольшие неудачи, постигавшие специалистов, занима­ющихся проблемами управления, были связаны с восприятием и ис­пользованием их работ. Суммарное время разработки модели разбива­ется примерно следующим образом: 25% времени - формулирование за­дачи, 25% - сбор и анализ статистических данных, 40% - разработка машинной модели и 10% - внедрение. Главной ошибкой проектных за­даний в области исследования операций и теории управления обычно является неправильное понимание результатов моделирования пользо­вателями, приводящее к недостаточной степени реализации замысла. Еще трудней понять, почему на период реализации выделяется столь малый процент времени, если учесть, что уточнение модели, трени­ровка пользователя, регулировка модели в соответствии с изменяю­щимися условиями и проверка правильности полученных результатов (что может быть выполнено только на этапе реализации) являются, пожалуй, наиболее трудными проблемами, с которыми сталкивается исследователь. По личному опыту автора, более реалистичное расп­ределение времени проектирования модели представляется следующим образом: 25% на постановку задачи, 20% на сбор и анализ данных, 30% на разработку модели и 25%_на.реализацию.

Документирование близко связано с реализацией. Тщательное и полное документирование процессов разработки и экспериментирова­ния с моделью может значительно увеличить срок ее жизни и вероят­ность успешной реализации. Хорошо организованное документирование облегчает модификацию модели и обеспечивает возможность ее ис­пользования, если даже служб, занимавшихся разработкой модели, больше не существует. Кроме этого, тщательная документация может помочь разработчику модели учиться на своих ошибках и, быть мо­жет, послужит источником для создания подпрограмм, которые будут снова использованы в будущих проектах.





Дата публикования: 2014-12-08; Прочитано: 402 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.01 с)...