Сайт о телевидении

Сайт о телевидении

» » Решение оптимизационных задач управления методом линейного программирования. Целевая функция и ее формы

Решение оптимизационных задач управления методом линейного программирования. Целевая функция и ее формы

Целевая функция представляет собой функцию с некоторыми переменными, от которых непосредственно зависит достижение оптимальности. Также она может выступать в качестве нескольких переменных, которые характеризуют тот или иной объект. Можно сказать, что, по сути, она показывает, как мы продвинулись в достижении поставленной задачи.

Примером таких функций может выступать расчет прочности и массы конструкции, мощности установки, объема выпуска продукции, стоимости перевозок и другие.

Целевая функция позволяет ответить на несколько вопросов:

Выгодно или нет то или иное событие;

В правильном ли направлении идет движение;

Насколько верно сделан выбор и т.д.

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

Целевые функции не всегда могут быть представлены в виде формулы. Это может быть таблица, например. Также условие может быть в виде нескольких целевых функций. Например, если требуется обеспечить максимальную надежность, минимальные затраты и минимальную материалоемкость.

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

Задачи на оптимизацию бывают условными и безусловными. Первый вид предполагает ограничения, то есть определенные условия при постановке задачи. Второй вид состоит в том, чтобы отыскать максимум или при существующих параметрах. Зачастую такие задачи предполагают поиск минимума.

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

Существует такое понятие, как неполная оптимизация. Она может образоваться по нескольким причинам. Например:

Число попавших в максимальную точку систем ограничено (уже установлена монополия или олигополия);

Нет монополии, но отсутствуют ресурсы (недостаток квалификации на каком-либо конкурсе);

Отсутствие самой а точнее «незнание» ее (мужчина мечтает о некой красивой женщине, но неизвестно, существует ли такая в природе) и т.д.

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

Целевая функция – это математическое представление зависимости критерия оптимальности от искомых переменных.

2. Градиент функции.

Вектор, компонентами которого служат значения частных производных, то есть вектор

называется градиентом функции , вычисленным в точке.

3. Общая задача линейного программирования.

Стандартная математическая формулировка общей задачи линейного программирования выглядит так: требуется найти экстремальное значение показателя эффективности (целевой функции)

(линейной функции элементов решения ) при линейных ограничительных условиях, накладываемых на элементы решения:

где - заданные числа.

4. Стандартная задача лп.

В стандартной форме задача линейного программирования является задачей на максимум (минимум) линейной целевой функции. Система ограничений ее состоит из одних линейных неравенств типа « <= » или « >= ». Все переменные задачи неотрицательны.

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

Существует и другие способы преобразования системы равенств в систему неравенств, т.е. всякую задачу линейного программирования можно сформулировать в стандартной форме.

2 вариант ответа:

Стандартная задача ЛП. или, в матричной записи,где- матрица коэффициентов. Векторназывается вектором коэффициентов линейной формы,- вектором ограничений.

5. Каноническая задача лп.

В канонической форме задача является задачей на максимум (минимум) некоторой линейной функции F , ее система ограничений состоит только из равенств (уравнений). При этом переменные задачи х 1 , х 2 , ..., х n являются неотрицательными:

К канонической форме можно преобразовать любую задачу линейного программирования.

Короткая запись канонической задачи ЛП:

Х=(х1, х2, …, хn), С=(с1, с2, …, сn).

2 вариант ответа:

Каноническая задача ЛП. или, в матричной записи,

6. Симметричные и несимметричные двойственные задачи.

Двойственная задача линейного программирования. Рассмотрим задачу ЛП (1) или, в матричной записи,(2) Задачей, двойственной к (1) (двойственной задачей), называется задача ЛП отпеременныхвида(3) или, в матричной записи,(4) где. Правила построения задачи (3) по форме записи задачи (1) таковы: в задаче (3)

переменных столько же, сколько строк в матрицезадачи (1). Матрица ограничений в (3) - транспортированная матрица. Вектор правой части ограничений в (3) служит вектором коэффициентов максимизируемой линейной форме в (1), при этом знаки неравенств меняются на равенство. Наоборот, в качестве целевой функции в (3) выступает линейная форма, коэффициентами которой задаются вектором правой части ограничений задачи (1), при этом максимизация меняется на минимизацию. На двойственные переменныенакладывается условие неотрицательности. Задача (1), в отличии от двойственной задачи (3) называется прямой.Теорема двойственности . Если взаимодвойственные задачи (2), (4) допустимы, то они обе имеют решение и одинаковое значение .

