Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
784to788
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
784to788
784to788
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Solver-Lösung mit Runden

Solver-Lösung mit Runden
26.07.2006 11:23:26
Marc
Hallo zusammen,
ich habe folgendes Problem mit dem Solver:
Es sind drei veränderbare Zellen definiert. Deren Werte werden jeweils durch einen korrespondierenden (fixen) Wert dividiert. Die Multiplikation der drei Ergebnisse dieser Divisionen ist meine Zielzelle. Deren Wert soll maximiert werden. (Es gibt noch weitere Verschachtelungen durch Formeln, die jedoch außer Acht gelassen werden können müssten)
Der Solver gibt mir jedoch nie die drei passenden Werte für ein Maximum wieder, sondern stagniert bei irgendwelchen drei Werten.
Das Problem habe ich bereits identifiziert. Die Ergebnisse der Divisionen werden abgerundet auf ganze Zahlen und dann erst für die Berechnung der Zielzelle weiterverwendet. Wenn ich richtig informiert bin, dann "denkt" der Solver wahrscheinlich an einer bestimmten Stelle, dass er das Maximum bereits erreicht hat, weil sich das Endergebniss so lange nicht ändert.
Hat jemand eine Idee, wie ich beispielsweise die "Prüfintervalle" größer setzen kann? In den Solveroptionen habe ich bereits alles versucht.
Vielen Dank im Voraus,
Marc

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Solver-Lösung mit Runden
27.07.2006 10:39:17
Uwe
Hallo, Marc,
so recht kann ich Dein geschildertesw Problem noch nicht mit EXCEL nachvollziehen. Das liegt wohl daran, dass ich die geschilderte Eingangsaufgabe mathematisch nicht so formulieren kann, dass hier ein wirkliches Variationsproblem auftaucht.
Es seien die Inhalte der Zellen A, A2 und A3: [A1], [A2], [A3]Die Fixwerte [B1], [B2], [B3], die Inhalte von B1 bis B3 können auch gleich sein, sind aber jeder für sich verschieden von Null. Das Produkt ist eine endliche Zahl
[C4] = ([A1]/[B1]) * ([A1]/[B1]) * ([A1]/[B1])
In algebraischer Form: c = ( a1*a2*a3 ) / ( b1*b2*b3 )
Hier kann doch aber, sofern der Nenner ungleich Null ist, nur das Ergebnis sein, dass das Produkt im Zähler ein Maximumwert erreicht, es gibt also immer nur eine Lösung, a1*a2*a3 = UNENDLICH GROSS oder eben einer oder mehrere der Multiplikatoren des Zählers sind selbst unendlich Groß.
Sobald aber einer der Nennerglieder unendlich groß ist, dann ist die Lösung für die übrigen Glieder beliebig, solange sie nur größer als Null sind. Wie kann ich also daraus eine sinnvolle Aufgabe für den SOLVER gestallten, unabhängig vom Problem der großen Zahl in der EXCEL-Umgebung selbst?
Vielleicht kannst Du, Marc, mir zeigen, wo ich Deine Aufgabe nicht richtig verstanden habe und ergänzende Erläuterungen geben, so sich Dein Problen nicht schon erledigt hat.
Gruß,
Uwe
Anzeige
AW: Solver-Lösung mit Runden
27.07.2006 10:54:38
Marc
Hallo Uwe,
bitte entschuldige. Der Einfachheit halber habe ich den Rechenweg nicht komplett dargestellt. Selbstverständlich hast Du bei dem oben erwähnten Fall Recht.
Ich denke, dass es besser ist, wenn Du die Datei siehst. Deshalb habe ich sie hochgeladen. Die 3 rot markierten Zellen sind die Variablen, die gelbe die Zielzelle. Wie Du sehen wirst sind in dieser Version die Zahlen begrenzt.
Mein Problem ist jetzt nur, dass der Solver, sofern ich die "Ganzzahl" Funktion bei meinen Divisionsergebnissen bestehen lasse, nicht richtig rechnet. (Er denkt, dass durch Beispielwerte bereits das Maximum erreicht ist, da sich auf Grund des Rundens für längere Zeit die Zielzelle nicht verändert.) Leider kann ich die "Ganzzahl" Funktion auch nicht entfernen, da es sich um eine logistische Fragestellung handelt, und ich nicht z.B. noch passende 0,932 Teile in meine Gesamtausbeute (Zielzelle) mit einrechnen kann.
Ich hoffe, dass ich es einigermaßen verständlich geschildert habe. :)
Auf jeden Fall schon vorab vielen herzlichen Dank, dass Du Dir Zeit genommen hast!
Viele Grüße,
Marc
Anzeige
AW: Solver-Lösung mit Runden
27.07.2006 11:04:45
Marc
Hallo Uwe,
bitte entschuldige. Der Einfachheit halber habe ich den Rechenweg nicht komplett dargestellt. Selbstverständlich hast Du bei dem oben erwähnten Fall Recht.
Ich denke, dass es besser ist, wenn Du die Datei siehst. Deshalb habe ich sie hochgeladen. Die 3 rot markierten Zellen sind die Variablen, die gelbe die Zielzelle. Wie Du sehen wirst sind in dieser Version die Zahlen begrenzt.
Mein Problem ist jetzt nur, dass der Solver, sofern ich die "Ganzzahl" Funktion bei meinen Divisionsergebnissen bestehen lasse, nicht richtig rechnet. (Er denkt, dass durch Beispielwerte bereits das Maximum erreicht ist, da sich auf Grund des Rundens für längere Zeit die Zielzelle nicht verändert.) Leider kann ich die "Ganzzahl" Funktion auch nicht entfernen, da es sich um eine logistische Fragestellung handelt, und ich nicht z.B. noch passende 0,932 Teile in meine Gesamtausbeute (Zielzelle) mit einrechnen kann.
Ich hoffe, dass ich es einigermaßen verständlich geschildert habe. :)
Auf jeden Fall schon vorab vielen herzlichen Dank, dass Du Dir Zeit genommen hast!
Viele Grüße,
Marc
Anzeige
AW: Solver-Lösung mit Runden
27.07.2006 16:09:12
Uwe
Hallo, Marc,
ich kann eigentlich bei Deinen Vorgaben nicht entdecken, was da falsch laufen sollte oder anders ermittelt werden kann, vorausgesetzt, dass die Orientierungsrichtung der Boxen immer gleich mit den der Teile und des Containers laufen, also eine verdrehung der Box innerhalb des Kontainers nicht statfinden soll (Volumenmaximierung!).
Das Problem mit der Umwandlung in eine Gannzzahl kannst Du m.E umgehen, wenn Du den Bereich C2:C4 als Vorgabe-/Veränderliche erklärst und die Bedingung der Ganzzahligkeit beim Solver-Dialog hinzufügst.
In G stehen damit zeilenweise die Formel für die Boxseitenlänge einschließlich der Verpackungs und Zwischenschichtdicken: G2 = 2*F2+C2*(B2+D2)-D2. Mit diesem Ansatz ohne einer Division und der Nebenbedingung im Solver wird sichergestellt, dass auch in den G-Zellen ganzzahlige Werte berechnet werden.
Ferner sollten Die Nebenbedingungen angegeben werden, das die Werte der Spalte G größer gleich der kleinsten Boxeinheit ist und nicht größer werden, als eine logistisch sinnvolle Größe. Beide Werte könnten als zusätzliche Spalte in der Tabelle aufgenommen werden.
Vielleicht ist der Hinweis bereits hilfreich, bei meinem Versuch mit dem Solver mußte ich allerdings entdecken, dass die Nebenbedingungen bei einem Wiederholungslauf nicht ordnungsgemäß beachtet werden. Erst nachdem im Dialog die internen Werte des Solvers zurückgesetzt wurden und der Dialog erneut ausgefüllt wurde, lieferte der Solver das erwartete Ergebnis. Eine tiefere Untersuchung dieses Problem muß ich mir für die Wintertage aufheben ;)
Viel Erfolg,
Uwe
Anzeige
AW: Solver-Lösung mit Runden
28.07.2006 06:55:28
Marc
Hallo Uwe,
vielen herzlichen Dank für Deine Antwort!
Dies ist auf jeden Fall eine sehr gute Möglichkeit. Leider bin ich nu auf ein weiteres Problem gestoßen. Ich kann die veränderbaren Zellen leider nicht tauschen. In der Erweiterung dieser Excel-Kalkulation sollen meherer Teile (also im Prinzip z.B. 5x die vorhandene Tabelle) hinzugefügt werden. Alle diese Tabellen greifen bei den Größen der "Primary Box" auf die (einmaligen) veränderbaren Zellen zu und es entsteht so eine unterschiedliche Teilekapazität für jede Palette mit unterschiedlichem Teil. Ziel ist es eine möglichst optimale Standardgröße zu finden, mit der eine durschnittliche Auslastung der Pallete mit Teilen maximiert wird.
Trotzdem jedoch nochmals vielen lieben Dank!
Marc
Anzeige
AW: Solver-Lösung mit Runden
28.07.2006 07:42:11
Uwe
Hallo, Marc,
auch wenn Du die Zellen Tauschen könttest, so bleibt dennoch zwei mathematische Probleme, die der Solver bei dierer Aufgabenstellung nicht lösen kann und die die Ursache für das Verharren auf einer Lösung ist:
1. Die fehlende Eindeutigkeit der Lösung bei gegenen Randbedingungen
2. Die Eingangsgrößenabhängige Ausgangslage zum Suchen eines Lokalen Extremwertes
Die vier Bilder, die alle Lösungen der Einzelschrittberechnungen darstellen, sollen dieses veranschaulichen:

