Математическое программирование

Автор работы: Пользователь скрыл имя, 05 Марта 2013 в 17:06, курсовая работа

Описание работы

Целевая функция позволяет выбирать наилучший вариант из множества возможных.
Линейное программирование — математическая дисциплина, посвящённая теории и методам решения задач об экстремумах линейных функций на множествах n-мерного векторного пространства, задаваемых системами линейных уравнений и неравенств.

Файлы: 1 файл

Курсовая Интеллектуальные ИС.doc

— 4.97 Мб (Скачать файл)

СОДЕРЖАНИЕ

 

 

ВВЕДЕНИЕ

Математическое  программирование - область математики, разрабатывающая теорию и численные методы решения многомерных экстремальных задач с ограничениями, т. е. задач на экстремум функции многих переменных с ограничениями на область изменения этих переменных.

Модель задачи математического программирования включает:

  1. совокупность неизвестных величин, действуя на которые, систему можно совершенствовать.
  2. целевую функцию (функцию цели, показатель эффективности, критерий оптимальности, функционал задачи и другое).

Целевая функция  позволяет выбирать наилучший вариант  из множества возможных.

 Линейное  программирование — математическая дисциплина, посвящённая теории и методам решения задач об экстремумах линейных функций на множествах n-мерного векторного пространства, задаваемых системами линейных уравнений и неравенств.

Линейное программирование является составной частью раздела  математики, который изучает методы нахождения условного экстремума функции многих переменных и называется математическим программированием. В классическом математическом анализе рассматривается задача отыскания условного экстремума функции.

Линейное программирование - наиболее разработанный и широко применяемый раздел математического программирования. Это объясняется следующим:

  • для них разработаны специальные конечные методы, с помощью которых эти задачи решаются, и соответствующие стандартные программы для их решения на ЭВМ;
  • многие задачи линейного программирования, будучи решенными, нашли уже сейчас широкое практическое применение в народном хозяйстве;

Имитационное  моделирование — это метод исследования, при котором изучаемая система заменяется моделью, с достаточной точностью описывающей реальную систему и с ней проводятся эксперименты с целью получения информации об этой системе. Экспериментирование с моделью называют имитацией (имитация — это постижение сути явления, не прибегая к экспериментам на реальном объекте).

Имитационное  моделирование позволяет имитировать поведение системы во времени. Можно имитировать поведение тех объектов, реальные эксперименты с которыми дороги, невозможны или опасны.

Цель имитационного  моделирования состоит в воспроизведении  поведения исследуемой системы  на основе результатов анализа наиболее существенных взаимосвязей между ее элементами.

Целью данной курсовой работы является решение задачи линейного  программирования различными методами:

    1. решение с помощью программы SimplexWin;
    2. решение с построением двойственной задачи, используя программу SimplexWin»;
    3. решение симплексным методом;
    4. решение симплексным (ручным) методом;
    5. решения через «Поиск решения» Excel.

 

 

 

1 ПОСТАНОВКА  ЗАДАЧИ

Пароход может  быть использован для перевозки  груза четырех наименований. Масса  единицы груза j – го вида mj (в тоннах), стоимость сj ( в условных денежных единицах), объем (в м8) Vj (j=1,4) . на пароход может быть погружено не более М т груза общим объемом, не превышающим V м3. Кроме того, груза k-го вида на пароход можно взять не более dk единиц. Сколько единиц каждого груза следует поместить на пароход, чтобы общая стоимость перевозимого груза была максимальной? Значения mj,cj, Vj, k, m, V, dk приведены в таблице:

Таблица 1.1

Исходные  данные

j

Mj

cj

Vj

 

1

4

12

1

V=21

2

1

11

3

M=20

3

2

4

2

k=1

4

1

5

3

dk=10


 

 

 

2 СОСТАВЛЕНИЕ  МАТЕМАТИЧЕСКОЙ МОДЕЛИ

Для решения  данной задачи указанными методами решений  составим математическую модель.

Пусть Х1 – груз 1 типа, Х2 – груз 2 типа, Х3 груз 3 типа, Х4 – груз 4 типа. Целевая функция имеет следующий вид:

Z(x) = 12*x1+11* x2 + 4* x + 5* x4 →max

4*x1+1* x +2* x3 + 1*х4≤ 20 –для общей массы груза, 1*x1+3* x2 +2* x3 + 3*х4≤ 21 – для общего объема груза, где dk≤10 или xk≤10.

x1≥0, x2≥0, x3≥0, x4≥0 – условие не отрицательности переменных. Получим математическую модель задачи:

Z(x) = 12*x1+11* x2 + 4* x + 5* x4 →max

 

3 МЕТОДЫ РЕШЕНИЯ  ЗАДАЧ

3.1 Решение с помощью  программы  Simplex Win

Для решения  задачи с помощью программы Simplex Win необходимо настроить программу под нашу задачу, т.е.  чтобы она подходила под наше количество переменных и уравнений. (См. рис. 3.1.1)

Рис. 3.1.1 Диалоговое окно программы Simplex Win

Открываем пункт  меню «Настройки», выбираем пункт «Размер  матрицы». (См. рис. 3.1.2)

Рис. 3.1.2 Настройка  размера матрицы

В данном случае количество уравнений – 2, количество переменных – 4, нажимаем «ОК». Затем вносим соответствующие данные, в поле «Введите элементы матрицы» ограничений, в поле «Введите элементы функции» коэффициенты нулевой функции. (См. рис. 3.1.3)

Рис. 3.1.3 Ввод данных

После ввода  необходимых данных нажимаем кнопку «Вычислить». Программа выполняет  необходимые действия, происходит добавление 2 дополнительных переменных –Х5, Х6. (См. рис. 3.1.4)

Рис. 3.1.4 Таблица  результатов

Нажимаем кнопку «Результат», программа производит вычисления и выводит на экран оптимальный план решения задачи. (См. рис. 3.1.5)

Рис. 3.1.5 Полученный результат

По результатам  программы получили:

Х1 = 3,54 – груз 1-го вида;

Х2 = 5,81 – груз 2-го вида;

Х3 = 0 – груз 3-го вида;

Х4 = 0 – груз 4-го вида.

Z(X) = 106,54 – максимальная стоимость перевозимого груза.

 

3.2 Решение  двойственной задачи линейного  программирования (с помощью программы SimplexWin)

Для решения  этой задачи, с помощью программы SimplexWin необходимо внести  данные в программу (Рис. 3.2.1).

Рис.3.2.1 Внесенные  данные

После выполнения этих действий, выбираем пункт меню «Задача» → «Составление двойственной» (Рис. 3.2.2).

Рис. 3.2.2 Составление  двойственной

После того, как  выбрали «Составить двойственную», программа выдает окно «Ввод ограничений», нажимаем «Ок» (Рис. 3.2.3).

Рис. 3.2.3 Ввод ограничений

Данные ограничения  нас устраивают, следовательно нажимаем «Ок», программа автоматически составляет двойственную модель (Рис. 3.2.4).

Рис. 3.2.4 Двойственная модель задачи

Далее, нажимаем кнопку «Вычислить», получаем таблицу  с результатами вычислений (Рис.3.2.5).

Рис. 3.2.5 Таблица  результатов

Затем нажимаем кнопку «Результат», после чего на экране появляется окно с результатом (Рис. 3.2.6).

Рис 3.2.6 Окно с  результатом

Из полученного  результата видно, что максимальная прибыль составляет 106,54 ден. ед., при транспортировке 2,27  тонны 1-го вида груза, 0 тонн 2-го вида груза, 2,90 тонны 3 –го вида груза и 0  тонн 4-го вида груза.

 

3.3 Симплексный метод решения задачи с помощью программы Excel

Чтобы решить задачу симплексным методом, необходимо сначала  привести ее к каноническому виду. Для этого вводим дополнительные неотрицательные переменные – Х5, Х6. Математическая модель задачи принимает вид:

Z(x) = 12*x1+11* x2 + 4* x + 5* x4 + 0*х5+0*х6→max


