Optimize_WSO | R Documentation |
Optimize_WSO
creates and optimizes the Weighted Sum Optimization (WSO) in Julia environment.
It requires two objective functions and their respective positive weights.
(For detailed information refer to the paper)
Optimize_WSO(First_Objective=0, Second_Objective=0, Risk_Objective=0,
Time_limit=1e7, Solver="SCIP", Silence= FALSE, Env= .GlobalEnv)
First_Objective |
A float parameter: defining the weight of the first objective function ( |
Second_Objective |
A float parameter: defining the weight of the second objective function ( |
Risk_Objective |
A float parameter: defining the weight of the Risk objective function ( |
Time_limit |
A double: the total time limit in seconds |
Solver |
A string: defining the solver to be used to solve the problem. (Default: "SCIP") |
Silence |
A binary parameter: if |
Env |
the environment where the package should create or access variables. By default the package works in the R's Global environment. (Default: .GlobalEnv) |
In the list that Optimize_WSO
returns, [["Status"]]
defines the status of the returned WSO solution.
If [["Status"]]="OPTIMAL"
, the WSO was solved to optimality and the Parcels' optimal status are stored in [["Result"]]
.
Also, the WSO optimal values of objectives will be stored in either [["First_Objective"]]
, [["Second_Objective"]]
, or [["Risk_Objective"]]
, based on the input objectives.
If [["Status"]]="TIME_LIMIT"
, the solver was terminated because the time limit was reached.
If any feasible solution was reported by the solver, it would be stored in [["Result"]]
. Otherwise, [["Result"]]
and objective values would be
all equal to "N/A".
If [["Status"]]="INFEASIBLE"
, the problem is infeasible. So, no solution would be reported.
In any other case, the [["Status"]]
will be the solution status that the solver has reported.
Note 1: The weights should be non negative, and two objectives should have positive weights.
A list with 8 members:
[["Solution_time"]]
: a numeric value; defining the time spent in the solver in seconds.
[["Status"]]
: a character; defining the status of the solution.
[["Gap"]]
: a numeric value; defining the relative optimality gap of the solution.
[["Result"]]
: a vector of binaries; its i
'th element defines if the parcel named Parcels[i]
is protected or not. Comparing these values with the values of Status
defined when creating the problem,
the user can find which parcels are to be invested, divested, or remain the same.
[["Firs_Objective"]]
: a numveric value; (if applicable) returns the WSO value of first objective.
[["Second_Objective"]]
: a numveric value; (if applicable) returns the WSO value of second objective.
[["Risk_Objective"]]
: a numveric value; (if applicable) returns the WSO value of risk objective.
Other Optimizer Functions:
Load_Problem()
,
Optimize_First_Objective()
,
Optimize_NBP()
,
Optimize_Second_Objective()
## Not run:
## to find WSO solution for First Objective and Second Objective with weights equal to 1 and 2: ##
Optimize_WSO(First_Objective=1, Second_Objective=2, Time_limit=1e7, Solver="SCIP", Silence= FALSE)
## to find WSO solution for First Objective and Risk Objective with weights equal to 1 and 2: ##
Optimize_WSO(First_Objective=1, Risk_Objective=2, Time_limit=1e7, Solver="SCIP", Silence= FALSE)
## to find WSO solution for Second Objective and Risk Objective with weights equal to 1 and 2: ##
Optimize_WSO(Second_Objective=1, Risk_Objective=2, Time_limit=1e7, Solver="SCIP", Silence= FALSE)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.