Malliratkaisut Demot

Samankaltaiset tiedostot
Harjoitus 3 ( )

Harjoitus 3 ( )

Malliratkaisut Demot

Harjoitus 2 ( )

Harjoitus 2 ( )

Harjoitus 1 ( )

Harjoitus 1 ( )

Malliratkaisut Demot

Malliratkaisut Demot

Malliratkaisut Demot

Harjoitus 6 ( )

Malliratkaisut Demot

Malliratkaisut Demot

Malliratkaisut Demot

Malliratkaisut Demot 6,

Malliratkaisut Demot

Harjoitus 5 ( )

Harjoitus 6 ( )

Demo 1: Branch & Bound

Harjoitus 4 ( )

Demo 1: Simplex-menetelmä

Ratkaisuehdotukset LH 7 / vko 47

Lineaarisen kokonaislukuoptimointitehtävän ratkaiseminen

Lineaarinen optimointitehtävä

Ovatko seuraavat väittämät oikein vai väärin? Perustele vastauksesi.

Malliratkaisut Demo 1

Johdatus verkkoteoriaan 4. luento

Malliratkaisut Demo 4

Harjoitus 5 ( )

Kuljetustehtävä. Materiaalia kuljetetaan m:stä lähtöpaikasta n:ään tarvepaikkaan. Kuljetuskustannukset lähtöpaikasta i tarvepaikkaan j ovat c ij

Malliratkaisut Demot

Algoritmit 1. Luento 8 Ke Timo Männikkö

4. Kokonaislukutehtävän ja LP:n yhteyksiä

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria

Totaalisesti unimodulaariset matriisit voidaan osoittaa olevan rakennettavissa oleellisesti verkkomalleihin liittyvistä matriiseista

1 Kertaus. Lineaarinen optimointitehtävä on muotoa:

Kokonaislukuoptiomointi Leikkaustasomenetelmät

14. Luennon sisältö. Kuljetustehtävä. Verkkoteoria ja optimointi. esimerkki. verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut

Johdatus verkkoteoriaan luento Netspace

Lineaarinen optimointi. Harjoitus 6-7, Olkoon A R m n, x, c R ja b R m. Osoita, että LP-tehtävän. c T x = min!

T : Max-flow / min-cut -ongelmat

Simplex-algoritmi. T Informaatiotekniikan seminaari , Susanna Moisala

Malliratkaisut Demo 4

4.5 Kaksivaiheinen menetelmä simplex algoritmin alustukseen

Mat Lineaarinen ohjelmointi

Matriisit, L20. Laskutoimitukset. Matriisikaavoja. Aiheet. Määritelmiä ja merkintöjä. Laskutoimitukset. Matriisikaavoja. Matriisin transpoosi

Kokonaislukuoptimointi

4. Luennon sisältö. Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

Luento 3: Simplex-menetelmä

Juuri 12 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty

8. Ensimmäisen käyvän kantaratkaisun haku

Kokonaislukuoptimointi hissiryhmän ohjauksessa

MAB3 - Harjoitustehtävien ratkaisut:

MS-A0003/A0005 Matriisilaskenta Malliratkaisut 5 / vko 48

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

Kimppu-suodatus-menetelmä

(0 desimaalia, 2 merkitsevää numeroa).

Malliratkaisut Demot 5,

Matriisit, L20. Laskutoimitukset. Matriisikaavoja. Aiheet. Määritelmiä ja merkintöjä. Laskutoimitukset. Matriisikaavoja. Matriisin transpoosi

v 8 v 9 v 5 C v 3 v 4

Algoritmit 1. Luento 9 Ti Timo Männikkö

Johdatus lukuteoriaan Harjoitus 2 syksy 2008 Eemeli Blåsten. Ratkaisuehdotelma

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

Olkoon seuraavaksi G 2 sellainen tasan n solmua sisältävä suunnattu verkko,

58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto)

Johdatus tekoälyn taustalla olevaan matematiikkaan

Mat Lineaarinen ohjelmointi

Talousmatematiikan perusteet: Luento 11. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

