Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

КИС_ЛР#1_01

.pdf
Скачиваний:
28
Добавлен:
01.02.2019
Размер:
840.82 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ

Бийский технологический институт (филиал)

федерального государственного бюджетного образовательного учреждения высшего профессионального образования

«Алтайский государственный технический университет им. И.И. Ползунова»

Корпоративные информационные системы

Методические рекомендации по выполнению лабораторных работ для студентов направления подготовки

09.03.02 «Информационные системы и технологии»

Бийск

2016

2

ВВЕДЕНИЕ

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

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

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

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

Все упражнения решаются с помощью программы lp_solve.

3

ПРОГРАММА LP_SOLVE

Программа LP_SOLVE предназначена для решения смешанных (частично целочисленных) задач линейного программирования.

LP_SOLVE запускается на исполнение командой DOS

…(путь)\lp_solve.exe <...(путь)\имя исходного файла> имя файла результатов.

Например:

lp_solve.exe <source.lp> rezult.

Исходный файл должен иметь расширение lp и представлять собой символьный (текстовый) файл. Первая запись этого файла имеет вид:

max (min): выражение целевой функции;

Целевая функция – символьная запись вида:

1 1 ± 2 2 ± ± ,

где 1, 2, … , – числовые константы (литералы), 1, 2, … , – переменные задачи линейного программирования.

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

Например:

max: 3x1+5x2-10x3;

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

“+” и “–“.

После целевой функции записываются ограничения. Синтаксис их записи аналогичен целевой функции, только в каждом из них должен присутствовать один знак отношения: “=”, “>”, “<”, “>=”, “<=”. Например:

3.5x14–0.0375z8+294x11>0;

x6–x5+v5–d5=140;

Символ, отделяющий дробную часть в константах с плавающей запятой – точка: 0.2. Последовательность, в которой записываются ограничения, не имеет значения. Допускается

включение комментариев в файл исходных данных. Начало комментария - символы “/*”, конец – “*/”. Комментарии внутри выражения (целевой функции или ограничений) не допускаются.

Для введения целочисленных переменных в конце файла ставится их описание вида: int T8, z4, y22;

Булева переменная описывается как целочисленная и вводится дополнительное ограничение, позволяющее ей принимать значения, только равные нулю или единице, например:

int z; z <= 1;

Результаты – значения целевой функции и всех переменных в оптимальном решении – записываются в выходной файл. Имя выходного файла может быть произвольным. Если в командной строке запуска LP_SOLVE имя файла результатов не задано, то решение выдается на экран.

В случае нарушения правил записи исходного файла выдается сообщение “parsing error” (ошибка грамматического разбора) и номер строки файла, в которой обнаружена ошибка (считаются все строки на экране, включая пустые строки и строки комментария). Если ограничения противоречивы, то есть область допустимых решений является пустым множеством, выдается сообщение “This problem is infeasible.”

Буквы русского алфавита использовать нельзя.

4

ТРЕБОВАНИЯ К ОТЧЕТУ О ВЫПОЛНЕННОЙ ЛАБОРАТОРНОЙ РАБОТЕ

Отчет должен содержать следующие пункты: 1. Титульный лист; 2. Цель лабораторной работы; 3. Условия задачи;

4. Ход решения задачи;

5. Полученные результаты;

6. Выводы.

Раздел 4 должен содержать:

описание всех переменных используемых в записи ограничений и целевой функции;

целевую функцию и ее описание;

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

листинг проекта в программе LP_Solve;

В разделе 5 должны быть перечислены результаты расчетов: значение целевой функции и значения ограничивающих выражений и их предельные значения. Также приводятся аналогичные результаты расчетов при смягчении ограничений (не более 10%).

Вывод должен содержать перечисление «узких мест», а также наиболее выгодный способ увеличения (или уменьшения) целевой функции.

5

ЛАБОРАТОРНАЯ РАБОТА №1. ОБЪЕМНОЕ ПЛАНИРОВАНИЕ.

Под объемным планированием (ОП) будем понимать задачу оптимального планирования ассортимента продукции на заданный интервал времени без распределения объемов выпуска продукции внутри этого интервала.

Критерии оптимальности:

суммарные издержки производства;

доход от реализации;

прибыль, получаемая в результате реализации продукции.

Решение задачи – это объемы производства каждого из заданного множества видов продукции. Для построения модели оптимального планирования требуется:

ввести переменные (показатели плана) и обозначения для них;

сформулировать ограничения;

определить необходимые исходные данные;

ввести критерий оптимума и записать его зависимость от переменных – целевую функцию.

1. Задача планирования оптимального ассортимента на один отрезок времени

