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

Решение задач линейного программирования в среде wxMaxima. Практикум. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
09.08.2026
Размер:
433 Кб
Скачать

(%o1)

Затем с помощью функции maximize_lp находим решение

задачи:

Q:x3;

(%i2)

(Q)

x3

(%i3)

maximize_lp(Q,[2·x1+3·x2 <= 60,

 

20·x1+10·x2 <= 450,

 

x2−2·x1 <= 36,

 

x1−3·x3 >= 0,

 

x2−2·x3 >= 0,

 

x1 >= 0, x2 >= 0, x3 >= 0] );

(%o3)

.

2. Пропорции:

(%i1) load(simplex);

(%o1)

Затем с помощью функции maximize_lp находим решение

задачи:

Q:x1+x2;

(%i2)

(Q)

x2+x1

(%i3)

maximize_lp(Q,[2·x1+3·x2 <= 60,

 

20·x1+10·x2 <= 450,

 

x2−2·x1 <= 36,

 

x1−3·x2 >= 0,

 

x1 >= 0, x2 >= 0] );

(%o3)

.

2. Выпуск разнородной продукции на одном оборудовании. Завод выпускает детали А и Б. Цех № 1 может изготовить за смену 600 деталей А или 1200 деталей Б. Эти детали затем поступают в цех № 2, где за 1 ч могут обработать 150 деталей А или

21

maximize_lp(Q,[2·x1+x2 <= 1200, 2·x1+3·x2 <= 2400,
x1 >= 0, x2 >= 0] );

100 деталей Б. Сколько деталей А и Б может выпускать завод за 8- часовую смену, чтобы их общее количество было максимально?

Обозначим: х1 и х2 – выпуск деталей А и Б за смену. Если за смену изготовить 600 деталей А, то на 1 деталь тратится 1/600 часть смены; на х1 деталь – надо х1/600 часть смены. Аналогично на х2 деталей Б надо х2/1200 частей смены. Получаем:

x1 + x2 £ 1 смены Þ 2x1+ x2 £1200 .

6001200

Вцехе № 2 на обработку деталей А надо х1/150 ч, на детали

Бх2/100 ч:

x1

+

 

x 2

£ 8 ч Þ 2 x1 + 3 x 2 £ 2400 .

150

100

 

 

Целевая функция: q= x1+ x2®max.

Пример.

(%i1) load(simplex);

(%o1)

Затем с помощью функцииmaximize_lp находим решение задачи:

(%i3)

(%o3)

Задание. Исходные данные - в приложении 5.

1.Записать целевую функцию.

2.Составить ограничения.

3.Решить задачу с помощью wxMAXIMA.

4.Записать результаты.

22

Контрольные вопросы

1.Какой общий алгоритм разработки модели решения задачи?

2.Что такое область допустимых решений? Как она определяется в задаче?

3.Что такое целевая функция?

4.Что такое нормальный вектор? Каковы его характеристики? Что такое направление нормального вектора?

Практическая работа № 6.

Решение комбинированных задач

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

Порядок выполнения работы

Фирма производит два продукта А и В, продаваемых по 8 и 15 центов за упаковку. Продукт А обрабатывается на машинеI, продукт В – на машине II, характеристики машин в таблице.

 

 

 

Таблица

Показатель

Машина

 

 

 

I

 

II

 

Производительность, кг сырья/ч

5000

 

4000

 

Потери, %

10

 

20

 

Рабочий день, ч

6

 

5

 

Цена 1 ч работы, дол.

288

 

336

 

Затем оба продукта упаковываются. 1 кг сырья стоит 6 центов. Упаковка продукта А весит 1/4 кг, а упаковка В – 1/3 кг. Фирма работает 10 ч в день, производя за 1 ч продукцию стоимостью 360 дол. Какое потребление сырья для продуктов А и В максимизирует дневную прибыль?

Обозначим:

x1 – потребление кг сырья для производства продукта А; х2 – потребление кг сырья для производства продукта В.

Целевая функция:

23

x1 × 288 - стоимость работы оборудования I в день;

5000

x2 ×336 - стоимость работы оборудования II в день.

4000

x1× 0,9 - производится продукта А в день с учетом потерь; x2 ×0,8 - производится продукта В в день с учетом потерь.

x1×0,9 - количество упаковок продукта А в день;

1/ 4

x2 × 0,8 - количество упаковок продукта В в день.

1/ 3

Доход от продажи продуктов:

x1×0,9 ·0,08 – стоимость упаковок продукта А;

1/ 4

x2 × 0,8 ·0,15 – стоимость упаковок продукта В.

1/ 3

Затраты на закупку сырья:

- стоимость сырья для продуктов А и В. Тогда целевая функция будет иметь вид

æ x1×0,9 ×0.08

 

x1×0,8 ×0.15

ö

 

Q = ç

 

+

 

÷

-

1/ 4

1/ 3

è

 

ø

 

éæ

x1

 

 

x1

 

ö

ù

 

- êç

 

× 288

