Решение военно-прикладных задач численными методами линейного программирования. Решение_военно-прикладных_задач_численными_методами_линейного_пр. Графоаналитический метод. Задача 1
![]()
|
Ввод. Современное общество развивается с огромной скоростью. Появляются различные задачи, направленные на необходимость оптимизации решения, с точки зрения поставленной цели. Известно, что наиболее разработанными и хорошо распространёнными являются математические модели, которые реализуются, с помощью методов линейного программирования. В настоящее время новейшие достижения математики и современной вычислительной техники находят все более широкое применение в экономических, военных, инженерных и других исследованиях и планировании. Этому способствует развитие определённых разделов математики, таких как математическое программирование, теория игр, теория массового обслуживания, а также бурное развитие быстродействующей техники. Уже накоплен достаточный опыт постановки и решения экономических задач с помощью математических методов. Особенно успешно развиваются методы оптимального планирования, которые и составляют сущность математического программирования. Линейное программирование – это наука о методах исследования и отыскания наибольших и наименьших значений линейной функции, на неизвестные которой наложены линейные ограничения. Таким образом, задачи линейного программирования относятся к задачам на условный экстремум функции. Графоаналитический метод. Задача №1. На изготовление двух видов продукции ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
Таблица 1 Необходимо: составить такой план выпуска продукции видов ![]() ![]() Замечание. Число 0 означает, что на производство продукции вида ![]() ![]() Решение. Обозначим через ![]() ![]() ![]() ![]() ![]() ![]() Любое решение ![]() Суммарная прибыль предприятия от реализации продукции видов ![]() ![]() ![]() ![]() ![]() ![]() Линейная функция двух переменных ![]() Таким образом, получили задачу линейного программирования: ![]() ![]() ![]() Построим область допустимых решений системы ограничений, которая представляет собой выпуклый многоугольник. Для этого запишем уравнения граничных прямых и построим их графики: ![]() ![]() ![]() Пересечением полуплоскостей будет являться область, координаты точек которого удовлетворяют условию неравенствам системы ограничений задачи. Обозначим границы области многоугольника ABCDE решений. Построим градиент функции цели ![]() ![]() Построим линию нулевого уровня l, перпендикулярную grad F. Будем перемещать прямую lв направлении градиента до пересечения с последней вершиной многоугольника. Поскольку нас интересует максимальное решение, поэтому двигаем прямую до последнего касания обозначенной области. На графике эта прямая обозначена пунктирной линией. Прямая F = const пересекает область в точке С. Так как точка С получена в результате пересечения прямых (1) и (2), то ее координаты удовлетворяют уравнениям этих прямых: ![]() ![]() Решив систему уравнений, получим: ![]() ![]() Ответ: для обеспечения максимальной прибыли от реализации готовой продукции предприятию необходимо выпускать 7 единиц продукции ![]() ![]() Симплекс-Метод. Задача №2. Для изготовления различных видов изделий A, B и С предприятие использует три различных вида сырья. Нормы расхода сырья на производство одного изделия каждого вида, цена одного изделия А, В и С, а также общее количество сырья каждого вида, которое может быть использовано предприятием, приведены в таблице 2.
Таблица 2 Необходимо: составить план производство изделий, при котором общая стоимость всей производственной продукции является максимальной. Решение. Составим математическую модель задачи. Искомый выпуск изделий А обозначим через ![]() ![]() ![]() Так как каждый вид сырья имеет ограничения, переменные ![]() ![]() Общая стоимость произведенной продукции при условии выпуска ![]() ![]() ![]() ![]() Переменные ![]() ![]() Таким образом мы пришли к следующей задаче: Среди всех неотрицательных решений системы неравенств требуется найти такое, при котором функция принимает максимальное значение. Запишем эту задачу в форме основной задачи линейного программирования. Для этого перейдем от ограничений-неравенств к ограничениям-равенствам. Для этого введем три дополнительных переменных, в результате его получим следующую систему: ![]() Эти дополнительные переменные по экономическому смыслу означают не используемое при данном плане производства количество сырья того или иного вида. Например, ![]() ![]() Для решения задачи составим симплекс-таблицу 2.1.
Таблица 2.1 При этом заполнение таблицы осуществляется следующим образом: В столбец Б таблицы записываются векторы базиса. В столбец ![]() В столбце ![]() Столбцы вектора ![]() В таблице 2.1. первые mстрок (в данном случае три строки) определяются исходными данными задачи, а показатель (m+1) –й строки (в данном случае четвертой строки) вычисляются. В этой строке таблицы в столбце вектора ![]() ![]() ![]() ![]() Значение ![]() ![]() ![]() ![]() Значение ![]() ![]() ![]() ![]() После заполнения таблицы исходный опорный план проверяется на оптимальность. Для этого просматриваются элементы (m+1) –й строки таблицы. В результате может иметь место один из следующих трех случаев: ![]() ![]() ![]() ![]() ![]() ![]() ![]() В качестве вектора, вводимого в базис, можно взять любой из векторов ![]() ![]() ![]() ![]() Для определения вектора, подлежащего исключению из базиса, находят ![]() ![]() ![]() ![]() ![]() Переход от одного опорного плана к другому сводится к переходу от одной симплекс-таблицы к другой, правила заполнения которых состоят в следующем: В столбцах векторов, входящих в базис, на пересечении строк и столбцов одноименных векторов проставляются единицы, а все остальные элементы данных столбцов полагают равными нулю. Элементы векторов ![]() ![]() ![]() ![]() Остальные элементы столбцов вектора ![]() ![]() Число, стоящее в исходной симплекс – таблице на месте искомого элемента новой симплекс – таблицы; Число, стоящее в исходной симплекс – таблице на пересечении строки, в которой находится искомый элемент новой симплекс – таблицы, и столбца, соответствующего вектору, вводимому в базис; Число, стоящее в новой симплекс – таблице на пересечении столбца, в котором стоит искомый элемент, и строки вновь вводимого в базис вектора (как отмечено выше, эта строка получается из строки исходной симплекс – таблицы делением ее элементов на разрешающий элемент). Эти три числа образуют своеобразный треугольник, две вершины которого соответствуют числам, находящимся в исходной симплекс – таблице, а третья – числу, находящемуся в новой симплекс – таблице. Для определения искомого элемента новой симплекс – таблицы из первого числа вычитают произведение второго и третьего. После заполнения новой симплекс – таблицы просматриваются элементы (m+1) –й строки. Если все ![]() Замечание. При переходе от одного плана к другому значение функции может оставаться прежним. Более того, возможен случай, когда функция сохраняет свое значение в течение нескольких итераций, а также возможен возврат к первоначальному базису. В последнем случае обычно говорят, что произошло зацикливание. В индексной строке нет отрицательных элементов, значит, получен оптимальный план, при этом ![]() Ответ: при данном плане выпуска изделий полностью используется сырье ![]() ![]() ![]() |