Parameters
Solver Parameters
The solver settings are displayed in the following table.
Parameters |
Is Required |
Default Value |
Description |
---|---|---|---|
|
false |
N/A |
Filepath to initialize dual variables for algorithm restarts (optional). |
|
false |
1E-3 |
Coefficient for quadratic objective regularizer, used by most objectives. |
|
true |
N/A |
Type of projection used. Possible values are Simplex, SimplexInequality, BoxCut, BoxCutInequality and UnitBox. |
|
false |
1 |
Upper bound for the box cut projection constraint (if used). |
|
true |
N/A |
Class name of the objective function, one of MooSolverDualObjectiveFunction, MatchingSolverDualObjectiveFunction, ConstrainedMatchingSolverDualObjectiveFunction, ParallelMooSolverDualObjectiveFunction. |
|
false |
AVRO |
The format of output, can be AVRO, JSON, CSV or ORC. |
|
false |
false |
Flag to save primal variable values at the solution. |
|
false |
1 |
The levels of logging to be shown. We currently support 0 (concise logging) and 1 (log with increased verbosity). |
|
true |
N/A |
Directory path to save solution at. |
|
true |
N/A |
Path of matrix A & c encoded as data blocks. |
|
true |
N/A |
Path of vector b. |
|
true |
N/A |
The format of input data, e.g. AVRO, JSON, CSV or ORC. |
|
true |
N/A |
The maximum number of iterations the solver will run. |
|
true |
N/A |
The type of optimizer, currently supported: AGD, LBFGS and LBFGSB. |
|
false |
true |
True if Ax <= b, false if Ax = b or have mixed constraints. |
|
false |
0 |
The pivot number if we have mixed A_1x <= b1 and A_2x = b2, i.e. how many inequality constraints come first. |
|
true |
N/A |
Tolerance criteria for dual variable change. |
|
true |
N/A |
Tolerance criteria for slack. |
Spark Parameters
There are four regular spark parameters you can tune:
spark.driver.mem
spark.executor.mem
spark.executor.cores
spark.executor.num
The most efficient spark parameters are dependent on the problem scale and structure and there is no one-size-fits-all configuration. The default parameters usually can achieve acceptable performance, but users can definitely try tuning them if needed.