Машинная имитация - это эксперимент, проводимый с помощью ЭВМ не на реальном объекте, а на его модели, описывающей поведение изучаемой системы в течение определенного отрезка времени с введением в случае необходимости изменений в значение параметров, и структуру и взаимосвязь. При этом модель объекта не обязательно должна быть записана в виде математических уравнений - она может быть словесным описанием операций, производимых над набором чисел, вместе со значениями этих чисел (так называемая операторная форма записи). Эти модели дают алгоритм, т. е. последовательность действий, операций, осуществление которых приводит к искомому конкретному решению. Другими словами, алгоритмические методы дают не столько решение, сколько способ его нахождения, что существенно расширяет их возможности по сравнению с аналитическими методами.
Так как имитационные модели рассчитаны на машинную работу, очевидно, что помимо самой модели, нужно иметь средства ввода ее в ЭВМ и соответствующие программы обработки данных и выдачи результатов из машины. При имитационном моделировании все эти составляющие образуют единый комплекс - средства ввода данных, сами данные, модель, описывающая взаимосвязь данных и манипуляции с ними, программы обработки модели и выдачи результатов обработки на ЭВМ.
Модели, рассчитанные на машинный эксперимент, должны удовлетворять ряду требований, в частности не занимать много времени на программирование. Запись имитационных моделей в оперативной форме делает их весьма удобными для программирования на ЭВМ и, кроме того, облегчает разработку специальных языков для реализации этих моделей на ЭВМ.
Еще раз отметим, что машинная имитация систем представляет собой серию численных расчетов, имеющих целью получить эмпирические оценки влияния различных факторов (их значений) на выходные параметры системы. При этом модели могут представлять собой тождества либо уравнения. Тождества имеют форму тавтологических утверждений относительно компонент системы либо принимают форму определений. Такими тождествами могут быть, например, значения прибыли, равной разности между доходами и затратами.
Уравнения, используемые в имитационном моделировании, отражают предположения, связывающие управляемые переменные, внешние возмущения и результаты тех или иных действий или решений. В реальных условиях значения ряда переменных являются случайными. Поэтому характеристики функционирования систем в этих случаях имеют вид законов распределения вероятностей, конкретные значения переменных получаются на основе статистических выводов.
С помощью численных (алгоритмических) методов решаются модели массового обслуживания и управления запасами, ряд моделей оперативного планирования и управления производством, финансовые модели, модели деловых игр и т. д. Пожалуй, именно на модели деловой игры наиболее наглядно можно представить применение машинных экспериментов в управлении. Деловая игра - это численный эксперимент с моделью, причем при самом активном участии человека на этапах принятия решений. Эксперименты с моделью позволяют наблюдать влияние различных параметров на результаты функционирования системы, изменяя и уточняя различные предположения в модели, вводя изменения в функциональные характеристики и расчетные формулы.
Еще одна и достаточно принципиальная особенность моделей машинной имитации связана с тем, что многие из них позволяют ЛПР участвовать в нахождении решений, вмешиваться в процессы счета. Это достигается использованием режима диалога с ЭВМ.
Модели для машинных экспериментов, рассчитанные на практическое применение, должны удовлетворять ряду требований. Одно из них - удобство ввода данных и изменения их значений, а также подготовка машинных программ для осуществления экспериментов на ЭВМ. Если исходные данные могут быть введены и в пакетном режиме, то изменение их значений, т. е. оперативное изменение параметров функционирования систем, лучше (а часто просто необходимо) вести в диалоговом режиме. Есть несколько вариантов организации такого диалога.
Простейший вариант состоит в том, что лицо, принимающее решение, из каких-либо соображений (опыт работы, неформальный анализ складывающейся ситуации) формирует набор управляющих воздействий - переменных, связанных соотношениями, образующими математическую модель объекта, после чего ЭВМ проверяет, выполняются ли эти соотношения, т.е. является ли набор управляющих воздействий допустимым. Если да, то по просьбе ЛПР машина может вычислить значения показателей качества управления, формализованные в виде функций. После анализа результата этих вычислений ЛПР, опять-таки исходя из определенных соображений, может поменять набор управляющих воздействий, ЭВМ проверит новый набор на допустимость, снова вычислит значения показателей качества управления, сравнит их с результатами предыдущих вычислений и т. д. Если предложенный набор управляющих воздействий на каком- то этапе окажется недопустимым, можно получить из ЭВМ перечень соотношений, входящих в математическую модель объекта, которым этот набор не удовлетворяет, попытаться «подправить» его, чтобы сделать допустимым.
К сожалению, в реальных моделях «подправить» недопустимый набор на основе одной только интуиции практически невозможно. Это обстоятельство приводит к тому, что диалог становится более сложным (и более содержательным) и для человека, и для машины: на ЭВМ возлагается формирование допустимых наборов управляющих воздействий и «исправление» недопустимых. Для формирования допустимых наборов управляющих воздействий могут в свою очередь использоваться математические модели, а для «исправления» недопустимых разрабатываются специальные поисковые алгоритмы.
Использование универсальных алгоритмических языков часто неудобно для разработки программного обеспечения машинных экспериментов и обеспечения общения человека с ЭВМ. Стремление максимально упростить общение с ЭВМ обусловило работы по созданию специальных языков имитационного моделирования (ЯИМ), в которых предусматриваются способы организации данных, обеспечивающие простое и эффективное моделирование, удобные средства формализации и воспроизведения динамических свойств моделируемой системы и возможность имитации стохастических систем, т. е. процедуры генерирования и анализа случайных величин и временных рядов.
Способы организации данных предусматривают структуру их представления, позволяющую изменять как отдельные значения, так и целый набор данных. В частности, это удобно делать с помощью так называемых древовидных структур, списочной организации данных, набора данных. Такие структуры позволяют достаточно легко оперировать с массивами, добавляя новые данные, изменяя значения старых, контролировать и направлять информационные потоки. При этом человеку обеспечивается постоянный доступ к информации, хранящейся в памяти ЭВМ. Наконец, языки имитационного моделирования включают в себя механизмы, позволяющие описывать динамику состояния систем, смену их состояний во времени. Все это дает возможность описывать поведение имитируемых систем в терминах, специально созданных на базе основных понятий имитации. Особенно важно, что в основе языков имитационного моделирования лежат естественные языки.
Хотя в настоящее время численные методы решения экстремальных задач достаточно хорошо разработаны (по крайней мере для определенных классов задач) выбор конкретного метода для использования в АСУ представляет собой нетривиальную задачу, поскольку для одной и той же модели методы отыскания управляющих воздействий могут отличаться по скорости сходимости, времени счета, объему требуемой памяти ЭВМ и ряду других показателей. Более того, случается, что методы, в целом хорошо «работающие» в определенном классе задач, для конкретной задачи этого класса могут оказаться хуже, чем «менее хорошие».