Задачи линейного программирования

Экономико-математические методы и модели

Практикум

Рекомендовано

Методическим советом ДВГУПс

в качестве учебного пособия

Хабаровск

Издательство ДВГУПС

УДК 330.4(075.8)

ББК У.в 631я 73

П 444

Рецензенты:

Экономическая служба ДВост. ж. д. – филиала ОАО «РЖД»

(заместитель начальника И.В. Гомзина)

Доктор экономических наук, главный научный сотрудник

проблемной научно-исследовательской лаборатории

Хабаровской государственной академии экономики и права
профессор Д.Е. Мун

Подоба, В.А.

П 444 Экономико-математические методы и модели [Текст] : практикум / В.А. Подоба, О.В. Баландина, А.Н. Кобылицкий. – Хабаровск : Изд-во ДВГУПС, 2011. – 99 с. : ил.

Практикум соответствует ГОС ВПО направлений подготовки бакалавров, магистров и дипломированных специалистов 080100 «Экономика» и 080500 «Менеджмент» всех специальностей.

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

Предназначен для студентов 3-го курса дневной формы обучения, изучающих дисциплину «Экономико-математические методы и модели».

УДК 330.4(075.8)

ББК У.в 631я 73

© ДВГУПС, 2011

задачи линейного программирования - student2.ru
оглавление

Введение.. 5

1. Задачи линейного программирования.. 6

1.1. Постановка задачи.............................................................................. 6

1.2. Решение задач линейного программирования с помощью
надстройки MS Excel «Поиск решения».......................................... 7

1.3. Исходные данные............................................................................. 15

1.4. Последовательность решения задачи......................................... 16

2. Транспортная задача линейного программирования.. 17

2.1. Сущность транспортной задачи линейного программирования 17

2.2. Алгоритм решения транспортной задачи методом потенциалов 19

2.3. Решение транспортной задачи линейного программирования
с помощью надстройки «Поиск решения» в MS Excel............... 28

2.4. Оптимизация загрузки производственных мощностей

предприятий по производству запасных частей

для железнодорожного транспорта............................................... 32

2.5. Исходные данные............................................................................. 36

2.6. Последовательность решения задачи......................................... 38

3. Сетевые методы планирования и управления.. 40

3.1. Постановка задачи........................................................................... 40

3.2. Расчет параметров сетевого графика......................................... 41

3.2.1. Временные параметры сетевых графиков......................... 41

3.2.2. Резервы времени работ......................................................... 42

3.3. Сетевой график в условиях неопределенности.
Анализ и оптимизация сетевого графика.................................... 43

3.3.1. Сетевое планирование в условиях неопределенности... 43

3.3.2. Анализ сетевого графика....................................................... 45

3.3.3. Оптимизация сетевого графика методом «время-стоимость»..... 46

3.4. Методика решения задачи.............................................................. 47

3.5. Последовательность решения задачи......................................... 52

3.6. Исходные данные............................................................................. 53

4. Элементы теории массового обслуживания.. 56

4.1. Постановка задачи........................................................................... 56

4.2. Примеры решения задач систем массового обслуживания.... 57

5. Теория игр.. 64

5.1. Понятие об игровых моделях......................................................... 64

5.2. Платёжная матрица. Нижняя и верхняя цена игры.................... 65

5.3. Решение игр в смешанных стратегиях. Приведение

матричной игры к задаче линейного программирования.......... 67

5.4. Примеры решения задач систем массового обслуживания.... 68

5.5. Исходные данные............................................................................. 72

6. Динамическое программирование.. 74

6.1. Постановка задачи динамического программирования............ 74

6.2. Пример решения задачи динамического программирования.. 75

6.3. Исходные данные............................................................................. 78

7. Прогнозирование пассажиропотоков.
Одномерные временные ряды.. 79

7.1. Постановка задачи. Основные элементы временного ряда.... 79

7.2. Последовательность решения задачи......................................... 82

7.3. Исходные данные............................................................................. 90

8. Экономико-математическая модель
межотраслевого баланса (модель «затраты–выпуск») 91

8.1. Методика решения задачи.............................................................. 91

8.2. Исходные данные............................................................................. 96

8.3. Последовательность решения задачи......................................... 97

Заключение.. 98

библиографический Список. 99


ВВЕДЕНИЕ

Сложный характер рыночной экономики и современный уровень предъявляемых к ней требований стимулируют использование более серьезных методов анализа её теоретических и практических проблем. В настоящее время значительный вес в экономических исследованиях приобрели математические методы. Математическое моделирование становится одним из основных методов изучения экономических процессов и объектов. Математический анализ экономических задач органично превращается в часть экономики.

