Brainstorming --> Optimierung vonn Gefälleplatten

Status
Nicht offen für weitere Antworten.

scripper

Mitglied
Guten Abend alle zusammen,

ich und mein Freund haben vor ein Programm zur Optimierung des Beschneide Vorgangs bei Gefälleplatten zu schreiben. Wir haben uns Gedanken gemacht was das Programm können soll, nur wie es es machen soll ist uns noch ein wenig ein Rätsel. Da haben wir gedacht wir machen hier mal ein Post und hören uns eure Meinungen an.
Hier mal eine Beschreibung des Projekts:

Es sollen aus Quaderförmigen Platten entsprechende Gefällezuschnitte ausgeschnitten werden.

Es werden beispielsweiße folgende Gefällezuschnitte benötigt:

  • Bezeichnung: Platte1
    Menge: 5
    Höhe 1: 60
    Höhe 2: 80
    Länge: 1000
    Breite: 1200

    Bezeichnung: Platte2
    Menge: 3
    Höhe 1: 120
    Höhe 2: 140
    Länge: 1000
    Breite: 800

    usw.

Kurze erläuterung zu den Werten Bezeichnung ist zur Orientierung, Menge ist wohl selbsterklärend, Höhe1 ist bezieht sich auf die dicke auf der einen Seite und Höhe 2 auf die dicke der anderen, damit eine Schräge entsteht. Länge und Breite beziehen sich auch auf die Ergebnis form.

In einer anderen Datei sollen die vorhanden Platten hinterlegt sein.

  • Beispiel:
    Bezeichnung: Platten1
    Vorrat: 900
    Dicke (Höhe): 80
    Länge: 1000
    Breite: 1200

    Bezeichnung: Platten2
    Vorrat: 900
    Dicke (Höhe): 240
    Länge: 1000
    Breite: 1200

Nun muss man berechnen wie man aus den Gegebenen Platten am besten (mit dem geringsten Verschnitt) die gesuchten Schrägen Platten macht. Da liegt auch das eigentlich grösste Problem des Projekts. Wir müssen eine Methode finden um die Platten aufzuteilen, da die ganzen Eingabe werte Variabel sind ist das gar nicht so leicht . Deshalb würden wir gern eure Vorschläge hören. Ob ihr jetzt mit einer Formel rangehen würdet oder doch über Iteration. Danke für eure Hilfe

MfG
 
S

SlaterB

Gast
gibt es denn bestimmte Rahmenbedingungen?

bei den gegebenen Beispiel passen ja kaum mehr als zwei Schräge in eine Ausgangsplatte

ist das allgemein typisch oder gibts auch Fälle, in denen aus einer Ausgangsplatte 10 oder 100 Teile gesägt werden können?

sie die Ausgangsplatten und Schrägen immer recht quadratisch flach (5-10x so lang+breit wie hoch),
oder gibts auch längliche Formen, gar Quader (relativ hoch)?,
sind die Schrägen immer in einem bestimmten Winkel oder auch mal 45 Grad?

falls es Variation gibt, sind dann zumindest einzelne Aufträge eher gleichförmig oder auch in sich gemischt
(sowohl kleine als auch große Sägungen)

oder soll alles beliebig sein?
 
W

wranger

Gast
Moin,

also für mich klingt das alles ein bisschen nach dem Rucksackproblem. Werde ich hier jetzt nicht erklären.

Ich würde jedem Quader im Lager überprüfen und den mit dem wenigstens Verschnitt-Volumen wählen. Falls mehrere "Schnittmuster" in einen Quader passen müssen. So wirds natürlich schwieriger da die Geometrie mit berücksichtigt werden muss.

Mal das Rucksackproblem angucken.

MfG

Carsten
 

SnooP

Top Contributor
Jo Backtracking ist auch nen Stichwort... Sprich geh alle Kombinationen von Platten durch - dabei ergibt sich eine Art Baum, deren Pfade (root bis zum Blatt) mögliche Lösungen repräsentieren. Sackgassen (nicht passende Lösungen) werden bei der Vearbeitung erkannt und es wird zum jeweils letzten Knoten zurückgegangen...

