N-institutionen Rolf Källström 026-64 82 75 Prov i matematik ...
N-institutionen Rolf Källström 026-64 82 75 Prov i matematik ...
N-institutionen Rolf Källström 026-64 82 75 Prov i matematik ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
N-<strong>institutionen</strong><br />
<strong>Rolf</strong> <strong>Källström</strong><br />
<strong>026</strong>-<strong>64</strong> <strong>82</strong> <strong>75</strong><br />
<strong>Prov</strong> i <strong>matematik</strong><br />
Ingenjörsprogrammet<br />
Optimeringslära<br />
3mi05a<br />
2002–02–26<br />
Skrivtid: 8.30–13.30. Lösningarna skall vara noggrant motiverade och prydligt nedskrivna<br />
och det skall klart framg˚a att en systematisk metod används. Inga hjälpmedel. För godkänt<br />
krävs minst 13 poäng (betyg 3), för betyg 4 krävs 17 poäng och för betyg 5 krävs 21 poäng.<br />
Det maximala antalet poäng är angivet i parentes efter varje uppgift.<br />
1. Det kända multinationella bolaget ABC tillverkar och säljer tre slags genereratorer (sk<br />
moneyformers). Den första behöver 2 bindningar, den andra 4 bindningar och den tredje<br />
5 bindingar. De tv˚a första generatorerna behöver även varsin spole. Tillg˚angen p˚a bindningar<br />
är 200000 och tillg˚angen p˚a spolar är 48000 per ˚ar. P˚a grund av att installationen är<br />
komplicerad inser man efter en marknadsundersökning att efterfr˚agan p˚a den tredje sortens<br />
generator är begränsad till 6000 per ˚ar. Vinsten för varje s˚ald generator är 1000, 2100 och<br />
2605 kronor, respektive, per ˚ar. ABC:s koncernchef har förhandlat med sin kompis styrelseordföranden<br />
och f˚ar en lön som delvist är prestationsbaserad, genom att det utg˚ar bonus<br />
p˚a 100, 500 och 700 kronor, respektive, för varje s˚ald generator. Men styrelseordföranden<br />
anser i alla fall att bonusen inte bör överg˚a 25 miljoner per ˚ar (eftersom den förväntade<br />
˚arsavkastning p˚a hans egna ABC-aktier knappast blir större än s˚a).<br />
(a) Ställ upp LP-problemet för att maximera vinsten. (2 p.)<br />
(b) Har styrelseordföranden gett chefen villkor som medför produktionsbegränsningar,<br />
dvs medför övriga produktionsbegränsningar automatiskt att bonusniv˚an h˚aller sig<br />
inom gränsen? Förenkla genom att bortse fr˚an eventuella positivitetsvillkor och om<br />
bonusvillkoret är aktivt i optimum, men motivera noga! (3 p.)<br />
2. Vi har tv˚a beslutsvariabler x1, x2 som beskriver antal producerade enheter av produkt 1<br />
och 2; de genererar 3, respektive 2 kronor i vinst per enhet.<br />
Produktionsbetingelserna ger följande LP-problem:<br />
max z = 3x1 + 2x2<br />
⎧<br />
2x1 + x2 ≤ 100 (maximerad tids˚atg˚ang)<br />
⎪⎨<br />
x1 + x2 ≤ 80 (begränsning p˚a r˚avara)<br />
x1 ≤ 40 (efterfr˚agebegränsning)<br />
⎪⎩<br />
x1, x2 ≥ 0<br />
Efter tillägg av slackvariabler s1, s2, s3 f˚ar man en optimal simplextabl˚a enligt följande<br />
tabell:<br />
z x1 x2 s1 s2 s3 HL<br />
0 1 0 1 -1 0 20<br />
0 0 1 -1 2 0 60<br />
0 0 0 -1 1 1 20<br />
1 0 0 1 1 0 180
(a) För vilka vinster per enhet som produceras av första produkten förblir innevarande<br />
val av basvariabler optimal? Om vinst per producerad enhet av första produkten är<br />
3.50 kronor, vad blir d˚a den nya optimala lösningen? (3 p.)<br />
(b) För vilket intervall i tids˚atg˚ang och intervall i efterfr˚agan förblir valet av basvariabler<br />
optimal? Ange för dessa intervall hur vinsten p˚averkas av tids˚atg˚angen och efterfr˚agan.<br />
(3 p.)<br />
3. Vi befinner oss i den idylliska socken Klockarberget som best˚ar av 6 sm˚a byar som är<br />
förenade p˚a med pittoreska grusvägar enligt följande tabell (enheten är först˚as fjärdingsväg=<br />
1/2 gammal svensk mil= 2672 meter):<br />
Urby Visarby Slagby Tickby Timby Ringby<br />
Urby 0 24 - - - 28<br />
Visarby 24 0 11 - - -<br />
Slagby - 11 0 13 - -<br />
Tickby - - 13 0 20 12<br />
Timby - - - 20 0 15<br />
Ringby 28 - - 12 15 0<br />
Ett - -tecken innebär att det inte finns n˚agon direktväg mellan byarna.<br />
(a) Man vill förbinda byarna med bredband till en central uppkoppling i n˚agon av byarna.<br />
Av praktiska skäl vill man bara gräva längs befintliga grusvägar. Ange ett förslag p˚a<br />
ihopkoppling av byarna som ger minsta ˚atg˚angen av bredbandsfiber. (Rita grafer.)<br />
(2 p.)<br />
(b) Rikskabeln kommer fram i Slagby. Därför kan det vara bra att veta kortaste avst˚andet<br />
fr˚an Slagby till alla övriga byar i Klockarberget. Bestäm dessa avst˚and med Dijkstras<br />
algoritm. (3 p.)<br />
4. Visa att du behärskar Branch and Bound (trädsökning) för heltalsprogrammering genom<br />
att använda denna teknik för att lösa följande problem:<br />
max 3x1 + 2x2<br />
⎧<br />
4x1 − 2x2 ≤ 13<br />
⎪⎨<br />
−2x1 + 4x2 ≤ 7<br />
4x1 + 2x2 ≤ 21<br />
⎪⎩<br />
x1 och x2 heltal ≥ 0.<br />
De LP-problem som uppkommer f˚ar du lösa grafiskt om du ritar en noggrann figur och<br />
förklarar vad du gör. (5 p.)<br />
2
5. Använd dynamisk programmering för att hitta kortaste vägen fr˚an S till M i figuren nedan.<br />
Siffrorna betecknar avst˚and.<br />
S<br />
3<br />
6<br />
1<br />
12<br />
8<br />
13<br />
16<br />
14<br />
7<br />
7<br />
3<br />
7<br />
4<br />
3<br />
7<br />
2<br />
1<br />
6<br />
5<br />
4<br />
7<br />
4<br />
3<br />
7<br />
4<br />
12<br />
3<br />
2<br />
8<br />
7<br />
5<br />
M<br />
(5 p.)
Lösningar till tentamen i Optimeringslära, 2002–02–26.<br />
1. Beslutsvariablerna x1, x2, x3 är antalet s˚alda geratorer av typ 1,2,3, respektive. LP-problemet<br />
blir (man kan drag bort bonusdelen fr˚an vinsten; detta är en tolkningsfr˚aga s˚a inget avdrag görs<br />
om bonus är fr˚andraget fr˚an vinsten)<br />
max z = 1000x1 + 2100x2 + 2605x3<br />
⎧<br />
2x1 + 4x2 + 5x3 ≤ 200 000 (tillg˚ang p˚a bindningar)<br />
⎪⎨ x2 + x3 ≤ 48 000 (tillg˚ang p˚a spolar)<br />
x3 ≤ 6 000 (efterfr˚agebegränsning p˚a tredje typen)<br />
0.1x1 + 0.5x2 + 0.7x3 ≤ 25000 (bonusprogrammet)<br />
⎪⎩<br />
x1, x2, x3 ≥ 0<br />
Vi skall avgöra om villkoret fr˚an bonusprogrammet automatiskt är uppfyllt om de tre första<br />
produktions- och marknadsbivillkoren är uppfyllda. Vi för samman de tre första bivillkoren och<br />
skriver detta Ax ≤ b och ignorerar positivitetsvillkoren x1, x2, x3 ≥ 0.<br />
Bonustaket skriver vi c T x ≤ d. Om Ax ≤ b ⇒ c T x ≤ d, s˚a är ju bonustaket betydelselös för<br />
antalet producerade generatorer, vilket skulle innebära att styrelseordföranden inte har gett en<br />
bonus som är produktionsbegränsande. Vi skall allts˚a avgöra om polyedern<br />
<br />
Ax ≤ b<br />
c T x > d<br />
är tom. Enligt Farkas lemma saknas punkter i denna polyeder om och endast om det duala<br />
problemet<br />
⎧<br />
⎪⎨ A<br />
⎪⎩<br />
T y = c<br />
yT b ≤ d<br />
y ≥ 0.<br />
har en lösning. Utskrivet blir detta<br />
⎧<br />
⎪⎨ 2y1 = 0.1<br />
4y1 + y2 = 0.5<br />
⎪⎩<br />
5y1 + y2 + y3 = 0.7<br />
⎧<br />
⎪⎨ y1 = 0.05<br />
⇐⇒ y2 = 0.3<br />
⎪⎩<br />
y3 = 0.15<br />
s˚a alla duala värden är ≥ 0 men vi f˚ar yb = 35300 vilket ju är ≥ 25 000. Det duala problemet saknar<br />
s˚aledes en lösning vilket visar att v˚ar polyeder inte är tom. Alla koefficienter i bivillkoren är<br />
≥ 0 finns det i respektive halvrum punkter i första oktanten, varför skärning av dessa halvrum<br />
ocks˚a inneh˚aller punkter ur första oktanten (Detta argument krävs inte). Allts˚a begränsar<br />
bonusprogrammet produktionen varför man kan anse att bonusvillkoren är för generösa (rent geometriskt<br />
allts˚a, alldeles bortsett fr˚an vad man fn i övrigt anser är rimligt, om det är amerikanska<br />
eller euorepeiska chefsförm˚aner). Beräkning med Maple ger xˆx1 = 2000, ˆx2 = 44000, ˆx3 = 4000.<br />
Det ger slack i i bonusvillkoret 25000 − 5200 > 0, s˚a villkoret är inte aktivt, varför det inte<br />
begränsar produktionen för maximal vinst (dock p˚averkas vinsten).<br />
2. Vi ser att x T B = (x1 x2 s3) är basvariabler i optimum. Därför är c T N = (0 0), cT B =<br />
⎛<br />
(3 2 0), AN = ⎝<br />
1 0<br />
1 0<br />
0 0<br />
⎞<br />
⎛<br />
⎠, AB = ⎝<br />
2 1 0<br />
1 1 0<br />
1 0 1<br />
⎞<br />
⎠. Optimal duallösning ˆy T = c T B A−1<br />
B<br />
läses av<br />
fr˚an sista raden i tabl˚an. Vi ser att ˆy1 = 1, ˆy2 = 1 och eftersom det sista villkoret inte är
indande ger komplementaritetssatsen att ˆy3 = 0. Vi behöver även A −1<br />
B AN =<br />
(kolonnerna i tabl˚an som hör till ickebasvariablerna s1, s2) och A −1<br />
B =<br />
⎛<br />
⎝<br />
⎛<br />
⎝<br />
1 −1 0<br />
−1 2 0<br />
−1 1 1<br />
1 −1<br />
−1 2<br />
−1 1<br />
Villkoren för optimum är ˆxB = A −1<br />
B b ≥ 0 samt ¯cT N = cT N − cT BA−1 B AN ≤ 0 (reducerad kostnad<br />
definierad med motsatt tecken jämfört med Winston).<br />
(a) Sätt cT B = (c1<br />
⎛ ⎞<br />
1 −1<br />
2 0). Kravet för optimum är d˚a (0 0) − (c1 1 0) ⎝ −1 2 ⎠ ≥ 0,<br />
−1 0<br />
dvs c1 − 2 ≥ 0, −c1 + 4 ≥ 0, 2 ≤ c1 ≤ 4 . Om nu c1 = 3.50 s˚a ändras inte optimala<br />
lösningen, ˆx1 = 20, ˆx2 = 60 .<br />
(b) Om högerledet sätts bT = (b1 80 b2) s˚a blir villkoret för att innevarande val av basvariabler<br />
inte behöver ändras att A −1<br />
⎛<br />
⎞<br />
1 −1 0<br />
B b ≥ 0. Dvs ⎝ −1<br />
−1<br />
2<br />
1<br />
0 ⎠ (b1<br />
1<br />
80 b2) T ≥ 0, dvs<br />
b1 − 80 ≥ 0, −b1 + 160 ≥ 0, −b1 + 80 + b2 ≥ 0, dvs 80 ≤ b1 ≤ 160, b2 ≥ b1 − 80.<br />
3. (a) Graf med avst˚ander ges av<br />
28<br />
1<br />
6<br />
24<br />
15<br />
2<br />
12<br />
5<br />
Ett minimalt uppspännande träd f˚as genom att starta med en godtycklig nod, tag sedan<br />
den nod i resten av grafen som är närmast, därefter den nod som ligger närmast den del av<br />
5<br />
11<br />
20<br />
3<br />
4<br />
13<br />
⎞<br />
⎠<br />
⎞<br />
⎠
trädet som är konstruerad. Det finns flera minimala uppspännande träd. Om man börjar<br />
med nod 1 f˚ar man trädet<br />
Totala längden blir <strong>75</strong> fjärdingsvägar.<br />
24 11 13 12 15<br />
1 2 3 4<br />
6 5<br />
(b) Vi numrerar noderna i den ordning som anges i tabellen. Dijkstras algoritm ger följande<br />
iterationer<br />
Iterationsomg˚ang<br />
By (1) (2) (3) (4) (5)<br />
1 ∞ 35 35 35 35<br />
2 11 11* 11* 11* 11*<br />
3 0* 0* 0* 0* 0*<br />
4 13 12 13* 13* 13*<br />
5 ∞ ∞ 33 33 33*<br />
6 ∞ ∞ 25 25* 25*<br />
I sista kolumnen är alla utom en nod permanent markerad med ∗ varför den kolumnen ger<br />
avst˚andet fr˚an Slagby till alla övriga byar.<br />
4. Om man släpper p˚a heltralskraven s˚a blir den optimala LP-lösningen<br />
x1 = 3.5, x2 = 3.5 och z = 17.5<br />
Vi separerar (t ex) först p˚a x1 och f˚ar d˚a ett sökträd, där numreringen av delproblemen är i<br />
samma ordning som problemen genereras.<br />
P1(x1 ≤ 3) : x1 = 3, x2 = 3.25, z = 15.5 ∗<br />
P2(x1 ≥ 4) : x1 = 4, x2 = 2.5, z = 17<br />
P3(x2 ≤ 2) : x1 = 4.25, x2 = 2, z = 16.<strong>75</strong><br />
P4(x2 ≥ 3) : otill˚atet LP-problem. ∗<br />
P5(x1 ≤ 4) : x1 = 4, x2 = 2, z = 16 ∗<br />
P6(x1 ≥ 5) : otill˚atet LP-problem. ∗<br />
P4, P6 är uttömda pga att de saknar till˚atna punkter. Därmed saknar de även till˚atna<br />
heltalspunkter. P5 är uttömt pga att LP-lösningen är heltalig. P1 är uttömt pga att z-värdet<br />
för LP-lösningen är sämre än z-värdet för den till˚atna heltalslösningen i P5. Optimal lösning är<br />
x1 = 4, x2 = 2, z = 16 i P5<br />
5. Jag ger ingen fullständig lösning. Svaret är 20 l enh, vägen är, med angivand av avst˚and,<br />
S-1-8-6-3-2-M.<br />
6