Optimization Service

Tối ưu hóa

Dịch vụ tối ưu hoá tuyến tính, dùng để lập mô hình và giải các chương trình tuyến tính và chương trình tuyến tính số nguyên hỗn hợp.

Lớp

TênMô tả ngắn
LinearOptimizationConstraintĐối tượng lưu trữ một quy tắc ràng buộc tuyến tính ở dạng lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound, trong đó lowerBoundupperBound là hằng số, a(i) là hệ số hằng số và x(i) là biến (biến chưa xác định).
LinearOptimizationEngineCông cụ dùng để lập mô hình và giải một chương trình tuyến tính.
LinearOptimizationServiceDịch vụ tối ưu hoá tuyến tính, dùng để lập mô hình và giải các chương trình tuyến tính và chương trình tuyến tính số nguyên hỗn hợp.
LinearOptimizationSolutionGiải pháp của một chương trình tuyến tính.
StatusTrạng thái của giải pháp.
VariableTypeLoại biến do công cụ tạo.

LinearOptimizationConstraint

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
setCoefficient(variableName, coefficient)LinearOptimizationConstraintĐặt hệ số của một biến trong quy tắc ràng buộc.

LinearOptimizationEngine

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
addConstraint(lowerBound, upperBound)LinearOptimizationConstraintThêm một quy tắc ràng buộc tuyến tính mới trong mô hình.
addConstraints(lowerBounds, upperBounds, variableNames, coefficients)LinearOptimizationEngineThêm các quy tắc ràng buộc theo lô vào mô hình.
addVariable(name, lowerBound, upperBound)LinearOptimizationEngineThêm một biến liên tục mới vào mô hình.
addVariable(name, lowerBound, upperBound, type)LinearOptimizationEngineThêm một biến mới vào mô hình.
addVariable(name, lowerBound, upperBound, type, objectiveCoefficient)LinearOptimizationEngineThêm một biến mới vào mô hình.
addVariables(names, lowerBounds, upperBounds, types, objectiveCoefficients)LinearOptimizationEngineThêm các biến theo lô vào mô hình.
setMaximization()LinearOptimizationEngineĐặt hướng tối ưu hoá để tối đa hoá hàm mục tiêu tuyến tính.
setMinimization()LinearOptimizationEngineĐặt hướng tối ưu hoá để giảm thiểu hàm mục tiêu tuyến tính.
setObjectiveCoefficient(variableName, coefficient)LinearOptimizationEngineĐặt hệ số của một biến trong hàm mục tiêu tuyến tính.
solve()LinearOptimizationSolutionGiải chương trình tuyến tính hiện tại với thời hạn mặc định là 30 giây.
solve(seconds)LinearOptimizationSolutionGiải chương trình tuyến tính hiện tại.

LinearOptimizationService

Thuộc tính

Thuộc tínhLoạiMô tả
StatusStatusTrạng thái của trình giải.
VariableTypeVariableTypeLoại biến do trình giải tạo.

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
createEngine()LinearOptimizationEngineTạo một công cụ để giải các chương trình tuyến tính (có thể là chương trình số nguyên hỗn hợp).

LinearOptimizationSolution

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
getObjectiveValue()NumberLấy giá trị của hàm mục tiêu trong giải pháp hiện tại.
getStatus()StatusLấy trạng thái của giải pháp.
getVariableValue(variableName)NumberLấy giá trị của một biến trong giải pháp do lệnh gọi gần đây nhất đến LinearOptimizationEngine.solve() tạo ra.
isValid()BooleanXác định xem giải pháp có khả thi hay tối ưu hay không.

Status

Thuộc tính

Thuộc tínhLoạiMô tả
OPTIMALEnumTrạng thái khi tìm thấy giải pháp tối ưu.
FEASIBLEEnumTrạng thái khi tìm thấy một giải pháp khả thi (không nhất thiết là tối ưu).
INFEASIBLEEnumTrạng thái khi mô hình hiện tại không khả thi (không có giải pháp).
UNBOUNDEDEnumTrạng thái khi mô hình hiện tại không liên kết.
ABNORMALEnumTrạng thái khi không tìm thấy giải pháp vì lý do ngoài dự kiến.
MODEL_INVALIDEnumTrạng thái khi mô hình không hợp lệ.
NOT_SOLVEDEnumTrạng thái khi LinearOptimizationEngine.solve() chưa được gọi.

VariableType

Thuộc tính

Thuộc tínhLoạiMô tả
INTEGEREnumLoại biến chỉ có thể nhận giá trị số nguyên.
CONTINUOUSEnumLoại biến có thể nhận bất kỳ giá trị thực nào.