das ganze ist aber wirklich nicht ganz trivial, weil man vermutlich erstmal dem Algorithmus beibringen muss, wann was überhaupt passt... mit den sich ergebenden Winkeln muss man dann halt wirklich gucken wie sich das ineinandersetzen lässt - da ist einiges an Geometrie gefragt ;) - geht aber vermutlich noch, weil ja wirklich nur Gefälle gebraucht werden, sprich relativ einfache geometrische Formen.

Soll das Ergebnis denn nur sagen, welche Roh-Formen welche Schnitte erlauben oder soll aus den möglichen Schnitten dann auch noch nen Schnittmuster erstellt werden? Für ne entsprechende Maschine... denn ansonsten sagt dir das Programm am Ende - jo passt! - aber man weiß als Mensch gar nicht, wie! ;)
 
W

wranger

Gast
SnooP hat gesagt.:
Jo Backtracking ist auch nen Stichwort... Sprich geh alle Kombinationen von Platten durch - dabei ergibt sich eine Art Baum, deren Pfade (root bis zum Blatt) mögliche Lösungen repräsentieren. Sackgassen (nicht passende Lösungen) werden bei der Vearbeitung erkannt und es wird zum jeweils letzten Knoten zurückgegangen...

das ganze ist aber wirklich nicht ganz trivial, weil man vermutlich erstmal dem Algorithmus beibringen muss, wann was überhaupt passt... mit den sich ergebenden Winkeln muss man dann halt wirklich gucken wie sich das ineinandersetzen lässt - da ist einiges an Geometrie gefragt ;) - geht aber vermutlich noch, weil ja wirklich nur Gefälle gebraucht werden, sprich relativ einfache geometrische Formen.

Soll das Ergebnis denn nur sagen, welche Roh-Formen welche Schnitte erlauben oder soll aus den möglichen Schnitten dann auch noch nen Schnittmuster erstellt werden? Für ne entsprechende Maschine... denn ansonsten sagt dir das Programm am Ende - jo passt! - aber man weiß als Mensch gar nicht, wie! ;)

Genau die Fragen habe ich mir auch schon gestellt.

Ergebnis: Schräge1 + Schräge3 in Quader 5 -> Nur wie schneiden

Also ich würde mich da mal für einen grafische Lösung interessieren wenn ihr dann soweit seit. Mit einer Aufzeichnung der Schnittmuster im 3D- Ruam :D

MfG

Wranger

Hmm ... ich könnte mich mal registrieren!
 

scripper

Mitglied
Hallo erstmal danke für eure Antworten und euer Interesse...
also die Platten bewegen sich alle in der Grösse wie im Beispiel angegeben. Es kann natürlich sein das aus einer Platte mehrere Zielplatten geschnitten werden und ja das Programm soll am Ende ausgeben wie geschnitten wird.
Zum einen das benötigte Material
Beispielsweiße:
Bezeichnung: Platte1
Dicke: 240mm
Abmessung 1000x1000
Benötigt: 4

usw.

zum anderen ein Schnittplan. Bei dem Schnittplan haben wir uns überlegt entweder eine 3D Ansicht oder mehre Ansichten also eine von oben eine von der Seite etc. zu machen. Wobei ich denke das wird nicht so das Problem, am schwersten wird es wohl sein einen Geeigneten Algorhytmus zu finden.

Habt ihr mit Rucksackproblem das hier geimeint oder??
Seminar
Ich werde es auf jeden fall mal durchlesen
 
W

wranger

Gast
Genau das hatte ich gemeint:
Gegeben:
Menge von n Objekten mit unterschiedlicher Größe und mit unterschiedlichen Nutzen
sowie ein Rucksack der Größe/Kapazität C
Gegeben:
Menge von n Platten mit unterschiedlichem Volumen und mit unterschiedlichen (Nutzen/Winkeln)
sowie ein Quader der Größe/Kapazität C

Nicht? Der Algorithmus ist ziemlich einfach(hatte ich schon mal in C implementiert) ... das schwierigste wird das automatische platzieren der Schrägen im Quader sein. Die dürfen sich ja nicht überschneiden. Wie willst du die automatisch anordnen?

MfG

Wranger
 
W

wranger

Gast
Booh ... das bestimmt schon 3-4 Jahre her das ich den geschrieben habe. Waren aber nur an die 40 Zeilen Code.

Falls ich den zu Hause finden sollte kann ich ihn ja mal hier rein stellen.

Haltet mich mal in diesem Thread auf dem laufenden ... finde das Projekt wirklich spannend.

MfG
wranger
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben