Optimization Service

Pengoptimalan

Layanan pengoptimalan linear, yang digunakan untuk membuat model dan menyelesaikan program linear bilangan bulat dan campuran.

Class

NamaDeskripsi singkat
LinearOptimizationConstraintObjek yang menyimpan batasan linear bentuk lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound dengan lowerBound dan upperBound adalah konstanta, a(i) adalah koefisien konstan, dan x(i) adalah variabel (tidak diketahui).
LinearOptimizationEngineMesin yang digunakan untuk membuat model dan menyelesaikan program linear.
LinearOptimizationServiceLayanan pengoptimalan linear, yang digunakan untuk membuat model dan menyelesaikan program linear bilangan bulat dan campuran.
LinearOptimizationSolutionSolusi dari program linear.
StatusStatus solusi.
VariableTypeJenis variabel yang dibuat oleh mesin.

LinearOptimizationConstraint

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
setCoefficient(variableName, coefficient)LinearOptimizationConstraintMenetapkan koefisien variabel dalam batasan.

LinearOptimizationEngine

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
addConstraint(lowerBound, upperBound)LinearOptimizationConstraintMenambahkan batasan linear baru dalam model.
addConstraints(lowerBounds, upperBounds, variableNames, coefficients)LinearOptimizationEngineMenambahkan batasan dalam batch ke model.
addVariable(name, lowerBound, upperBound)LinearOptimizationEngineMenambahkan variabel berkelanjutan baru ke model.
addVariable(name, lowerBound, upperBound, type)LinearOptimizationEngineMenambahkan variabel baru ke model.
addVariable(name, lowerBound, upperBound, type, objectiveCoefficient)LinearOptimizationEngineMenambahkan variabel baru ke model.
addVariables(names, lowerBounds, upperBounds, types, objectiveCoefficients)LinearOptimizationEngineMenambahkan variabel dalam batch ke model.
setMaximization()LinearOptimizationEngineMenetapkan arah pengoptimalan untuk memaksimalkan fungsi tujuan linear.
setMinimization()LinearOptimizationEngineMenetapkan arah pengoptimalan untuk meminimalkan fungsi tujuan linear.
setObjectiveCoefficient(variableName, coefficient)LinearOptimizationEngineMenetapkan koefisien variabel dalam fungsi tujuan linear.
solve()LinearOptimizationSolutionSelesaikan program linear saat ini dengan batas waktu default 30 detik.
solve(seconds)LinearOptimizationSolutionSelesaikan program linear saat ini.

LinearOptimizationService

Properti

PropertiJenisDeskripsi
StatusStatusStatus pemecah masalah.
VariableTypeVariableTypeJenis variabel yang dibuat oleh pemecah masalah.

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
createEngine()LinearOptimizationEngineMembuat mesin untuk menyelesaikan program linear (program yang berpotensi campuran bilangan bulat).

LinearOptimizationSolution

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
getObjectiveValue()NumberMendapatkan nilai fungsi tujuan dalam solusi saat ini.
getStatus()StatusMendapatkan status solusi.
getVariableValue(variableName)NumberMendapatkan nilai variabel dalam solusi yang dibuat oleh panggilan terakhir ke LinearOptimizationEngine.solve().
isValid()BooleanMenentukan apakah solusi tersebut layak atau optimal.

Status

Properti

PropertiJenisDeskripsi
OPTIMALEnumStatus ketika solusi optimal telah ditemukan.
FEASIBLEEnumStatus ketika solusi yang layak (belum tentu optimal) telah ditemukan.
INFEASIBLEEnumStatus ketika model saat ini tidak layak (tidak memiliki solusi).
UNBOUNDEDEnumStatus saat model saat ini tidak terikat.
ABNORMALEnumStatus saat gagal menemukan solusi karena alasan yang tidak terduga.
MODEL_INVALIDEnumStatus saat model tidak valid.
NOT_SOLVEDEnumStatus saat LinearOptimizationEngine.solve() belum dipanggil.

VariableType

Properti

PropertiJenisDeskripsi
INTEGEREnumJenis variabel yang hanya dapat mengambil nilai bilangan bulat.
CONTINUOUSEnumJenis variabel yang dapat mengambil nilai riil apa pun.