Packproblem

Hi, hab ein kleines packbroblem. Hoffe das Ihr mir weiterhelfen könnt. ich habe einen container mit den maßen 80cm*40cm*30cm. Dann habe ich einen Artikel verpackt in einem Karton, die Maße sind 20cm*7cm*3cm. Wie viele Kartons kann ich in den Container im optimalen fall einpacken und wie muss ich sie dann reinlegen ? Für so ein Beispiel brauch ich einen algorithmus wobei die containevolumen immer gleich ist
aber die pakete unterschiedlich größ sind. Nicht erschrecken es kommen nur eine sorte von paketen mit einer festen volumengröße in einen container, habe halt ca 8000 artikel,deshalb brauche ich dafür ein programm wo ich nur einmal die paktmaße eingebe und einen optimalen wert bekomme. könnt ihr mir weiterhelfen ? onelove

Hallo,

das klingt nach einem interessanten mathematischen Problem.
Ich habe (noch) keine Lösung, aber ich werde mich wohl mal damit befassen, wenn ich die Zeit dafür finde. Ob ich das Problem lösen kann, weiß ich aber noch nicht.

Wenn Du das Poblem gelöst hast, informiere uns bitte, nicht daß ich noch ewig nach einer Lösung suche, die niemand mehr braucht. OK?

Gruß, Rainer

das klingt nach einem interessanten mathematischen Problem.
Ich habe (noch) keine Lösung, aber ich werde mich wohl mal
damit befassen, wenn ich die Zeit dafür finde. Ob ich das
Problem lösen kann, weiß ich aber noch nicht.

Hallo Rainer,
das IST ein mathematische, programmtechnische Herausforderung :smile:

Ich meine es wurde auch schon hier bei w-w-w und anderswo behandelt.
Mir fallen jetzt leider nicht die richtigen Suchbegriffe fürs Googeln ein.
Optimierung? Verschnittminimierung?
Jedenfalls erinnere ich mich daran, einmal war die Aufgabenstellung anders aber die Herausforderung die Gleiche.
Man hatte Rohre in verschiedenen Längen und sollte Rohrstücke in vershciedenen Längen davon abschneiden. Nun galt es das so aufzuteilen dass die Reststücke minimalen Verschnitt bedeuteten.
Da dies für die Rohrfirma wirtschaftlich von sehr starkem Interesse ist, gabs da auch Lösungen, ich glaube auch kommerzielle Prrogrammpakete. Weiterhin sah ich auch „offene“ Lösungen in C, VB usw. Waren alle heftigst kompakt und kompliziert, ich glaub mit rekursiven Aufrufen.

Hier wird ja versucht die Verpackungsordnung mit dem minimalsten Leervolumen zu ermitteln. Ist ja vergleichbar mit dem Verschnittproblem und grundsätzlich auch verwandt mit z.B. Sudokulöseproblemen (siehe meinen Beitrag im Excelbrett zu Sudoku, da habe ich noch lange nicht die perfekte Lösung, geschweige denn einen Sudokugenerator).
Wie kann man schnell und effektiv alle Möglichkeiten durchspielen um das Beste zu ermtteln.

Zurück zum Anfrager. Wie versucht anzudeuten ist die optimale Lösung sehr schwierig.
Denn dann kann jedes einzelne Paket längs, quer oder hochkant eingepackt werden um den minimalsten Leeraum im Gesamtpaket zu erreichen.
Wenn es dir langen würde, dass nur ermittelt wird ob man aufgrund der Packungsabmessungen alle Kleinpakete pro Gesamtpaket quer oder längs oder hochkant einpacken sollte, so ist diese Aufgabenstellung relativ easy zu lösen *annehm*

Gruß
Reinhard

Hallo onelove,

eine Lösung hab ich erstmal auch nicht. Solche Probleme lassen sich m.E. auch nicht geschloosen lösen und schreien nach Lösungsbäumen. Typisch auch für das „Travelling-Salesman“ Problem, dass eine optimierte Reiseroute sucht.

In deinem Fall kann man ja damit anfangen ein Paket in den Container zu legen. Dazu gibt es idR drei Möglichkeiten, solange du in einer Ecke anfängst. Danach das nächste Paket etc. Bei kleinen Paketen kann man sich schnell vorstellen, wie komplex der Suchbaum würde.

Kann man das Problem reduzieren?
Alle Pakete kennen ein „this side up“, damit hat man nur zwei anfängliche Möglichkeiten.
Oder zumindest: Alle Pakete liegen auf der gleichen Seite.
hat man sich einmal für eine Ausrichtung entschieden, werden alle Pakete in der gleichen Form eingelegt.

Ich würde mich auch mal fragen, welche Verpackungskünstler eine beliebig komplizierte Anordnung, abhängig vom jeweiligen Paket, hinbekommen. Auch das könnte ein Grnud sein, die möglichen Anordnungen zu beschränken.

Was ich mich allerdings auch Frage, ob bei 8000 Paketen alle Container auch immer voll werden …

Was mich interessiert ist die akadenmische Diskussion und eine daraus folgende Lösung. Der Algorhytmus ist dann eher Nebensache und Fleißarbeit, wobei ich auch gerene helfen würde. (Wollte mal das Erstellen und Zeichnen eines Organigramms programmieren, was zu ähnlichen Problemen führt…)

mfg

Dirk.Pegasus

Hallo Reinhard,

das IST ein mathematische, programmtechnische Herausforderung

-)

ja, ich weiß. Das ist ja der Reiz dabei.

Ich meine es wurde auch schon hier bei w-w-w und anderswo
behandelt.
Mir fallen jetzt leider nicht die richtigen Suchbegriffe fürs
Googeln ein.
Optimierung? Verschnittminimierung?

