Tuotten A valmistukseen menee aikaa 3,5h. Tuotteen B 1h. Aikaa käytettävissä enintään 100h. Raaka-ainetta A:han 200g ja B:hen 100g. Raaka-ainetta enintään 7kg.
Kuinka paljon tuotetta A ja B kannattaa valmistaa tuoton maksimoimiseksi, kun tuotteesta A saa voittoa 2,5 -kertaisesti B:hen nähden?
Tein kaksi yhtälöä, joista A:n arvoksi sain 20 kpl ja B:n 30 kpl, mutta en osaa laittaa tuota 2,5-kertaista voittoa mihinkään, eli miten sen lasken?
Siis olen laskenut nämä arvot ilman tuota 2,5-kertaista voittoa, joten ei voi olla oikein.
Olisin tosi kiitollinen, jos joku neuvoisi mahdollisimman yksinkertaisesti tuon asian. Kirjoista en ole tähän löytänyt apua.
Kuinka paljon tuotetta A ja B kannattaa valmistaa tuoton maksimoimiseksi, kun tuotteesta A saa voittoa 2,5 -kertaisesti B:hen nähden?
Tein kaksi yhtälöä, joista A:n arvoksi sain 20 kpl ja B:n 30 kpl, mutta en osaa laittaa tuota 2,5-kertaista voittoa mihinkään, eli miten sen lasken?
Siis olen laskenut nämä arvot ilman tuota 2,5-kertaista voittoa, joten ei voi olla oikein.
Olisin tosi kiitollinen, jos joku neuvoisi mahdollisimman yksinkertaisesti tuon asian. Kirjoista en ole tähän löytänyt apua.
Vastaukset 43
Vanhimmat
Tämäntyyppiset optimoinnit voidaan ratkaista taulukkolaskennan avulla hyvin helposti. Selvität vain maksimaaliset tuottomäärät huomioiden ajan ja raaka-ainemäärän asettamat rajoitukset toiminnalle, esimerkiksi näin:
A:n määrä; B:n määrä; kulunut aika; kulunut raaka-aine; tuotto.
0; 70; 70; 7; 70
1; 68; 71,5; 7; 70,5
2; 66; 73; 7; 71
.
.
.
27; 5; 99,5; 5,9; 72,5
28; 2; 100; 5,8; 72
Kokonaistuotto A:n 2,5-kertaisen voiton huomioiden voidaan laskea yksinkertaisella kaavalla:
2,5*{A:n määrä} 1*{B:n määrä}
Kokeissa saa nykyään käyttää taulukkolaskentaa, kun aivot eivät toimi? Tähän ei tarvita mitään taulukkolaskentaa.
Mitä vikaa tietokoneen ja taulukkolaskennan käytössä muka on? Se on erittäin tehokas keino ratkoa tämänkaltaisia optimointitehtäviä ja -ongelmia. Erityisen tehokas se on silloin kun optimoinnissa pitää ottaa huomioon useita eri muuttujia. Näistä esimerkkinä vaikka kemialliset reaktiotasapainot, joissa lähtöaineilla ja reaktiotuotteilla on useita sivureaktioita. Tai toisena esimerkkinä "epäpuhtaista raaka-aineista" valmistettavien seosten tekeminen.
Myönnän kyllä itsekkin sen, että tietokone on tässäkin tapauksessa (kuten aina) vain apukeino ratkaisun löytämiseen. Sen ei missään nimessä pidäkkään olla mikään itsetarkoituksellinen keino väkisin ratkaista ongelmia, joita ei muuten osaisi laskea. Mutta miksi kenenkään pitäisi tuhlata aikaansa mekaaniseen laskemiseen ja kuvaajien piirtämiseen, kun ne saa tehtyä helpomminkin? Ja miten muka perustelet väitteesi että tietokoneen käyttö mekaaniseen laskemiseen ja kuvaajan piirtämiseen "vähentäisi omien aivojen käyttöä"?
Voiko Excelillä nykyään ratkaista lineaarisen ohjelmoinnin tehtäviä (Simplex tai vastaava algoritmi)?
... oli helppo perustehtävä -- oppimisen hyöty menee jokseenkin hukkaan, jos tarvitaan supertietokone laskemaan 1 1.
Jos kysyjä EI osaa tälläistä yksinkertaista optimointitehtävää ilman Exceliä, sen tyrkyttäminen hänelle pakettiratkaisuna ei varmaankaan ole hirmuisen fiksua.
Perustelusi siis on että helppoja tehtäviä ei kannata käyttää uuden ratkaisutavan opettelemiseen, niinkö? (Saman logiikan saattelemana Suomen opetushallitus lopettaa kertotaulun opettamisen lapsille, koska ne voidaan laskea myös pluslaskuina...)
Eihän kukaan oikeasti näin yksinkertaisia optimointeja käytännön tilanteissa kuitenkaan tee. Kun sitten joskus eteen tulee jokin hankalampi haaste, niin sinun "piirrellään käyriä ja katsellaan kuvaajasta viivottimella" -tapa ei enää toimi. Taulukkolaskennan avulla on "helpompi" tarkastella jokaisen muuttujan vaikutusta lopputulokseen (olettaen että ymmärtää mitä on tekemässä), kuin tekemällä pelkästään epämääräisiä yhtälöitä ja kuvaajia.
Kuvaajien piirtäminen ei myöskään onnistu järkevästi käsipelillä kuin silloin kun tarkastellaan lineaarisia yhtälöitä. Tässäkin tapauksessa on selvästi kyseessä epäjatkuva "suoraa muistuttava" riippuvuus A:n ja B:n määrille, mutta koska molempien muuttujien pitää olla ei-negatiivisia kokonaislukuja riippuvuussuhde ei muodosta suoraa. Tästä syystä oikean ratkaisun löytämiseksi pitää mekaanisesti laskea tuotto jokaisesta yksittäisestä vaihtoehdosta (yhteensä 71 kpl) ennen kuin voidaan varmasti sanoa mikä niistä on suurin. Tämä siksi että jokainen epäjatkuvuuskohta pitää tarkastella erikseen.
tarkkaan ottaen tarkoitat tällä 'epäjatkuvuuskohdalla'?
Tässä etsitään suurinta arvoa funktiolle
f(x,y) = 2.5x y tasoalueessa, jota rajoittavat y-akseli, suora y = -2x 70,
suora y = -3.5x 100 ja x-akseli. Lisäksi tasoalueesta valitaan tarkasteluun ainoastaan kokonaislukupisteet. On niitä lähemmäs tuhat, eikä 71.
... asiat pitää tehdä oikeassa järjestyksessä. Jotta oikeasti osaisi soveltaa Simplex-algoritmia, pitää ensin harjoitella käsin pieniä esimerkkejä.
Tottakai vastaavalla kurssilla opetellaan algoritmin toimintatapa niin hyvin, että sen voi vaikka itse ohjelmoida. Valmisrutiinit ovat ihan hyviä, jos tietää että niihin voi luottaa, tai jos ei pääasiallisesti opiskele matikkaa.
Koulussa ideana on ymmärtää 'miksi', ja jos sen ymmärtää, ei ole iso askel oppia 'miten'. Excelin hyvyyttä optimointiin en oikein käsitä.
... kommenttisi osoitti, että olet itse kipeästi käsin piirtämisen tarpeessa, että ymmärtäisit teoreeman, joka suurin piirtein kertoo, että lineaarisen optimointiongelman optimiratkaisu konveksin alueen sisällä osuu sen kulmapisteisiin (tietyin rajoituksin). Ei tarvitse tsekata tuhansia eri pisteitä.
Mitään epäjatkuvuutta tässä ei ole, eikä viivotin-sketsin tarvitse edes olla kuin summittainen: riittää että A:n ja B:n suhdetta kuvaavan suoran kaltevuus on jossakin kahden aiemman suoran kaltevuuden välissä.
Voidaan olettaa, että maksimaalinen tuotto saadaan silloin kun joko aika tai käytettävissä oleva materiaali tulee käytettyä kokonaan.
Tämän jälkeen otetaan tarkasteluun maksimaalinen tuotemäärä ja lasketaan raja-arvot "tehdään vain yhtä tuotetta". A:n maksimimäärä ajan puitteissa on 28 kpl ja B:n kohdalla maksimimääräksi tulee 70 kpl, jolloin materiaali tulee käytetyksi kokonaisuudessaan. 71 eri tapausta tulevat siitä että B:n tuottomäärä voi olla mikä tahansa 0 - 70 välillä. 29 tapausta "eri määriä A:ta" ei tarvitse tarkastella erikseen, koska ne kaikki kuuluvat edellämainittuun 71 tapauksen joukkoon.
Tämän jälkeen lasketaan erikseen jokainen näistä kulmakohdista aluetta rajoittavista kulmakohdista:
B:n määrä; A:n määrä
0 28
1 28
2 28
3 27
-------
68 1
69 0
70 0
"Epäjatkuvuudella" tarkoitan sitä, että mikään suora ei kulje esimerkiksi pisteiden (0,28), (1,28), (2,28) ja (3,27) kautta. Ja koska tämä alue f(x,y) ei siis oikeasti rajoitu mihinkään kahteen kauniiseen suoraan, niin aluetta rajoittavia kulmakohtia tulee ratkaistavaksi huomattavasti enemmän kuin 3.
... jotain käsittämätöntä sontaa. Ei voi olla oikein.
"Voidaan olettaa, että maksimaalinen tuotto saadaan silloin kun joko aika tai käytettävissä oleva materiaali tulee käytettyä kokonaan."
Eipä voida olettaa. Miksi ei?
Et taida ymmärtää yhtään, mistä on kyse. Kannattaisi kiltisti opiskella alkeet lineaarialgebrasta ja optimoinnista.
Esimerkkitehtävä on helposti visualisoitavissa paperilla ja samalla menetelmä maksimointitehtävän ratkaisemiseen on helposti hahmoteltavissa.
Mitä tulee Exceliin tämänkaltaisten tehtävien ratkaisemisessa - tässä olet ehkä eniten hakoteillä. Esimerkiksi Matlab, Octave tai Mathematica ovat päteviä työkaluja tällaisten(kin) ongelmien ratkaisemiseen.
Suorastaan noloa on 'epäjatkuvuustarkistelusi'.. ;-).
Zero puääängs
Muutetaan lähtöarvoja hiukan niin tämä asia varmaan aukeaa sinunlaiselle jäärällekin:
A:n valmistukseen kuluu ainetta 0,18 kg ja aikaa 3,5 h.
B:n valmistukseen kuluu ainetta 0,1 kg ja aikaa 1 h.
A:sta saadaan 1,9 kertainen tuotto B:n nähden (1,9 ja 1).
Aikaa käytettävissä enintään 100 h ja ainetta 7 kg.
Vain kokonaisia tuotteita voidaan myydä (valmistuneiden tuotteiden määrä pyöristyy kokonaisluvuksi alaspäin)!
Koetappa nyt ratkaista optimaaliset tuottomäärät tästä lähes identtisestä tehtävästä piirtelemällä kuvaajia ja vääntelemällä viivotinta.
... parhaiten 'Dakinin metodilla', joka yhdistää duaali-simplex-algoritmin sekä 'branch-and-bound'-tekniikan:
1. Laitetaan U = -oo.
2. Ratkaistaan ongelma ilman kokonaislukuvaatimuksia, (esim. tavallisella simplex-algoritmilla). Jos saadaan kokonaislukupiste, pysähdytään tähän.
3. Valitaan muuttuja x_j , jonka optimiarvon pitäisi olla kokonaisluku, mutta ei ole. Haarautetaan ongelma kahteen tapaukseen:
a) x_j on korkeintaan 'optimiarvo pyöristettynä alaspäin' .
b) x_j on vähintään 'optimiarvo pyöristettynä ylöspäin'.
4. Ratkaise 3. a) ja b) ilman kokonaislukuvaatimuksia, käyttäen duaali-simplex-algoritmia, ottaen lähtöarvoksi edellisen optimiarvon.
5.
a) Hylätään sellaiset haarat, joille optimiarvo on korkeintaan U.
b) Samoin lopetetaan haara, jos ratkaisuja ei ole.
c) Jos haara antaa kokonaislukuratkaisun, jonka optimiarvo on yli U, tallenetaan ratkaisu ja laitetaan tämä optimiarvo uudeksi U:ksi.
d) Muussa tapauksessa luodaan kaksi uutta haaraa 3.-kohdan tyyliin.
6. Jos tutkimattomia haaroja ei ole, nykyinen ratkaisu on paras. Muuten valitaan joku tutkimaton haara ja palataan 4.-kohtaan.
E.M siinä oikeassa, että löydetyn optimiratkaisun tapauksessa oli "joko aika tai käytettävissä oleva materiaali tulee käytettyä kokonaan". Tässä tapauksessa molemmat.
... kuvaamaani Dakinin metodia ongelmaasi, ja sain optimiratkaisuksi:
Valmistetaan 17 kappaletta A:ta ja 39 kappaletta B:tä. Optimituotto on siis 71.3.
Käytin tätä simplex-applettia: http://www-fp.mcs.anl.gov/OTC/Guide/CaseStudies/simplex/applet/SimplexTool.html
Tässä puu:
(17.6,38.2) haarautuu [(18,37) sekä (17,39.4)]
(17,39.4) haarautuu [(16.6,40) sekä (17, 39)]
(16.6,40) ei tarjoa kelpoja haaroja.
Siispä (17,39) on optimi.
Edellä väitit että nämä tehtävät ratkeavat paperille piirtelemällä ja viivotinta käyttämällä, mutta nyt oletkin jo siirtymässä algoritmien käyttöön. Kukas tässä nyt alkoi ampumaan kärpästä tykillä?
Selityksesi ei kyllä kerro minulle yhtään mitään, mutta empä minä mikään matemaagikko olekkaan vaan jonkinmoinen kemisti. Käytännön laskuissa, joihin olen törmännyt, on Excel aina ollut aivan riittävä apuväline. Jotenkin tuntuu siltä ettei matematiikan opiskelijat/opettajat aina oikein ymmärrä miten jotkin asiat on käytännössä yksinkertaisinta laskea/ratkaista...
PS. Löytämäsi ratkaisu ei ole oikein. Testaappa paria: 15 kpl A:ta ja 43 kpl B:tä.
... oikeassa ja vain tässä yksittäisessä esimerkissä. Hänen oletuksensa sen sijaan oli perustelematon.
Mm. hänen omassa kakkosesimerkissään ei toteudu kumpikaan oletus. Ks. ratkaisuni yllä.
... elikä haaran (16.6, 40) olisi sittenkin pitänyt haarautua edelleen -- jotenkin luin outputia väärin.
Väitin, että esimerkkitehtävä ratkeaa viivottimella, ja se ratkeaa viivottimella jopa juuri esittelemälläni Dakinin metodilla!
Algoritmin eka askel pyytää tarkistamaan, josko optimi sattuisi olemaan kokonaisluku, kun kokonaislukurajoitus pudotetaan. Tämän ekan vaiheen voi tehdä viivottimella.
Mun metodi on parempi, koska se minimoi turhien pisteiden tarkistamista. En väittänyt, että kaikki esimerkit olisivat yhtä helppoja, mutta väitän että hyvä ratkaisutapa on lyhyt JOS esimerkki on helppo.
Joka viikonloppu tarvitaan 1-1000 ämpärillistä vettä.
Sun ajattelutapa on tämä:
"Täytetään automaatilla joka viikonloppu tuhat ämpäriä vettä."
Mun ajattelutapa on tämä:
"Selvitetään kunakin viikonloppuna kuinka monta ämpärillistä tarvitaan juuri silloin. Täytetään juuri niin monta, ei enempää. Turha täyttää tuhat ämpäriä, jos sattuu selviämään yhdellä -- yhden voi täyttää käsinkin ja oppia samalla jotain."
"Voidaan olettaa, että maksimaalinen tuotto saadaan silloin kun joko aika tai käytettävissä oleva materiaali tulee käytettyä kokonaan."
Pitäisi olla:
"Voidaan olettaa, että maksimaalinen tuotto saadaan silloin kun joko aika tai käytettävissä oleva materiaali tulee käytettyä kokonaan tai lähes kokonaan."
Tarkoitin rajaamisella sitä, että jos on mahdollista tuottaa 1 kpl A:ta ja 68 kpl B:tä, niin ei tarvitse enää tarkastella tapausta 1 kpl A:ta ja 67 kpl B:tä jne.
Pahoittelen osaamattomuuttani suomenkielessä.
Joka viikonloppu tarvitaan 1-1000 ämpärillistä vettä.
Sun ajattelutapa on tämä:
"Ilmoittaudutaan ämpärinvalmistuskurssille ja opiskellaan ämpäreiden valmistusta 10 vuotta. Opitaan tekemään sinkkiämpäreitä, muoviämpäreitä, peltiämpäreitä, saviruukkuja sekä lasisia tuhkakuppeja.
Ilmoittaudutaan juomalaskijan kurssille ja opiskellaan ämpäreiden täyttöä 10 vuotta. Opitaan täyttämään viskilaseja, viinilaseja, olutlaseja, muovimukeja ja kahvikuppeja. Samoja menetelmiä voidaan soveltaa myös ämpäreiden täyttämiseen.
Täytetään tarvittava määrä ämpäreitä!"
Minun tapa:
"Kävellään vesihanalle ja täytetään 1000 ämpäriä. Säästetään käyttämättömät vedet seuraavaksi viikonlopuksi ja täytetään tyhjennetyt."
... on tässä:
Tässä puu:
(17.6,38.2) haarautuu [(18,37) sekä (17,39.4)]
(17,39.4) haarautuu [(16.6,40) sekä (17, 39)]
(16.6,40) haarautuu (16, 41.2)
(16,41.2) haarautuu [(16,41) sekä (15.5, 42)]
(15.5,42) haarautuu (15,43)
Siispä optimi ratkaisu on (15,43) ja optimituotto on 71.5.
Meidän ei tarvinnut tarkistaa kuin kymmenkunta pistetta ja ajaa simplexiä siinä välissä.
Otetaan parituhatta suurikokoista muuttujaa ja rajoitusta mukaan, (tyypillinen tosielämän ongelma), niin eipä enää toimikaan Excelin 'tarkista kaikki pisteet menetelmä' kovin sujuvasti. Siinä helposti menee pari kuukautta kun Excel tarkistaa niitä.
Eipä siihen vaadita mitään 10 vuoden kurssia, että oppisi tekemään asiat kunnolla -- eivät nämä sentään niin vaikeita asioita ole.
En ymmärrä miten 'veden säästäminen' liittyy tähän toimintaasi. Pikemminkin kaadoit ämpärit aina tyhjäksi ennen uudelleentäyttämistä!! :)
... pysyäkseni: Mun toimintatapa voi selvitä yhdellä ämpärintäytöllä, mutta toimii myös silloin kuin ämpäriä vaaditaan miljoona!
Sun toimintatapa toimii huonoimmalla mahdollisella tavalla, kun vaaditaan korkeintaan tuhat -- eikä toimi ollenkaan kun vaaditaan miljoona! Mutta sun ei tarvitse opetella mitään... jep, jep.
No, eipä anteeksi tarvitse pyydellä - ei tässä niin vakavista asioista ole kyse.. ;-)
Joka tapauksessa sinun kannattaisi edes hiukan vilkuilla lineaarisen optimoinnin oppikirjoja sekä myös ottaa selvää ohjelmistoista, joilla esitetyn yksinkertaisen esimerkin lisäksi ratkeaa monenlaiset muutkin 'samaa tyyppiä' olevat ongelmat.
Voimme olettaa A:n kappalevoiton olevan 25, ja B:n 10.
Kokonaisvoitto on:
z = 25x 10y
Haluamme maksimoida z:n seuraavilla rajoituksilla:
2x y
Voimme olettaa A:n kappalevoiton olevan 25, ja B:n 10.
Kokonaisvoitto on:
z = 25x 10y
Haluamme maksimoida z:n seuraavilla rajoituksilla:
2x y
Tässä mahdollisimman yksinkertainen selitys.
Piirrä sketsiksi seuraavat suorat koordinaatistoon:
y = 70 - 2x
y = 100 - 3.5x
Nyt tarkoituksenasi on ottaa -2.5 kulmakertoimella varustettu suora, ja siirtää se mahdollisimman oikealle, niin että ainakin joku piste on molempien aluksi piirrettyjen suorien vasemmalla puolella.
Selvästikin x=20, y=30 on optimiratkaisu.
Tässä mahdollisimman yksinkertainen selitys.
Piirrä sketsiksi seuraavat suorat koordinaatistoon:
y = 70 - 2x
y = 100 - 3.5x
Nyt tarkoituksenasi on ottaa -2.5 kulmakertoimella varustettu suora, ja siirtää se mahdollisimman oikealle, niin että ainakin joku piste on molempien aluksi piirrettyjen suorien vasemmalla puolella.
Selvästikin x=20, y=30 on optimiratkaisu.
... ei sitä voittoa voi laskea missään yksiköissä, jos ei fiksaa jommankumman tuotteen nettohintaa (= myyntihinta - kustannukset). Nythän tiedetään vain yksikkökohtaisten nettohintojen suhde.
Kysyjä oli saanut oikean tuloksen tuotantomääristä itsekin, piru tietää millä konstilla, mutta kai graafisesti. Käsitin, että tuo kokonaisvoiton laskeminen oli ongelma.
Saahan tuon tuotantomäärien optimin helposti ja taatusti tarkemmin Lagrangellakin, jos ei viivotinta löydy työkaluista :-). Yhtälöt on tietysti osattava ensin muotoilla.
... että kysyjä oli vain arvannut, että kahden suoran (eli yhtälön) leikkauskohta olisi optimiratkaisu. Siinä pisteessä on maksimoitu tuotantomäärä sekä tuotantoaika, eli ihan ok arvaus.
Tässä on visuaalisesti 'todistettu', että juuri tälle A:n ja B:n voittosuhteelle (eli kulmakertoimelle) kannattaa maksimoida tuotantomäärä ja tuotantoaika. Sen näkee jo siitä, että kulmakerroin on kahden aiemmin piirretyn suoran kulmakertoimien välissä -- sketsin ei siis tarvitse olla edes millimetrin tarkka.
Saman voi todistaa myös Lagrange-kertoimilla tai Simplex algoritmilla. Mutta visuaalinen idea on ehkä selkein näin yksinkertaiseen esimerkkiin.
Toisin sanoen kysyjä oli arvannut oikein, mutta ilman perusteluja.
Täällä olikin tullut paljon juttua, joista tosin suurin osa meni multa yli hilseen :)
Totta, että kyseessä on varmasti helppo peruslasku, mutta mulle ihan uusi asia.
Tuo oma ratkaisuni tuli ihan ratkaisemalla yhtälöpari, mutta en kyllä vieläkään tajua, miten saan tuon A:n 2,5 kertaisen voiton sijoitettua johonkin.
Tiedän että olen tyhmä, mutta oikeasti haluaisin tajuta tämän. Täytyypä taas yrittää.
Väännetäänpä vielä aivan rautalangasta tämä ongelma, vaikka se on tuolla useampaan kertaan kerrottukin:
Tehtävän tarkoituksena on maksimoida voittofunktio 2,5x y, kun rajoituksena ovat nuo yhtälöt 3,5x y
... kertaa todennut, yhtälöparisi suorien leikkauspiste on kohta, jossa määrä ja aika on maksimoitu.
Arvasit vastauksen, mutta et ole todistanut miksi se on oikein.
Piirrä ne suorat, (aiempaa viestiäni mukaillen), niin ymmärrät miksi tuotto on optimi juuri tälle voittosuhteelle! Yritä tajuta se aiempi viestini, ja kysy tarkennusta jos et tajua.
Voitto on c = 2.5x y, missä x on A-tuotteen määrä ja y on B-tuotteen määrä.
Haluamme maksimoida z:n seuraavalla kolmella rajoituksella:
2x y
Tarkoitin 'maksimoida c:n', mutta kirjoitin 'maksimoida z:n' vahingossa.
Esim 2. ei sittenkään anna ratkaisuksi nelikulmion kulmaa x-akselilla, sillä se ei ole kokonaislukupiste. Mutta ratkaisu olisi silti lähellä tuota pistettä.
Onhan tuo kokonaislukuohjelmointikin lineaarisessa optimoinissa keksitty. Siis ei tarvitse vääntää vuoroin simplexiä ja manuaalisia haaralaskelmia, jos sopiva ohjelmisto on käytössä.
Muuten, graafinen taiteiluhan loppuu, kun muuttujia on enemmän kuin kaksi, joten sillä ei pitkälle käytännössä pärjää. Jos käsin/laskimella joutuu laskemaan, niin suht. harvoilla muuttujilla Lagrange lienee kätevämpi kuin Simplex.
E.M.:lle: en tiedä mitä Excelissä on, mutta herkkyysanalyysi(so. muuttujien arvojen muutosten vaikutus optimiin) tulee ainakin Simplexillä ja Lagrangella automaattisesti (varjohinnat ja |lambdat|).
... luulet, että se kokonaislukuohjelmointi toimii? ;)
Se sopiva ohjelmisto vääntänee vuorotellen simplexiä ja haaroja. Pikku-tehtävässä on hauska oppia siitä vääntämällä ne haarat kerran itse.
Mun mielestä matikan palstalle on sopivaa, että täällä ymmärretään (kohtuuden rajoissa) mitä ollaan tehty. 'Käytä Mathematicaa' ei ole 'ratkaisu' matemaattiseen ongelmaan. Tuskinpa kysyjällä oli oikeasti tuotetta A ja B, vaan kyseessä oli harjoitustehtävä, jolla pitäisi yrittää ymmärtää alkeellista optimointiteoriaa.
Tulee tilanteita, mm. ongelmatapauksia, joiden kohdalla on ymmärrettävä mitä algoritmille on tapahtunut. Optimointiteorialla on sitä paitsi paljon muutakin arvoa ja kytköksiä kuin käytännön laskeminen, ainakin matikan opiskelijalle.
... ei ole muuten vielä tajunnut, ennen kuin ymmärtää, että simplex ON graafinen algoritmi. Siinähän hypätään kulmasta kulmaan, nimen mukaisesti.
Viivotinpiirros on hyvä tapa ymmärtää simplex-algoritmin 'idea'. Se ei suinkaan ole kilpaileva 'ratkaisumenetelmä'.
Kiitos kaikille, erityisesti nkorpille.
Vaikka tämä teistä oli helppoa kuin heinänteko, niin mulle pitää kaikki vääntää ihan rautakangesta. Nyt kuitenkin tajusin ja siitä iso kiitos.