
1.5. Общая характеристика методов исо
Традиционная модель задачи исследования операций содержит переменные, ограничения, целевые функции и постановку задачи: найти решение, которое максимизирует или минимизирует значение целевых функций при заданных ограничениях.
Среди большого многообразия задач, решение которых исследуется в рамках исследования операций, наибольшее распространение получили следующие две постановки задачи:
а) задача математического программирования
(D, f): f(x) max (min), (5.1)
q(x) b
h(x) = d
x X En
где x = (x1, ..., xn)T – вектор оптимизируемых переменных, f, q, h – вектор – функции аргумента x, значение которых определены на некотором, в общем случае - открытом подмножестве X п – мерного евклидова пространства En, D – множество возможных решений задачи (область допустимых решений), заданное ограничениями, b, d – заданные вектор – параметры;
б) задача оптимального управления
J(u)
=
(x,u,t)
dt + F(x(t1),
t1
)
max (min),
(5.2)
u U
dx(t)/dt = f(x, u, t)
t0 t t1
где u = (u1, ..., um)T – вектор управления, J(u) – скалярный или векторный функционал, характеризующий качество управления динамическим объектом, который задан системой дифференциальных уравнений
dx(t)/dt = f(x, u, t), (5.3)
x = (x1,..., xn)T – вектор состояния объекта (его выход), и f – заданные вектор – функции своих аргументов, x0 = x(t0) и xt1 = x(t1) – начальное и конечное состояния объекта, X и U – заданные множества (функциональные пространства) допустимых значений векторов x и u соответственно, F(x(t1), t1) – заданная функция конечного состояния (x(t1), t1 ).
Задачи (5.1) и (5.2) служат общими правилами выбора оптимального решения, которое удовлетворяет заданным ограничениям (пространственным и/или временным) и доставляет экстремум (максимум или минимум) целевой функции (как в (5.1)) или целевому функционалу (как в (5.2)).
При дискретном времени задача (5.2) сводится к задаче (5.1) и имеет вид
J({uк})
=
к(хк,
uk)+F(x1,
t1)
,
(5.4)
{uk} U
xk+1 = к (xk ,uk)
k = 0, 1, …, N – 1
Форма этой задачи полностью совпадает с задачей (5.2), в которой максимизация или минимизация также проводится по вектору управления {uk} U, который при заданной функции φк(хk, иk) однозначно определяет переменные {xk} X. Обратный переход к задаче (5.2), очевидно, можно осуществить, стремив N к бесконечности, что эквивалентно условию = ( t1 - t0)/N 0. Благодаря этому переходу непрерывную задачу управления (5.2) называют задачей оптимизации в бесконечномерном пространстве.
Задача управления
в форме (5.2)
заключается в
выборе такого допустимого вектора
u*(t),
который обеспечит переход объекта из
начального состояния x0
= x(t0)
в целевое состояние x1
= x(t1)
в момент времени
> t0,
и при этом функционал J(u(t))
(критерий
качества
управления)
достигнет своего максимального или
минимального значения.
В теории оптимального
управления уравнение (5.3) называется
уравнением
движения
системы или ее траекторией
для промежутка времени t0
,
а задача (5.2) называется задачей
Больца. Когда
в составе целевой функции задачи
слагаемое F(x1,
t1)
отсутствует, она называется задачей
Лагранжа, а
когда целевой функционал содержит
только функцию
,
задача носит название задачи
Майера. Все
эти модификации в действительности
эквивалентны
друг другу.
Так, например, определив дополнительную
переменную (фазовую
координату)
xn+1(t)
в виде
dxn+1(t)/dt =(x,u,t), xn+1(t0) = 0, (5.5)
целевую функцию задачи (5.2) можно представить в виде
J(u) = xn+1(t1) + F(x(t1), t1 ), (5.6)
что уже соответствует постановке задачи Майера.
Если в задачах (5.1) – (5.4) целевые функции непрерывны, а области допустимых решений ограничены и замкнуты, то, согласно теореме Вейерштрасса, оптимальное решение существует (достаточное условие оптимальности).
Рассмотрим теперь традиционные классы методов исследования операций, с помощью которых решаются эти и им подобные задачи.
а) Линейное программирование.
Если в задачи (5.1) функции f, q и h линейны, а переменные удовлетворяют дополнительному условию неотрицательности, т. е. xj 0, j, мы имеем дело с задачей линейного программирования, решение которой изучается в разделе 2. Для этого класса задач характерно, что если множество D не пусто, то оно выпукло и либо ограничено по расстоянию, либо не ограничено. В первом случае целевая функция задачи принимает на D и свое наименьшее, и свое наибольшее значения. При непрерывных переменных задача решается с помощью симплекс-метода. Если же часть переменных целочисленные, применяется метод ветвей и границ или метод отсечений (алгоритмы Гомори).
б) Нелинейное программирование.
В нелинейном программировании рассматриваются методы решения задачи (5.1), которая содержит нелинейные функции. Здесь центральное место занимают метод Лагранжа и соответствующие теоремы двойственности (в частности, теорема Куна – Таккера), которые изучаются в разделе 3. Если множество решений D и целевая функция f(x) задачи (5.1) выпуклые, она называется задачей выпуклого программирования; ее локальные и глобальные решения совпадают. При строгой выпуклости задача может иметь единственное решение. Распространенным представителем этого класса задач является задача квадратичного программирования, целевая функция которой является квадратичной функцией, а ограничения линейные, как в задаче линейного программирования.
в) Динамическое программирование.
Динамическое программирование (ДП), наряду с принципом максимума Понтрягина, является, одним из двух мощных современных методов решения задачи (5.3).
Оно успешно применяется к задаче (5.1), когда функции f, g и h имеют специфическую структуру, допускающую представление в виде суммы или произведения более простых функций, каждая из которых зависит только от «своей» переменной xj, j = 1,..., n. Функции с такими свойствами называются сепарабельными. В этих случаях решение исходной «статической» задачи (5.1) сводится к решению семейства более простых, но взаимосвязанных задач. Этот процесс называется динамизацией и характерен так называемым многошаговым (или многоэтапным) процессам, которые изучаются в разделе 4. В этом же разделе будет рассмотрена возможность динамизации адачи (5.3). Лежащий в основе ДП принцип оптимальности приводит к функциональному уравнению динамического программирования (ФУДП), которое и порождает многошаговый процесс решения. В ряде задач ФУДП успешно сочетается с методом Лагранжа, хотя проблема размерности остается, как ограничительный фактор при организации вычислительного процесса.
г) Стохастическое программирование.
Когда в задачах типа (5.1) и (5.2) присутствуют случайные факторы, представляющие случайные события, переменные и процессы, мы имеем дело с задачей стохастического программирования. Такие задачи требуют для своего решения специфические приемы и подходы, которые имеют дело с вероятностными характеристиками присутствующих в модели случайных переменных и процессов (их математические ожидания, дисперсии и т. д.).
Отдельные математические модели (аналитические и имитационные), реализующие стохастический (или вероятностный) подход анализа и принятия решения, изучаются в разделах, посвященных системам массового обслуживания, игровым моделям, марковским процессам принятия решений и управления, имитационному моделированию.
д) Системы массового обслуживания.
Теория систем массового обслуживания имеет дело с моделями, с помощью которых описываются потоки заявок и процессы их обслуживания. При определенных предположениях относительно входного потока заявок (стационарность, ординарность, отсутствие последействия) процессы обслуживания можно описать аналитически. В общем случае прибегают к имитационному моделированию на основе метода статистического моделирования, что позволяет исследовать объекты произвольной структуры и сложности.
е) Теория игр.
С помощью игровых моделей исследуются конфликтные процессы и ситуации, возникающие при взаимодействии различных активных сторон (фирм, стран и т. д.). Особое место в теории игр занимают стратегические и статистические игры, получившие широкое распространение для моделирования и исследования конкуренции, межгосударственных отношений, взаимодействия человека с природой.
ж) Теория принятия решений.
Несмотря на то, что принятие решений присутствует во всех моделях и задачах исследования операций, различные его подходы, модели и аналитические рекомендации составляют отдельную теорию.
Особый теоретический и практический интерес представляют модели и методы принятия решений при определенности, неопределенности, риске, противостоянии, а также при многих критериях. Руководящие правила и рекомендации этой теории широко применяются в организациях при разработке и реализации плановых, проектных и управленческих решений.
з) Имитационное моделирование.
Исследование сложных процессов и систем, которые подвержены воздействию случайных факторов внутреннего или внешнего происхождения, аналитическими средствами и алгоритмами не представляется возможным. Для таких задач в помощь приходит имитационное моделирование, которое позволяет с помощью специальных моделирующих алгоритмов воспроизвести на ЭВМ процесс функционирования сколь угодно сложных объектов, путем моделирования отдельных их элементов с учетом пространственных связей между ними и логической последовательности функционирования во времени.
Особенно плодотворно техника имитационного моделирования применяется в тех случаях, когда роль случайных факторов является доминирующей. В этом случае с помощью специальных программных датчиков генерируются базовые последовательности так называемых псевдослучайных величин, которые затем преобразуются в последовательности реализаций других случайных факторов, вероятностные характеристики которых заранее известны. И так как результаты моделирования всегда носят случайный характер, они обрабатываются методами теории вероятностей и математической статистики.
Машинная имитация и машинные имитационные эксперименты служат мощным средством практически во всех научных исследованиях и разработках. С помощью специализированных языков имитационного моделирования GPSS, SIMULA, SLENG, BOSS, SIMSCRIPT, SLAM, GASP, а также имитационных систем ARENA, ReThink , G2 можно проводить исследования, направленные на создание современных систем и их компонентов.
Особое место среди методов системного анализа, исследования операций и принятия решений занимают неформальные (или эвристические) методы и процедуры.
Особенно плодотворно они стали применяться на этапах структуризации сложной проблемы, выбора и обоснования целей и критериев, экспертизы сложных проектов, таких как ассигнование фундаментальных и прикладных исследований и разработок, постановки многокритериальных задач и неформального анализа компромиссных решений и т. д.
Важным приложением неформальных методов и процедур стали диалоговые модели и методы, обеспечивающие творческое взаимодействие человека и ЭВМ на всех этапах решения научно-технических и деловых задач. Эти вопросы также будут обсуждаться в разделе, посвященном теории принятия решений.