Och "Ingetledigtnamn", det är nog som du säger att man åker ju egentligen inte rakt mot punkten, utan stannar på en axel och kör resterande sträcka längs med den andra axeln. Detta är ju omöjligt att beräkna och jag antar att man kan se den exakta beräkningen som en medelsträcka.
Det är precis det vi räknat på genom att använda max av |p1.x - p2.x| och |p1.y - p2.y|.
Det finns flera olika sätt att räkna avståndet/kostnad beroende på hur man kan röra sig.
Δx = punkt1.x - punkt2.x
Δy = punkt1.y - punkt2.y
L1-norm/manhattan-norm:
Man kan röra sig i antingen x-led eller y-led men inte båda samtidigt.
|Δx| + |Δy|
L2-norm/euklidisk-norm:
Man kan röra sig fritt i vilken riktning som helst som i en cirkel ut från startpunkten. (pytagoras på en 2d karta)
sqrt(Δx^2 + Δy^2)
L∞-norm/max-norm/Chebyshev.
Man kan röra sig i x-led och y-led och kan röra sig i båda samtidigt. Diagonalförflyttningar kostar inte extra. Det är så trucken i den här tråden rör sig och t.ex. kungen på ett schackbräde
max(|Δx|, |Δy|)
Det finns ett till ganska vanligt sätt man använder i datorspel som använder rutnät och tillåter x-led eller y-led eller 45 graders diagonal mellan två rutor. Diagonalförflyttningen kostar extra.
max(|Δx|, |Δy|) + (sqrt(2)-1) * min(|Δx|, |Δy|)
Tack för era svar, det visade sig att mjukvaran vi använder inte går att manipulera på så sätt att man kan anpassa plocklistorna, dom sorteras automatiskt och vi kan inte påverka det på något sätt. (say no more...)
Det går att lösa problemet manuellt utan programmering. Om du skrev ut plocklistorna som punkter och ritar rutterna för hand helt utan att räkna så kommer du hamna väldigt nära optimal rutt så länge rutten ser bra ut. Det svåra blir väl att på ett effektivt sätt välja din lista istället för den automatiska. Det skulle vara enbart för att mäta hur stor effekt en bättre sortering har i verkligheten. Ibland kan det vara lättare att få genom en förändring om man kan presentera siffror.
Hur stor del av totala tiden det tar att plocka en lista är förflyttning och hur stor del är att man står stilla vid en hylla och plockar? Om det är 50/50 så skulle en optimal lista ge 25% effektivisering. Om bara en liten del av tiden går åt till förflyttning så spelar det i princip ingen roll hur optimerad rutten är.