Informatika_Sbornik_zadaniy_k_lab_rab
.pdf
|
|
|
|
|
|
|
|
|
|
О к о н ч а н и е |
т а б л . 2.1.1 |
||||
|
|
|
Таблица исходных данных |
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1-я |
|
|
|
|
xi , |
i |
0, |
n |
|
|
|
|
|||
цифра |
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
вари- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
yi , |
i |
0, |
n |
|
|
|
|
|||||
анта |
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
4 |
0,1 |
0,5 |
1 |
1 |
2 |
|
|
|
4 |
|
4 |
4,8 |
5,8 |
5,8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
0,73 |
1,3 |
1,83 |
1,7 |
2,39 |
1,96 |
2 |
1,35 |
0,56 |
0,55 |
||||||
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
1 |
2 |
3 |
4 |
5 |
|
|
|
9 |
|
10 |
11 |
2 |
9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
1,5 |
3,5 |
4,5 |
5,5 |
5,5 |
5,5 |
6,5 |
6,5 |
3,4 |
5,6 |
||||||
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
6 |
1 |
3,1 |
5,3 |
6,9 |
9,4 |
11,1 |
12,6 |
14,7 |
6,9 |
17,2 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
590 |
591 |
591 |
592 |
592 |
591 |
591 |
590,5 |
592 |
590 |
||||||
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
7 |
1,04 |
1,185 |
1,454 |
1,711 |
1,98 |
1,98 |
2,192 |
1,185 |
2,23 |
2,23 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
–7,6 |
–5,3 |
–2,25 |
–2,5 |
–2 |
|
–1,95 |
–5,3 |
–5,5 |
–7 |
–7,2 |
|||||
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
8 |
3 |
8 |
13 |
3 |
18 |
|
|
23 |
27 |
30 |
33 |
27 |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
25,5 |
12,3 |
8,0 |
24 |
10,2 |
15,4 |
15,4 |
20,1 |
20,5 |
15,6 |
||||||
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
9 |
1,031 |
1,514 |
1,41 |
1,768 |
1,884 |
1,41 |
2,063 |
2,23 |
2,23 |
1,031 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
–26,6 |
–22,7 |
–21 |
–20,5 |
–19,6 |
|
–21,6 |
–20,5 |
–21 |
–20,8 |
–26,4 |
|||||
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
a |
0 |
3 |
5 |
7 |
9 |
|
|
|
11 |
13 |
15 |
17 |
21 |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
4,5 |
4,1 |
2,7 |
2,8 |
4,5 |
5,4 |
6,1 |
6,2 |
6,5 |
5,3 |
||||||
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
b |
2 |
2,1 |
2,1 |
2,2 |
2,3 |
2,4 |
2,4 |
2,5 |
2,7 |
2,8 |
|||||
7,59 |
7,51 |
7,52 |
7,29 |
7,1 |
6,99 |
7,0 |
6,95 |
6,95 |
6,95 |
||||||
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
c |
1 |
1,2 |
1,2 |
1,4 |
1,6 |
1,8 |
1,8 |
1,0 |
1,2 |
1,2 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
2,5 |
2,8 |
2,9 |
2,8 |
2,9 |
2,6 |
2,7 |
2,5 |
2,5 |
2,6 |
||||||
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
d |
0,12 |
0,13 |
0,14 |
0,14 |
0,15 |
0,16 |
0,18 |
0,18 |
0,21 |
0,21 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
0,1 |
0,3 |
0,5 |
0,6 |
2,6 |
|
|
3 |
|
3,4 |
3,5 |
3,6 |
3,5 |
|||
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
e |
0,2 |
1,0 |
2 |
2 |
4 |
|
|
|
8 |
|
8 |
9,6 |
11,6 |
11,6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
7,3 |
13 |
18,3 |
17 |
23,9 |
19,6 |
20 |
13,5 |
5,6 |
5,5 |
||||||
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
f |
3 |
6 |
9 |
12 |
15 |
|
|
27 |
30 |
33 |
6 |
27 |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
15 |
35 |
45 |
55 |
55 |
|
|
55 |
65 |
65 |
34 |
56 |
||||
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
|
|
|
|
|
|
|
|
|
Т а б л и ц а 2.1.2
Порядок аппроксимирующей функции
2-я цифра |
0; 5 |
1; 6 |
2; 7 |
3; 8 |
4; 9 |
a; f |
b; e |
c; d |
|
варианта |
|||||||||
|
|
|
|
|
|
|
|
||
Значения m |
1; 3; 5 |
2; 4; 5 |
1; 2; 4 |
3; 4; 5 |
2; 4; 5 |
1; 3; 4 |
2; 3; 5 |
1; 3; 4 |
Т а б л и ц а 2.1.3
Таблица «невязок»
m
max yi Pm (xi )
i
2.2. Решение задачи линейного программирования средствами MatLab
Задача поиска условного экстремума функции многих переменных часто встречаются в экономических расчѐтах для минимизации затрат, максимализации прибыли и т. п. При этом экономическая задача описывается системами линейных уравнений и неравенств и относится к задачам линейного программирования. Типичный пример – так на-
зываемая задача производственного планирования, которая решает проблему оптимального выпуска товаров, дающего максимально возможный доход.
Пример. Рассмотрим производство столов и стульев. Сведения о затратах ресурсов на единицу продукции, об их наличии и о доходе от производимой продукции отражены в табл. 2.2.1.
|
|
|
|
Т а б л и ц а 2.2.1. |
|
Затраты ресурсов |
|
||
|
|
|
|
|
Наименование ресурса |
|
Продукция |
Ограничения |
|
|
Стул |
Стол |
по ресурсу |
|
|
|
|||
Древесина, кг/шт. |
|
5 |
25 |
500 |
Кожа, м2/шт. |
|
0,5 |
0 |
15 |
Клей, г/шт. |
|
100 |
250 |
7500 |
Трудозатраты, чел. · ч / шт. |
|
10 |
10 |
400 |
Доход, р/шт. |
|
10 |
20 |
|
|
31 |
|
|
Доход (обозначим его символом f ) , очевидно, равен f 10x1 20x2 , где x1 и x2 − искомые (вместе с f ) значения количества
стульев и столов соответственно. Математическая модель сформулированной задачи состоит в поиске максимума функции f (x) 10x1
20x2 при наличии следующих ограничений:
5x1 |
25x2 |
500 , |
|
0,5x1 |
15 , |
|
|
100x1 |
250x2 7500 , |
||
10x1 |
|
10x2 |
400 , |
x1 |
0, |
x2 |
0 . |
Для решения задач линейного программирования в MatLab используется функция linprog, которая ищет минимум для целевой функ-
ции min f T (x) при наличии ограничений
x
A x b,
Aeq x beq,
lb x ub.
Простейшие две формы обращения к ней состоят в следующем:
x=linprog(f,A,b), |
|
|
|||
x=linprog(f,A,b,Aeq,beq,lb,ub), |
|
|
|||
[x,fv]=linprog(f,A,b,Aeq,beq,lb,ub), |
|
||||
где |
|
|
|
|
|
f |
− |
вектор коэффициентов целевой функции − для нашего при- |
|||
мера f=[10; 20]; |
|
|
|||
A |
− |
матрица коэффициентов системы линейных неравенств |
|||
A*x |
b − для нашего примера A=[5 25;0.5 0;100 250;10 10]; |
||||
b |
− |
вектор свободных членов системы линейных неравенств |
|||
A*x |
b − для нашего примера b=[500; 15; |
7500; |
400]; |
||
Aeq |
− |
матрица коэффициентов системы |
линейных |
равенств |
|
Aeq*x=beq |
− для нашего примера еѐ нет (ставят пару пустых пря- |
||||
моугольных скобок [ ]); |
|
|
|||
|
|
|
32 |
|
|
beq |
− |
вектор свободных членов системы линейных |
равенств |
|
A*x=b |
− |
для нашего примера его нет (ставят пару пустых прямо- |
||
угольных скобок [ ]); |
|
|||
lb |
и ub |
− векторы той же размерности, что и вектор |
x − ог- |
|
раничения |
на |
координаты lb x ub − для нашего |
примера |
|
lb=[0; 0], а вместо ub ставят пару пустых скобок [ ]; |
|
|||
x − искомый вектор оптимальных значений параметров; |
|
|||
fv |
− значение целевой функции при оптимальном векторе пара- |
|||
метров. |
|
|
|
|
Командное окно для решения нашей задачи имеет вид
>>f=[10; 20];
>>A=[5 25;0.5 0;100 250;10 10];
>>b=[500; 15; 7500; 400];
>>lb=[0; 0];
>>[x,fv]=linprog(-f,A,b,[],[],lb) Optimization terminated.
x = 25.0000 15.0000
fv = -550.0000
Так как функция linprog находит минимум, а нам необходимо найти максимум, то перед символом f в вызове функции поставлен знак минус.
Таким образом, оптимальнее всего изготовить 25 стульев и 15 столов, при этом доход составит 550 р.
Задание. В соответствии с заданным вариантом (см. табл. 2.2.2) найти оптимальное решение задачи производственного планирования.
33
|
Т а б л и ц а |
2.2.2 |
|
Варианты заданий |
|
|
|
|
5-я циф- |
|
|
ра вари- |
Условие задачи линейного программирования |
|
анта |
|
|
0 |
Цех малого предприятия должен изготовить серию изделий трѐх |
|
|
типов. Каждого изделия нужно сделать не менее 20 шт. в день. |
|
|
На изделия уходят соответственно 4; 3,4 и 2 кг металла при его |
|
|
общем расходе в день не более 340 кг, а также по 4,76; 11 и 2 кг |
|
|
пластмассы при еѐ общем расходе в день не более 700 кг. Сколь- |
|
|
ко изделий каждого типа надо изготовить для получения макси- |
|
|
мального объѐма выпуска в денежном выражении, если цена из- |
|
|
делий составляет 4; 3 и 2 р.? |
|
1 |
Предприятия выпускают хлебобулочные изделия десяти наиме- |
|
|
нований. За день необходимо испечь не менее 200 шт. каждого |
|
|
наименования. На изделия уходят соответственно 0,5; 0,4; 0,1; |
|
|
0,15; 0,05; 0,24; 0,31; 0,4; 0,33 и 0,2 кг муки при еѐ общем расходе |
|
|
в |
день |
|
не более 700 кг, а также по 40; 30; 11; 0; 0; 10; 15; 8; 0 и 2 г сахара |
|
|
при общем его расходе в день не более 30 кг. Сколько изделий |
|
|
каждого типа надо выпустить для получения максимального до- |
|
|
хода, если цена изделий составляет 40; 30; 10; 12; 6; 25; 28; 55; 13 |
|
|
и 12 р.? |
|
2 |
Строительное предприятие должно изготовить серию изделий |
|
|
пяти типов. Каждого изделия нужно сделать не менее 50 шт. в |
|
|
день. |
|
|
На изделия уходит соответственно 4; 3,4; 10; 8 и 2 кг песка при |
|
|
его общем расходе в день не более 8900 кг, а также по 1,6; 1; 1,5; |
|
|
1,3 |
|
|
и 0,4 кг цемента при его общем расходе в день не более 1500 кг, |
|
|
а также по 1; 4; 1,5; 1,8 и 0,4 и 0 кг металла при его общем расхо- |
|
|
де |
|
|
в день не более 4000 кг. Сколько изделий каждого типа надо вы- |
|
|
пустить для получения максимального объѐма выпуска в денеж- |
|
|
ном выражении, если цена изделий составляет 400; 300; 1000; 750 |
|
|
и 200 р.? |
|
3 |
Участок мясоперерабатывающего предприятия выпускает мясо- |
|
|
продукты четырех наименований. В день необходимо изготовить |
|
|
не ме-нее 25 кг продукции каждого наименования. На изготовле- |
|
|
ние 1 кг продукции разного наименования уходит соответственно |
|
|
800; 900; 1100 и 600 г мяса-сырца при общем его расходе в день не |
|
|
более 850 кг; 100; 50; 0 и 300 г жиров при общем их расходе в |
|
|
34 |
|
день не более 50 кг; а также 200; 100; 0 и 300 г сои при общем еѐ
расходе в день не более 745 кг. Сколько изделий каждого наименования следует изготовить для получения максимального объѐма выпуска в денежном выражении, если цена продукции составляет по калькуляции 400; 300; 600; и 180 р.?
П р о д о л ж е н и е т а б л . 2.2.2
5-я циф-
ра вариУсловие задачи линейного программирования анта
4Цех малого предприятия должен изготовить серию изделий трѐх
типов. Каждого изделия нужно сделать не менее 60 шт. в день. На изделия уходят соответственно 40; 14 и 20 кг металла при его общем запасе 34 000 кг, а также по 14; 20 и 5 кг пластмассы при еѐ общем запасе 4700 кг. Сколько изделий каждого типа надо сделать для
получения максимального объѐма выпуска в денежном выражении, если цена изделий составляет по калькуляции 400; 300 и
200 р.?
5Предприятие выпускает хлебобулочные изделия шести наимено-
ваний. В день необходимо изготовить не менее 80 шт. каждого наименования На изделия уходит соответственно 0,5; 0,4; 0,1;
0,15; 0,05 и 0,2 кг муки при еѐ общем расходе за день не более
700 кг,
а также по 40; 130; 11; 0; 10 и 8 г сахара при его общем расходе за день не более 140 кг. Сколько изделий каждого типа надо выпустить для получения максимального дохода, если цена изделий составляет по калькуляции 24; 31; 12; 12; 6 и 12 р.?
6Строительная фирма изготовляет изделия шести типов. Каждого
изделия нужно сделать не менее 15 шт. в день. На изделия требуется соответственно 40; 34; 100; 80; 14 и 20 кг песка при его общем расходе за день не более 29 т, по 16; 10; 20; 15; 2 и 4 кг цемента при его общем расходе за день не более 7000 кг, а также по 1; 4;
1,5; 1; 0,5 и 0 кг металла при его общем расходе за день не более 800 кг. Сколько изделий каждого типа надо изготовить для получения максимального объѐма выпуска в денежном выражении,
если цена изделий составляет по калькуляции 4000; 3000; 10000;
7500; 1000
и 2000 р.?
7Участок швейного предприятия шьет изделия трех наименова-
ний. Продукции каждого из наименований необходимо изготовить не менее 50 шт. в день. На это уходит соответственно 0,8; 1,9 и 1,1 м ткани при общем еѐ расходе в день не более 400 м; 100; 50; 0 см ленты при общем еѐ расходе на день не более 300 м.
35
Сколько изделий каждого наименования следует сшить для по-
лучения максимального объѐма выпуска в денежном выражении, если цена продукции составляет по калькуляции 1400; 2300 и 1800 р.?
8Цех малого предприятия должен изготовить серию изделий че-
тырех типов. Каждого изделия нужно сделать не менее 30 шт. в день, на что уходит соответственно 4; 3,4; 1 и 2 кг дерева при его об-
щем запасе 940 кг, а также по 4,76; 11; 7 и 2 кг жести при еѐ общем запасе 2700 кг. Сколько изделий каждого типа надо изготовить для получения максимального объѐма выпуска в денежном выражении, если цена изделий составляет по калькуляции 400; 300; 600 и 200 р.?
П р о д о л ж е н и е т а б л . 2.2.2
5-я циф-
ра вариУсловие задачи линейного программирования анта
9Фирма выпускает макаронные изделия трех наименований. Каж-
дого наименования за день необходимо изготовить не менее 200 кг. На 1 кг продукции уходит соответственно 0,9; 0,85 и 0,77 кг муки при общем расходе за день не более 700 кг, а также по 4; 13 и 11 г сахара при общем его расходе за день не более 60 кг. Сколько изделий каждого типа надо выпустить для получения максимального дохода, если цена 1 кг макаронных изделий составляет 40; 30 и 25 р.?
aМеталлообрабатывающее предприятие выпускает изделия пяти
типов. Каждого изделия нужно сделать не менее 15 шт. за смену. На это уходит соответственно 4; 3,4; 10; 8 и 2 кг стали при его общем расходе за смену не более 500 кг, а также по 1,6; 1,2; 1,5; 1,3
и 0,4 кг алюминия при его общем расходе за смену не более 200 кг. Сколько изделий каждого типа надо изготовить для получения максимального объѐма выпуска в денежном выражении, если цена изделий составляет по калькуляции 400; 300; 1000; 750 и 200 р.?
bЦех малого предприятия должен изготовить серию изделий трѐх
типов. Каждого изделия нужно сделать не менее 20 шт. в день. На изделия уходит соответственно 4,0; 1,4 и 2 кг металла при его общем запасе 340 кг, а также по 1,4; 2,0 и 0,5 кг пластмассы при еѐ общем запасе 170 кг. Сколько изделий каждого типа надо из-
готовить для получения максимального объѐма выпуска в денежном выражении, если цена изделий составляет по калькуляции
40; 30
и 20 р.?
36
cФирма выпускает кондитерские изделия трех наименований. Ка-
ждого наименования за день необходимо изготовить не менее 20 кг. На 1 кг изделий уходит соответственно 0,9; 0,85 и 0,77 кг муки при общем ее расходе за день не более 70 кг, а также по 40; 130
и 110 г сахара при общем его расходе за день не более 60 кг. Сколько изделий каждого типа надо выпустить для получения максимального дохода, если цена 1 кг кондитерских изделий со-
ставляет 400; 300 и 250 р.?
dМеталлообрабатывающее предприятие изготавливает изделия
пяти типов. Каждого изделия нужно сделать не менее 5 шт. за смену.
На изделия уходит соответственно 40; 34; 100; 80 и 20 кг стали при ее общем расходе за смену не более 2500 кг, а также по 16; 12; 15; 13 и 4 кг алюминия при его общем расходе за смену не более 400 кг. Сколько изделий каждого типа надо изготовить для получения максимального объѐма выпуска в денежном выражении, если цена изделий составляет по калькуляции 540; 310; 900; 750 и 190 р.?
О к о н ч а н и е т а б л . 2.2.2
5-я циф-
ра вариУсловие задачи линейного программирования анта
eПредприятие выпускает изделия трех наименований. Продукции
каждого наименования необходимо изготовить не менее 500 шт. в день. На это уходит соответственно 0,8; 1,9 и 1,1 м ткани при общем еѐ расходе за день не более 3900 м; ленты 90; 60 и 10 см при общем ее расходе на день не более 900 м. Сколько изделий каждого наименования следует изготовить для получения максимального объѐма выпуска в денежном выражении, если цена продукции составляет по калькуляции 140; 230 и 180 р.?
fПредприятие должно изготовить серию изделий трех типов. Каж-
дого изделия нужно сделать не менее 40 шт. На изделия уходит соответственно 4; 3,4 и 2 кг металла при его общем запасе 940 кг, а также по 4,76; 11 и 2 кг пластмассы при еѐ общем запасе 2100 кг. Сколько изделий каждого типа надо изготовить для получения максимального объѐма выпуска в денежном выражении, если цена изделий составляет по калькуляции 4; 3 и 2 р.?
Отчѐтность по расчѐтно-графическому заданию
37
Отчѐт предоставляется в виде распечатки файла формата MS Word 2003. Отдельно к отчѐту прилагаются его электронная версия и файлы кодов программ для пакета MatLab R2007b. Приложения должны быть оформлены в виде папки (каталога).
Отчѐт должен включать в себя (MS Word 2003): титульный лист; текст задания;
текст кода программ(ы) для пакета MatLab R2007b с подробными комментариями;
выводы, отражающие мнение студента о достоинствах и недостатках пакета MatLab R20007b для решения задач вычислительной математики.
Размер символов (Times New Roman) в отчѐте – не менее 12 и не более 14 пунктов.
ЛИТЕРАТУРА
1.Унру Н.Э. Информатика. Ч. II. Методические указания к лабораторным работам для студентов 2-го курсов факультета РЭФ, обучающихся по специальностям «Радиотехника» и «Радиосвязь, радиовещание и телевидение». – Новосибирск: Изд-во НГТУ, 2009. – 59 с.
2.Эдвардс Ч.Г., Пенни Д.Э. Дифференциальные уравнения и краевые задачи: моделирование и вычисление с помощью Mathematica, Maple и MATLAB. 3-е изд.: пер. с англ. − М.: ООО «И.Д. Вильямс», 2008. − 1104 с.
3.Ануфриев И.Е., Смирнов А.Б., Смирнова Е.Н. MATLAB 7. − СПб.: БХВ-
Петербург, 2005. − 1104 с.
4.Кетков Ю.Л., Кетков А.Ю., Шульц М.М. MATLAB 7: программирова-
ние, численные методы. − СПб.: БХВ-Петербург, 2005. − 752 с.
5.Ануфриев И.Е. MatLab 5.3/6.x. − СПб.: БХВ-Петербург, 2004. − 736 с.
6.Hunt, Brian R. MatLab R2007 с нуля ! Книга + Видеокурс. : [пер. с
англ.] / Brian R. Hunt [и др.]. − М.: Лучшие книги, 2008. − 352 с.
7.Новгородцев А.Б. Расчѐт электрических цепей в MATLAB: Учебный курс. − СПб.: Питер, 2004. − 250 с.
38
ИНФОРМАТИКА Часть III
Методические указания
Редактор Н.А. Лукашова
Выпускающий редактор И.П. Брованова
Корректор Е.В. Дубовцева
Компьютерная верстка С.И. Ткачева
Подписано в печать 20.08.2010. Формат 60 84 1/16. Бумага офсетная. Тираж 150 экз. Уч.-изд. л. 2,32. Печ. л. 2,5. Изд. № 132. Заказ № . Цена договорная
Отпечатано в типографии Новосибирского государственного технического университета
630092, г. Новосибирск, пр. К. Маркса, 20