Java Reference

Java Reference

MPSolverParameters.java
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2  * This file was automatically generated by SWIG (http://www.swig.org).
3  * Version 4.0.1
4  *
5  * Do not make changes to this file unless you know what you are doing--modify
6  * the SWIG interface file instead.
7  * ----------------------------------------------------------------------------- */
8 
9 package com.google.ortools.linearsolver;
10 
11 import java.lang.reflect.*;
12 
39 public class MPSolverParameters {
40  private transient long swigCPtr;
41  protected transient boolean swigCMemOwn;
42 
43  protected MPSolverParameters(long cPtr, boolean cMemoryOwn) {
44  swigCMemOwn = cMemoryOwn;
45  swigCPtr = cPtr;
46  }
47 
48  protected static long getCPtr(MPSolverParameters obj) {
49  return (obj == null) ? 0 : obj.swigCPtr;
50  }
51 
52  @SuppressWarnings("deprecation")
53  protected void finalize() {
54  delete();
55  }
56 
57  public synchronized void delete() {
58  if (swigCPtr != 0) {
59  if (swigCMemOwn) {
60  swigCMemOwn = false;
61  main_research_linear_solverJNI.delete_MPSolverParameters(swigCPtr);
62  }
63  swigCPtr = 0;
64  }
65  }
66 
67  public static double getKDefaultRelativeMipGap() {
68  return main_research_linear_solverJNI.MPSolverParameters_kDefaultRelativeMipGap_get();
69  }
70 
71  public static double getKDefaultPrimalTolerance() {
72  return main_research_linear_solverJNI.MPSolverParameters_kDefaultPrimalTolerance_get();
73  }
74 
75  public static double getKDefaultDualTolerance() {
76  return main_research_linear_solverJNI.MPSolverParameters_kDefaultDualTolerance_get();
77  }
78 
80  return MPSolverParameters.PresolveValues.swigToEnum(main_research_linear_solverJNI.MPSolverParameters_kDefaultPresolve_get());
81  }
82 
84  return MPSolverParameters.IncrementalityValues.swigToEnum(main_research_linear_solverJNI.MPSolverParameters_kDefaultIncrementality_get());
85  }
86 
90  public MPSolverParameters() {
91  this(main_research_linear_solverJNI.new_MPSolverParameters(), true);
92  }
93 
97  public void setDoubleParam(MPSolverParameters.DoubleParam param, double value) {
98  main_research_linear_solverJNI.MPSolverParameters_setDoubleParam(swigCPtr, this, param.swigValue(), value);
99  }
100 
104  public void setIntegerParam(MPSolverParameters.IntegerParam param, int value) {
105  main_research_linear_solverJNI.MPSolverParameters_setIntegerParam(swigCPtr, this, param.swigValue(), value);
106  }
107 
112  return main_research_linear_solverJNI.MPSolverParameters_getDoubleParam(swigCPtr, this, param.swigValue());
113  }
114 
119  return main_research_linear_solverJNI.MPSolverParameters_getIntegerParam(swigCPtr, this, param.swigValue());
120  }
121 
125  public enum DoubleParam {
129  RELATIVE_MIP_GAP(main_research_linear_solverJNI.MPSolverParameters_RELATIVE_MIP_GAP_get()),
136  PRIMAL_TOLERANCE(main_research_linear_solverJNI.MPSolverParameters_PRIMAL_TOLERANCE_get()),
140  DUAL_TOLERANCE(main_research_linear_solverJNI.MPSolverParameters_DUAL_TOLERANCE_get());
141 
142  public final int swigValue() {
143  return swigValue;
144  }
145 
146  public static DoubleParam swigToEnum(int swigValue) {
147  DoubleParam[] swigValues = DoubleParam.class.getEnumConstants();
148  if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
149  return swigValues[swigValue];
150  for (DoubleParam swigEnum : swigValues)
151  if (swigEnum.swigValue == swigValue)
152  return swigEnum;
153  throw new IllegalArgumentException("No enum " + DoubleParam.class + " with value " + swigValue);
154  }
155 
156  @SuppressWarnings("unused")
157  private DoubleParam() {
158  this.swigValue = SwigNext.next++;
159  }
160 
161  @SuppressWarnings("unused")
162  private DoubleParam(int swigValue) {
163  this.swigValue = swigValue;
164  SwigNext.next = swigValue+1;
165  }
166 
167  @SuppressWarnings("unused")
168  private DoubleParam(DoubleParam swigEnum) {
169  this.swigValue = swigEnum.swigValue;
170  SwigNext.next = this.swigValue+1;
171  }
172 
173  private final int swigValue;
174 
175  private static class SwigNext {
176  private static int next = 0;
177  }
178  }
179 
183  public enum IntegerParam {
187  PRESOLVE(main_research_linear_solverJNI.MPSolverParameters_PRESOLVE_get()),
191  LP_ALGORITHM(main_research_linear_solverJNI.MPSolverParameters_LP_ALGORITHM_get()),
195  INCREMENTALITY(main_research_linear_solverJNI.MPSolverParameters_INCREMENTALITY_get()),
199  SCALING(main_research_linear_solverJNI.MPSolverParameters_SCALING_get());
200 
201  public final int swigValue() {
202  return swigValue;
203  }
204 
205  public static IntegerParam swigToEnum(int swigValue) {
206  IntegerParam[] swigValues = IntegerParam.class.getEnumConstants();
207  if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
208  return swigValues[swigValue];
209  for (IntegerParam swigEnum : swigValues)
210  if (swigEnum.swigValue == swigValue)
211  return swigEnum;
212  throw new IllegalArgumentException("No enum " + IntegerParam.class + " with value " + swigValue);
213  }
214 
215  @SuppressWarnings("unused")
216  private IntegerParam() {
217  this.swigValue = SwigNext.next++;
218  }
219 
220  @SuppressWarnings("unused")
221  private IntegerParam(int swigValue) {
222  this.swigValue = swigValue;
223  SwigNext.next = swigValue+1;
224  }
225 
226  @SuppressWarnings("unused")
227  private IntegerParam(IntegerParam swigEnum) {
228  this.swigValue = swigEnum.swigValue;
229  SwigNext.next = this.swigValue+1;
230  }
231 
232  private final int swigValue;
233 
234  private static class SwigNext {
235  private static int next = 0;
236  }
237  }
238 
242  public enum PresolveValues {
246  PRESOLVE_OFF(main_research_linear_solverJNI.MPSolverParameters_PRESOLVE_OFF_get()),
250  PRESOLVE_ON(main_research_linear_solverJNI.MPSolverParameters_PRESOLVE_ON_get());
251 
252  public final int swigValue() {
253  return swigValue;
254  }
255 
256  public static PresolveValues swigToEnum(int swigValue) {
257  PresolveValues[] swigValues = PresolveValues.class.getEnumConstants();
258  if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
259  return swigValues[swigValue];
260  for (PresolveValues swigEnum : swigValues)
261  if (swigEnum.swigValue == swigValue)
262  return swigEnum;
263  throw new IllegalArgumentException("No enum " + PresolveValues.class + " with value " + swigValue);
264  }
265 
266  @SuppressWarnings("unused")
267  private PresolveValues() {
268  this.swigValue = SwigNext.next++;
269  }
270 
271  @SuppressWarnings("unused")
272  private PresolveValues(int swigValue) {
273  this.swigValue = swigValue;
274  SwigNext.next = swigValue+1;
275  }
276 
277  @SuppressWarnings("unused")
278  private PresolveValues(PresolveValues swigEnum) {
279  this.swigValue = swigEnum.swigValue;
280  SwigNext.next = this.swigValue+1;
281  }
282 
283  private final int swigValue;
284 
285  private static class SwigNext {
286  private static int next = 0;
287  }
288  }
289 
293  public enum LpAlgorithmValues {
297  DUAL(main_research_linear_solverJNI.MPSolverParameters_DUAL_get()),
301  PRIMAL(main_research_linear_solverJNI.MPSolverParameters_PRIMAL_get()),
305  BARRIER(main_research_linear_solverJNI.MPSolverParameters_BARRIER_get());
306 
307  public final int swigValue() {
308  return swigValue;
309  }
310 
311  public static LpAlgorithmValues swigToEnum(int swigValue) {
312  LpAlgorithmValues[] swigValues = LpAlgorithmValues.class.getEnumConstants();
313  if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
314  return swigValues[swigValue];
315  for (LpAlgorithmValues swigEnum : swigValues)
316  if (swigEnum.swigValue == swigValue)
317  return swigEnum;
318  throw new IllegalArgumentException("No enum " + LpAlgorithmValues.class + " with value " + swigValue);
319  }
320 
321  @SuppressWarnings("unused")
322  private LpAlgorithmValues() {
323  this.swigValue = SwigNext.next++;
324  }
325 
326  @SuppressWarnings("unused")
327  private LpAlgorithmValues(int swigValue) {
328  this.swigValue = swigValue;
329  SwigNext.next = swigValue+1;
330  }
331 
332  @SuppressWarnings("unused")
333  private LpAlgorithmValues(LpAlgorithmValues swigEnum) {
334  this.swigValue = swigEnum.swigValue;
335  SwigNext.next = this.swigValue+1;
336  }
337 
338  private final int swigValue;
339 
340  private static class SwigNext {
341  private static int next = 0;
342  }
343  }
344 
348  public enum IncrementalityValues {
352  INCREMENTALITY_OFF(main_research_linear_solverJNI.MPSolverParameters_INCREMENTALITY_OFF_get()),
357  INCREMENTALITY_ON(main_research_linear_solverJNI.MPSolverParameters_INCREMENTALITY_ON_get());
358 
359  public final int swigValue() {
360  return swigValue;
361  }
362 
363  public static IncrementalityValues swigToEnum(int swigValue) {
364  IncrementalityValues[] swigValues = IncrementalityValues.class.getEnumConstants();
365  if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
366  return swigValues[swigValue];
367  for (IncrementalityValues swigEnum : swigValues)
368  if (swigEnum.swigValue == swigValue)
369  return swigEnum;
370  throw new IllegalArgumentException("No enum " + IncrementalityValues.class + " with value " + swigValue);
371  }
372 
373  @SuppressWarnings("unused")
374  private IncrementalityValues() {
375  this.swigValue = SwigNext.next++;
376  }
377 
378  @SuppressWarnings("unused")
379  private IncrementalityValues(int swigValue) {
380  this.swigValue = swigValue;
381  SwigNext.next = swigValue+1;
382  }
383 
384  @SuppressWarnings("unused")
385  private IncrementalityValues(IncrementalityValues swigEnum) {
386  this.swigValue = swigEnum.swigValue;
387  SwigNext.next = this.swigValue+1;
388  }
389 
390  private final int swigValue;
391 
392  private static class SwigNext {
393  private static int next = 0;
394  }
395  }
396 
400  public enum ScalingValues {
404  SCALING_OFF(main_research_linear_solverJNI.MPSolverParameters_SCALING_OFF_get()),
408  SCALING_ON(main_research_linear_solverJNI.MPSolverParameters_SCALING_ON_get());
409 
410  public final int swigValue() {
411  return swigValue;
412  }
413 
414  public static ScalingValues swigToEnum(int swigValue) {
415  ScalingValues[] swigValues = ScalingValues.class.getEnumConstants();
416  if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
417  return swigValues[swigValue];
418  for (ScalingValues swigEnum : swigValues)
419  if (swigEnum.swigValue == swigValue)
420  return swigEnum;
421  throw new IllegalArgumentException("No enum " + ScalingValues.class + " with value " + swigValue);
422  }
423 
424  @SuppressWarnings("unused")
425  private ScalingValues() {
426  this.swigValue = SwigNext.next++;
427  }
428 
429  @SuppressWarnings("unused")
430  private ScalingValues(int swigValue) {
431  this.swigValue = swigValue;
432  SwigNext.next = swigValue+1;
433  }
434 
435  @SuppressWarnings("unused")
436  private ScalingValues(ScalingValues swigEnum) {
437  this.swigValue = swigEnum.swigValue;
438  SwigNext.next = this.swigValue+1;
439  }
440 
441  private final int swigValue;
442 
443  private static class SwigNext {
444  private static int next = 0;
445  }
446  }
447 
448 }
RELATIVE_MIP_GAP
Limit for relative MIP gap.
final int swigValue()
final int swigValue()
For each categorical parameter, enumeration of possible values.
This class stores parameter settings for LP and MIP solvers.
static DoubleParam swigToEnum(int swigValue)
static double getKDefaultDualTolerance()
PRIMAL
Primal simplex.
DUAL
Dual simplex.
static double getKDefaultPrimalTolerance()
INCREMENTALITY
Advanced usage: incrementality from one solve to the next.
double getDoubleParam(MPSolverParameters.DoubleParam param)
Returns the value of a double parameter.
static double getKDefaultRelativeMipGap()
PRESOLVE
Advanced usage: presolve mode.
SCALING_ON
Scaling is on.
static MPSolverParameters.IncrementalityValues getKDefaultIncrementality()
void setIntegerParam(MPSolverParameters.IntegerParam param, int value)
Sets a integer parameter to a specific value.
PRESOLVE_ON
Presolve is on.
static LpAlgorithmValues swigToEnum(int swigValue)
void setDoubleParam(MPSolverParameters.DoubleParam param, double value)
Sets a double parameter to a specific value.
Enumeration of parameters that take continuous values.
Advanced usage: Scaling options.
MPSolverParameters(long cPtr, boolean cMemoryOwn)
SCALING_OFF
Scaling is off.
int getIntegerParam(MPSolverParameters.IntegerParam param)
Returns the value of an integer parameter.
final int swigValue()
static MPSolverParameters.PresolveValues getKDefaultPresolve()
Enumeration of parameters that take integer or categorical values.
PRIMAL_TOLERANCE
Advanced usage: tolerance for primal feasibility of basic solutions.
static PresolveValues swigToEnum(int swigValue)
LP_ALGORITHM
Algorithm to solve linear programs.
static ScalingValues swigToEnum(int swigValue)
INCREMENTALITY_OFF
Start solve from scratch.
INCREMENTALITY_ON
Reuse results from previous solve as much as the underlying solver allows.
Advanced usage: Incrementality options.
static IncrementalityValues swigToEnum(int swigValue)
PRESOLVE_OFF
Presolve is off.
final int swigValue()
DUAL_TOLERANCE
Advanced usage: tolerance for dual feasibility of basic solutions.
static IntegerParam swigToEnum(int swigValue)
SCALING
Advanced usage: enable or disable matrix scaling.
final int swigValue()
final int swigValue()
BARRIER
Barrier algorithm.
MPSolverParameters()
The constructor sets all parameters to their default value.
LP algorithm to use.