Целью изучения курса «Экономико-математические методы и модели» является формирование у студентов теоретических знаний и практических навыков применения математических методов в процессе подготовки и принятия управленческих решений в организационно-эконо­ми­че­ских производственных системах, т. е. тех инструментов, с помощью которых в современных условиях формируются и анализируются варианты управленческих решений.

По определению академика В.С. Немчинова, экономико-мате­ма­ти­че­ские методы и модели включают в себя:

– модели экономической и математической статистики: модели анализа и прогнозирования;

– эконометрические модели: модели экономического роста, производственные функции, межотраслевой баланс;

– модели исследования операций: модели оптимизации и системы массового обслуживания;

– модели экономической кибернетики: модели управления.

Основными инструментами решения задач экономико-мате­ма­ти­че­ско­го моделирования являются высшая математика и её прикладные разделы: линейная алгебра, теория вероятностей, математическая статистика, математическое программирование (линейное, нелинейное, динамическое), теория графов и теория игр.

ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ

1.1. Постановка задачи

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

Общая задача линейного программирования (ЗЛП) состоит в нахождении экстремального значения (максимума или минимума) линейной функции.

Примером решения задачи является разработка оптимального плана деповского ремонта грузовых вагонов. В настоящее время этот вид ремонта выполняется в ремонтных вагонных депо, входящих в департамент ОАО «РЖД» по ремонту грузового вагонного парка. Программа ремонта по количеству и типам вагонов для каждого депо в отдельности устанавливается департаментом исходя из потребностей в ремонте, производственных мощностей депо и имеющихся в наличии производственных ресурсов. С учетом того, что в настоящее время неуклонно возрастает вагонный парк других собственников, а также предстоящим акционированием департамента возникает проблема определения оптимальной производственной программы депо, обеспечивающей максимальную прибыль предприятию.

Такая задача может быть сформулирована следующим образом. Имеем:

хj – объем ремонта вагонов j-го типа; j = 1, 2, … n;

bi – объем, имеющихся в наличии производственных ресурсов i-го вида; i = 1, 2, … m;

aij – расход i-го вида ресурсов на ремонт одного вагона j-го типа;

Cj – прибыль, получаемая предприятием за один отремонтированный вагон j-го типа.

Решение задачи осуществляется на основе следующей экономико-ма­тематической модели.

Найти совокупность переменных хj, максимизирующих целевую функцию F:

задачи линейного программирования - student2.ru , (1.1)

при наложенных ограничениях (система m линейных уравнений и неравенств с n переменными):

задачи линейного программирования - student2.ru , (1.2)

xj, j = 1….n, (1.3)

где aij, bi, сj – заданные постоянные величины

Линейную функцию (1.1), для которой ищется экстремальное значение, принято называть целевой функцией. Условия (1.2) называются функциональными, а (1.3) – прямыми ограничениями задачи.

Виды задач ЛП:

1) задача оптимального распределения ресурсов при планировании выпуска продукции на предприятии (задача об ассортименте);

2) задача на максимум выпуска продукции при заданном ассортименте;

3) задача о смесях (рационе, диете);

4) транспортная задача;

5) задача о рациональном использовании имеющихся мощностей;

6) задача о назначениях.

Для решения ЗЛП необходимо построить экономико-математическую модель исследуемого экономического процесса.

1.2. Решение задач линейного программирования

с помощью надстройки MS Excel «Поиск решения»

Рассматриваемая модель относится к классу экономико-мате­ма­ти­че­ских моделей линейного программирования. Решение задач, описываемых экономико-математическими моделями линейного программирования, как правило, осуществляется универсальным симплексным методом.

Он достаточно трудоемок. Поэтому выполнение расчетов рекомендуется в среде MS Excel.

Технологию решения задач линейного программирования в среде MS Excel продемонстрируем на следующем примере.

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

Таблица 1.1

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

Ресурсы Нормы расхода ресурсов на один вагон Наличие ресурсов
полувагон крытый плат-форма хопер-дозатор
Раб. сила, чел.-ч 650 000
Материалы, тыс. руб. 100 000
Фонд времени, ч 125 000
Специальные запчасти, тыс. руб.
Прибыль на 1 вагон, тыс. руб. 7,3 7,5 6,5  

Требуется найти такой план ремонта вагонов, при котором будет максимальной общая прибыль предприятия.

Обозначим через х1, х2, х3, х4 количество вагонов каждого типа. Сформулируем экономико-математическую модель задачи:

F = 7,3х1 + 7,5х2 + 6,5х3 + 15х4 à max;

180х1 + 205х2 + 160х3 + 336х4 ≤ 650 000;

28х1 + 27x2 + 26х3 + 54х4 ≤ 100 000;

17х1 + 18х2 + 16х3 + 30х 4 ≤ 125 000; (1.4)