Пусть , где = 1, 2, … , объем выпуска продукции -го вида, подлежащий определению. Всепредполагаются неотрицательными и ограниченными сверху либо условиями сбыта, либо производственными мощностями по каждому виду продукции. В производстве используется видов ресурсов (сырье, материалы, комплектующие, рабочая сила и т.д.). Запасы ресурсов каждого вида ограничены значениями . На каждую произведенную единицу продукции -го вида расходуется некоторое количество -го ресурса, равное .

Ограничения по запасам ресурсов будут иметь вид системы линейных неравенств:

1 1 + 2 2 + + < , где = 1, 2, … , .

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

< , где – объем выпуска -го продукта, – максимальный объем выпуска этого продукта в планируемом отрезке.

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

Могут встречаться и ограничения на минимальный объем выпуска:

> , где – минимальный объем выпуска продукта в данном отрезке.

Ограничения на минимальный объем выпуска появляются, когда предприятие, работающее в режиме MTS, имеет уже заключенные договора на поставку в данном отрезке единиц продукта .

Целевая функция в этих задачах (критерий оптимальности) имеет вид:

= 1 1 + 2 2 + + , где ( = 1,2, … , ) – прибыль от реализации единицы -го вида продукции или цена реализации – в этих случаях целевая функция максимизируется. Если под понимать издержки на выпуск единицы продукции -го вида, то целевая функция минимизируется.

Пример 1.1

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

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

Требуется определить объем выпуска каждого продукта на один месяц по условию максимизации прибыли.

Необходимые исходные данные приведены в таблицах 1 и 2.

Имеются ограничения по поставкам сырья: в данном отрезке будет доступно не более 2000 м2 стального листа, используемого в производстве продуктов 2 и 4.

На одну единицу продукта 2 требуется 2,0 м2 листа, а на единицу продукта 4 – 1,2 м2.

6

Таблица 1 – Темп производства в часах на единицу продукции

Рабочий центр

 

Номер продукта

 

Фонд времени

1

2

3

4

 

 

Штамповка

0,03

0,15

0,05

0,10

400

Сверление

0,06

0,12

0

0,10

400

Сборка

0,05

0,10

0,05

0,12

500

Отделка

0,04

0,20

0,03

0,12

450

Упаковка

0,02

0,06

0,02

0,05

400

Таблица 2 – Затраты, цены и пределы объемов продаж

Продукт

Цена продажи

Затраты на ед.

Пределы объемов продаж

Минимум

Максимум

 

 

 

1

4

6

100

6000

2

10

15

0

500

3

5

11

500

3000

4

6

14

100

1000

Решение

Введем переменные 1, 2, 3, 4 имеющие смысл объемов выпуска соответствующих продуктов.

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

L = 4x1 + 10x2 + 5x3 + 6x4;

Ограничения на время производства:

0,03x1 + 0,15x2

+ 0,05x3 + 0,10x4

<=400

(штамповка)

0,06x1

+ 0,12x2

 

+ 0,10x4 <=400 (сверление)

0,05x1

+ 0,10x2

+ 0,05x3

+ 0,12x4

<=500

(сборка)

0,04x1

+ 0,20x2

+ 0,03x3

+ 0,12x4

<=450

(отделка)

0,02x1

+ 0,06x2

+ 0,02x3

+ 0,05x4

<=400

(упаковка),

Ограничения на ресурсы:

2,0х2 + 1,2х4 <= 2000,

Ограничения на объемы продаж:

100 <= x1 <= 6000

0 <= x2 <= 500

500 <= x3 <= 3000

100 <= x4 <= 1000.

Результат

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

1 = 5500; 2 = 500; 3 = 3000; 4 = 100;

По решению можно сделать следующие выводы:

1)Второй и третий продукты должны производиться в объемах, равных максимальным продажам, а четвертый продукт – в объеме минимальных продаж.

2)Полученная программа полностью использует производственную мощность на штамповке и сверлении.

3)Неиспользованная производственная мощность на других рабочих центрах составляет 13 часов на сборке, 28 часов на отделке и 195 часов на упаковке.

4)Из 2000 м2 листа использовано 1120 и 880 осталось неиспользованным.

5)Максимальное значение прибыли равно 42600.

Рассмотрение двойственных переменных задачи показывает влияние ограничений на максимальное значение прибыли. Так, увеличение производственной мощности штамповки (в оптимальном решении она использована полностью) на один час увеличивает максимальную прибыль на 22,22, для сверления – на 55,56. На одну единицу продукта 3, проданную сверх

7

ограничения в 3000 единиц можно получить 3,89 дополнительной прибыли. Заметьте, что не 5, как следует из таблицы 2, а меньше, так как при увеличении выпуска продукта 3 уменьшится выпуск других продуктов.