Optimierungsalgorithmus. Hab ich auch schon gemacht und bin beim Simplex-Algorithmus gelandet, von dem ich schon gehört habe. Das könnte der mathematische Ansatz sein, der dann programmtechnisch umgesetzt werden muß. Noch habe ich keine Ahnung wie, aber ich werde dabei wieder etwas lernen. :smile:

Jedenfalls erinnere ich mich daran, einmal war die
Aufgabenstellung anders aber die Herausforderung die Gleiche.
Man hatte Rohre in verschiedenen Längen und sollte Rohrstücke
in vershciedenen Längen davon abschneiden. Nun galt es das so
aufzuteilen dass die Reststücke minimalen Verschnitt
bedeuteten.

Ja, das ist ähnlich, aber auf eine Dimension begrenzt. Hier geht es um drei Dimensionen, das wird komplizierter.
In einer Dimension haben wir hier so ein Problem auch. :smile: Wir stellen Kaltband her, entsprechend der Kundenwünsche werden nach dem Walzen aus breiten Bändern schmale Streifen geschnitten. Das Problem besteht in dem Fall darin, den Abfall gering zu halten und möglichst viele Aufträge zu kombinieren, weil der Maschinenumbau länger dauert als das eigentliche Schneiden … der Job unserer Arbeitsvorbereiter. :smile:

Waren alle heftigst kompakt und
kompliziert, ich glaub mit rekursiven Aufrufen.

Ahh ja, das ist schon mal ein Ansatz, wobei ich mit rekursiven Aufrufen immer Probleme habe, ich bekomme dann zu schnell ‚Knoten ins Gehirn‘. :smile:

Hier wird ja versucht die Verpackungsordnung mit dem
minimalsten Leervolumen zu ermitteln.

Ja.

Ist ja vergleichbar mit
dem Verschnittproblem und grundsätzlich auch verwandt mit z.B.
Sudokulöseproblemen (siehe meinen Beitrag im Excelbrett zu
Sudoku, da habe ich noch lange nicht die perfekte Lösung,
geschweige denn einen Sudokugenerator).

Excel verstehe ich nicht. Aber ein Programm zum Lösen von SuDoKu habe ich mir schon geschrieben. Das war auch für mich der Teil, der an SuDoKu interessant war. :smile:

Wie kann man schnell und effektiv alle Möglichkeiten
durchspielen um das Beste zu ermtteln.

Am Besten gar nicht. Das Problem sollte berechenbar sein, dann geht es nur noch darum, die Ausgabe verständlich zu gestalten.

Zurück zum Anfrager. Wie versucht anzudeuten ist die
optimale Lösung sehr schwierig.
Denn dann kann jedes einzelne Paket längs, quer oder hochkant
eingepackt werden um den minimalsten Leeraum im Gesamtpaket zu
erreichen.
Wenn es dir langen würde, dass nur ermittelt wird ob man
aufgrund der Packungsabmessungen alle Kleinpakete pro
Gesamtpaket quer oder längs oder hochkant einpacken sollte, so
ist diese Aufgabenstellung relativ easy zu lösen *annehm*

Ich denke, daß eine optimale Lösung meist vorschlagen wird, nicht alle Pakete in einer Reihe in der selben Lage einzuordnen. Wenn alle Pakete gleich liegen ist es einfach, da hast Du Recht.

Gruß, Rainer

Was mich interessiert ist die akadenmische Diskussion und eine
daraus folgende Lösung. Der Algorhytmus ist dann eher
Nebensache und Fleißarbeit, wobei ich auch gerene helfen
würde. (Wollte mal das Erstellen und Zeichnen eines
Organigramms programmieren, was zu ähnlichen Problemen
führt…)

Hi Dirk,
leider habe ich bei „akademischen“ Seiten wie hier:
http://de.wikipedia.org/wiki/Optimierung_%28Mathemat…
gewltige Verständnisprobleme und enthalte mich jedweder Diskussion :smile:))
Dein „Travelling Salesman“ wird bei Wikipedia auch beschrieben.

„Packoptimierung“ bei Google weist auf kommerzielle Lösungsseiten.
Wie könnte denn „Packoptimierung“ auf Englisch lauten, damit man im englischsprachigen Raum nach offenem Code suchen könnte?
Gruß
Reinhard

„Travelling-Salesman“

Optimierungsalgorithmus. Hab ich auch schon gemacht und bin
beim Simplex-Algorithmus gelandet, von dem ich schon gehört
habe. Das könnte der mathematische Ansatz sein, der dann
programmtechnisch umgesetzt werden muß. Noch habe ich keine
Ahnung wie, aber ich werde dabei wieder etwas lernen. :smile:

Hallo Rainer,
dieser Simplex scheint ja passend zu sein
http://www.zingel.de/pdf/08sim.pdf
aber auch wieder sehr schwere Kost für mich :smile:
Gruß
Reinhard

Hallo Reinhard,

dieser Simplex scheint ja passend zu sein
http://www.zingel.de/pdf/08sim.pdf
aber auch wieder sehr schwere Kost für mich :smile:

für mich auch, ich habe da aber einen Experten. :smile: (Wirtschaftswissenschaftler)
Ich habe einen Freund um Mitwirkung gebeten, der den mathematischen Teil erledigen wird. Der hat sich schon intensiv mit dem Simplex-Algorithmus beschäftigt, speziell mit der Optimierung von Produktionsabläufen, der optimalen Auslastung von Maschinen. Ich habe da bei der grafischen Darstellung in VB geholfen, deshalb weiß ich das. Im Moment warte ich eigentlich auch nur, daß die Zuarbeit fertig wird. :smile:

Gruß, Rainer