Методы решения задач линейного программирования с n-переменными
Министерство образования Республики Башкортостан
Стерлитамакский
колледж строительства, экономики
и права
КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ
«МАТЕМАТИЧЕСКИЕ МЕТОДЫ»
На
тему: «Методы решения
задач линейного
программирования с
n-переменными»
Выполнила: студентка гр. ПО-32
Талант Людмила Владимировна
Руководитель: Шалаева
И.И.
г. Стерлитамак
2011
Содержание
Введение
Постановка основной задачи линейного программирования с n-переменными
Графический метод решения задач линейного программирования с n-переменными
Симплекс-метод
решения задач линейного программирования
с n-переменными
Математическая модель
Решение задачи в MS Excel
Решение задачи графическим методом
Решение задачи симплекс-методом
Аналитическая часть
Заключение
Список используемой литературы
Введение
Цель курсового проектирования — закрепить, систематизировать и комплексно обобщить знания по методам решения задач линейного программирования; научиться практически применять полученные теоретические знания при решении конкретных вопросов. Объектом исследования будет конкретная задача, описанная ниже. В курсовой работе рассмотрим графический и симплекс-методы линейного программирования с и найдем оптимальный план производства товаров, обеспечивающего предприятию максимальную прибыль.
Актуальность подобных задач в настоящее время сомнений, как правило, ни у кого не вызывает, т.к. проблема оптимального планирования производства сейчас, в постиндустриальный век, является, наверное, второй по степени важности после проблемы наилучшей организации передачи и хранения информации, а в России, скорее всего, главной, если говорить исключительно о развитии научного прогресса в нашей стране.
Постановка основной задачи
Линейное программирование — математическая дисциплина, посвящённая теории и методам решения экстремальных задач на множествах n-мерного векторного пространства, задаваемых системами линейных уравнений и неравенств. Называется программированием условно, не имея ничего общего с написанием машинного кода.
Линейное программирование является частным случаем выпуклого программирования, которое в свою очередь является частным случаем математического программирования. Одновременно оно — основа нескольких методов решения задач целочисленного и нелинейного программирования. Одним из обобщений линейного программирования является дробно-линейное программирование.
Многие
свойства задач линейного
Термин «программирование» нужно понимать в смысле «планирования». Он был предложен в середине 1940-х годов Джорджем Данцигом, одним из основателей линейного программирования, ещё до того, как компьютеры были использованы для решения линейных задач оптимизации.
В
линейном программировании изучаются
свойства решений линейных систем
уравнений и неравенств с n-переменными
следующего вида:
В системах (1.1) коэффициенты aij и правые части bi являются числами. Такие системы называются системами ограничений.
Точка в n -
мерном пространстве
(1.2) удовлетворяющая
системе (1.1), называется допустимым планом.
Основной
задачей линейного
Функция Z, определенная соотношением (1.3), называется функцией прибыли (целевой функцией).
Допустимый план, доставляющий максимум функции (1.3), называется оптимальным планом.
Иногда
в задачах линейного
В этом случае с помощью введения функции Z = − R задача о нахождении минимума функции затрат R сводится к задаче о нахождении максимума функции прибыли Z.
Графический метод решения задач линейного программирования
Рассмотрим задачу формирования плана производства.
Некоторое предприятие может выпускать определённый набор продукции. Нормы затрат известны. Требуется построить производственный план, учитывающий ограниченность ресурсов.
Формализация
n
- число различных видов
m - число различных ресурсов.
Таблица №1
| Вид продукции | Норма расхода ресурса на единицу продукции | Прибыль на единицу продукции | ||||||
| 1 | 2 | 3 | ... | i | … | m | ||
| 1 | a11 | c21 | a31 | … | ai1 | … | am1 | c1 |
| 2 | a12 | c22 | a32 | … | ai2 | … | am2 | c2 |
| 3 | a13 | c23 | a33 | … | ai3 | … | am3 | c3 |
| … | … | … | … | … | … | … | … | … |
| j | a1j | c2j | a3j | … | aij | … | amj | cj |
| … | … | … | … | … | … | … | … | … |
| n | a1n | a2n | a3n | … | ain | … | amn | cn |
| Ограничения на ресурсы | b1 | b2 | b3 | … | bi | … | bm | |
aij - объём i-того ресурса, который расходуется на производство одной единицы j-того вида продукции i=1..m, j=1..n.
xj - объем (количество единиц) j-того вида продукции в производственном плане предприятия (j от 1 до n).
Необходимо определить нормы выпуска каждого вида продукции, чтобы прибыль от её реализации была максимальной.
Построение экономико-
Прибыль обозначим F, тогда
Составим
ограничения для первого
а11 - объем первого ресурса, который расходуется на производство одной единицы первого вида продукции;
а11x1 - объём первого ресурса, который требуется на изготовление x1 единиц первого вида продукции;
а12x2 - объём первого ресурса, который требуется на изготовление x2 единиц второго вида продукции;
а1nxn - объём первого ресурса, который требуется на изготовление xn единиц n-ого вида продукции;
а11x1 + a12x2 + ... + a1nxn - объём первого ресурса, который требуется на изготовление продукции, следовательно, мы имеем следующее ограничение:
Аналогично для остальных ресурсов:
Кроме того, количество выпущенной продукции не может быть отрицательной, следовательно, x1>= 0, x2>=0, ...,xn>=0.
Таким образом, получаем следующую экономико-математическую модель задачи линейного программирования:
Задачу линейного программирования для n переменных можно представить в следующем виде:
Определить значения переменных , при которых линейная целевая функция F достигает максимума (минимума)
, при ограничениях
Среди ограничений
могут встречаться знаки
,
, =. Коэффициенты
, любые действительные
числа.
Решения,
удовлетворяющие системе
С помощью графического метода может быть решена задача линейного программирования, система ограничений которой содержит n неизвестных и m линейно независимых уравнений, если n и m связаны соотношением n – m = 2.
Пусть поставлена
задача линейного программирования: найти
максимальное значение линейной функции
где
все уравнения линейно
Используя метод Жордана-Гаусса, производим m исключений, в результате которых базисными неизвестными оказались, например, m первых неизвестных х1, х2, ..., хm, а свободными — два последних: хm+1, и хn, т. е. система ограничений приняла вид:
С
помощью уравнений
Симплекс-метод решения задач линейного программирования с n-переменными
Симплекс-метод является основным в линейном программировании. Решение задачи начинается с рассмотрений одной из вершин многогранника условий. Если исследуемая вершина не соответствует максимуму (минимуму), то переходят к соседней, увеличивая значение функции цели при решении задачи на максимум и уменьшая при решении задачи на минимум. Таким образом, переход от одной вершины к другой улучшает значение функции цели. Так как число вершин многогранника ограничено, то за конечное число шагов гарантируется нахождение оптимального значения или установление того факта, что задача неразрешима.
Этот
метод является универсальным, применимым
к любой задаче линейного программирования
в канонической форме. Система ограничений
здесь — система линейных уравнений,
в которой количество неизвестных
больше количества уравнений. Если ранг
системы равен r, то мы можем выбрать r неизвестных,
которые выразим через остальные неизвестные.
Для определенности предположим, что выбраны
первые, идущие подряд, неизвестные x1,
x2, ..., xr. Тогда наша система
уравнений может быть записана как
(3.1)
К такому виду можно привести любую совместную систему, например, методом Гаусса. Правда, не всегда можно выражать через остальные первые r неизвестных (мы это сделали для определенности записи). Однако такие r неизвестных обязательно найдутся. Эти неизвестные (переменные) называются базисными, остальные свободными.
Придавая определенные значения свободным переменным и вычисляя значения базисных (выраженных через свободные), мы будем получать различные решения нашей системы ограничений. Таким образом, можно получить любое ее решение. Нас будут интересовать особые решения, получаемые в случае, когда свободные переменные равны нулю. Такие решения называются базисными, их столько же, сколько различных базисных видов у данной системы ограничений. Базисное решение называется допустимым базисным решением или опорным решением, если в нем значения переменных неотрицательны. Если в качестве базисных взяты переменные x1, x2, ..., xr, то решение {b1, b2,..., br, 0, ..., 0} будет опорным при условии, что b1, b2,..., br ≥ 0.
Симплекс-метод основан на теореме, которая называется фундаментальной теоремой симплекс-метода. Среди оптимальных планов задачи линейного программирования в канонической форме обязательно есть опорное решение ее системы ограничений. Если оптимальный план задачи единственен, то он совпадает с некоторым опорным решением. Различных опорных решений системы ограничений конечное число. Поэтому решение задачи в канонической форме можно было бы искать перебором опорных решений и выбором среди них того, для которого значение F самое большое. Но, во-первых, все опорные решения неизвестны и их нужно находить, a, во-вторых, в реальных задачах этих решений очень много и прямой перебор вряд ли возможен. Симплекс-метод представляет собой некоторую процедуру направленного перебора опорных решений. Исходя из некоторого, найденного заранее опорного решения по определенному алгоритму симплекс-метода мы подсчитываем новое опорное решение, на котором значение целевой функции F не меньше, чем на старом. После ряда шагов мы приходим к опорному решению, которое является оптимальным планом.
Итак, симплексный метод вносит определенный порядок как при нахождении первого (исходного) базисного решения, так и при переходе к другим базисным решениям. Его идея состоит в следующем.
Имея систему ограничений, приведенную к общему виду, то есть к системе m-линейных уравнений с n-переменными (m < n), находят любое базисное решение этой системы, заботясь только о том, чтобы найти его как можно проще.
Если первое же найденное базисное решение оказалось допустимым, то проверяют его на оптимальность. Если оно не оптимально, то, осуществляется переход к другому, обязательно допустимому базисному решению.
Симплексный метод гарантирует, что при этом новом решении линейная форма, если и не достигнет оптимума, то приблизится к нему. С новым допустимым базисным решением поступают так же, пока не находят решение, которое является оптимальным.
Если первое найденное базисное решение окажется недопустимым, то с помощью симплексного метода осуществляется переход к другим базисным решениям, которые приближают нас к области допустимых решений, пока на каком-то шаге решения либо базисное решение окажется допустимым и к нему применяют алгоритм симплексного метода, либо мы убеждаемся в противоречивости системы ограничений.
Таким образом, применение симплексного метода распадается на два этапа: нахождение допустимого базисного решения системы ограничений или установление факта ее несовместности; нахождение оптимального решения.
При этом каждый этап может включать несколько шагов, соответствующих тому или иному базисному решению. Но так как число базисных решений всегда ограниченно, то ограниченно и число шагов симплексного метода.
Приведенная схема симплексного метода явно выражает его алгоритмический характер (характер четкого предписания о выполнении последовательных операций), что позволяет успешно программировать и реализовать этот метод на ЭВМ. Задачи же с небольшим числом переменных и ограничений могут быть решены симплексным методом вручную.
Практическая часть
Постановка задачи
Торговое
предприятие планирует
| Показатели | Товары | Общее кол-во ресурсов | |||
| A | B | C | D | ||
| Расход рабочего времени на единицу товара, ч | 0,62 | 0,81 | 0,71 | 0,43 | 970 |
| Использование площади торгового зала на единицу товара, м2 | 0,13 | 0,22 | 0,45 | 0,22 | 290 |
| Прибыль от продажи единицы товара, руб | 30 | 50 | 62 | 40 | |
Требуется определить оптимальную структуру товарооборота, обеспечивающую торговому предприятию максимум прибыли.
Математическая модель
Пусть x – количество товара, продажу которого планирует организовать торговое предприятие. Тогда x1 – товар вида A, x2 – товар вида B, x3 – товар вида C и x4 – товар вида D.
0,62x1+0,81x2+0,71x3+0,
0,13x1+0,22x2+0,45x3+0,
Кроме того, количество выпущенной продукции не может быть отрицательной, следовательно, x1³0, x2³0, x3³0, x4³0.
Задача
состоит том, чтобы найти значения x1,
x2, x3 и x4
при которых полученная прибыль будет
наибольшей. Прибыль обозначим F, тогда
F=30x1+50x2+62x3+40x4Þmax
Таким
образом, получаем следующую экономико-математическую
модель задачи линейного программирования:
Решение задачи в MS Excel
В качестве значений переменных x1, x2, x3, x4 будем использовать ячейки $B$12:$B$15. Для значения целевой функции будем использовать ячейку $C$16.
В целевую ячейку $C$16 впишем формулу: B5*B12+C5*B13+D5*B14+E5*B15.
В ячейку $C$12 впишем формулу прибыли от товара A: B5*B12.
В ячейку $C$13 впишем формулу прибыли от товара B: C5*B13.
В ячейку $C$14 впишем формулу прибыли от товара C: D5*B14.
В ячейку $C$15 впишем формулу прибыли от товара D: E5*B15.
В ячейку $G$3 впишем формулу ограничения расхода рабочего времени: B3*B12+C3*B13+D3*B14+E3*B15.
В
ячейку $G$4 впишем формулу ограничения
использования площади торгового зала:
B4*B12+C4*B13+D4*B14+E4*B15.
Рис.
1 Компьютерная модель задачи
Далее
выбираем пункт меню Сервис/Поиск
решения:
Рис.
2 Окно поиска решения
Перед нами открывается диалоговое окно Поиск решения. В нём указываем, что нам необходимо установить ячейку $C$16 максимальному значению, изменяя ячейки $B$12:$B$15. Далее нажимаем кнопку Добавить для добавления ограничений. И добавляем следующие ограничения:
Рис.
3 Добавление ограничений
Ограничения по расходу рабочего времени на единицу товара.
После
ввода каждого ограничения
Рис.
4 Окно поиска решения, после ввода ограничений
Задаем
параметры поиска решения:
Рис. 5 Измененеие параметров поиска решения
Нажимаем
кнопку Выполнить. И перед нами открывается
диалоговое окно Результаты поиска решения:
Рис.
6 Выбираем отчет по результатам
Выбираем
создание отчёта по результатам. Отчеты
по устойчивости и пределам не создаются
при использовании целочисленных ограничений
на переменные. После нажатия кнопки OK
в рабочей книге появляется новый лист
с названием Отчет по результатам, содержащий
отчёт по результатам, и получаем следующие
результаты:
| Товар | Кол-во | Прибыль |
| A | 0 | 0 |
| B | 1061 | 53050 |
| C | 0 | 0 |
| D | 257 | 10280 |
| Стоимость продукции | 63330 | |
Рис.
7 Результат выполнения поиска решения
Отчет
по результатам
| Microsoft Excel 11.0 Отчет по результатам | ||||||
| Рабочий лист: [Лююю.xls]Лист1 | ||||||
| Отчет создан: 15.02.2011 11:47:21 | ||||||
| Целевая ячейка (Максимум) | ||||||
| Ячейка | Имя | Исходное значение | Результат | |||
| $C$16 | Стоимость продукции Прибыль | 63337,32057 | 63330 | |||
| Изменяемые ячейки | ||||||
| Ячейка | Имя | Исходное значение | Результат | |||
| $B$12 | A Кол-во | 0 | 0 | |||
| $B$13 | B Кол-во | 1061,004785 | 1061 | |||
| $B$14 | C Кол-во | 0 | 0 | |||
| $B$15 | D Кол-во | 257,1770335 | 257 | |||
| Ограничения | ||||||
| Ячейка | Имя | Значение | Формула | Статус | Разница | |
| $A$20 | Расход рабочего времени на единицу товара, ч | 969,92 | $A$20<=$F$3 | не связан. | 0,08 | |
| $B$20 | Использование площади торгового зала на единицу товара, м2 | 289,96 | $B$20<=$F$4 | не связан. | 0,04 | |
| $B$15 | D Кол-во | 257 | $B$15>=0 | не связан. | 257 | |
| $B$14 | C Кол-во | 0 | $B$14>=0 | связанное | 0 | |
| $B$12 | A Кол-во | 0 | $B$12>=0 | связанное | 0 | |
| $B$13 | B Кол-во | 1061 | $B$13>=0 | не связан. | 1061 | |
| $B$12 | A Кол-во | 0 | $B$12=целое | связанное | 0 | |
| $B$13 | B Кол-во | 1061 | $B$13=целое | связанное | 0 | |
| $B$14 | C Кол-во | 0 | $B$14=целое | связанное | 0 | |
| $B$15 | D Кол-во | 257 | $B$15=целое | связанное | 0 | |

- Методы решения задач логистики
- Методы решения задач пограничного слоя. Интегральный метод. Уравнения Кармана
- Методы решения задач теории упругости
- Методы решения ЗЛП при помощи MathCAD
- Методы решения логистических задач
- Методы решения матричных игр
- Методы решения нелинейных уравнений. Общая информация
- Методы рекламного воздействия
- Методы реконструкции домостроительных предприятий с учетом гибкой технологии производства
- Методы реконструкции канализационных сетей малого диаметра (до 500 мм)
- Методы релаксации
- Методы рентгеновской съёмки кристаллов
- Методы репозиционирования в инновационном маркетинге
- Методы репозиционирования в инновационном маркетинге