Projektiportfolion valinta Mat-2.4142 Optimointiopin seminaari kevät 2011 Kotitehtävän 1 ratkaisu
Kotitehtävä Kirkwood, G. W., 1997. Strategic Decision Making: Multiobjective Decision Analysis with Spreadsheets, Duxbury Press, Wadsworth Publishing Company, pp. 224-226. Tehtävien 8.3 ja 8.4 perusteella. Ohjelmistoyrityksellä on 9100 tuntia käytettävissä seuraavana vuonna uusien projektien toteuttamiseen. Valinta tehdään 14 projektista, joihin kuluvat ajat ja joista saatavat hyödyt tunnetaan.
Projekti Hyöty Aika 1 0,08 200 2 0,2 750 3 0,19 400 4 0,21 1000 5 0,27 1500 6 0,15 600 7 0,37 2500 8 0,44 3000 9 0,4 2700 10 0,32 350 11 0,5 4000 12 0,51 4200 13 0,45 2700 14 0,76 4500 Mitkä projekteista valitaan hyötykustannusanalyysin perusteella? Oletetaan projektit riippumattomiksi niistä saatavien hyötyjen ja niihin käytettävien aikojen suhteen!
Projekti Hyöty Aika Hyöty/ Kustannus 1 0,08 200 40,00 2 0,2 750 26,67 3 0,19 400 47,50 4 0,21 1000 21,00 5 0,27 1500 18,00 6 0,15 600 25,00 7 0,37 2500 14,80 8 0,44 3000 14,67 9 0,4 2700 14,81 10 0,32 350 91,43 11 0,5 4000 12,50 12 0,51 4200 12,14 13 0,45 2700 16,67 14 0,76 4500 16,89 Lasketaan hyöty jaettuna ajalla (eli kustannuksella) sekä skaalataan 100 000:lla 0,27 1500 b i c i 100000 = 18,00
Projekti Hyöty Aika Hyöty/Aika Kum. Hyöty Kum.aika 10 0,32 350 91,429 0,32 350 3 0,19 400 47,500 0,51 750 1 0,08 200 40,000 0,59 950 2 0,2 750 26,667 0,79 1 700 6 0,15 600 25,000 0,94 2 300 4 0,21 1000 21,000 1,15 3 300 5 0,27 1500 18,000 1,42 4 800 14 0,76 4500 16,889 2,18 9 300 13 0,45 2700 16,667 2,63 1 2 00 9 0,4 2700 14,815 3,03 14 700 7 0,37 2500 14,800 3,4 17 200 8 0,44 3000 14,667 3,84 20 200 11 0,5 4000 12,500 4,34 24 200 12 0,51 4200 12,143 4,85 28 400 esim. 0,51 + 0,08 Järjestetään projektit hyöty/kustannus -suhteen mukaan suurimmasta pienimpään ja lasketaan kumulatiivinen hyöty ja aika
Projekti Hyöty Aika Hyöty/Aika Kum. Hyöty Kum.aika Valitaanko projekti? 10 0,32 350 91,429 0,32 350 Kyllä 3 0,19 400 47,500 0,51 750 Kyllä 1 0,08 200 40,000 0,59 950 Kyllä 2 0,2 750 26,667 0,79 1 700 Kyllä 6 0,15 600 25,000 0,94 2 300 Kyllä 4 0,21 1000 21,000 1,15 3 300 Kyllä 5 0,27 1500 18,000 1,42 4 800 Kyllä 14 0,76 4500 16,889 2,18 9 300 Ei 13 0,45 2700 16,667 2,63 1 2 00 Ei 9 0,4 2700 14,815 3,03 14 700 Ei 7 0,37 2500 14,800 3,4 17 200 Ei 8 0,44 3000 14,667 3,84 20 200 Ei 11 0,5 4000 12,500 4,34 24 200 Ei 12 0,51 4200 12,143 4,85 28 400 Ei Valitaan projekteja, kunnes budjettirajoite on täynnä! Kätevä tehdä esim. if-komennolla: =JOS(L12>9100;"ei";"kyllä")
Ratkaisu Valittiin siis projektit 1, 2, 3, 4, 5, 6 ja 10. Kokonaishyödyksi saatiin 1,42 ja budjetista käytetiin 4800 tuntia. Vertailun vuoksi: Käyttämällä matemaattista optimointia (seuraava kalvo) valittaisiin projektit 2, 3, 4, 5, 6, 10 ja 14, jolloin koko budjettirajoite saadaan käytettyä ja kokonaishyöty on 2,1.
Binäärinen päätösmuuttuja, joka kertoo valitaanko projekti vai ei. Projekti Päätösmuuttuja Hyöty Aika 1 0 0,08 200 2 1 0,2 750 3 1 0,19 400 4 1 0,21 1000 5 1 0,27 1500 6 1 0,15 600 7 0 0,37 2500 8 0 0,44 3000 9 0 0,4 2700 10 1 0,32 350 11 0 0,5 4000 12 0 0,51 4200 13 0 0,45 2700 14 1 0,76 4500 summa 2,1 9100 9100 solu Maksimoitava x i b i 14 i=1 Ylemmän näistä on oltava pienempi tai yhtäsuuri kuin alempi eli budjettirajoite. 14 i=1 x i c i 9100
Kotitehtävä Nyt yrityksen johto kuitenkin huomaa, että kaikki koodaajat eivät osaa kaikkia kieliä. Tehtävä on ratkaistava uudestaan tapauksessa, kun kolmelle ohjelmointikielelle on jokaiselle oma budjettirajoitteensa.
Aika Projekti Hyöty Excel Access C 1 0,08 200 2 0,2 500 250 3 0,19 400 4 0,21 1000 5 0,27 1000 500 6 0,15 600 7 0,37 1500 1000 8 0,44 3000 9 0,4 2700 10 0,32 350 11 0,5 1000 3000 12 0,51 2000 1000 1200 13 0,45 2700 14 0,76 3000 1500 Rajoite 9000 7200 3600 Mitkä projektit nyt valitaan toteutettaviksi käyttäen hyödyksi kokonaislukuoptimointia? Oletetaan projektit riippumattomiksi niistä saatavien hyötyjen ja niihin käytettävien aikojen suhteen!
Projekti i Päätösmuuttuja x i Hyöty (b i ) Excel c 1i Aika Access c 2i 1 0 0,08 200 C c 3i 2 0 0,2 500 250 3 0 0,19 400 4 0 0,21 1000 5 0 0,27 1000 500 6 0 0,15 600 7 0 0,37 1500 1000 8 0 0,44 3000 9 0 0,4 2700 10 0 0,32 350 11 0 0,5 1000 3000 12 0 0,51 2000 1000 1200 13 0 0,45 2700 14 0 0,76 3000 1500 Yhteensä 0 0 0 0 Rajoite 9000 7200 3600 Max s.e. 14 14 i=1 b i x i c ji x i C j, j = 1,2,3 i=1 x i binäärisiä i Esim. j = 3: 250x 2 + 400x 3 + 1000x 4 + 500x 5 + 1000x 7 + 2700x 9 + 350x 10 + 1200x 13 + 1500x 14 3600
Projekti i Päätösmuuttuja x i Hyöty (b i ) Excel c 1i Aika Access c 2i 1 1 0,08 200 C c 3i 2 0 0,2 500 250 3 1 0,19 400 4 0 0,21 1000 5 1 0,27 1000 500 6 1 0,15 600 7 1 0,37 1500 1000 8 0 0,44 3000 9 0 0,4 2700 10 1 0,32 350 11 1 0,5 1000 3000 12 1 0,51 2000 1000 1200 13 1 0,45 2700 14 0 0,76 3000 1500 Yhteensä 2,84 6 100 6 900 3 450 Rajoite 9000 7200 3600 Valitaan siis projektit 1, 3, 5, 6, 7, 10, 11, 12 ja 13