Matriisilaskenta (TFM) MS-A0001 Hakula/Vuojamo Ratkaisut, Viikko 47, 2017

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio

Luento 9: Yhtälörajoitukset optimoinnissa

Matriisit, kertausta. Laskutoimitukset. Matriisikaavoja. Aiheet. Määritelmiä ja merkintöjä. Laskutoimitukset. Matriisikaavoja. Matriisin transpoosi

12. Hessen matriisi. Ääriarvoteoriaa

Matriisi-vektori-kertolasku, lineaariset yhtälöryhmät

8 KANNAT JA ORTOGONAALISUUS. 8.1 Lineaarinen riippumattomuus. Vaasan yliopiston julkaisuja 151

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

a) Sievennä lauseke 1+x , kun x 0jax 1. b) Aseta luvut 2, 5 suuruusjärjestykseen ja perustele vastauksesi. 3 3 ja

PARITUS KAKSIJAKOISESSA

TIEA382 Lineaarinen ja diskreetti optimointi

Numeeriset menetelmät

Derivaatan sovellukset (ääriarvotehtävät ym.)

4 LUKUJONOT JA SUMMAT

Esimerkkejä kokonaislukuoptimointiongelmista

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä.

Markov-ketjut pitkällä aikavälillä

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0.

Kokonaislukuoptimointi

Lineaariavaruudet. Span. Sisätulo. Normi. Matriisinormit. Matriisinormit. aiheita. Aiheet. Reaalinen lineaariavaruus. Span. Sisätulo.

2 Osittaisderivaattojen sovelluksia

OPERAATIOANALYYSI ORMS.1020

Mat Lineaarinen ohjelmointi

Johdatus verkkoteoriaan luento Netspace

Koska ovat negatiiviset. Keskihajontoja ei pystytä laskemaan mutta pätee ¾.

58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, , vastauksia

Trimmitysongelman LP-relaksaation ratkaiseminen sarakkeita generoivalla algoritmilla ja brute-force-menetelmällä

Osakesalkun optimointi

Lineaarialgebra II, MATH.1240 Matti laaksonen, Lassi Lilleberg

Transkriptio:

Malliratkaisut Demot 3 7.3.07 Tehtävä Olkoon tilamuuttujat Tällöin saadaan rekursioyhtälö f n (x n ) = max yn {0,} ynwn xn f 0 ( ) = 0. x n = vaiheessa n jäljellä oleva paino, n =,...,N, esine n pakataan y n = 0, esinettä n ei pakata. {y n u n +f n (x n y n w n )}, 0 x n W, n =,...,N Lasketaan sovelluksena tapaus, jossa W = 7 ja N = 4. Seuraavissa taulukoissa kussakin vaiheessa n toinen ja kolmas sarake esittävät lausekkeen y n u n +f n (x n y n w n ) arvoja y:n arvoilla 0 ja. Neljäs ja viides sarake esittävät yhtälöistä () lakettua f:n lauseketta sekä sitä y:n arvoa jolla lauseke y n u n +f n (x n y n w n ) saavuttaa maksiminsa. Otetaan käyttöön myös merkintä x n = x n y n w n. Vaiheessa n = saadaan taulukko Vaiheessa n = saadaan taulukko x y = 0 y = f (x ) y (x ) 0 0 0 0 0 0 0 0 0 0 3 0 0 0 4 0 40 40 0 40 40 6 0 40 40 7 0 40 40 x y = 0 y = f (x ) y (x ) 0 0+0 0 0 0+0 0 0 0+0 +0 3 0+0 +0 4 0+40 +0 40 0 0+40 +0 40 0 6 0+40 +40 7 0+40 +40 ()

