Optimization Service

Tối ưu hoá

Dịch vụ tối ưu hoá tuyến tính, được dùng để mô hình hoá và giải các chương trình tuyến tính và 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 ràng buộc tuyến tính có dạng lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound trong đó lowerBoundupperBound là các hằng số, a(i) là các hệ số hằng số và x(i) là các biến (ẩn số).
LinearOptimizationEngineCông cụ dùng để mô hình hoá và giải một chương trình tuyến tính.
LinearOptimizationServiceDịch vụ tối ưu hoá tuyến tính, được dùng để mô hình hoá và giải các chương trình tuyến tính và 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ứcKiểu dữ liệu trả vềMô tả ngắn
setCoefficient(variableName, coefficient)LinearOptimizationConstraintĐặt hệ số của một biến trong ràng buộc.

LinearOptimizationEngine

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
addConstraint(lowerBound, upperBound)LinearOptimizationConstraintThêm một ràng buộc tuyến tính mới vào 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á thành 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 quyết.
VariableTypeVariableTypeLoại biến do trình giải tạo.

Phương thức

Phương thứcKiểu 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à các chương trình số nguyên hỗn hợp).

LinearOptimizationSolution

Phương thức

Phương thứcKiểu 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 phải là giải pháp 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 được giải pháp vì những lý do không mong muố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.