15 ∙ х4 ≤ 5000;

x1 ≥ 0; x2 ≥ 0; x3 ≥ 0; x4 ≥ 0.

Решение задач линейного программирования в среде MS Excel осуществляется с помощью надстройки «Поиск решения». Если в меню Сервис отсутствует команда Поиск решения, значит, необходимо загрузить эту надстройку. Выберите команду Сервиса Надстройки и активизируйте надстройку «Поиск решения». Если же этой надстройки нет в диалоговом окне «Надстройки», то необходимо обратиться к панели управления Windows, щелкнуть на пиктограмме Установка и удаление программ и с помощью программы установки MS Excel (или Office) установить надстройку «Поиск решения». Для решения задачи необходимо:

1) создать форму для ввода условий задачи;

2) указать адреса ячеек, в которые будет помещен результат решения (изменяемые ячейки);

3) ввести исходные данные;

4) ввести зависимость для целевой функции;

5) ввести зависимости для ограничений;

6) указать назначение целевой функции (установить целевую ячейку);

7) ввести ограничения;

8) ввести параметры для решения задачи линейного программирования.

Для рассматриваемого примера продемонстрируем технологию решения задачи оптимального использования ресурсов.

1. Подготовим форму для ввода условий задачи (рис. 1.1).

задачи линейного программирования - student2.ru

Рис. 1.1. Форма для ввода условий задачи

2. В задаче оптимальные значения вектора X = (х1, х2 х3, х4) будут помещены в ячейках ВЗ:ЕЗ, оптимальное значение целевой функции – в ячейке F4. задачи линейного программирования - student2.ru

3. Введем исходные данные в созданную форму. Получим результат, показанный на рис. 1.2.

    Переменные        
  Х1 Х2 Х3 Х4      
Значение         ЦФ    
коэф. в ЦФ 7,3 7,5 6,5    
    Ограничения        
Вид ресурсов         Левая часть Знак Правая часть
Труд   <= 650 000
Материалы   <= 100 000
Фонд времени   <= 125 000
Спец. запчасти   <=

Рис. 1.2. Введённые данные

4. Введем зависимость для целевой функции.

• Курсор в F4.

• Курсор на кнопку Мастер функций.

M1 (Обозначим через М1 следующее действие – «один щелчок левой кнопкой мыши»). На экране диалоговое окно Мастер функций шаг 1 из 2.

• Курсор в окно Категория на категорию Математические.

• M1.

• Курсор в окно Функции на СУММПРОИЗВ.

• M1.

• В массив 1 ввести В$3:Е$3.

• В массив 2 ввести В4:Е4.

• Готово. На экране: в F4 введена функция, как показано на рис. 1.3.

задачи линейного программирования - student2.ru

Рис. 1.3. Вычисление целевой функции

5. Введем зависимость для левых частей ограничений.

• Курсор в F4.

• Копировать в буфер.

• Курсор в F7.

• Вставить из буфера.

• Курсор в F8.

• Вставить из буфера.

• Курсор в F9.

• Вставить из буфера.

На этом ввод зависимостей закончен.

Запуск «Поиска решения».После выбора команд Сервис => Поиск решения появится диалоговое окно «Поиск решения» (рис. 1.4).

задачи линейного программирования - student2.ru

Рис. 1.4. Ввод данных в диалоговое окно «Поиск решения»

В диалоговом окне «Поиск решения» есть три основных параметра:

• Установить целевую ячейку.

• Изменяя ячейки.

• Ограничения.

Сначала нужно заполнить поле «Установить целевую ячейку». Во всех задачах для средства Поиск решения оптимизируется результат в одной из ячеек рабочего листа. Целевая ячейка связана с другими ячейками этого рабочего листа с помощью формул. Средство Поиск решения использует формулы, которые дают результат в целевой ячейке, для проверки возможных решений. Можно выбрать поиск наименьшего или наибольшего значения для целевой ячейки или же установить конкретное значение.

Второй важный параметр средства Поиск решения – это параметр. Изменяемые ячейки – это те ячейки, значения в которых будут изменяться для того, чтобы оптимизировать результат в целевой ячейке. Для поиска решения можно указать до 200 изменяемых ячеек. К изменяемым ячейкам предъявляется два основных требования: они не должны содержать формул и изменение их значений должно отражаться на изменении результата в целевой ячейке. Другими словами, целевая ячейка зависима от изменяемых ячеек.

Третий параметр, который нужно вводить для Поиска решения – это Ограничения.

6. Назначение целевой функции (установить целевую ячейку).

• Курсор в поле «Установить целевую ячейку».

• Ввести адрес $F$4.

• Ввести направление целевой функции: Максимальному значению.

