Avatar billede mindplay Nybegynder
26. maj 2005 - 14:27 Der er 2 kommentarer og
1 løsning

2D planlægning / optimering

Jeg har følgende problem:

Lad os sige vi har et to-dimensionelt rum, altså en matrix, på f.eks. 10x10 celler.

Lad os så sige, vi har tre elementer der skal placeres i dette rum, f.eks. et på 5x5, et på 3x4 og et på 2x5.

Hvordan beregner man den optimiale placering af de givne elementer i rummet, altså således at de optager mindst mulig plads?

Jeg ville være taknemmelig for enhver form for hjælp - det er ikke lykkedes mig at finde ret meget på Google, så det ville allerede være en hjælp, hvis der er nogen der ved, hvad denne type opgave hedder? (fandt lidt under "area optimization" og "floorplan optimization", men ingen konkret brugbar løsning...)

Tak :)
Avatar billede tuxic Nybegynder
06. juli 2005 - 22:47 #1
Vil elementerne ikke altid optage den samme plads? Elementerne bliver næppe mindre af at blive arrangeret på finurlig måde.
Avatar billede mindplay Nybegynder
06. juli 2005 - 23:05 #2
okay, det var et dårligt eksempel ... jeg har x antal elementer af varierende størrelse, der til sammen har et areal svarende til det rum, de skal passes ind i ... opgaven går altså ud på, at finde en måde at arrangere elementerne, så der ikke er noget spilplads.

imidlertid har jeg selv fundet en løsning - det er faktisk såre enkelt, opgaven kan løses ved "brute force" uden problemer; altså jeg prøver bare i tilfældig rækkefølge at sætte elementerne ind, og starter forfra hvis det mislykkes ... selv med ret store matricer, ser det ud til at virke - opgaven løses som regel på et par sekunder, efter cirka 5-20 forsøg.
Avatar billede tuxic Nybegynder
06. juli 2005 - 23:18 #3
Der er heller ikke nogen anden måde end brute force. Men altså, køretiden vokser jo voldsomt med antallet af elementer.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester