Cvičení 3 – Úlohy LP v programu LINGO

Transkript

Cvičení 3 – Úlohy LP v programu LINGO
4EK313 – Programy pro matematické modelování
Cvičení 3
Cvičení 3 – Úlohy LP v programu LINGO
(vyřešte následující úlohy v softwaru LINGO)
Příklad 1 – Rovnicový způsob zadávání vstupních dat
Firma balící bonboniéry má k dispozici 180 čokoládových a 198 oříškových bonbónů. Může
vyrábět dva druhy bonboniér – do první se dává 10 čokoládových a 18 oříškových bonbónů,
do druhé bonboniéry se dává 20 čokoládových a 11 oříškových bonbónů. Na každém kusu
první bonboniéry firma vydělá 20 Kč, na druhé vydělá 32 Kč. Z provozních důvodů má firma
k dispozici pouze 12 krabiček na bonboniéry.
a) Jaký je výrobní program maximalizující zisk firmy?
b) Jaký je výrobní program, pokud má firma vyrobit alespoň o 2 bonboniéry prvního
typu více, než vyrobí druhých bonboniér?
K řešení použijte rovnicový způsob zadávání dat (nepoužívejte @for, @sum).
Příklad 2 – Dopravní problém
Uvažujte standardní vyrovnaný dopravní problém, kdy rozvážíte mouku ze tří mlýnů do tří
pekáren a minimalizujete počet ujetých tunokilometrů. V následující tabulce jsou uvedené
vzdálenosti mezi mlýny a pekárnami. Otázkou je, kolik tun mouky se má přepravit z každého
mlýna do každé pekárny:
Pekárna 1
Pekárna 2
Pekárna 3
Kapacity mlýnů
Mlýn 1
9
3
7
20
Mlýn 2
6
8
4
33
Mlýn 3
8
6
7
37
Požadavky pekáren
35
27
28
90
Vyřešte úlohu v programu LINGO, k zápisu modelu použijte množiny a funkce @sum a
@for.
Příklad 3 – Úloha o dělení materiálu
K dispozici jsou kovové tyče dlouhé 2 metry. Z nich je třeba nařezat 300 tyčí o délce
0,4 metru, dále 175 tyčí o délce 0,6 metru a 75 tyčí s délkou 1,2 metru. Navrhněte takovou
strukturu řezání tyčí, která bude:
a) minimalizovat celkový odpad
b) minimalizovat počet potřebných tyčí o délce 2 metry
Pozn:
1. existuje 6 možných řezných plánů
2. úlohu je třeba řešit celočíselně, k řešení použijte funkce @sum a @for !!!
3. obě úlohy (a, b) řešte v jednom modelu – účelovou funkci, kterou nepoužíváte,
zakomentujte
4EK313, Mgr. Jana Kalčevová, PhD.
1
4EK313 – Programy pro matematické modelování
Cvičení 3
Příklad 4 – Domácí úkol
Je třeba vyrobit novou slitinu, která bude obsahovat 40% cínu, 35% zinku a 25% olova.
K výrobě slitiny těchto vlastností lze využít již hotových slitin A, B, C, D a E, jejichž
vlastnosti (procentuální zastoupení jednotlivých kovů a jednotková cena za kg) jsou uvedeny
v tabulce. Určete pro libovolné množství výsledné slitiny procentuální použití slitin A až E
tak, aby cena výsledné slitiny byla minimální.
obsah v %
Sn
Zn
Pb
cena za 1 kg
A
60
10
30
22
B
25
30
45
20
C
45
45
10
41
D
40
50
10
37
E
50
20
30
27
Data načtěte z Excelu a výsledky uložte opět do souboru MS Excel. Použijte univerzální zápis
pomocí funkcí @sum a @for.
Několik poznámek k softwaru LINGO
1.
2.
3.
4.
5.
6.
7.
8.
Zápis modelu začíná klíčovým slovem MODEL: a končí slovem END
Účelová funkce se vyjadřuje ve tvaru: MIN = 2*x1+5* x2, resp. MAX = 2* x1+5*x2
Pro desetinná čísla se používá desetinná tečka
Jako symbol násobení se používá hvězdička
Vlastní omezení nezačínají žádnou formulí
Každý příkaz končí středníkem
Zbytek řádku za vykřičníkem (!) je komentář
Podmínky nezápornosti jsou uvažovány automaticky, automaticky je také hledáno
řešení, které nemusí být nutně celočíselné
9. Pro celočíselné proměnné používáme @gin(x1)
10. Pro bivalentní proměnné používáme @bin(x1)
11. Pro připuštění záporných proměnných používáme @free(x1)
12. Funkce mají na začátku symbol @
13. Všechny identifikátory mohou mít délku až 32 znaků a nesmí obsahovat mezery
14. LINGO nerozlišuje velká a malá písmena
15. Kód v LINGO má následující strukturu:
a. MODEL:
b. DATA:
c. datová část
d. ENDDATA
e. INIT:
f. inicializační část
g. ENDINIT
h. SETS:
i. definice množin
j. ENDSETS
k. podmínky a účelová funkce v libovolném pořadí, podmínky na proměnné
l. END
4EK313, Mgr. Jana Kalčevová, PhD.
2

Podobné dokumenty

Přiřazovací problémy

Přiřazovací problémy množin. Tentokrát se ale nesnažíme minimalizovat součet, nýbrž nejvyšší hodnotu. Mějme opět tři firmy: F1, F2, F3 a tři projekty P1, P2 a P3. Každá firma může realizovat pouze jeden z projektů. Cíl...

Více

Software pro výuku kvantitativních metod

Software pro výuku kvantitativních metod proměnných a limit pro počet omezujících podmínek je 32000. Jedná se tedy v obou případech o profesionální optimalizační systémy. Pro studenty je na VŠE naopak k dispozici "nejmenší" verze, kde je ...

Více

ZDE

ZDE a) Prof. Fiala sestavil informační materiál o ČSOV pro IFORS. Ten je zařazen do Encyklopedie IFORS o OV, která vychází. b) Prof. Fiala upozornil na dobrou zkušenost s neformálními semináři ČSOV (bo...

Více

Cvičení 10 – Teorie her

Cvičení 10 – Teorie her Příklad 3 – Nekooperativní strategie Nalezněte sedlový bod (či sedlové body) dvojmaticových her s následujícími maticemi:

Více

0 z

0 z • OŘ v intervalu t 1, 2  pro t =1: x(1) = (9, 0, 4, 0)T, z = 480+240.1=720 • Pro t =2 je OŘ v intervalu t 1, 2 : x(2) = (12, 0, 0, 0)T, z = 480+240.2= 960 • Pro t = 3 je řešení v tabulce 10....

Více