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

خواص

ویژگی تایپ کنید شرح
Status Status وضعیت حل کننده
VariableType VariableType نوع متغیرهای ایجاد شده توسط حل کننده.

مواد و روش ها

روش نوع برگشت توضیح مختصر
createEngine() LinearOptimizationEngine یک موتور برای حل برنامه های خطی (برنامه های عدد صحیح مختلط بالقوه) ایجاد می کند.

LinearOptimizationSolution

مواد و روش ها

روش نوع برگشت توضیح مختصر
getObjectiveValue() Number مقدار تابع هدف را در راه حل فعلی بدست می آورد.
getStatus() Status وضعیت راه حل را می گیرد.
getVariableValue(variableName) Number مقدار یک متغیر را در راه حل ایجاد شده توسط آخرین فراخوانی LinearOptimizationEngine.solve() دریافت می کند.
isValid() Boolean تعیین می کند که آیا راه حل ممکن است یا بهینه است.

Status

خواص

ویژگی تایپ کنید شرح
OPTIMAL Enum وضعیت زمانی که راه حل بهینه پیدا شده باشد.
FEASIBLE Enum وضعیت زمانی که یک راه حل عملی (نه لزوما بهینه) پیدا شده باشد.
INFEASIBLE Enum وضعیت زمانی که مدل فعلی غیرقابل اجرا باشد (راه حلی ندارد).
UNBOUNDED Enum وضعیت زمانی که مدل فعلی محدود نیست.
ABNORMAL Enum وضعیت زمانی که به دلایل غیرمنتظره نتوانست راه حلی پیدا کند.
MODEL_INVALID Enum وضعیت زمانی که مدل نامعتبر است.
NOT_SOLVED Enum وضعیت زمانی که LinearOptimizationEngine.solve() هنوز فراخوانی نشده است.

VariableType

خواص

ویژگی تایپ کنید شرح
INTEGER Enum نوع متغیری که فقط می تواند مقادیر صحیح بگیرد.
CONTINUOUS Enum نوع متغیری که می تواند هر مقدار واقعی را بگیرد.