Optimization Service

Pengoptimalan

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

Class

NamaDeskripsi singkat
LinearOptimizationConstraintObjek yang menyimpan batasan linear dalam bentuk lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound dengan lowerBound dan upperBound adalah konstanta, a(i) adalah koefisien konstanta, dan x(i) adalah variabel (tidak diketahui).
LinearOptimizationEngineMesin yang digunakan untuk membuat model dan memecahkan program linear.
LinearOptimizationServiceLayanan pengoptimalan linear, yang digunakan untuk membuat model dan menyelesaikan program linear dan linear bilangan bulat campuran.
LinearOptimizationSolutionSolusi 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 kontinu 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()LinearOptimizationSolutionMenyelesaikan program linear saat ini dengan batas waktu default 30 detik.
solve(seconds)LinearOptimizationSolutionMenyelesaikan program linear saat ini.

LinearOptimizationService

Properti

PropertiJenisDeskripsi
StatusStatusStatus pemecah.
VariableTypeVariableTypeJenis variabel yang dibuat oleh solver.

Metode

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

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 dapat dilakukan atau optimal.

Status

Properti

PropertiJenisDeskripsi
OPTIMALEnumStatus saat solusi optimal telah ditemukan.
FEASIBLEEnumStatus saat solusi yang sesuai (tidak harus optimal) telah ditemukan.
INFEASIBLEEnumStatus saat model saat ini tidak dapat dilakukan (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 menggunakan nilai bilangan bulat.
CONTINUOUSEnumJenis variabel yang dapat menggunakan nilai riil apa pun.