2. Модель выбора процессов (способов) производства

В этой задаче потребность в каждом из видов продукции будем считать известной (заданной). Для каждого продукта имеется несколько возможных способов производства (технологические маршруты, процессы, производственные подразделения, источники – собственное производство или субподрядчики, основное время или сверхурочное). Издержки и затраты ресурсов на единицу продукции при каждом способе производства различны. Планирование ведется на один отрезок времени, рассматриваемый независимо от других. Производственные ресурсы (и производительность каждого источника продукции тоже) ограничены. Они должны быть распределены между продуктами так, чтобы суммарные издержки производства были минимальны. Таким образом, в этой задаче требуется определить, какое количество каждого продукт должно быть произведено каждым способом. При этом суммарное количество каждого продукта, которое необходимо произвести, задано. Заметим, что во всех задачах объемного планирования, где потребность задана и она должна быть удовлетворена полностью, то есть задано количество продукции, которое будет продано, можно не рассматривать доход от продажи – фактически он задан и его значение не зависит от переменных задачи, по которым ищется оптимум. Это означает,

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

 

Введем обозначения:

 

 

 

 

– количество продукта ( = 1,2, … , ), производимое процессом ( = 1,2, … , );

 

 

 

 

 

 

 

 

 

 

 

 

 

– количество способов производства для продукта ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

– спрос на продукт , который должен быть полностью удовлетворен;

 

 

 

 

 

 

 

 

 

 

 

 

 

– максимальное количество ресурса -го вида ( = 1, .2, … , ) доступное на планируемый

 

 

 

 

 

 

 

 

 

 

 

период;

 

 

 

 

 

 

 

 

 

 

 

– число единиц -го ресурса, используемое для производства одной единицы -го продукта

 

 

 

 

 

 

 

 

 

 

процессом ;

 

 

 

 

 

 

 

– издержки на единицу -го продукта при производстве его процессом .

 

 

 

 

 

 

 

 

 

 

 

 

Общие издержки производства (целевую функцию) можно представить в виде:

 

=

 

 

 

 

.

 

 

 

 

 

 

 

=1

=1

 

 

 

 

 

Необходимо

найти такие значения всех переменных ,

которые дают минимум

при

 

 

 

 

 

 

 

 

 

 

 

ограничениях:

 

 

 

 

 

 

1) Суммарный объем производства -го продукта всеми процессами равен спросу на этот

продукт: =

 

 

, где = 1,2, … , ;

 

 

 

 

 

 

 

 

=1

 

 

 

 

 

2) Потребные

для оптимального плана количества ресурсов не превышают имеющихся:

 

 

 

 

 

, = 1, .2, … , ;

 

 

 

=1

=1

 

 

 

 

 

 

 

 

3) Объемы производства на всех процессах неотрицательны:

 

≥ 0, = 1,2, … , ; = 1,2, … , .

 

 

 

 

 

 

 

 

 

 

Пример 2.1

Будем считать, что спрос на продукцию всех четырех видов задан и равен соответственно 3000, 500, 1000 и 2000 единиц, и он должен быть удовлетворен полностью. Предельное время работы оборудования за период планирования приведено в таблице 1. Кроме этого, штамповка и сверление могут выполняться субподрядчиками, но при этом стоимость продукции возрастает на 20%. После выполнения субподрядчиками этих операций полуфабрикаты доставляются производителю для проведения сборки, отделки и упаковки. При необходимости участок отделки может работать в сверхурочном режиме до 100 часов за плановый период. Однако при этом стоимость продукта 1 увеличивается на 20 центов за единицу, продукта 2 на 40 центов, продукта 3 на 20 и продукта 4 – на 30. Ограничение в 2000 м2 листа для продуктов 2 и 4 действительно только для той продукции, на которой штамповка и сверление выполняются собственными силами (не у субподрядчика).

8

Решение

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

1.Штамповка и сверление собственными силами, отделка в основное время.

2.Штамповка и сверление собственными силами, отделка в сверхурочное время.

3.Штамповку и сверление выполняет субподрядчик, отделка в основное время.

4.Штамповку и сверление выполняет субподрядчик, отделка в сверхурочное время.

Мы должны ввести эти четыре различных процесса, поскольку стоимость единицы продукции и ограничения по потребляемым ими ресурсам для них различаются. Например, стоимость единицы продукта 1, производимого этими процессами равна 6,00, 6,20, 7,20 и 7,40 долларов. Обозначим через объем выпуска (количество продукта) ( = 1, 2, 3, 4), производимое процессом ( = 1, 2, 3, 4).

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

Необходимо минимизировать функцию:

L 6,0x11 6,2x12 7,2x13 7,4x14 15,0x21 15,4x22 18,0x23 18,4x24 11,0x31 11,2x32 13,2x33 13,4x34 14,0x41 14,3x42 16,8x43 17,1x44

При этом необходимо учесть следующие ограничения: 1. На производительность в основное время:

2

 

 

 

(0,03x1 j

0,15x2 j

0,05x3 j

0,10x4 j ) 400 - на доступное время штамповки;

j 1

 

 

 

2

 

 

 

(0,06x1 j

0,12x2 j

 

0,10x4 j ) 400 - на доступное время сверления;

j 1

 

 

 

4

 

 

 

(0,05x1 j

0,10x2 j

0,05x3 j

0,12x4 j ) 500 - на доступное время сборки;

j 1

0,04(x11 x13) 0,20(x21 x23) 0,03(x31 x33) 0,12(x41 x43) 450 - на доступное время отделки;

4

(0,02x1 j 0,06x2 j 0,02x3 j 0,05x4 j ) 400 - на доступное время упаковки;

j 1

2. На производительность отделки в сверхурочное время:

0,04(x12 x14) 0,20(x22 x24) 0,03(x32 x34) 0,12(x42 x44) 100;

На доступное количество листа:

2,0(x21 x22) 1,2(x41 x42) 2000 ;

На требуемое количество продукции каждого вида:

4

x1 j 3000 ;

j 1

4

 

x2 j

500 ;

j 1

 

4

 

x3 j

1000 ;

j 1

 

4

 

x4 j

2000

j 1

;

 

9

Результат

Оптимальное решение приведено в таблице 3. Минимальное значение целевой функции равно 67013 долларов. Загрузка рабочих центров, соответствующая оптимальному решению, приведена в таблице 4.

Все 2000 м2 листа были использованы в производстве продукта 4. По этой причине вся штамповка и сверление на продукте 2 и частично на продукте 4 были переданы субподрядчику. Полностью использован и ресурс времени отделки в основное время. Это значит, увеличение количества этих ресурсов, то есть ослабление ограничений по ним может снизить издержки производства, получить более выгодный вариант плана. Действительно, увеличение доступного количества листа на 1м2 приводит к снижению суммарных издержек на 2,33 доллара, а увеличение доступного времени отделки на один час снижает суммарные издержки на 2 доллара. Эти оценки легко получить анализом значений двойственных переменных этой задачи или анализом чувствительности решения.

Таблица 3 – Оптимальный план выпуска продукции

Процесс

 

Продукт

 

1

2

3

4

 

Штамповка и сверление собственными силами, отделка в основное

3000

0

1000

1667

время

 

 

 

 

Штамповка и сверление собственными силами, отделка в

0

0

0

0

сверхурочное время

 

 

 

 

Штамповка и сверление – субподрядчик, отделка в основное время

0

300

0

333

Штамповка и сверление – субподрядчик, отделка в сверхурочное

0

200

0

0

время

 

 

 

 

В этом примере значения спроса были заданы. Нетрудно построить аналогичную модель планирования, в которой для спроса заданы только ограничения в виде неравенств. Тогда в качестве критерия должна использоваться прибыль от реализации продукции, так как минимизация суммарных издержек при не заданном спросе приведет к нулевым (или равным нижнему пределу) объемам выпуска.

Таблица 4 – Оптимальная загрузка рабочих центров

 

Основное время, часы

 

Сверхурочное время, часы

Участок

Доступно

Использовано

Свободно

Доступно

Использовано

Свободно

Штамповка

400

306,7

93,3

0

0

0

Сверление

400

346,7

53,3

0

0

0

Сборка

500

490,0

10

0

0

0

Отделка

450

450,0

0

100

40

60

Упаковка

400

210,0

190

0

0

0

3. Задача составления смесей

Будем считать, что имеется n различных исходных материалов и m требований к составу или свойствам смеси. Чтобы сформулировать математическую модель этой задачи в виде задачи линейного программирования необходимо предположить, что свойства конечного продукта и его стоимость линейно зависят от количества каждого материала, использованного для составления

смеси.

 

 

 

Введем обозначения:

 

 

– количество материала , используемого на одну единицу готовой смеси ( = 1,2, … , );

 

 

 

 

 

 

– стоимость единицы материала ;

 

 

 

 

 

 

 

– вклад единицы материала в -е свойство смеси ( = 1,2, … , );

 

 

 

 

– требования к -му свойству смеси.

 

 

 

 

 

Требуется найти неотрицательные значения переменных , дающие минимум функции

 

 

 

 

=

 

– затраты на единицу смеси, при ограничениях на свойства смеси

 

=1

 

 

 

 

10

Соседние файлы в предмете Корпоративные информационные системы