Симметричные двойственные задачи

Разновидностью двойственных задач линейного, программирования являются двойственные симметричные задачи, в которых система ограничений как исходной, так и двойственной задач задается неравенствами, причем на двойственные переменные налагается условие неотрицательности.

Cтраница 2


Из таблицы видно, что для сравнительно близких оптимальных значений целевой функции (f (z) (при отклонениях порядка 1 %) количество изделий, подлежащих выпуску по этим оптимальным планам, по отдельным наименованиям колеблется в пределах нескольких сотен. Таким образом, эта задача является неустойчивой.  

В результате решения задачи линейного программирования находят оптимальное значение целевой функции (желательное сочетание изделий - максимальный доход), а также соответствующие этому оптимальному решению значения переменных: основных х - типы изделий; дополнительных zt - резервы по ограниченным ресурсам; двойственных Уг - мера дефицитности ресурсов; дополнительных двойственных У - - какую продукцию целесообразно включить в оптимальный план.  

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

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

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

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

Теперь можно найти то решение, которое соответствует оптимальному значению целевой функции.  

В начале любой итерации t известна верхняя оценка х оптимального значения целевой функции. Значение х определяется общепринятым способом. Кроме того, задан основной список задач, содержащий некоторое подмножество Xij 1, определяющее частичный цикл, и подмножество значений с - -, принятых в результате пересмотра равными оо. Для вычисления нижней оценки оптимального значения целевой функции, соответствующей циклу, который является дополнением частичного цикла, можно применить тот же метод, что и в алгоритме задания маршрутов. С другой стороны, можно определять оптимальное решение задачи о назначениях, включив в эту задачу коэффициенты с -, принадлежащие строкам и столбцам, не связанным с подмножеством xti 1, которые входят в частичный цикл.  

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

Теорема 4.1. Последовательность Q (Xh) сходится к оптимальному значению целевой функции детерминированной задачи, эквивалентной двухэтапной стохастической задаче линейного программирования. Последовательность лг / J содержит сходящуюся подпоследовательность. Каждая сходящаяся подпоследовательность из Xh сходится к оптимальному предварительному плану х двухэташюй стохастической задачи.  


Следует отметить, что очень часто в связи с ограничениями оптимальное значение целевой функции достигается не там, где ее поверхность имеет нулевой градиент. Нередко лучшее решение соответствует одной из границ области проектирования.  

В начале любой итерации t известна верхняя оценка х а оптимального значения целевой функции.  

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

Действительно, согласно (VI5), значение двойственной функции всегда меньше оптимального значения целевой функции. Отсюда расчет двойственной функции при любых значениях множителей Лагранжа дает нижнюю оценку данного варианта ветвления.  

27 августа 2017 в 14:20

Решение прямой и двойственной задачи линейного программирования средствами Python

Введение

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

Постановка задачи

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

Однако известно , что каждой задаче линейного программирования соответствует так называемая выделенная(двойственная)задача. В ней по сравнению с прямой задачей строки переходят в столбцы, неравенства меняют знак, вместо максимума ищется минимум (или наоборот, вместо минимума - максимум). Задача, двойственная к двойственной - эта сама исходная задача.

Решение двойственной задачи очень важно для анализа использования ресурсов. В данной публикации будет доказано, что оптимальные значения целевых функций в исходной и двойственной задачах совпадают (т.е. максимум в исходной задаче совпадает с минимумом в двойственной).

Оптимальные значения стоимости материала и труда будут оцениваться по их вкладу в целевую функцию. В результате будут получены «объективно обусловленные оценки» сырья и рабочей силы, которые не совпадают с рыночными ценами.

Решение прямой задачи о оптимальной производственной программе

Учитывая высокий уровень математической подготовки подавляющего большинства пользователей данного ресурса не стану приводить балансовые уравнения с верхними и нижними ограничениями и введением для перехода к равенствам дополнительных переменных. Поэтому сразу приведу обозначения используемых в решении переменных:
N – количество видов производимых изделий;
m– количество видов используемого сырья;
b_ub - вектор имеющихся ресурсов размерности m;
A_ub – матрица размерности m×N, каждый элемент которой является расходом ресурса вида i на производство единицы изделия вида j;
с - вектор прибыли от производства единицы изделия каждого вида;
x – искомые объёмы производимых изделий каждого вида (оптимальный план производства) обеспечивающие максимальную прибыль.

Функция цели
maxF(x)=c×x

Ограничения
A×x≤b

Численные значения переменных:
N=5; m=4; b_ub = ; A_ub = [, , ,]; c = .

Задачи
1.Найти x для обеспечения максимальной прибыли
2. Найти использованные ресурсы при выполнении п.1
3. Найти остатки ресурсов (если они есть) при выполнении п.1


Для определения максимума (по умолчанию определяется минимум коэффициенты целевой функции нужно записать с отрицательным знаком c = [-25, -35,-25,-40,-30] и проигнорировать знак минус перед прибылью.

Используемые при выводе результатов обозначения:
x – массив значений переменных, доставляющих минимум (максимум) целевой функции;
slack – значения дополнительных переменных. Каждая переменная соответствует ограничению-неравенству. Нулевое значение переменной означает, что соответствующее ограничение активно;
success – True, если функции удалось найти оптимальное решение;
status – статус решения:
0 – поиск оптимального решения завершился успешно;
1 – достигнут лимит на число итераций;
2 – задача не имеет решений;
3 – целевая функция не ограничена.
nit – количество произведенных итераций.

Листинг решения прямой задачи оптимизации

#!/usr/bin/python # -*- coding: utf-8 -*- import scipy from scipy.optimize import linprog # загрузка библиотеки ЛП c = [-25, -35,-25,-40,-30] # список коэффициентов функции цели b_ub = # список объёмов ресурсов A_ub = [, # матрица удельных значений ресурсов , , ] d=linprog(c, A_ub, b_ub) # поиск решения for key,val in d.items(): print(key,val) # вывод решения if key=="x": q=#использованные ресурсы print("A_ub*x",q) q1= scipy.array(b_ub)-scipy.array(q) #остатки ресурсов print("b_ub-A_ub*x", q1)


Результаты решения задачи
nit 3
status 0

success True
x [ 0. 0. 18.18181818 22.72727273 150. ]
A_ub*x
b_ub-A_ub*x [ 0. 0. 0. 90.90909091]
fun -5863.63636364
slack [ 0. 0. 0. 90.90909091]

Выводы

  1. Найден оптимальный план по видам продукции
  2. Найдено фактическое использование ресурсов
  3. Найден остаток не использованного четвёртого вида ресурса [ 0. 0 0.0 0.0 90.909]
  4. Нет необходимости в вычислениях по п.3, так как тот же результат выводить в переменной slack

Решение двойственной задачи о оптимальной производственной программе

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

Введём новое назначение искомой переменной x как некоторой «теневой» цены, определяющей ценность данного ресурса в отношении прибыли от реализации выпускаемой продукции.

C – вектор имеющихся ресурсов;
b_ub – вектор прибыли от производства единицы изделия каждого вида;
A_ub_T– транспонированная матрица A_ub.

Функция цели
minF(x)=c×x

Ограничения
A_ub_T ×x≥ b_ub

Численные значения и соотношения для переменных:
с = ; A_ub_T transpose(A_ub); b_ub = .

Задача:
Найти x показывающий ценность для производителя каждого вида ресурсов.

Особенности решения с библиотекой scipy. optimize
Для замены ограничений сверху на ограничения с низу необходимо умножить на минус единицу обе части ограничения – A_ub_T ×x≥ b_ub… Для этого исходные данные записать в виде: b_ub = [-25, -35,-25,-40,-30]; A_ub_T =- scipy.transpose(A_ub).

Листинг решения двойственной задачи оптимизации

#!/usr/bin/python # -*- coding: utf-8 -*- import scipy from scipy.optimize import linprog A_ub = [, , , ] c= b_ub = [-25, -35,-25,-40,-30] A_ub_T =-scipy.transpose(A_ub) d=linprog(c, A_ub_T, b_ub) for key,val in d.items(): print(key,val)


Результаты решения задачи
nit 7
message Optimization terminated successfully.
fun 5863.63636364
x [ 2.27272727 1.81818182 6.36363636 0. ]
slack [ 5.45454545 2.27272727 0. 0. 0. ]
status 0
success True

Выводы

Третий вид ресурсов имеет наибольшую ценность для производителя поэтому данный вид ресурсов должен быть закуплен в первую очередь, затем первый и второй вид. Четвёртый вид ресурса имеет для производителя нулевую ценность и закупается последним.

Результаты сравнения прямой и двойственной задачи

  1. Двойственная задача расширяет возможности планирования выпуска продукции, но средствами scipy. optimize решается за вдвое большее чем прямая количество итераций.
  2. Переменная slack выводит информацию об активности ограничений в виде неравенств, что может быть использовано, например, для анализа остатков сырья.
  3. Прямая задача является задачей максимизации, а двойственная - задачей минимизации, и наоборот.
  4. Коэффициенты функции цели в прямой задаче являются ограничениями в двойственной задаче.
  5. Ограничения в прямой задаче становятся коэффициентами функции цели в двойственной.
  6. Знаки неравенств в ограничениях меняются на противоположные.
  7. Матрица системы равенств транспонируется.
Ссылки

где - постоянные затраты, которые не зависят от режима обработки, мин;

Здесь - подготовительно – заключительное время на операцию, мин;

Размер партии обрабатываемых деталей;

Вспомогательное время операции, мин;

Время на обслуживание без учета времени на замену инструмента, мин;

Время на отдых рабочего, мин;

Затраты времени, связанные с заменой затупившегося инструмента и соответствующей поднастройкой технологической системы;

где - время на замену инструмента и соответствующую размерную настройку;

Диаметр и длина обрабатываемого вала;

Коэффициент для расчета скорости резания;

Скорость резания;

Глубина резания;

Здесь - показатели степени в формулах для расчета режимов резания.

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

Целевая функция стоимости на примере обработки вала имеет вид:

Здесь - расходы на материал;

Расходы в единицу времени соответственно на эксплуатацию оборудования, приспособления, по зарплате с учетом накладных расходов;

Время на замену инструмента и соответствующую размерную настройку;

Стоимость инструмента за период его эксплуатации.

Первый член выражения определяет постоянные затраты на материал, расходы, связанные с подготовительно – заключительным временем и временем обслуживания. Второй член выражения определяет затраты на режущий инструмент и простои при его замене. Третий член выражения определяет расходы, связанные непосредственно с выполнением процесса резания.

Объемное планирование работы технологических станочных систем

Эта и все последующие лекции посвящены вопросам математического моделирования и оптимизации технологических станочных систем.

Объемное планирование работы механического участка при достижении максимальной загрузки технологического оборудования

Постановка задачи . Имеется m – станков (m – групп станков), на которых могут быть изготовлены n – типов деталей. Трудоемкость обработки j - ой детали на i – м станке составляет , час. Известны фонды времени работы каждого станка (группы станков) – B i . Исходные данные для решения задачи представлены в таблице 14.1.

Таблица 14.1. Исходные данные для решения задачи, представленные в общем виде

Требуется определить количество деталей каждого наименования , при обработке которых достигается максимальная загрузка оборудования участка.



Математическая модель для решения задачи запишется:

Ограничения :

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

Пример. Исходные данные для примера приведены в таблице 14.2.

Таблица 14.2. Исходные данные для решения задачи

Обозначим через количество деталей типа D 1 , через количество деталей типа D 2 .

Математическая модель для решения данной задачи запишется следующим образом:

Ограничения (по фонду времени работы оборудования):

Требуется найти значения и , удовлетворяющие заданным ограничениям (14.6) – (14.10) и обеспечивающие максимум целевой функции (14.11). Параметры и являются управляемыми параметрами в математической модели.

Решим задачу графо – аналитическим методом (см. лекцию 6). Графическая иллюстрация решения задачи приведена на рис. 14.1.

Рис.14.1. Графическая иллюстрация решения задачи

Вычисления для построения ограничений (14.6) – (14.8):

x 1
x 2
x 1
x 2

Проведя прямую линию, параллельную данной, находим точку касания ее границы ОДР – это точка А. Для нахождения ее координат (точки пересечения ограничений 14.7 и 14.8) решаем следующую систему уравнений:

Т.е. окончательно

Максимальное значение целевой функции (максимальная загрузка оборудования участка) при оптимальных значениях искомых параметров составит:

Задача о минимальной загрузке оборудования

Эта и последующие задачи в данной лекции приводятся на уровне постановки задачи и формирования математической модели для ее решения. Все они решаются методами линейного программирования.

Имеется m станков, на которых могут быть изготовлены n типов деталей. Производительность i - го станка при изготовлении детали j - го типа составляет C ij . Величины плановых заданий A j на изготовление j - ой детали и ресурс времени B i работы i - го станка приведены в таблице 14.3.

Таблица 14.3 Исходные данные для решения задачи

Требуется, учитывая ресурсы времени работы каждого станка распределить задания между станками таким образом, чтобы общее время работы всех станков было минимальным.

Пусть t ij - время изготовления j - ой детали i - м станком. Составим ограничения по ресурсу времени для каждого станка:

Решение поставленной задачи состоит в минимизации линейной целевой функции (суммарного времени)

(14.14)

при ограничениях (14.12), (14.13) и условии, что все переменные .

Задача об оптимальном распределении деталей по станкам

Пусть некоторая машина состоит из различных видов деталей, которые мы пронумеруем числами . Имеется типов различных станков, причем количество станков - го типа равно . Детали могут быть изготовлены на станках разного типа. Производительность станка - го типа при изготовлении - ой детали составляет . После изготовления детали поступают на сборку. Требуется закрепить станки за деталями так, чтобы в единицу времени получать максимальное количество машин.

Пусть - количество станков - го типа, на которых можно изготовить - ю деталь. Очевидно, что количество станков - го типа, изготавливающих детали видов, не должно превышать заданное число :

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

(14.17)

при ограничениях (14.15), (14,16) с дополнительным условием, что все переменные .

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

Задача о производстве продукции при ограниченных запасах сырья

Из видов сырья производится различных типов продукции. Стоимость реализации изготовленной продукции - го типа составляет . Запас сырья - го вида на планируемый период равен . Потребность в сырье - го типа составляет . Исходные данные для решения задачи приведены в таблице 14.4.

Таблица 14.4 Исходные данные для решения задачи

Требуется для каждого типа продукта определить такой объем производства , чтобы обеспечить максимальную стоимость реализации изготовленной продукции при условии, что не будут превышены запасы имеющегося сырья.

Ограничения по запасам сырья имеют вид:

(14.18)

Задача заключается в том, чтобы определить оптимальные значения параметров (переменных) , обращающих в максимум стоимость продукции, т.е. целевую функцию

при ограничениях (14.18) и дополнительных условиях .

Основы теории массового обслуживания

Теория массового обслуживания составляет один из разделов теории вероятностей. В этой теории рассматриваются вероятностные задачи и математические модели (до этого нами рассматривались детерминированные математические модели). Напомним, что:

Детерминированная математическая модель отражает поведение объекта (системы, процесса) с позиций полной определенности в настоящем и будущем.

Вероятностная математическая модель учитывает влияние случайных факторов на поведение объекта (системы, процесса) и, следовательно, оценивает будущее с позиций вероятности тех или иных событий.

Т.е. здесь как, например, в теории игр задачи рассматриваются в условиях неопределенности .

Рассмотрим сначала некоторые понятия, которые характеризуют «стохастическую неопределенность», когда неопределенные факторы, входящие в задачу, представляют собой случайные величины (или случайные функции), вероятностные характеристики которых либо известны, либо могут быть получены из опыта. Такую неопределенность называют еще «благоприятной», «доброкачественной».

Понятие случайного процесса

Строго говоря, случайные возмущения присущи любому процессу. Проще привести примеры случайного, чем «неслучайного» процесса. Даже, например, процесс хода часов (вроде бы это строгая выверенная работа – «работает как часы») подвержен случайным изменениям (уход вперед, отставание, остановка). Но до тех пор, пока эти возмущения несущественны, мало влияют на интересующие нас параметры, мы можем ими пренебречь и рассматривать процесс как детерминированный, неслучайный.

Пусть имеется некоторая система S (техническое устройство, группа таких устройств, технологическая система – станок, участок, цех, предприятие, отрасль промышленности и т.д.). В системе S протекает случайный процесс , если она с течением времени меняет свое состояние (переходит из одного состояния в другое), причем, заранее неизвестным случайным образом.

Примеры: 1. Система S – технологическая система (участок станков). Станки время от времени выходят из строя и ремонтируются. Процесс, протекающий в этой системе, случаен.

2. Система S – самолет, совершающий рейс на заданной высоте по определенному маршруту. Возмущающие факторы – метеоусловия, ошибки экипажа и т.д., последствия – «болтанка», нарушение графика полетов и т.д.

Марковский случайный процесс

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

Пусть в настоящий момент t 0 система находится в определенном состоянии S 0 . Мы знаем характеристики состояния системы в настоящем и все, что было при t < t 0 (предысторию процесса). Можем ли мы предугадать (предсказать) будущее, т.е. что будет при t > t 0 ? В точности – нет, но какие-то вероятностные характеристики процесса в будущем найти можно. Например, вероятность того, что через некоторое время система S окажется в состоянии S 1 или останется в состоянии S 0 и т.д.

Пример . Система S – группа самолетов, участвующих в воздушном бою. Пусть x – количество «красных» самолетов, y – количество «синих» самолетов. К моменту времени t 0 количество сохранившихся (не сбитых) самолетов соответственно – x 0 , y 0 . Нас интересует вероятность того, что в момент времени численный перевес будет на стороне «красных». Эта вероятность зависит от того, в каком состоянии находилась система в момент времени t 0 , а не от того, когда и в какой последовательности погибали сбитые до момента t 0 самолеты.

На практике Марковские процессы в чистом виде обычно не встречаются. Но имеются процессы, для которых влиянием «предистории» можно пренебречь. И при изучении таких процессов можно применять Марковские модели (в теории массового обслуживания рассматриваются и не Марковские системы массового обслуживания, но математический аппарат, их описывающий, гораздо сложнее).

В исследовании операций большое значение имеют Марковские случайные процессы с дискретными состояниями и непрерывным временем.

Процесс называется процессом с дискретным состоянием , если его возможные состояния S 1 , S 2 , … можно заранее определить, и переход системы из состояния в состояние происходит «скачком», практически мгновенно.

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

Пример . Технологическая система (участок) S состоит из двух станков, каждый из которых в случайный момент времени может выйти из строя (отказать), после чего мгновенно начинается ремонт узла, тоже продолжающийся заранее неизвестное, случайное время. Возможны следующие состояния системы:

S 0 - оба станка исправны;

S 1 - первый станок ремонтируется, второй исправен;

S 2 - второй станок ремонтируется, первый исправен;

S 3 - оба станка ремонтируются.

Переходы системы S из состояния в состояние происходят практически мгновенно, в случайные моменты выхода из строя того или иного станка или окончания ремонта.

При анализе случайных процессов с дискретными состояниями удобно пользоваться геометрической схемой – графом состояний . Вершины графа – состояния системы. Дуги графа – возможные переходы из состояния в

Рис.15.1. Граф состояний системы

состояние. Для нашего примера граф состояний приведен на рис.15.1.

Примечание. Переход из состояния S 0 в S 3 на рисунке не обозначен, т.к. предполагается, что станки выходят из строя независимо друг от друга. Вероятностью одновременного выхода из строя обоих станков мы пренебрегаем.

Потоки событий

Поток событий – последовательность однородных событий, следующих одно за другим в какие-то случайные моменты времени.

В предыдущем примере – это поток отказов и поток восстановлений. Другие примеры: поток вызовов на телефонной станции, поток покупателей в магазине и т.д.

Поток событий можно наглядно изобразить рядом точек на оси времени O t – рис. 15.2.

Рис.15.2. Изображение потока событий на оси времени

Положение каждой точки случайно, и здесь изображена лишь какая-то одна реализация потока.

Интенсивность потока событий () – это среднее число событий, приходящееся на единицу времени.

Рассмотрим некоторые свойства (виды) потоков событий.

Поток событий называется стационарным , если его вероятностные характеристики не зависят от времени.

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

Поток событий называется потоком без последствий , если для любых двух непересекающихся участков времени и (см. рис.15.2) число событий, попадающих на один из них, не зависит от того, сколько событий попало на другой. Другими словами, это означает, что события, образующие поток, появляются в те или иные моменты времени независимо друг от друга и вызваны каждое своими собственными причинами.

Поток событий называется ординарным , если события в нем появляются поодиночке, а не группами по нескольку сразу.

Поток событий называется простейшим (или стационарным пуассоновским), если он обладает сразу тремя свойствами: 1) стационарен, 2) ординарен, 3) не имеет последствий.

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

Для простейшего потока с интенсивностью интервал T между соседними событиями имеет так называемое показательное (экспоненциальное) распределение с плотностью