(zum Vergrößern auf Bild klicken)
Bild 1 stellt die gesammtheit aller Lösungen dar, wie sie sich ergibt, wenn die Stückanzahl der Spalte C alle möglichen Werte durchlaufen kann (Bedingung: Boxanzahl je Pallets nicht größer als 30, Gesamtlängen der zusammengestellten Boxkanten einer Richtung nicht größer als entsprechnene Palletsabmessung; "Leersäulen" erfüllen diese oder zumindest eine dieser Bedingungen nicht)
Es wird Deutlich, dass das Maximum 6720 von mehrere Zahlentriplen (C1:C3) erreicht wird.
Der rotumrandete Bereich ist im Bild 2 vergrößert dargestellt. Hier wir die der Einfuß der Anfangsgrößen erkennbar. Liegt diese auf einem lökalen Extrem (z.B. 4800) so bewirkt die veränderung der Werte in Spalte C um jeweils 1, dass Nachbarpunkte mit kleinen Ergebniswerten ermittelt werden, so dass diese Veränderungsrichtung für die weitere Untersuchung verwirfen wird (Es wird nicht nach höheren Gipfeln gesucht, wenn erst einaml ein Gipfel erreicht ist und sei er in seiner Erhebung aus der Umgebung auch noch so unbedeutend). Bild 3 bietet hier nochmals einen Vergrößerungsauschnitt.
Das Bild 4 stellt die nach der Größe der Lösung sortierten Säulen dar. Als Rubrikbeschriftung sind wie in Bild 3, die Werte der Tabellenspalte C2 bis C3 (Länge, Weite, Höhe) angeschrieben.
Sofern nicht weitere Bedingung (z.B. Minimum des Umhüllungsmaterials der Boxen bei größt möglichem Volumen oder soetwas ähnliches) hinzukommt, wird man keine eindeutige Lösung erhalten.
Gruß,
Uwe
Anzeige
AW: Solver-Lösung mit Runden P.S.
28.07.2006 08:51:58
Uwe
Hallo, Marc,
das ganze sollte m.E. als VBA-Programm erstellt werden, denn da erhält man mit einer dreifachverschaftelten Scheliche über dei Veränderlichen alle Lösungen, die man dann nach weiteren Zusatzkriterien filtern kann. Dieser Fall ist ein einfaches Beispiele in VBA, so dass man hiermit durchaus starten kann.
Gruß,
Uwe
P.S. zu meinem vorherigen Beitrag: für Bild 4 wurde ein nicht aktuelles Bild eingebunden, daher sind die Lösungen gem. Bild 3 darauf nicht vertreten.
AW: Solver-Lösung mit Runden P.S.
28.07.2006 15:50:52
Marc
Hallo Uwe,
die Sache scheint sich doch als erheblich komplex darzustellen.
Da ich von VBA leider nur (ganz) geringe Kenntnisse habe, arbeite ich gerade an einer Vereinfachung der manuellen Lösung.
Viele Grüße und nochmals herzlichen Dank dafür, dass Du Dich so ins Thema "reingekniet" hast!!
Beste Grüße,
Marc
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige