Was ist der Unterschied zwischen ganzzahliger und linearer Programmierung?


Antwort 1:

Lassen Sie es uns auf die Grundlagen reduzieren.

Die lineare Programmierung (LP) ist ein Versuch, unter bestimmten Bedingungen eine maximale oder minimale Lösung für eine Funktion zu finden. Es könnte so aussehen:

Diese Einschränkungen müssen linear sein. Sie können keine Parameter für hyperbolische Einschränkungen haben. Wenn Sie nur 2–3 Einschränkungen erhalten, können Sie diese visuell anzeigen, indem Sie sie in einem Diagramm zeichnen:

Eines ist immer gemeinsam: Die Einschränkungen sind linear. Immer eine Linie. Niemals gebogen oder in seltsamen Formen. Das ist die Essenz von LPs.

Die Ganzzahlprogrammierung ist eine Teilmenge der linearen Programmierung. Es hat alle Eigenschaften einer LP mit Ausnahme einer Einschränkung: Die Lösung für die LP muss auf ganze Zahlen beschränkt sein.

Wenn Sie im obigen Beispiel die optimale Lösung für ein Problem finden (dargestellt durch das rote Quadrat - sieht aus wie etwa (2.9, 3.8)), ist diese Lösung falsch: Diese Zahlen sind keine ganzen Zahlen.

Sie müssten herumwackeln, bis Sie die beste ganzzahlige Lösung erreichen, die durch die blauen Punkte dargestellt wird. Für dieses Problem sieht es so aus, als ob die ganzzahlige Programmierlösung (2,4) sein könnte.

Hoffe das hat geholfen.


Antwort 2:

Integer Programming (IP) ist eine Teilmenge des breiteren Feldes der linearen Programmierung (LP). Beide suchen nach optimalen Werten (entweder im Sinne der Minimierung oder Maximierung) einer objektiven Funktion einer Reihe von Entscheidungsvariablen, die Maßnahmen darstellen, die in dem zu modellierenden Problem ergriffen werden können.

In einigen Fällen müssen die Entscheidungen diskret sein (z. B. welchem ​​Krankenhaus ein Notfallpatient zugewiesen werden soll), während einige andere Entscheidungen kontinuierlicher Natur sind (z. B. Bestimmung der Dosierung von Flüssigkeiten, die einem Patienten verabreicht werden sollen). Ersteres ist für IP und letzteres für LP.

Die Anwendungsszenarien sind nicht der große Unterschied zwischen IP und LP. Es ist die Lösung, die für ein großes IP-Problem am schwierigsten ist. Das heißt, es gibt keinen Algorithmus, der versprechen kann, dass er die endgültige Lösung oder Lösungen in einer Polynomzeit finden könnte.

Intuitiv erscheint es ansprechend, alle möglichen Werte aufzuzählen, die eine diskrete Entscheidung treffen kann. In den meisten Anwendungen sind die diskreten Variablen jedoch vollständig miteinander verbunden, was eine Aufzählung aller Wertekombinationen erfordert, die der gesamte Satz diskreter Variablen annehmen kann. Das kostet verrückt Zeit. Daher ist eine effizientere Technik erforderlich, um Probleme zu lösen, die diskrete Variablen enthalten.

Mit einem Wort, IP und LP variieren in den Algorithmen.


Antwort 3:

Die lineare Programmierung ist im Grunde eine iterative Technik zur Optimierung, bei der Sie bestimmte Daten erhalten und die Ausgabe mit den erforderlichen Einschränkungen maximieren oder minimieren müssen. Grundsätzlich ist es eine quantitative Analyse.

Die ganzzahlige Programmierung ist dagegen eine Technik, die zur qualitativen Bewertung der Einschränkungen verwendet wird. Möglicherweise kennen Sie Beispielumfragen, bei denen Sie aufgefordert werden, eine Nummer für Ihre Produktzufriedenheit anzugeben. Angenommen, Sie haben eine Online-Aufladung von freecharge durchgeführt oder zahlen tm oder Sie haben eine OLA- oder UBER-Fahrt durchlaufen. Sie müssen einen Fragebogen zu verschiedenen Parametern ausfüllen, die auf einer Skala von 1 bis 5 oder je nach Fall abgefragt wurden. Wenn das Unternehmen eine Stichprobenerhebung von 1000 solchen Kunden durchführt und mit der gesamten Bevölkerung korreliert, um sie auf eine Verteilungskurve anzupassen, können sie analysieren, unter welchem ​​Serviceaspekt die Kunden am zufriedensten und unter welchen am wenigsten zufrieden sind. Abhängig von den Ergebnissen der Umfrage formuliert das Unternehmen seine zukünftige Strategie unter Berücksichtigung der damit verbundenen Servicekosten. Zum Beispiel, wenn die Leute in OLA oder UBER mehr Limousinen bevorzugen, selbst wenn es dem Kunden nichts ausmacht, ein paar Dollar mehr zu zahlen, erhöht das Unternehmen die Flotte von Limousinen und reduziert die Flotte von Miniautos.

In ähnlicher Weise können andere Fälle der Ganzzahlprogrammierung in Beispiele aus verschiedenen Branchen aufgenommen werden


Antwort 4:

Die lineare Programmierung ist im Grunde eine iterative Technik zur Optimierung, bei der Sie bestimmte Daten erhalten und die Ausgabe mit den erforderlichen Einschränkungen maximieren oder minimieren müssen. Grundsätzlich ist es eine quantitative Analyse.

Die ganzzahlige Programmierung ist dagegen eine Technik, die zur qualitativen Bewertung der Einschränkungen verwendet wird. Möglicherweise kennen Sie Beispielumfragen, bei denen Sie aufgefordert werden, eine Nummer für Ihre Produktzufriedenheit anzugeben. Angenommen, Sie haben eine Online-Aufladung von freecharge durchgeführt oder zahlen tm oder Sie haben eine OLA- oder UBER-Fahrt durchlaufen. Sie müssen einen Fragebogen zu verschiedenen Parametern ausfüllen, die auf einer Skala von 1 bis 5 oder je nach Fall abgefragt wurden. Wenn das Unternehmen eine Stichprobenerhebung von 1000 solchen Kunden durchführt und mit der gesamten Bevölkerung korreliert, um sie auf eine Verteilungskurve anzupassen, können sie analysieren, unter welchem ​​Serviceaspekt die Kunden am zufriedensten und unter welchen am wenigsten zufrieden sind. Abhängig von den Ergebnissen der Umfrage formuliert das Unternehmen seine zukünftige Strategie unter Berücksichtigung der damit verbundenen Servicekosten. Zum Beispiel, wenn die Leute in OLA oder UBER mehr Limousinen bevorzugen, selbst wenn es dem Kunden nichts ausmacht, ein paar Dollar mehr zu zahlen, erhöht das Unternehmen die Flotte von Limousinen und reduziert die Flotte von Miniautos.

In ähnlicher Weise können andere Fälle der Ganzzahlprogrammierung in Beispiele aus verschiedenen Branchen aufgenommen werden