Vaiheessa n = 3 saadaan taulukko Vaiheessa n = 4 saadaan taulukko x 3 y 3 = 0 y 3 = f 3 (x 3 ) y 3 (x 3 ) 0 0+0 0 0 0+0 0 0 0+ 0 3 0+ 0+0 0 4 0+40 0+0 40 0 0+40 0+ 40 0 6 0+ 0+ 0 7 0+ 0+40 60 x 4 y 4 = 0 y 4 = f 4 (x 4 ) y 4 (x 4 ) 0 0+0 0 0 0+0 0+0 0 0+ 0+0 0 3 0+0 0+ 4 0+40 0+0 40 0 0+40 0+40 0 6 0+ 0+40 0 7 0+60 0+ 6 Vaiheessa 4 taulukosta nähdään, että suurimmalla sallitulla yhteispainolla W = 7 päätösmuuttujan y 4 arvoksi tulee. Tästä voidaan laskea x 3 :n arvon rekursiokaavalla x 3 = x 4 y 4 w 4. Tätä muuttujan x 3 arvoa voidaan taas käyttää päätösmuuttujan y 3 määrittämiseen vaiheen n = 3 taulukosta. Näin jatkamalla rekursioketjun kulkemista takaperin vaiheeseen n = saadaan y 4 (7) =, x 3 = x 4 y 4 w 4 = 7 = 6 y 3 (6) = 0, x = x 3 y 3 w 3 = 6 0 3 = 6 y (6) =, x = x y w = 6 = 4 y (4) =. Ratkaisu on siis, että kannattaa valita esineet, ja 4, jolloin niistä saatava kokonaishyöty on 6.

Tehtävä i... t s cij j... Kuva : Tehtävän graafi Olkoon kaaren paino c ij 0 suurin sallittu kuorman korkeus tieosuudella (i,j). Etsitään reitti P solmusta s solmuun t siten, että reitin suurin sallittu korkeus pienimmillään olisi mahdollisimman suuri. Kohdefunktioksi saadaan nyt max P min {c ij}, (i,j) P missä käydään läpi kaikki reitit P solmusta s solmuun t. Olkoon y n = suurin sallittu korkeus solmusta s solmuun n. Dynaamisen optimoinnin rekursioyhtälöt ovat y = (solmu s) y j = max i (i,j) E {min {c ij,y i }}, j =,...,t. Tehtävän ratkaisemiseksi tarvittava algoritmi on seuraava: Modifioitu Dijkstran algoritmi Askel 0. Kun lähtösolmu on s, asetetaan, jos i = s v[i] = 0, jos i s. Merkitään kaikkien solmujen korkeudet väliaikaisiksi ja kiinnitetään seuraavaksi solmun p s korkeus. Askel. Merkitään solmu p kiinnitetyksi ja jokaiselle siitä kiinnittämättömään solmuun i lähtevälle kaarelle (p,i) päivitetään suurin sallittu korkeus v[i] max {v[i],min {v[p],c pi }}. Jos v[i]:n arvo muuttui, niin asetetaan d[i] p. 3

Askel. Lopetetaan jos väliaikaisia solmuja ei enää ole. Arvot v[i] ovat suurimmat sallitut korkeudet solmuun i. Askel 3. Kiinnitetään seuraavaksi solmu p, jonka väliaikainen suurin sallittu korkeus on suurin eli v[p] = max{v[i] i väliaikainen} ja palataan Askeleeseen. Tehtävä 3 Muotoillaan demojen tehtävä nopeimman reitin ongelma minimikustannusvirtausongelmaksi suunnatulla verkolla. Kuvaan on piirretty kyseinen graafi, jossa Turku on (tarjonta ), Jyväskylä on (kysyntä ) ja muut solmut ovat kauttakulkusolmuja. Eli nuolet jotka tulevat Turkuun tai lähtevät Jyväskylästä voidaan jättää huomioimatta. Turku, 4, Tampere, 4,, Jyväskylä,, Hämeenlinna Imatra Kuva : Tehtävän 3 graafi Olkoon x ij virtaus nuolella (i,j). Silloin saadaan optimointitehtävä min x +4x 3 +x 3 +x 3 +x +x 34 +x 43 +4x 3 +x 4 s.t. x +x 3 = x 3 +x x x 3 = 0 x 3 +x 34 +x 3 x 3 x 3 x 43 = 0 x 4 +x 43 x 34 = 0 x x 3 x 4 = x ij 0, (i,j) E. () 4

