Kuinkakohan tulisi lähteä muodostamaan lineaarista optimointimallia:
On 50 laatikkoa, jotka on numeroitu 1-4. Eli laatikoita löytyy neljä eri ryhmää.
Laatikot tulisi pinota siten, että mahdollisimman vähän on saman numeroisia laatikoita vierekkäin.
Eli lopulta tulee mahdollisesti olemaan useita kerroksia ja pinoja näistä laatikoista.
Kiitos jo etukäteen jos joku pystyisi auttamaan tässä liikkeelle,
On 50 laatikkoa, jotka on numeroitu 1-4. Eli laatikoita löytyy neljä eri ryhmää.
Laatikot tulisi pinota siten, että mahdollisimman vähän on saman numeroisia laatikoita vierekkäin.
Eli lopulta tulee mahdollisesti olemaan useita kerroksia ja pinoja näistä laatikoista.
Kiitos jo etukäteen jos joku pystyisi auttamaan tässä liikkeelle,
Vastaukset 13
Vanhimmat
Mitä on tarkoitus optimoida tuolla vierekkäisyysehdolla? Minimoida pinojen määrä?
Tällöin selvitään yhdellä pinolla mikäli mitään laatikkonumeroa ei ole enempää kuin puolet koko määrästä.
Tarkoitus on minimoida tosiaan vierekkäisten identtisten laatikoiden määrä (Ylä-alapuolella tai vieressä). Voidaan sallia pinojen ja kerrosten kasvaminen sen mukaisesti, mikä optimituloksen kannalta on tarpeen. Eli älykäs tietokone etsii sitten ratkaisun.
Mitähän "lineaarista" tässä on?
Aloita perusmäärittelyillä. Oleta kaikkien laatikoiden olevan samankokoisia kuutiota. Määrittele tarkasti pinoamissäännöt. Vierekkäisten laatikoiden on kosketettava toisiaan koko sivullaan. Ei mitään epäsäännöllissyyttä tai kikkailua. Korvaa laatikot luvuilla ja tarkastele niitä kolmiulotteisessa matriisissa.
Näin saat laadittua ensimmäisen ohjelmapätkän. Määrittele eri lukujen minimi- ja maksimimäärät. Esim. 1, 1, 1, 47. Noita määräkombinaatiota ei loppujen lopuksi ole kovin montaa oikeasti erilaista.
Jokaisen laatikon alla on oltava toinen laatikko tai lattia. Käytössä ei siis ole mitään hyllykköä.
Tarvittavan matriisin maksimikoko on 50x26x16. Korkeus kannattaa minimoida.
Jos samaa laatikkonumeroa on maksimissaan 40 kpl, minimoinnin tulos aina 0.
Yksinkertainen "lineaarinen optimointi" eli sijoita laatikoita lattialle pitkään riviin siten, että joka toinen laatikko on sellainen, joita on eniten. Jäljelle jäävät laatikot voidaan aina sijoittaa jonkun erinumeroisen laatikon sivuille tai päälle.
Jos jotain laatikkonumeroa on yli 40 kpl, niitä on pakko sijoittaa joissakin kohtaa vierekkäin.
Jos niitä on 41, saat sijoitettua 10 9 9 9 9 laatikkoa ongelmitta ja tulee maksimissaan neljä samannumeroista vierekkäin. Tuota voi tietysti yrittää minimoida.
Laatikoiden sijoittelutapaa pitää jotenkin rajoittaa "järkeväksi", jotta tehtävästä tuli mielenkiintoinen.
Lineaarinen optimointi tarkoittanee sitä, että optimoitava funktio on lineaarinen. Mikä tässä tehtävässä on tuo funktio joka oikeuttaa käyttämään termiä " lineaarinen optimointi"? Vai käytättekö väärää ilmaisua?
Kysyin asiaa jo aiemminkin.
Opettele suomen kielen perusteet ja kommentoi sitten uudestaan, jos aihetta!
Mikäs niissä perusteissani oli vialla? Oikealta suomelta tuo minusta tumtui.
Onko väärin kysyä perusteluja tuon "lineaarinen"-termin käytölle?
Jos se on perusteltua niin opin sitten jotain. Jos taas ei niin matematiikassa ei pitäisi käyttää virheellistä terminologiaa.
"tumtui" p.o. "tuntui".
Lineaarinen optimointi on lineaarisen funktion maksimointia/minimointia lineaaristen rajoitusten vallitessa. Piste.
Kai tuossa on kyse kombinatorisesta optimoinnista eli jonkin optimitavoitteen saavuttamisesta kombinaatioita muodostamalla.
Tosin siitä, kun näitä asioita opiskelin on erittäin pitkä aika.