Wo liegt der beste Plan?
Beim grafischen Lösen zeichnen Sie alle erlaubten Pläne als Fläche und suchen darin den besten Punkt. Mit zwei Variablen geht das auf Papier, und es zeigt, warum der beste Plan in einer Ecke liegt.
Die Bäckerei aus der letzten Lektion hat unendlich viele zulässige Pläne. Sie müssen aber nur vier Punkte prüfen.
Am Ende dieser Lektion
Notiz
Ich kann ein Problem mit zwei Variablen lösen, indem ich die Ecken des zulässigen Bereichs prüfe.
Schlüsselwörter
| Begriff | Was er bedeutet |
|---|---|
| Grenzgerade | die Gerade, auf der eine Nebenbedingung genau erfüllt ist |
| Zulässiger Bereich | die Fläche aller Pläne, die alle Grenzen einhalten |
| Ecke | ein Punkt des Bereichs, an dem zwei Grenzgeraden sich treffen |
| Schnittpunkt | der Punkt, an dem zwei Geraden sich kreuzen |
| Gewinnlinie | alle Pläne mit genau demselben Gewinn |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Jede Nebenbedingung zeichnet eine Grenzgerade
Setzen Sie in eine Nebenbedingung das Gleichheitszeichen ein, dann erhalten Sie eine Grenzgerade. Beim Ofen: x plus y gleich 4. Auf der einen Seite der Geraden ist die Grenze eingehalten, auf der anderen nicht.
Zum Zeichnen reichen zwei Punkte. Setzen Sie für jede Variable einmal 0 ein.
Beispiel: zwei Punkte je Grenzgerade
| Grenze | Gerade | Punkt mit x gleich 0 | Punkt mit y gleich 0 |
|---|---|---|---|
| Ofen | x + y = 4 | (0, 4) | (4, 0) |
| Teig | 2x + y = 6 | (0, 6) | (3, 0) |
| x nicht negativ | x = 0 | die ganze y-Achse | |
| y nicht negativ | y = 0 | die ganze x-Achse |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Der zulässige Bereich liegt innerhalb aller Grenzen
Der zulässige Bereich ist die Fläche, auf der alle Nebenbedingungen zugleich gelten. Bei der Bäckerei liegt er rechts von der y-Achse, über der x-Achse, unter der Ofengeraden und unter der Teiggeraden.
Seine Rand-Punkte, an denen zwei Grenzgeraden sich treffen, sind die Ecken. Hier sind es vier.
Beispiel: alle Schnittpunkte und welche Ecken sind
| Geraden | Schnittpunkt | Ofen: x + y <= 4 | Teig: 2x + y <= 6 | Ecke? |
|---|---|---|---|---|
| x = 0 und y = 0 | (0, 0) | ja | ja | ja |
| x = 0 und Ofen | (0, 4) | ja | ja | ja |
| x = 0 und Teig | (0, 6) | nein, 6 > 4 | ja | nein |
| y = 0 und Ofen | (4, 0) | ja | nein, 8 > 6 | nein |
| y = 0 und Teig | (3, 0) | ja | ja | ja |
| Ofen und Teig | (2, 2) | ja | ja | ja |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Der beste Plan liegt in einer Ecke
Alle Pläne mit demselben Gewinn liegen auf einer Gewinnlinie. Schieben Sie diese Linie nach außen, bis sie den Bereich gerade noch berührt. Der letzte Berührpunkt ist eine Ecke.
Darum müssen Sie nur die Ecken prüfen. Rechnen Sie in jeder den Gewinn aus und nehmen Sie die größte Zahl.
Den Gewinn in den vier Ecken ausrechnen
docker exec jupyter python3 -c "print([50*x+30*y for x, y in [(0, 0), (3, 0), (0, 4), (2, 2)]])"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Vier Gewinne, in der Reihenfolge der Ecken
Der Befehl gibt [0, 150, 120, 160] aus. Das sind die Gewinne in (0, 0), (3, 0), (0, 4) und (2, 2).
Die größte Zahl ist 160, in der Ecke (2, 2): zwei Bleche Brötchen und zwei Bleche Brezeln.
Die beste Ecke in Python suchen
# Eine Werkstatt: Gewinn je Stück 20 und 60 Euro.
ecken = [[0, 0], [4, 0], [0, 3], [2, 2]]
gewinne = [20, 60]
beste = ecken[0]
bester_wert = 0
for ecke in ecken:
wert = ecke[0] * gewinne[0] + ecke[1] * gewinne[1]
print("Ecke", ecke, "bringt", wert, "Euro")
if wert > bester_wert:
beste = ecke
bester_wert = wert
print("Beste Ecke:", beste)
# Ändern Sie gewinne in [60, 20] und starten Sie erneut.
# Welche Ecke ist jetzt die beste?
Ein häufiger Fehler
Warnung
Viele denken, der beste Plan liege irgendwo in der Mitte der Fläche. Bei einer linearen Zielfunktion stimmt das nicht. Jeder Punkt in der Mitte lässt sich weiter nach außen schieben und wird dabei besser oder gleich gut.