+

 

×336

÷

+ (x1 + x2)×0.06ú

® max .

5000

4000

ëè

 

 

 

ø

û

 

Ограничения:

x1

 

x2

 

на работу оборудования:

£ 6;

£ 5.

 

 

 

5000

4000

на стоимость продукции:

0,08× x1×0,9 ×4 + 0,15 × x2 ×0,8×3 = 3600 .

Пример.

(%i1) load(simplex);

24

(%o1)

Затем с помощью функции maximize_lp находим решение задачи:

(%i2) Q:x1·0.9·0.08/(1/4) + x2·0.8·0.15/(1/3) − (x1·288/5000 + x2·336/4000) + 0.06·(x1+x2);

(Q) 0.06(x1+x2)+0.276x2+0.2304x1

(%i3) maximize_lp(Q,[x1/5000 <= 6, x2/4000 <= 5, 0.08·x1·0.9·4+0.15·x2·0.8·3 = 3600, x1 >= 0, x2 >= 0] );

(%o3) .

Задание. Исходные данные - в приложении 6.

1.Записать целевую функцию.

2.Составить ограничения.

3.Решить задачу с помощью wxMAXIMA.

4.Записать результаты и выводы.

Контрольные вопросы

1.Какой общий алгоритм разработки модели решения задачи?

2.Какие типовые алгоритмы используются при решении комбинированных задач?

3.Что такое целевая функция?

4.Важно ли приведение значений переменных к одинаковым временным рамкам?

5.Какие параметры можно использовать в качестве целевой функции?

6.Какие основные типы ограничений используются в задачах линейного программирования?

25

Приложение 1

Исходные данные по выполнению практической работы № 1. Графическое решение задачи линейного программирования

Вариант № 1

q = -3x1 + 6x2 → min

ì5x1 - 2x2 £ 4;

ï

 

 

 

 

 

ï2x2 - x1 £ 4;

íx

+ x

2

£ 4;

 

ï 1

 

 

 

 

ïx

³ 0,

x

2

³ 0.

î 1

 

 

 

 

Вариант № 2

q = -3x1 + 6x2

→ max

ì5x1 - 2x2 £ 4;

ï

 

 

 

 

ï2x2 - x1 £ 4;

íx + x

2

£ 4;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 3

q= x1 + x2 → max

ìx1 + x2 ³ 1;

ï

 

- 5x1 ³ 0;

ïx2

íx + x

2

£ 6;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 4

q= x1 + x2 → min

ìx1 + x2 ³ 1;

ï

 

- 5x1 ³ 0;

ïx2

íx + x

2

£ 6;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 5 q = x1 + x2 → max

ì5x1 - 2x2 £ 7;

ï

 

- x1

£ 5;

ïx2

íx + x

2

£ 6;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 6 q = x1 + x2 → min

ì5x1 - 2x2 £ 7;

ï

- x1 £ 5;

ïx2

íx + x

2

£ 6;

ï 1

 

 

 

ïx

³ 0,

 

x ³ 0.

î 1

 

 

 

2

Вариант № 7

q = x1 + 2x2

→ max

ì2x1 + x2

£ 8;

ï

+ x2

³ 6;

ïx1

í

 

 

 

 

ï-3x1 + 2x2 ³ 3;

ïx

³ 0,

 

x ³ 0.

î 1

 

 

 

2

Вариант № 8

q = x1 + 2x2

→ min

ì2x1 + x2

£ 8;

ï

+ x2

³ 6;

ïx1

í

 

 

 

 

ï-3x1 + 2x2 ³ 3;

ïx

³ 0,

 

x ³ 0.

î 1

 

 

 

2

26

Вариант № 9

q = x2 + 2x1 → max

ì2x1 + x2 £ 8;

ï

+ x2

£ 6;

 

ïx1

 

í- 3x + 2x

 

³ 3;

ï

1

2

 

ïx

³ 0,

x

2

³ 0.

î 1

 

 

 

Вариант № 10 q = x2 + 2x1 → min

ì2x1 + x2 £ 8;

ï

+ x2

£ 6;

 

ïx1

 

í- 3x + 2x

 

³ 3;

ï

1

2

 

ïx

³ 0,

x

2

³ 0.

î 1

 

 

 

Вариант № 11

q = 2x1 + 2x2 → max

ì2x2 - 3x1 £ 6;

ïïx1 + x2 ³ 3;

í

ï0 £ x1 £ 3; ïî0 £ x2 £ 5.

Вариант № 12 q = 2x1 + 2x2 → min

ì2x2 - 3x1 £ 6;

ïïx1 + x2 ³ 3;

í

ï0 £ x1 £ 3; ïî0 £ x2 £ 5.

Вариант № 13

q= 3x1 + 3x2 → max

ìx1 + x2 £ 4; ïï3x1 + x2 ³ 4;

ï

íx1 + 5x2 ³ 4; ïï0 £ x1 £ 3;

ï0 £ x £ 3. î 2

Вариант № 14

