ФЭА / АИТ / Лабораторная работа №2 по дисциплине: «Моделирование систем» на тему: «Решение задач линейного программирования»
(автор - student, добавлено - 20-09-2017, 20:51)
Скачать:
Кафедра автоматизации и информационных технологий
Лабораторная работа №2
по дисциплине: «Моделирование систем»
на тему: «Решение задач линейного программирования»
Выполнили: Проверил:
Цель и содержание работы Цель данной работы - решение задач линейного программирования при заданных целевой функции и ограничениях в виде равенств и неравенств аналитическим и геометрическим способами. Основные сведения из теорииСреди известных разделов математического программирования наиболее развитым является линейное программирование (ЛП). Несмотря на требование линейности целевой функции и ограничений, в рамки линейного программирования укладываются задачи распределения ресурсов, управления запасами, сетевого и календарного планирования, транспортные задачи, задачи сетевого и календарного планирования, задачи теории расписаний, задачи проектирования радиоэлектронных средств и систем, конструкций и технологических процессов производства аппаратуры. Симплексный методНетрудно заметить, что классический метод отыскания экстремумов функции многих переменных, заключающейся в дифференцировании целевой функции по всем переменным, в приравнивании нулю производных и решении полученной системы уравнений относительно оптимальных значений переменных, неприемлем для решения задачи линейного программирования, так как целевая функция линейно зависит от переменных и ее производные по всем переменным постоянны и нигде не обращаются в нуль. Для решения задач линейного программирования была разработана специальная вычислительная процедура, называемая симплекс-методом и основанная на ряде теоретических утверждений линейного программирования. Понятие о симплекс-методе. Симплекс-метод, называемый также «методом последовательного улучшения плана», впервые был предложен Г. Данцигом в 1947 году. Этот метод позволяет переходить от одного допустимого базисного решения к другому, причем так, что значения целевой функции непрерывно возрастают. В результате оптимальное решение находят за конечное число шагов. Алгоритмы симплекс-метода позволяют также установить, является ли задача ЛП разрешимой. Как известно, задача оптимизации критерия сводится к выбору только неотрицательного решения системы уравнений, максимизирующего и содержащего ровно отличных от нуля составляющих. Так как число уравнений в системе всегда меньше числа переменных , эта система имеет, вообще говоря, бесчисленное множество решений. Однако среди этих решений представляют интерес только неотрицательные и притом такие, в которых лишь значений переменных отличны от нуля. Любое решение системы уравнений, состоящее из набора неотрицательных значений переменных , называется допустимым решением. Допустимое решение, в котором ровно составляющих отличны от нуля, называется допустимым базисным решением, или просто базисным решением. Иногда базисное решение называют также планом. Базисное решение определяет координаты вершины многогранника условий рассматриваемой оптимальной задачи, тогда как допустимое решение может определять координаты любой другой точки этого многогранника, включая и его внутренние точки. Очевидно, что не всякое базисное решение является оптимальным решением задачи линейного программирования. Однако оптимальное решение невырожденной задачи всегда должно быть базисным для системы уравнений и, таким образом, задача отыскания оптимального решения заключается в переборе только базисных решений системы уравнений, среди которых отыскивается оптимальное. Алгоритм симплекс-метода. Решение основной задачи линейного программирования геометрическим методом является наглядным в случае двух и даже трех переменных. Для случая большего числа переменных геометрический метод становится невозможным. Так называемый симплекс-метод принадлежит к числу основных аналитических методов решения основной задачи линейного программирования. Система ограничений в вычислительных методах обычно задается системой линейных алгебраических уравнений (1) и среди неотрицательных решений системы уравнений (1) надо найти такое, которое бы максимизировали или минимизировали линейную функцию . Алгоритм решения задачи симплекс-методом состоит из следующих этапов. Во-первых, необходимо убедиться в совместности системы линейных алгебраических уравнений (1). Если ограничительные условия заданы неравенствами, то их нужно преобразовать в равенства путем введения новых неотрицательных переменных, так называемых балансовых (выравнивающих). Так, например, в неравенстве а1 x1 + а2x2 +…+ an xn достаточно добавить к левой части хn +1, и получится равенство а1 x1 + а2x2 +…+ an xn +хn+1 . Ограничительные условия могут задаваться и смешанным образом, т. е. неравенствами и уравнениями. Тогда указанным способом их можно всегда свести к ограничениям вида (1). Работа симплекс-метода начинается с выбора опорного решения, содержащего r базисных переменных и n-r свободных переменных. Так как в задаче имеется m уравнений-ограничений, то неизвестные переменные х1,…,хr можно выразить через остальные n-r переменные и уравнения-ограничения (1) могут быть преобразованы к следующему виду: x1 = а’1,r +1 xr +1 +…+ a’1n xn + b’1, x2 = а’2, r + 1 xr + 1 +…+ a’2n xn + b’2, … … … … … (2) xr = а’r, r +1 xr +1 +…+ a’2n xn + b’r, где . Неизвестные переменные х1,х2,…,хr называются базисными. Остальные переменные называются свободными. При этом систему ограничений (2) называют системой, приведённой к единичному базису. Подставляя теперь в линейную форму l вместо базисных переменных их выражения через свободные из системы (2), получим l = g0 + g r +1x r+1 +…+g n x n . (3) Теперь, полагая все свободные переменные равными нулю, найдём значения базисных переменных: x1=b’1, x2=b’2,…, хr=b’r. Таким образом, решение системы (b’1, b’2,…, b’r, 0,…,0) является допустимым – оно называется базисным. Подставляя в линейную форму l значения базисных переменных, получим базисное значение линейной формы . Для полученного базисного решения . Условие оптимальности опорного решения при нахождении минимума может быть записано в виде , так как в этом случае увеличение любой свободной переменной будет приводить к возрастанию целевой функции. Если же некоторые из коэффициентов отрицательны, то базисное допустимое решение не является оптимальным, так как увеличение от нуля свободных переменных, входящих в целевую функцию с отрицательными коэффициентами, приведет к ее уменьшению. При поиске минимума из свободных переменных, входящих в целевую функцию, необходимо выбрать переменную с максимальным по модулю отрицательным коэффициентом. При переходе к новому опорному решению эту переменную целесообразно включить в число базисных и выбрать ее максимально возможной, чтобы сильнее уменьшить целевую функцию. Таким образом, далее меняем одну из свободных переменных с таким расчётом, чтобы значение уменьшалось, или, по крайней мере, не увеличивалось, если нами решается задача на нахождение , т.е. переходим к новому базису такому, что . Процесс продолжается итеративно до тех пор, пока все коэффициенты в уравнении (2.13) не станут положительными. Если ищется , то переход к новому базису осуществляется так, чтобы выполнялось неравенство: . Соответственно, процесс продолжается до тех пор, пока все коэффициенты в уравнении (3) не станут отрицательными. Следует отметить, что при выборе других начальных опорных решений процедура симплекс-метода приведет к тому же оптимальному решению. Расчетная часть Порядок выполнения работы Задание №5Найти оптимальные неотрицательные решения, минимизирующие линейную форму:L = х1 – х2 + х3+ х4 + х5 – х6 при ограничениях: х1 + х4+ 6х6 = 9, 3х1 + х2– 4х3 + 2х6 = 2, х1 + 2х3+ х5 + 2х6 = 6; Решение: Составим матрицу системы и расширенную матрицу и найдем их ранги: Система ограничений совместна, так как ранги соответствующих матриц совпадают и равны 3. Следовательно, три базисных переменных можно выразить линейно через другие три свободные. Примем за свободные переменные х2 и х4 и х5. Тогда:
Таким образом, выразили базисные переменные через свободные: При х2=0,х4=0, х5 =0 базисные переменные , т.е. имеем первое допустимое решение и . Уменьшение L можно осуществить при увеличении х2до 5. Тогда х2 переходит в базисные, а х1 – в свободные, т.к. при х2=5 х1=0. Перепишем систему уравнений через новые свободные переменные:
. Допустимое решение получится при . Вычисляем, что при этих значениях Так как в линейной форме свободные переменные с положительными коэффициентами, то дальнейшее уменьшение функции невозможно. Таким образом, оптимальное решение Задание №6 Найти оптимальные неотрицательные решения, максимизирующие линейную форму: х1 + х2+ 5х3 = 20, х2 + 2х45, х1 + х2– х3 8; L = 2х1 + х4
Похожие статьи:
|
|