• Ввести адреса искомых переменных:

• Курсор в поле «Изменяя ячейки».

• Ввести адреса В$3:Е$3.

7. Ввод ограничений.

• Курсор в поле «Добавить». Появится диалоговое окно «Добавление ограничения» (рис. 1.5).

задачи линейного программирования - student2.ru

Рис. 1.5. Диалоговое окно «Добавление ограничения»

• В поле «Ссылка на ячейку» ввести адрес $F$7.

• Ввести знак ограничения ≤.

• Курсор в правое окно.

• Ввести адрес $Н$7.

• Добавить. На экране опять диалоговое окно «Добавление ограничения».

• Ввести остальные ограничения.

• После ввода последнего ограничения ввести ОК.

На экране появится диалоговое окно «Поиск решения» с введенными условиями (рис. 1.5).

8. Ввод параметров для решения ЗЛП (рис. 1.6).

• Открыть окно «Параметры поиска решения».

• Установить флажок Линейная модель, что обеспечивает применение симплекс-метода.

• Установить флажок Неотрицательные значения.

• ОК.

задачи линейного программирования - student2.ru

Рис. 1.6. Параметры «Поиск решения»

Полученное решение (рис. 1.7, 1.8) означает, что максимальную прибыль 26 537,7 тыс. руб. депо может получить при выпуске из ремонта 2595,5 полувагонов, 345,4 крытых вагонов, 333,3 вагонов-хопперов. При этом ремонт платформ в оптимальном плане производства отсутствует. Ресурсы – рабочее время, материалы, специальные запасные части – будут использованы полностью, а из 125 тыс. ч фонда времени вагоноремонтных позиций будет использовано только 60,3 тыс. ч.

задачи линейного программирования - student2.ru

Рис. 1.7. Результаты «Поиска решения»

Microsoft Excel 10.0 Отчет по результатам      
Рабочий лист: [Методичк.ОПТ.ВАГ.xls]Лист1      
Отчет создан: 26.02.2011 14:23:00        
             
             
Целевая ячейка (Максимум)        
  Ячейка Имя Исходное значение Результат    
  $F$4 коэф.в ЦФ ЦФ 26537,72727    
             
             
Изменяемые ячейки        
  Ячейка Имя Исходное значение Результат    
  $B$3 Значение Х1 2595,454545    
  $C$3 Значение Х2 345,4545455    
  $D$3 Значение Х3    
  $E$3 Значение Х4 333,3333333    
             
             
Ограничения        
  Ячейка Имя Значение Формула Статус Разница
  $F$8 Материалы Левая часть $F$8<=$H$8 связанное
  $F$7 Труд Левая часть $F$7<=$H$7 связанное
  $F$9 Фонд времени Левая часть 60340,90909 $F$9<=$H$9 не связанное 64659,09091
  $F$10 Спец. Запчасти Левая часть $F$10<=$H$10 связанное

Рис. 1.8. Отчет по результатам

MS Excel позволяет представить результаты поиска решения в форме отчета (см. рис. 1.8). Существует три типа таких отчетов.

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

Устойчивость (Sensitivity). Отчет, содержащий сведения о чувствительности решения к малым изменениям в изменяемых ячейках или в формулах ограничений.

Пределы (Limits). Помимо исходных и конечных значений изменяемых и целевой ячеек в отчет включаются верхние и нижние границы значений, которые могут принимать влияющие ячейки при соблюдении ограничений.

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

В выводе указать (см. рис. 1.7.):

1) максимальную величину прибыли;

2) количество вагонов какого типа следует отремонтировать, чтобы прибыль была максимальной;

3) оценить качество использования ресурсов предприятия.

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

Задача формулируется для вагоноремонтных депо, которые в состоянии ремонтировать пять типов вагонов: полувагоны, крытые, платформы, вагоны-хопперы и цистерны. Предположим, что в производственном процессе используется пять видов ресурсов: рабочая сила, материалы, фонд времени ремонтных позиций, специальные запасные части и электроэнергия. Нормы расхода ресурсов на ремонт одного вагона по типам единые для всех вариантов задания представлены в табл. 1.2.

Таблица 1.2

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

Ресурсы Нормы расхода ресурсов на один вагон
Полувагон Крытый Платформа Хопер-дозатор Цистерна
Раб. сила, чел.-ч
Материалы, тыс. руб.
Фонд времени, ч
Специальные запчасти, тыс. руб.
Электроэнергия, тыс. квт∙ч 1,5 1,4 0,9 1,6 1,2

Данные о размерах прибыли на 1 отремонтированный вагон и объемах ресурсов на предприятии приведены по вариантам в табл. 1.3 и 1.4.

Таблица 1.3

Наши рекомендации