Optimization Service

การเพิ่มประสิทธิภาพ

บริการการเพิ่มประสิทธิภาพเชิงเส้นที่ใช้ในการสร้างโมเดลและแก้ปัญหาเชิงเส้นและโปรแกรมเชิงเส้นแบบผสมระหว่างจำนวนเต็ม

ชั้นเรียน

ชื่อรายละเอียดแบบย่อ
LinearOptimizationConstraintออบเจ็กต์ที่จัดเก็บข้อจำกัดเชิงเส้นในรูปแบบ lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound โดยที่ lowerBound และ upperBound เป็นค่าคงที่ a(i) เป็นค่าสัมประสิทธิ์คงที่ และ x(i) เป็นตัวแปร (ค่าที่ไม่รู้จัก)
LinearOptimizationEngineเครื่องมือที่ใช้สร้างโมเดลและแก้ปัญหาโปรแกรมเชิงเส้น
LinearOptimizationServiceบริการการเพิ่มประสิทธิภาพเชิงเส้นที่ใช้ในการสร้างโมเดลและแก้ปัญหาเชิงเส้นและโปรแกรมเชิงเส้นแบบผสมระหว่างจำนวนเต็ม
LinearOptimizationSolutionโซลูชันของโปรแกรมเชิงเส้น
Statusสถานะของโซลูชัน
VariableTypeประเภทตัวแปรที่เครื่องมือสร้าง

LinearOptimizationConstraint

เมธอด

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
setCoefficient(variableName, coefficient)LinearOptimizationConstraintตั้งค่าสัมประสิทธิ์ของตัวแปรในข้อจำกัด

LinearOptimizationEngine

เมธอด

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
addConstraint(lowerBound, upperBound)LinearOptimizationConstraintเพิ่มข้อจำกัดเชิงเส้นใหม่ในโมเดล
addConstraints(lowerBounds, upperBounds, variableNames, coefficients)LinearOptimizationEngineเพิ่มข้อจำกัดแบบเป็นกลุ่มลงในโมเดล
addVariable(name, lowerBound, upperBound)LinearOptimizationEngineเพิ่มตัวแปรต่อเนื่องใหม่ลงในโมเดล
addVariable(name, lowerBound, upperBound, type)LinearOptimizationEngineเพิ่มตัวแปรใหม่ลงในโมเดล
addVariable(name, lowerBound, upperBound, type, objectiveCoefficient)LinearOptimizationEngineเพิ่มตัวแปรใหม่ลงในโมเดล
addVariables(names, lowerBounds, upperBounds, types, objectiveCoefficients)LinearOptimizationEngineเพิ่มตัวแปรหลายรายการลงในโมเดล
setMaximization()LinearOptimizationEngineตั้งค่าทิศทางการเพิ่มประสิทธิภาพเพื่อเพิ่มฟังก์ชันวัตถุประสงค์เชิงเส้นให้สูงสุด
setMinimization()LinearOptimizationEngineตั้งค่าทิศทางการเพิ่มประสิทธิภาพเพื่อลดฟังก์ชันวัตถุประสงค์เชิงเส้น
setObjectiveCoefficient(variableName, coefficient)LinearOptimizationEngineกำหนดค่าสัมประสิทธิ์ของตัวแปรในฟังก์ชันวัตถุประสงค์เชิงเส้น
solve()LinearOptimizationSolutionแก้ปัญหาโปรแกรมเชิงเส้นปัจจุบันโดยกำหนดเวลาเริ่มต้นที่ 30 วินาที
solve(seconds)LinearOptimizationSolutionแก้ปัญหาโปรแกรมเชิงเส้นปัจจุบัน

LinearOptimizationService

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ประเภทคำอธิบาย
StatusStatusสถานะของผู้แก้ปัญหา
VariableTypeVariableTypeประเภทตัวแปรที่สร้างโดยโปรแกรมโซลูชัน

เมธอด

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
createEngine()LinearOptimizationEngineสร้างเครื่องมือเพื่อแก้ปัญหาเชิงเส้น (อาจเป็นโปรแกรมแบบผสมระหว่างจำนวนเต็ม)

LinearOptimizationSolution

เมธอด

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
getObjectiveValue()Numberรับค่าของฟังก์ชันวัตถุประสงค์ในโซลูชันปัจจุบัน
getStatus()Statusรับสถานะของโซลูชัน
getVariableValue(variableName)Numberรับค่าของตัวแปรในโซลูชันที่สร้างโดยการเรียกใช้ LinearOptimizationEngine.solve() ครั้งล่าสุด
isValid()Booleanพิจารณาว่าโซลูชันนั้นเป็นไปได้หรือเหมาะสมหรือไม่

Status

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ประเภทคำอธิบาย
OPTIMALEnumสถานะเมื่อพบโซลูชันที่ดีที่สุด
FEASIBLEEnumสถานะเมื่อพบโซลูชันที่เป็นไปได้ (ไม่จําเป็นต้องดีที่สุด)
INFEASIBLEEnumสถานะเมื่อโมเดลปัจจุบันไม่สามารถทำได้ (ไม่มีวิธีแก้ปัญหา)
UNBOUNDEDEnumสถานะเมื่อโมเดลปัจจุบันไม่ได้เชื่อมโยง
ABNORMALEnumสถานะเมื่อไม่พบวิธีแก้ปัญหาด้วยเหตุผลที่ไม่คาดคิด
MODEL_INVALIDEnumสถานะเมื่อโมเดลไม่ถูกต้อง
NOT_SOLVEDEnumสถานะเมื่อยังไม่ได้เรียกใช้ LinearOptimizationEngine.solve()

VariableType

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ประเภทคำอธิบาย
INTEGEREnumประเภทตัวแปรที่รับเฉพาะค่าจำนวนเต็ม
CONTINUOUSEnumประเภทตัวแปรที่รับค่าจริงได้