
- •Методы оптимальных решений курс лекций
- •Введение
- •Тема 1. Основы исследования операций
- •Основные определения
- •Типичные задачи исследования операций
- •Общая постановка задачи исследования операции.
- •Классификация задач исследования операций
- •Тема 2. Задачи линейного программирования
- •Общая задача линейного программирования
- •Допустимые базисные решения и многогранник решений
- •Симплексный метод
- •Решение задачи отыскания максимума линейной функции
- •Отыскание минимума линейной функции
- •Определение первоначального допустимого базисного решения
- •Особые случаи симплексного метода
- •Неединственность оптимального решения
- •Вырожденное базисное решение
- •Отсутствие конечного оптимального решения
- •Метод искусственного базиса (м-метод)
- •Двойственные задачи
- •Симметричная пара
- •Несимметричная пара
- •Смешанная пара
- •Экономическая интерпретация двойственной задачи
- •Решение двойственной задачи и определение интервалов устойчивости двойственных оценок оптимального решения.
- •Задачи целочисленного программирования
- •Тема 3. Транспортная задача
- •Экономико-математическая модель транспортной задачи
- •Первоначальное распределение поставок методом наименьших затрат
- •Метод «северо-западного угла»
- •Проверка плана на оптимальность. Метод потенциалов
- •Тема 4. Задачи динамического программирования
- •Общая постановка задачи
- •Принцип оптимальности и уравнения Беллмана
- •Пример выбора оптимального маршрута
- •Заключение
- •Литература
- •Содержание
- •Тема 1. Основы исследования операций 3
- •1.1. Основные определения 3
- •Тема 2. Задачи линейного программирования 9
- •Тема 3. Транспортная задача 35
- •Тема 4. Задачи динамического программирования 49
Общая постановка задачи исследования операции.
Все факторы, входящие в описание операции, можно разделить на две группы:
постоянные факторы (условия проведения операции) α1, α2, …, на которые влиять не может;
зависимые факторы (элементы решения) x1, x2, … , которые в известных пределах исследователь может выбирать по своему усмотрению.
Целевая
функция Z
зависит
от факторов обеих групп:
Оптимизационную задачу можно сформулировать в общем виде: найти переменные x1, x2, … xn, удовлетворяющие системе неравенств
(1.1)
и обращающие в максимум (или минимум) целевую функцию, т.е.
(1.2)
Условия неотрицательности переменных, если они есть, входят в ограничения (1.1). Эти условия определены физической сущностью переменных.
Как
известно, упорядоченная совокупность
значений п
переменных
x1,
x2,
…
, xn
представляется точкой n-мерного
пространства. В дальнейшем эту точку
будем обозначать
,
а само оптимальное решение
.
Частным случаем общей задачи (1.1) - (1.2) на определение экстремума функции п переменных при некоторых ограничениях, т.е. задачей на условный экстремум, является классическая задача потребления.
Пусть
имеется п
видов
товаров и услуг, в количестве x1,
x2,
…
, xn
по
ценам соответственно p1,
p2,
…
, pn
за единицу. Суммарная стоимость этих
товаров и услуг составляет
Уровень потребления Z
может
быть выражен некоторой функцией
полезности
Необходимо
при данной величине доходов I
найти такой набор товаров и услуг x1,
x2,
…
, xn,
чтобы обеспечить максимальный уровень
потребления,
т.е.
(1.3)
при
условии
(1.4)
(1.5)
Решения этой задачи, зависящие от цен p1, p2, … , pn и величины дохода I, называются функциями спроса.
В тех случаях, когда функции f и φi в задаче (1.1) - (1.2) хотя бы дважды дифференцируемы, можно применять классические методы оптимизации. Однако применение этих методов в исследовании операций весьма ограниченно, метод дает возможность определить локальный экстремум, а из-за многомерности функции определение ее максимального (или минимального) значения (глобального экстремума) может оказаться трудоемким, причем экстремум возможен на границе области решений. Классические методы не работают, если множество допустимых значений аргумента дискретно или функция Z задана таблично. В этих случаях для решения задачи применяются методы математического программирования.
Классификация задач исследования операций
Если критерий эффективности
является линейной функцией, и функции
в системе ограничений также линейны, то задача является задачей линейного программирования.
Если, исходя из содержательного смысла, ее решения должны быть целыми числами, то имеем задачу целочисленного линейного программирования.
Если критерий эффективности или система ограничений задаются нелинейными функциями, то это задача нелинейного программирования.
Если указанные функции обладают свойствами выпуклости, то задача является задачей выпуклого программирования.
Если в задаче математического программирования имеется переменная времени и критерий эффективности выражается через уравнения, описывающие протекание операций во времени, то такая задача является задачей динамического программирования.
Если функции f и (или) φi зависят от параметров, то получаем задачу параметрического программирования.
Если функции f и (или) φi носят случайный характер, то это задача стохастического программирования.
Если точный оптимум найти алгоритмическим путем невозможно из-за чрезмерно большого числа вариантов решения, то прибегают к методам эвристического программирования, позволяющим существенно сократить просматриваемое число вариантов и найти если не оптимальное, то достаточно хорошее с точки зрения практики решение.
Из перечисленных методов математического программирования наиболее распространенным и разработанным является линейное программирование. Его методы применимы для широкого круга задач.
На практике в большинстве случаев эффективность операции оценивается не по одному, а сразу по нескольким критериям, одни из которых следует максимизировать, другие — минимизировать. Математический аппарат может принести пользу и в случаях многокритериальных задач исследования операции, по крайней мере, помочь отбросить заведомо неудачные варианты решений. Для того чтобы на основании множества критериев, в том числе и противоречащих друг другу (например, прибыль и расход), составить целевую функцию, необходимо установить приоритет критериев, назначив им весовые коэффициенты. Нахождение множества эффективных (оптимальных по Парето) решений для задачи многокритериальной оптимизации рассматривается, например, в курсе системного анализа. Окончательный выбор «компромиссного» решения (приемлемого по всем критериям) остается за лицом, принимающим решение.