Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Математическое программирование.
Исследование операций в экономике – это научная дисциплина, целью которой является количественное обоснование принимаемых решений. С помощью специальных математических методов решается определенный класс экономических задач. К таким задачам относятся: задача об оптимальном использовании ограниченных ресурсов (сырьевых, трудовых, временных); задача сетевого планирования и управления; задачи массового обслуживания; задачи составления расписания (календарного планирования); задачи выбора маршрута и другие. Оптимизационная задача, в которой целевая функция и неравенства (уравнения), входящие в систему ограничений являются линейными функциями, называется задачей линейного программирования. Общая задача линейного программирования имеет вид: Первая функция называется целевой функцией. Вторая система называется системой ограничений, а условие – условием неотрицательности. Графический метод решения ЗЛП основан на следующих утверждениях. Система ограничений ЗЛП геометрически представляет собой выпуклый многоугольник или выпуклую многоугольную область как пересечение полуплоскостей - геометрических образов неравенств системы. Целевая функция Z = c1x1 + c2x2 геометрически изображает семейство параллельных прямых, перпендикулярных вектору нормали N(с1, с2). Эти прямые называются линиями уровня. Линия уровня – это прямая, вдоль которой целевая функция принимает фиксированное значение. Теорема. При перемещении линии уровня в направлении вектора нормали N значение целевой функции возрастает, в противоположном направлении - убывает. Алгоритм графического метода решения ЗЛП. 1. В системе координат построить прямые по уравнениям, соответствующим каждому неравенству системы ограничений; 2. найти полуплоскость решения каждого неравенства системы (обозначить стрелками). Для определения полуплоскости необходимо выбрать любую контрольную точку, не лежащую на данной прямой. Подставить ее координаты в систему ограничений. Если неравенство выполняется, то нужно выбрать полуплоскость, содержащую контрольную точку. Если неравенство не выполняется нужно выбрать полуплоскость, не содержащую контрольную точку. В качестве контрольной точки рекомендуется выбирать точку с координатами (0; 0); 3. найти многоугольник (многоугольную область) решений системы ограничений как пересечение полуплоскостей; 4. построить вектор нормали N. Начало вектора нормали в точке с координатами (0; 0), конец вектора в точке с координатами (с1, с2); 5. через начало координат построить линию уровня, перпендикулярно к вектору нормали; 6. перемещать линию уровня параллельно самой себе по области решения в угловые точки, достигая max f при движении вектора N (min f при движении в противоположном направлении); 7. найти координаты точки max (min). Для этого необходимо решить систему уравнений прямых, которые пересекаются в этой точке или определить координаты по графику; 8. вычислить значение целевой функции в этой точке (ответ). Симплексный метод представляет собой схему получения оптимального плана за конечное число шагов. Для использования симплексного метода ЗЛП должна быть приведена к каноническому виду, т.е. система ограничений должна быть представлена в виде уравнений. Оптимизационные исследования ЗЛП удобно проводить, пользуясь симплекс-таблицами. Существует достаточно большое количество форм симплекс-таблиц. Воспользуемся одной из форм, по которой рекомендуется следующий порядок решения ЗЛП: 1. Математическая модель задачи приводится к канонической форме с помощью дополнительных неотрицательных переменных. 2. Определяется начальное базисное допустимое решение. Для этого переменные разбивают на две группы – основные (базисные) и неосновные. В качестве основных переменных следует выбрать (если возможно) переменные, каждая из которых входит только в одно из уравнений системы ограничений. Дополнительные переменные удовлетворяют этому правилу. 3. Составляется исходная симплекс-таблица (таблица 1), в которую записывают параметры, соответствующие начальному базисному допустимому решению: 3.1. Весовые коэффициенты cj при переменных xj (j = 1,..., n) целевой функции (строка C). 3.2. Весовые коэффициенты ci при базисных переменных xi (i = 1,..., m) целевой функции (столбец Cb). 3.3. Переменные xi (i = 1,..., m), которые входят в текущий базис (столбец Ab). 3.4. Свободные коэффициенты bi (i =1,..., m) уравнений ограничений (столбец B). В этом же столбце находим оптимальный план задачи. 3.5. Элементы a ij (i = 1,..., m; j = 1,..., n) матрицы условий задачи (столбцы A1,.., An).
Таблица 1
Оценки Sj (j=1,..., n) векторов условий Aj, которые определяются по формуле:
где ci - весовые коэффициенты при базисных переменных. Из этой формулы следует, что коэффициенты z j вычисляются для каждого столбца как сумма почленных произведений коэффициентов ci на одноименные коэффициенты j-го столбца. При заполнении симплекс-таблицы при условии, что рассматривается задача максимизации целевой функции, необходимо иметь в виду: если Sj ³ 0 для всех j = 1,..., n, то полученное решение является оптимальным; если имеются Sj < 0и в столбцах Aj, соответствующих этим отрицательным оценкам, существует хотя бы один элемент aij > 0, то возможен переход к новому решению, связанному с большим значением целевой функции; Из отрицательных оценок выбирают ту, у которой значение по абсолютной величине больше. Если имеется несколько одинаковых отрицательных оценок, то выбирают ту, которой соответствует максимальный коэффициент целевой функции ci. если имеются Sk< 0 и в столбце Ak все элементы aik £ 0, то в области допустимых решений целевая функция не ограничена сверху. Определяется вектор Ak, который необходимо ввести в базис для улучшения решения, по наибольшему значению Sk. Переменная этого столбца xk будет новой базисной переменной, которая вводится в базис. Столбец, содержащий эту переменную, называетсянаправляющим столбцом. Определяется вектор, который нужно вывести из базиса, используя равенство:
Это условие позволяет найти направляющую строку. Переменная xr, соответствующая этой строке, выводится из базисного решения и заменяется переменной xk направляющего столбца. Элемент ark, который стоит на пересечении направляющего столбца и направляющей строки, называется разрешающим элементом. Заполняется таблица соответствующая новому базисному решению. В этой таблице, прежде всего заполняются клетки строки r с вводимой переменной xk. Для этого все элементы этой строки делятся на направляющий элемент. Получаются элементы новой строки: br/ark, ar1/ark,..., arn/ark. Остальные элементы новой таблицы определяются по правилу прямоугольника: Процесс вычислений заканчивается, когда найдено оптимальное решение. Критерий оптимальности решения для нахождения максимального значения целевой функции: если в выражении линейной функции через неосновные переменные отсутствуют положительные коэффициенты при неосновных переменных, то решение оптимально. Критерий оптимальности решения для нахождения минимального значения целевой функции: если в выражении линейной функции через неосновные переменные отсутствуют отрицательные коэффициенты при неосновных переменных, то решение оптимально. Если ограничения исходной задачи содержат единичную матрицу порядка М, то при неотрицательности правых частей уравнений определен первоначальный план, из которого с помощью симплекс – таблиц находится оптимальный план. Если ограничения можно привести к виду: Ах≤ А0 при А0≥ 0, то система ограничений содержит единичную матрицу всегда. Если задача не содержит единичной матрицы и не приводится к указанному виду, то для решения задачи используется метод искусственного базиса. Для получения единичной матрицы к каждому ограничению прибавляют по одной неотрицательной переменной, которые называются искусственными. Единичные вектора, соответствующие искусственным переменным, образуют искусственный базис. В целевую функцию искусственные переменные добавляются с коэффициентом М, если задана задача на нахождение минимума. В этом случае величина М предполагается достаточно большим положительным числом. Если необходимо найти минимальное значение целевой функции, то искусственные переменные записывают с коэффициентом (-М), который предполагается достаточно малым отрицательным числом. Для нахождения оптимального плана в случае, если заранее не задана величина М, применяется симплекс-метод, который в таблице имеет на одну строку больше, чем обычная симплекс-таблица. Строка оценок разбивается на две: (m+1) – оценка, не зависящая от М; (m+2) – коэффициент при М. По (m+2) строке определяют вектор, подлежащий включению в базис. Итерационный процесс проводят до исключения из базиса всех искусственных векторов. Затем процесс продолжают по (m+1) строке обычным симплекс-методом. Классическая транспортная задача формулируется следующим образом: Имеется m пунктов отправления (производства) A1, A2,..., Am, в которых расположены запасы некоторого однородного продукта (груза). Объём этого продукта в пункте Ai составляет ai единиц. Кроме того, имеется n пунктов потребления B1, B2,..., Bn. Объём потребления в пункте B j составляет bj единиц. Предполагается, что из каждого пункта отправления возможна транспортировка продукта в любой пункт потребления. Известна также стоимость cij перевозки единицы продукта из пункта Ai в пункт Bj. Требуется составить такой план перевозок, при котором все заявки пунктов потребления полностью выполнялись бы пунктами отправления, а общая стоимость перевозок была минимальной. При такой постановке данную задачу называют транспортной задачей по критерию стоимости. В общем виде исходные данные представлены в таблице.
Таблица
Транспортная задача называется закрытой, если суммарный объем отправляемых грузов равен суммарному объему потребности в этих грузах по пунктам назначения Если такого равенства нет (потребности выше запасов или наоборот), задачу называют открытой.
1. Из распределительной таблицы выбирают наименьшую стоимость и в клетку, которая ей соответствует, помещают меньшее из чисел ai или bj (если таких клеток несколько, то выбирают любую); 2. Из рассмотрения исключают либо строку, соответствующую поставщику, запасы которого полностью израсходованы, либо столбец, соответствующий потребителю, потребности которого полностью удовлетворены, либо и то и другое; 3. Из оставшейся части таблицы снова выбирают наименьшую стоимость и процесс продолжается до тех пор, пока все запасы не будут вывезены, а потребности удовлетворены; 4. Рассчитывают транспортные расходы: сумма произведений количества перевезенной продукции на стоимость для занятых клеток.
|