Tehtävää vastaava insidenssimatriisi on solmu (,) (,3) (,3) (3,) (,) (3,4) (4,3) (3,) (4,) + + 0 0 0 0 0 0 0 0 + + 0 0 0 0 3 0 + 0 + + 0 4 0 0 0 0 0 + 0 + 0 0 0 0 0 0 Koska virtausten ylärajat u ij = kaikilla nuolilla (i,j) ja vektorin b = (,0,0,0, ) komponentit ovat kokonaislukuja, niin tehtävällä on kokonaislukuratkaisu. Tämä seuraa luentomonisteen kohdassa.4 esitetyistä perusteluista (ottaen huomioon että u ij = ). Vaihtoehtoinen perustelu sille että tehtävällä on kokonaislukuratkaisu olisi että insidenssimatriisi on unimodulaarinen ja vektorin b komponentit ovat kokonaislukuja. Kuten luentomonisteessa on todettu, tästä seuraa että Simplex-algoritmin tuottamat ratkaisut ovat kokonaislukuja. Tehtävä 4 Ratkaistaan edellisen tehtävän optimointiongelma () kaksivaihemenetelmällä käyttäen luentomonisteen algoritmia.. Lähdetään ratkaisemaan tehtävää käyttäen alkuarvausta x 0 = (0,0,0,0,0,0,0,0,0). Alkuarvaus ei ole sallittu, koska ensimmäinen ja viimeinen rajoiteyhtälö ei toteudu. Tästä johtuen muodostetaan edellisen tehtävän optimointiongelmasta aputehtävä lisäämällä apumuuuttujat x 0 ja x 0. Aputehtävää vastaavassa graafis- 0,, Kuva 3: Aputehtävän 4 graafi sa (kuva 3) on lisätty ylimääräinen 0-solmu, johon on nuoli solmusta ja nuoli solmuun, ja kummankin nuolen paino on. Alkuperäisen optimointiongelman nuolia vastaaville

nuolille asetetaan paino 0. Aputehtäväksi saadaan min x 0 +x 0 s.t. x +x 3 +x 0 = x 3 +x x x 3 = 0 x 3 +x 34 +x 3 x 3 x 3 x 43 = 0 x 4 +x 43 x 34 = 0 (3) x x 3 x 4 x 0 = x 0 x 0 = 0 x ij 0, (i,j) Ẽ, missä Ẽ tarkoittaa kuvan 3 graafin nuolijoukkoa. Koska luentomonisteen algoritmissa. optimoidaan vektorimuuttujan suhteen, otetaan käyttöön vektorin x, jonka alkiot vastaavat optimointiongelmissa () ja (3) esiintyviä kaksi-indeksisiä muuttujia taulukon mukaisesti. x x 3 x 3 x 3 x x 34 x 43 x 3 x 4 x 0 x 0 x x x 3 x 4 x x 6 x 7 x 8 x 9 x 0 x Vaihe I Vaiheessa I ratkaitaan aputehtävä (3), josta saadaan sallittu alkuvirtaus varsinaiselle optimointiongelmalle. Merkitään aputehtävästä haettavaa virtausta muuttujalla x. Luentomonisteen algoritmi. sovellettuna aputehtävään antaa: Askel 0. Koska virtaus x 0 = (0,0,0,0,0,0,0,0,0,,) on selvästi sallittu, valitaan se aloitusvirtaukseksi. Aloitusvirtaus on myös piirretty kuvaan 3. Askel. Nykyisellä ratkaisulla on sallittu parantava lenkki, joten ei voida lopettaa. 0 Kuva 4: Vaiheen I sallittu parantava lenkki 6