q= 3x1 + 3x2 → min

ìx1 + x2 £ 4; ïï3x1 + x2 ³ 4;

ï

íx1 + 5x2 ³ 4; ïï0 £ x1 £ 3;

ï0 £ x £ 3. î 2

27

Вариант № 15

Вариант № 17

q = x1 - x2 → min

q = -2x1 + x2 → max

ì3x + 2x

 

£ 10;

ì2x + x

£ 8;

ï

1

 

 

2

 

ï

1

2

 

í2

£ x1 £ 5;

ïx1

+ x2 £ 6;

ï

£ x2 £ .3

í

 

 

³ 3;

î0

ï-3x1 + 2x2

 

 

 

 

 

 

ïx

³ 0,

 

x ³ 0.

 

 

 

 

 

 

î 1

 

 

2

Вариант № 16

 

 

 

 

q = x1 - x2

→ max

Вариант № 18

ì3x + 2x

2

£ 10;

q = -2x1 + x2

→ min

ï

1

 

 

 

ì2x1 + x2 £ 8;

í2

£ x1 £ 5;

 

ï0 £ x

 

£ 3.

ï

+ x2 £ 6;

2

ïx1

î

 

 

 

 

í

 

 

³ 3;

 

 

 

 

 

 

ï-3x1 + 2x2

 

 

 

 

 

 

ïx

³ 0,

 

x ³ 0.

 

 

 

 

 

 

î 1

 

 

2

28

Приложение 2

Исходные данные по выполнению практической работы № 2. Симплекс-метод

Вариант № 1

Найти значение функции q, используя симплекс-метод

q = -3x1 + 6x2 → min

ì5x1 - 2x2 £ 4;

ï

 

 

 

 

ï2x2 - x1 £ 4;

íx + x

2

£ 4;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 2

Найти значение функции q, используя симплекс-метод

q = -3x1 + 6x2 → max

ì5x1 - 2x2 £ 4;

ï

 

 

 

 

ï2x2 - x1 £ 4;

íx + x

2

£ 4;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 3

Найти значение функции q, используя симплекс-метод

q= x1 + x2 → max

ìx1 + x2 ³ 1;

ï

 

- 5x1 ³ 0;

ïx2

íx + x

2

£ 6;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 4

Найти значение функции q, используя симплекс-метод

q= x1 + x2 → min

ìx1 + x2 ³ 1;

ï

 

- 5x1 ³ 0;

ïx2

íx + x

2

£ 6;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 5

Найти значение функции q, используя симплекс-метод

q = x1 + x2 → max

ì5x1 - 2x2 £ 7;

ï

 

- x1

£ 5;

ïx2

íx + x

2

£ 6;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

Вариант № 6

Найти значение функции q, используя симплекс-метод

q = x1 + x2 → min

ì5x1 - 2x2 £ 7;

ï

 

- x1

£ 5;

ïx2

íx + x

2

£ 6;

ï

1

 

 

ïx

³ 0,

x ³ 0.

î

1

 

 

2

29

Вариант № 7

Вариант № 10

Найти значение функции

Найти значение функции

q, используя симплекс-метод

q, используя симплекс-метод

q = x1 + 2x2

→ max

q = x2 + 2x1 → min

ì2x1 + x2 £ 8;

ì2x1 + x2 £ 8;

ï

+ x2 ³ 6;

ï

+ x2

£ 6;

 

ïx1

ïx1

 

í

 

 

í

 

 

 

 

ï-3x1 + 2x2 ³ 3;

ï- 3x1 + 2x2 ³ 3;

ïx ³ 0, x ³ 0.

ïx ³ 0,

x

2

³ 0.

î 1

 

2

î 1

 

 

 

Вариант № 8

Вариант № 11

Найти значение функции

Найти значение функции

q, используя симплекс-метод

q, используя симплекс-метод

q = x1 + 2x2

→ min

q = 2x1 + 2x2 → max

ì2x1 + x2 £ 8;

ì2x2 - 3x1 £ 6;

ï

+ x2 ³ 6;

ï

 

 

 

 

ïx1

ïx1 + x2 ³ 3;

 

í

 

 

í

£ x1

£ 3;

 

ï-3x1 + 2x2 ³ 3;

ï0

 

ï

³ 0, x2 ³ 0.

ï

£ x2

£ 5.

 

îx1

î0

 

Вариант № 9

Вариант № 12

Найти значение функции

Найти значение функции

q, используя симплекс-метод

q, используя симплекс-метод

q = x2 + 2x1 → max

q = 2x1 + 2x2 → min

ì2x1 + x2 £ 8;

ì2x2 - 3x1 £ 6;

ï

+ x2 £ 6;

ï

 

 

 

 

ïx1

ïx1 + x2 ³ 3;

 

í

 

 

í

£ x1

£ 3;

 

ï- 3x1 + 2x2 ³ 3;

ï0

 

ï

³ 0,

x2 ³ 0.

ï

£ x2

£ 5.

 

îx1

î0

 

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]