Typisches Problem und Ausführungsmethode
Packen Sie so viele n-dimensionale Quadrate wie möglich in die n-dimensionalen Quadrate. Finde den Weg. n entspricht 1 bis 3. Wenn n 1 ist, sind Kapazität und Wert im Rucksackproblem gleich.
usage
Init signature: TwoDimPackingClass(self, width, height, items=None)
Docstring:
2D-Packungsproblem
Schneiden Sie Gegenstände mit einem Guillotinenschnitt von der Originalplatte aus(Ungefähre Lösung)
Eingang
width, height:Die Größe der Originalplatte
items:Vom Gegenstand(Seite,Vertikal)Liste von
Ausgabe
Volumenverhältnis und Artikel enthalten(Seite,Vertikal,x,y)Liste von
python
from ortoolpy import TwoDimPackingClass
TwoDimPackingClass(500, 300, [(240, 150), (260, 100), \
(100, 200), (240, 150), (160, 200)]).solve()
Ergebnis
(1.0,
[(240, 150, 0, 0),
(260, 100, 240, 0),
(160, 200, 240, 100),
(100, 200, 400, 100),
(240, 150, 0, 150)])
python
# pandas.DataFrame
from ortoolpy.optimization import TwoDimPacking
TwoDimPacking('data/tdpacking.csv', 500, 300)[1]
width | height | x | y | |
---|---|---|---|---|
0 | 240 | 150 | 0 | 0 |
1 | 260 | 100 | 240 | 0 |
4 | 160 | 200 | 240 | 100 |
2 | 100 | 200 | 400 | 100 |
3 | 240 | 150 | 0 | 150 |
Recommended Posts