Askel. Sallittu parantava lenkki on 0 ja sitä vastaa suunta x = (,0,0,0,,0,0,0,0,, ). Suunta x on sallittu, koska lenkin suuntaisilla nuolilla (,) ja (,) virtaukset x = x = 0 < ovat alle kapasiteetin ja lenkkiä vastakkaisilla nuolilla (0,) ja (,0) virtaukset x 0 = x 0 = > 0. Suunta on myös parantava, sillä tehtävän (3) kohdefunktiolle c(x) = x 0 +x 0 saadaan c( x) = =. Askel 3. Käyttäen luentomonisteen sivun 46 kaavoja saadaan λ + = min{, min{ 0, 0}} = λ = min{, min{,}} = ja askelpituudeksi tulee λ = min{λ +,λ } = min{, } =. Askel 4. Päivitetään virtaus kaavalla x = x 0 +λ x, jolloin saadaan x = (,0,0,0,,0,0,0,0,0,0). 0,, Kuva : Vaiheen I lopetustilanne Algoritmin. suoritus voidaan päättää vaiheessa I ensimmäisen iteraation jälkeen, koska apumuuttujia x 0 ja x 0 vastaavat vektorin x komponentit ovat nollia. Vertaamalla optimointitehtävien () ja (3) rajoitteita havaitaan, että vektorista x saatu vektori x 0 = (,0,0,0,,0,0,0,0) on vaiheen II optimointitehtävän () sallittu aloitusvirtaus. Tämä tieto tarvitaan vaiheessa II. Vaihe II Vaiheessa II ratkaitaan optimointitehtävä () käyttäen vaiheesta I saatua aloitusvirtausta. Luentomonisteen algoritmi. sovellettuna tehtävään antaa: Askel 0. Aloitusvirtaukseksi valitaan vaiheessa I saatu x 0 = (,0,0,0,,0,0,0,0). 7

Askel. Nykyisellä ratkaisulla on sallittu parantava lenkki, joten ei voida lopettaa., 4,, 4,,,, Kuva 6: Vaiheen II aloitustilanne Askel. Sallittu parantava lenkki on esim. 3 4 ja sitä vastaa suunta x = (0,0,,0,,,0,0,). Suunta x on sallittu, koska lenkin suuntaisilla nuolilla (,3), (3,4) ja (4,) nykyiset virtaukset x 3 = x 34 = x 4 = 0 ovat alle kapasiteetin, joka on, ja lenkkiä vastakkaisella nuolella (, ) virtaus x = > 0. Suunta on myös parantava, sillä kohdefunktiolle c(x) = x +4x 3 +x 3 +x 3 +x +x 34 +x 43 +4x 3 +x 4 = x +4x +x 3 +x 4 +x +x 6 +x 7 +4x 8 +x 9 saadaan c( x) = ++ =. Kuva 7: Vaiheen II sallittu parantava lenkki Askel 3. Käyttäen luentomonisteen sivun 46 kaavoja saadaan λ + = min{, min{ 0, 0, 0}} = λ = min{, min{}} = ja askelpituudeksi tulee λ = min{λ +,λ } = min{, } =. Askel 4. Päivitetään virtaus kaavalla x = x 0 +λ x, jolloin saadaan x = (,0,,0,0,,0,0,). 8

Algoritmin. suoritus voidaan päättää vaiheessa II ensimmäisen iteraation jälkeen, koska enää ei löydy sallittua parantavaa lenkkiä. Näin ollen ratkaisuksi saadaan x = (,0,,0,0,,0,0,). Alkuperäisen optimointitehtävän kaksi-indeksisillä merkinnöillä tämä voidaan kirjoittaa muotoon x = x 3 = x 34 = x 4 = ja x 3 = x 3 = x = x 43 = x 3 = 0. Kohdefunktion arvo on 6. Kuva 8: Tehtävän 4 optimiratkaisu Tehtävä Tietokoneiden tarjonta Oulussa ja Lappeenrannassa on kummassakin 00 konetta sekä kysyntä Turussa 300 ja Helsingissä 400 konetta. Annetaan kaupungeille numerot: = Oulu, = Lappeenranta, 3 = Jyväskylä, 4 = Turku, = Helsinki. Muodostetaan minimikustannusvirtausongelma (ks. luentomoniste s. 4) Solmut ja ovat lähteitä, joiden nettotarjonta on 00. Solmu 3 on kauttakulkusolmu, ja solmut 4 ja ovat ja. Koska osa tuotannosta jää yli, muodostetaan myös, jonka kysynnäksi asetetaan 00+00 300 400 = 300 konetta ja jolle annetaan numeroksi 6. Kuva 9 esittää näillä tiedoilla piirrettyä graafia, jonka nuolten painoissa on huomioitu sekä kuljetus- että yksikkötuotantokustannukset. Olkoon x ij virtauksen määrä nuolta (i,j) pitkin. Saadaan optimointitehtävä min 00x 4 +080x +880x 3 +000x 3 +040x 4 +90x +40x 34 +0x 3 +800x 6 +900x 6 s.t. x 4 +x +x 3 +x 6 = 00 x 6 +x 3 +x 4 +x = 00 x 3 x 3 +x 34 +x 3 = 0 x 4 x 34 x 4 = 300 x x 3 x = 400 x 6 x 6 = 300 x ij 0, (i,j) E. 9

300 Ö,6 00 00 880, 000, O, J,3 L, 00, 0, 300 40, T,4 H, 90, 400 080, 040, Kuva 9: Tehtävän minimikustannusvirtausongelman graafi Jos Jyväskylän kautta voidaan kuljettaa korkeintaan 00 tietokonetta, niin muutetaan tehtävää jakamalla Jyväskylää kuvaava solmu 3 solmuiksi 3A ja 3B. Näistä ensimmäiseen suunnataan Jyväskylään tulevat nuolet ja jälkimmäisestä laitetaan lähtemään Jyväskylästä lähtevät nuolet. Solmusta 3A solmuun 3B lisätään vielä nuoli, jonka paino on 0, ja virtauksen ylärajaksi nuolelle asetetaan u 3A,3B = 00, eli rajoite 0 x 3A,3B 00. Tilannetta on havainnollistettu kuvassa 0. O, 880, J,3A 000, L, 0,00 J,3B 40, 0, T,4 H, Kuva 0: Tehtävän graafin muutokset, kun kuljetusta Jyväskylän kautta rajoitetaan 0

Tehtävä 6 Muotoillaan annetuista tiedoista kuljetusongelma. Lähteitä ovat ostetut liinat sekä päivinä i (i =,..., 4) käytetyt ja pestyt liinat. Nieluja puolestaan ovat liinojen tarpeet päivinä i (i =,..., ). Tehtävässä annetuista tiedoista saadaan taulukko. päivä. päivä 3. päivä 4. päivä. päivä ylimääräiset tarjonta ostetut 0 730. pv pestyt M,,,, 0 0. pv pestyt M M,,, 0 0 3. pv pestyt M M M,, 0 90 4. pv pestyt M M M M, 0 0 kysyntä 0 0 90 0 00 630 Ostettavien liinojen tarjonta on saatu laskemalla 0+0+90+0+00= 730. Ylläolevassa taulukossa on myös sarake ylimääräiset ylijäämäliinoja varten. Koska varastoon ei osteta liinoja ja kaikki saatavilla olevat liinat käytetään, tähän sarakkeeseen tulevat luvut ovat viimeistä riviä lukuunottamatta nollia. Ylimääräiset-sarakkeen viimeiselle riville tulee sen n tarve, jonne ohjataan kokonaistarjonnasta ylijäävä osa, kun kokonaistarjonnasta on vähennetty kokonaiskysyntä. Kyseinen luku 630 on siis saaatu vähentämällä tarjontojen (oikea sarake) summasta, joka on 360, kysyntöjen (alin rivi) summa päiviltä.-., joka on 730. Ylläolevassa taulukossa olevat luvut ovat kustannuksia, alarivillä olevat luvut ovat jen tarpeet, ja oikeanpuoleisessa sarakkeessa olevat luvut ovat lähteiden tarjonnat. Kun merkitään näitä muuttujilla c ij, d j ja s i, missä i =,,..., ja j =,,...,6, ylläolevasta taulukosta saadaan optimointitehtävä, joka on samaa muotoa kuin luentomonisteen sivulla esitetty.