> Onkohan seuraavanlaista ohjelmaa valmiina olemassa tai kannattaisikohan jonkun sellainen vääntää ?
>
> Eli kun töissä aikoinani jouduin sahaamaan tietyt määrät tietyn mittaisia alumiinikouruja jouduin aina miettimään kuinka pitkistä profiileista kannattaa mikäkin sahata jotta jäisi mahdollisimman lyhyt hukkapätkä kun oletetaan että vaikkapa alle 1,3m pätkillä ei myöhemmin tee mitään vaan ne menevät alumiinikeräykseen. Nyt en jaksa muistaa mittoja mutta siellä varastossa taisi olla 4,5m, 5,5m, 6,0m ja 6,7m:n kouruja ja niistä sahattavien pituudet saattoivat vaihdella 1,2m ja 6,jotain välillä.
>
> Minulla "pelisijoittajalla" on sellainen tilanne että voisin mennä vähäksi aikaa töihin ja työnantajani saattaisi olla innoissaan jos tämmöisen ohjelman pystyisin hänelle tarjoamaan.
op.tutkija kirjoitti:
työnantajani saattaisi olla innoissaan jos tämmöisen ohjelman pystyisin hänelle tarjoamaan
Siispä ei muuta kuin jotain ohjelmointikieltä opiskelemaan, tuo ohjelma sinänsä vaikuttaa helpolle tehdä, eihän tuossa tarvita kuin vähän alkeellista logiikkaa ja peruslaskutoimituksia. Eli ei pitäisi mennä kuin päivä-pari, vaikka itse tekisit sen ja vaikkei aiempaa ohjelmointikokemusta olisikaan. ;)
Taitaa tuo kourun sahaus olla yleisen reppuongelman kanssa analoginen ja näin ollen NP-täydellinen.
op.tutkija kirjoitti:
> Minulla "pelisijoittajalla" on sellainen tilanne että voisin mennä vähäksi aikaa töihin ja työnantajani saattaisi olla innoissaan jos tämmöisen ohjelman pystyisin hänelle tarjoamaan.
lol pellee tulla täält kysyy valmiita vastauksia ja sitten lesota työnantajalle kuinka nerokas jätkä oot ku oot semmosen tehny.
> Mitähän muuten tarkoittaa tuo NP-täydellinen ?
>
> Ajattelin nimenomaan sitä että jos olisi tarkoitukseen olemassa valmis ohjelma ja joku muukin lukija voisi sitä hyödyntää. Työnantajani kuten itsekin tiedämme että pystyn kyllä sellaisen ohjelman tekemään mutta en välttämättä halua ohjelmointitaidoillani elvistellä.
>
> Kenenkähän vastaus tähän mennessä on ollut eniten pelle ?
op.tutkija kirjoitti:
> Mitähän muuten tarkoittaa tuo NP-täydellinen ?
Ongelma on NP-täydellinen, jos sitä ei voi ratkaista muuten, kuin kokeilemalla kaikkia mahdollisia ratkaisuvaihtoehtoja ja valitsemalla niistä lopuksi parhaaksi osoittautuneen.
Ratkaisuvaihtoehtojen määrä taas kasvaa eksponentiaalisesti syöteen määrään nähden. Esim. jos sinun pitää sahata 100 kourun pätkää, on eri sahausmahdollisuuksien määrä suuruusluokkaa 2^100 eli 1267650600228229401496703205376. Oletetaan että tietokone pystyy tutkimaan miljoona sahausvaihtoehtoa sekunissa. Tällöin kaikkien vaihtoehtojen läpikäyminen kestää tietokoneelta 40196936841331475 vuotta eli kauemmin kuin universumin tähän astinen elinikä.
Vaikka NP-ongelmat voidaan teoriassa ratkaista tietokoneella (toisin kuin NC-ongelmat, joita ei edes teoriassa ole mahdolista ratkaista tietokoneella), ei niitä pysty käytännössä ratkaisemaan tietokoneella, koska tarvittava suoritusaika on valtava.
En tosin ole 100% varma, että tuo sahausongelma on NP-ongelma, mutta se kyllä vaikuttaa samankaltaiselta NP-ongelmaksi tiedetyn reppuongelman kanssa.
Mielenkiintoisena sivusta vain utelen, että ongelman ratkaisemiseksi tarvitaan "simppeli" syvyyshaku. Sopivalla heuristiikalla maustettuna kuitenkin varmaan päästäisiin paljon parempaan tulokseen kuin keskiverto ihmisen logiikalla. Hakusyvyyttähän voisi rajoittaa, että ohjelmalla olisi koko ajan tiedossa vain seuraavat esim. 5 sahattavaa pituutta (+ varastot). Jos se nämä sahauksen kestäessä kerkeää käymään läpi, niin voi jatkaa jo vaikka muutamaa parasta haaraa pidemmällekkin.
Tekoälyt kiinnostaa aina, mutta oma tietämys näistä asioista on aika nolla.
> Hienoa, kiitos, näillä eväillä pääsenkin jo eteenpäin, ja ehkä töihinkin ellei sitten tulosvedossa napsahda.
Fanuc ohjauksella varustetuissa, ainakin xyz akselisissa on sahaustyökierto
jolla saa tuon optimoinnin. Ottaa yleensä neljä aihion pituutta joiden mukaan laskee mistä sahataan mitäkin. googlaa lisää tai
http://www.gefanuc.com/plc/index.asp
http://www.fanuc.co.jp/eindex.htm
ja ehkä sandvikin laskuri http://www.coroguide.com/CuttingDataModule/
Aihe on jo aika vanha, joten et voi enää vastata siihen.