4*х1+1*х2+2*х3+1*х45=20;

1*х1+3*х2+2*х3+3*х46=21;

 Х1, Х2, Х3, Х4, Х5, Х6 ≥ 0;

Х1, Х2, Х3, Х4, Х5, Х6 – целочисленные.

Строим начальную  опорную таблицу (Рис. 3.3.1).

Рис. 3.3.1 Опорная  таблица

Далее находим  начальное опорное решение, для  этого находим Δj, по формуле:

Δj=

Найдя коэффициенты Δj заполняем первую таблицу симплексного решения (Рис. 3.3.2).

Рис. 3.3.2 Первая таблица симплексного решения

Начальный опорный  план не оптимален, так как присутствуют отрицательные коэффициенты Δj. Для оптимальности плана, определяем вектор, вводимый в базис и выводимый из базиса. Выбираем строку, у которой наименьший коэффициент по модулю и разрешающий столбец, на их пересечении находится элемент называемый, который называется разрешающим. Продолжаем эти действия пока план не будет оптимален (Рис. 3.3.3).

Рис. 3.3.3 Оптимальный  план

По результатам  вычислений видно, что найденный  опорный план оптимален, все значения Δj отрицательные, значение целевой функции равно 106,54. Отсюда следует, что общая стоимость груза будет составлять 106,54 денежных единиц.

 

3.4 Симплексный   метод решения задачи с помощью Excel

Excel ручным способом

Чтобы решить задачу симплексным методом, необходимо сначала привести ее к каноническому виду. Для этого вводим дополнительные неотрицательные переменные – Х5, Х6. Математическая модель задачи принимает вид:

Z(x) = 12*x1+11* x2 + 4* x + 5* x4 + 0*х5+0*х6→max


4*х1+1*х2+2*х3+1*х45=20;

1*х1+3*х2+2*х3+3*х46=21;

 Х1, Х2, Х3, Х4, Х5, Х6 ≥ 0;

Х1, Х2, Х3, Х4, Х5, Х6 – целочисленные.

Строим начальную  опорную таблицу (Рис. 3.4.1).

Рис. 3.4.1 Опорная  таблица

Далее находим  начальное опорное решение. Для  этого находим Δj, по формуле:

Δj=

Найдя коэффициенты Δj заполняем первую таблицу симплексного решения (Рис. 3.4.2).

Рис. 3.4.2 Первая таблица симплексного решения

Из таблицы  мы видим что начальный опорный  план не оптимален. Для оптимальности  плана, определяем вектор, вводимый в  базис и выводимый из базиса. Выбираем строку, которая имеет наименьший коэффициент по модулю и разрешающий столбец, на их пересечении находится элемент, называемый разрешающим.

Выполняя данную последовательность действий, находим  следующую таблицу симплексного решения (Рис. 3.4.3).

Рис. 3.4.3 Вторая таблица симплексного решения

Из данной таблицы видим, что план решения далек от оптимального. Выбираем разрешающий столбец, это Х2 и разрешающую строку, это строка Х6 . На их пересечении находится разрешающий элемент. Выводя из базиса  Х6 и вводя Х2 получаем следующую таблицу решений (Рис. 3.4.4).

 

Рис. 3.4.4 Третья таблица симплексного решения

 

По результатам  вычислений видно, что найденное решение оптимально, все значения Δj отрицательные, значение целевой функции равно 106,54. Отсюда следует, что при перевозке 3,54 тонны груза 1-го вида и 5,81 тонны груза 2 – го вида общая стоимость груза будет составлять 106,54 денежных единиц.

 

ЗАКЛЮЧЕНИЕ

Для решения  задач линейного программирования в настоящее время, разработано программное обеспечение, дающее возможность эффективно и надежно решать практические задачи больших объемов. Эти программы и системы снабжены развитыми системами подготовки исходных данных, средствами их анализа и представления полученных результатов.

При выполнении курсовой работы была решена задача линейного  программирования о выполнении перевозки грузов четырех наименований. Данная задача была 4 различными методами, такими как:

Информация о работе Математическое программирование