[PYTHON] Ein sehr einfaches Beispiel für ein Optimierungsproblem mit ortoolpy

Was ich getan habe

Als ich "100 Knocking Python Practical Data Analysis" las, stieß ich auf ein Optimierungsproblem mit ortoolpy und pulp. Es war ein Modul, das ich nie benutzt hatte, also machte ich ein einfaches Beispiel für mein eigenes Verständnis.

Einzelheiten finden Sie in den Kommentaren im Code.

Umgebung

Code

#Importieren Sie die erforderlichen Module
from pulp import LpVariable, lpSum, value
from ortoolpy import model_min

#Modelldefinition
model = model_min()

#Variablendefinition
# v_0 und v_Definieren Sie zwei Variablen mit dem Namen 1. Ein Container, der keinen bestimmten Wert enthält.
v_0 = LpVariable("V0") 
v_1 = LpVariable("V1")

#Einstellen der Zielfunktion
# v_0 + v_Ich möchte 1 minimieren.
model += lpSum([v_0, v_1])

#Einschränkungsbedingung hinzufügen
# v_0 ist 2 oder mehr
model += v_0 >= 2

# v_1 ist 3 oder mehr
model += v_1 >= 3

# v_0 und v_1 ist der gleiche Wert
model += v_0 == v_1

#Aus den obigen Bedingungen, v_0 = v_1 =Ich erwarte 3.

#Das Problem lösen
model.solve()

#Ergebnisse anzeigen
# value(Variablennamen)Anschließend können Sie den Wert des Berechnungsergebnisses ablesen.
print("v_0 : ", value(v_0))
print("v_1 : ", value(v_1))
# v_0 :  3.0
# v_1 :  3.0
#Der erwartete Wert wurde erhalten.

Recommended Posts

Ein sehr einfaches Beispiel für ein Optimierungsproblem mit ortoolpy
Pandas: Ein sehr einfaches Beispiel für DataFrame.rolling ()
Kombinationsoptimierung - typisches Problem-Set-Split-Problem
Ein einfaches Beispiel für pivot_table.
Implementierung eines einfachen Partikelfilters
Möchten Sie ein einfaches Klassifizierungsproblem lösen?
[AtCoder] Lösen Sie ein Problem von ABC101 ~ 169 mit Python
Maschinelles Lernen des Sports - Analyse der J-League als Beispiel - ②
Einfaches Implementierungsbeispiel für eine Art der Datenerweiterung