Scippy

SCIP

Solving Constraint Integer Programs

scip_param.h
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2 /* */
3 /* This file is part of the program and library */
4 /* SCIP --- Solving Constraint Integer Programs */
5 /* */
6 /* Copyright (C) 2002-2022 Konrad-Zuse-Zentrum */
7 /* fuer Informationstechnik Berlin */
8 /* */
9 /* SCIP is distributed under the terms of the ZIB Academic License. */
10 /* */
11 /* You should have received a copy of the ZIB Academic License */
12 /* along with SCIP; see the file COPYING. If not visit scipopt.org. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file scip_param.h
17  * @ingroup PUBLICCOREAPI
18  * @brief public methods for SCIP parameter handling
19  * @author Tobias Achterberg
20  * @author Timo Berthold
21  * @author Thorsten Koch
22  * @author Alexander Martin
23  * @author Marc Pfetsch
24  * @author Kati Wolter
25  * @author Gregor Hendel
26  * @author Leona Gottwald
27  */
28 
29 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
30 
31 #ifndef __SCIP_SCIP_PARAM_H__
32 #define __SCIP_SCIP_PARAM_H__
33 
34 
35 #include "scip/def.h"
36 #include "scip/type_paramset.h"
37 #include "scip/type_retcode.h"
38 #include "scip/type_scip.h"
39 
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
43 
44 /**@addtogroup ParameterMethods
45  *
46  * @{
47  */
48 
49 /** creates a SCIP_Bool parameter, sets it to its default value, and adds it to the parameter set
50  *
51  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
52  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
53  */
54 SCIP_EXPORT
56  SCIP* scip, /**< SCIP data structure */
57  const char* name, /**< name of the parameter */
58  const char* desc, /**< description of the parameter */
59  SCIP_Bool* valueptr, /**< pointer to store the current parameter value, or NULL */
60  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
61  SCIP_Bool defaultvalue, /**< default value of the parameter */
62  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
63  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
64  );
65 
66 /** creates a int parameter, sets it to its default value, and adds it to the parameter set
67  *
68  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
69  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
70  */
71 SCIP_EXPORT
73  SCIP* scip, /**< SCIP data structure */
74  const char* name, /**< name of the parameter */
75  const char* desc, /**< description of the parameter */
76  int* valueptr, /**< pointer to store the current parameter value, or NULL */
77  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
78  int defaultvalue, /**< default value of the parameter */
79  int minvalue, /**< minimum value for parameter */
80  int maxvalue, /**< maximum value for parameter */
81  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
82  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
83  );
84 
85 /** creates a SCIP_Longint parameter, sets it to its default value, and adds it to the parameter set
86  *
87  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
88  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
89  */
90 SCIP_EXPORT
92  SCIP* scip, /**< SCIP data structure */
93  const char* name, /**< name of the parameter */
94  const char* desc, /**< description of the parameter */
95  SCIP_Longint* valueptr, /**< pointer to store the current parameter value, or NULL */
96  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
97  SCIP_Longint defaultvalue, /**< default value of the parameter */
98  SCIP_Longint minvalue, /**< minimum value for parameter */
99  SCIP_Longint maxvalue, /**< maximum value for parameter */
100  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
101  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
102  );
103 
104 /** creates a SCIP_Real parameter, sets it to its default value, and adds it to the parameter set
105  *
106  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
107  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
108  */
109 SCIP_EXPORT
111  SCIP* scip, /**< SCIP data structure */
112  const char* name, /**< name of the parameter */
113  const char* desc, /**< description of the parameter */
114  SCIP_Real* valueptr, /**< pointer to store the current parameter value, or NULL */
115  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
116  SCIP_Real defaultvalue, /**< default value of the parameter */
117  SCIP_Real minvalue, /**< minimum value for parameter */
118  SCIP_Real maxvalue, /**< maximum value for parameter */
119  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
120  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
121  );
122 
123 /** creates a char parameter, sets it to its default value, and adds it to the parameter set
124  *
125  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
126  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
127  */
128 SCIP_EXPORT
130  SCIP* scip, /**< SCIP data structure */
131  const char* name, /**< name of the parameter */
132  const char* desc, /**< description of the parameter */
133  char* valueptr, /**< pointer to store the current parameter value, or NULL */
134  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
135  char defaultvalue, /**< default value of the parameter */
136  const char* allowedvalues, /**< array with possible parameter values, or NULL if not restricted */
137  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
138  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
139  );
140 
141 /** creates a string(char*) parameter, sets it to its default value, and adds it to the parameter set
142  *
143  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
144  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
145  */
146 SCIP_EXPORT
148  SCIP* scip, /**< SCIP data structure */
149  const char* name, /**< name of the parameter */
150  const char* desc, /**< description of the parameter */
151  char** valueptr, /**< pointer to store the current parameter value, or NULL; if not NULL then *valueptr should be NULL */
152  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
153  const char* defaultvalue, /**< default value of the parameter */
154  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
155  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
156  );
157 
158 /** gets the fixing status of an existing parameter
159  *
160  * @return TRUE if the parameter is fixed to a value, otherwise FALSE.
161  */
162 SCIP_EXPORT
164  SCIP* scip, /**< SCIP data structure */
165  const char* name /**< name of the parameter */
166  );
167 
168 /** returns the pointer to the SCIP parameter with the given name
169  *
170  * @return pointer to the parameter with the given name
171  */
172 SCIP_EXPORT
174  SCIP* scip, /**< SCIP data structure */
175  const char* name /**< name of the parameter */
176  );
177 
178 /** gets the value of an existing SCIP_Bool parameter
179  *
180  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
181  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
182  */
183 SCIP_EXPORT
185  SCIP* scip, /**< SCIP data structure */
186  const char* name, /**< name of the parameter */
187  SCIP_Bool* value /**< pointer to store the parameter */
188  );
189 
190 /** gets the value of an existing int parameter
191  *
192  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
193  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
194  */
195 SCIP_EXPORT
197  SCIP* scip, /**< SCIP data structure */
198  const char* name, /**< name of the parameter */
199  int* value /**< pointer to store the parameter */
200  );
201 
202 /** gets the value of an existing SCIP_Longint parameter
203  *
204  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
205  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
206  */
207 SCIP_EXPORT
209  SCIP* scip, /**< SCIP data structure */
210  const char* name, /**< name of the parameter */
211  SCIP_Longint* value /**< pointer to store the parameter */
212  );
213 
214 /** gets the value of an existing SCIP_Real parameter
215  *
216  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
217  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
218  */
219 SCIP_EXPORT
221  SCIP* scip, /**< SCIP data structure */
222  const char* name, /**< name of the parameter */
223  SCIP_Real* value /**< pointer to store the parameter */
224  );
225 
226 /** gets the value of an existing char parameter
227  *
228  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
229  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
230  */
231 SCIP_EXPORT
233  SCIP* scip, /**< SCIP data structure */
234  const char* name, /**< name of the parameter */
235  char* value /**< pointer to store the parameter */
236  );
237 
238 /** gets the value of an existing string(char*) parameter
239  *
240  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
241  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
242  */
243 SCIP_EXPORT
245  SCIP* scip, /**< SCIP data structure */
246  const char* name, /**< name of the parameter */
247  char** value /**< pointer to store the parameter */
248  );
249 
250 /** fixes the value of an existing parameter
251  *
252  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
253  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
254  *
255  * @note: Be careful with this method! Some general settings, e.g., the time or node limit, should not be fixed because
256  * they have to be changed for sub-SCIPs.
257  */
258 SCIP_EXPORT
260  SCIP* scip, /**< SCIP data structure */
261  const char* name /**< name of the parameter */
262  );
263 
264 /** unfixes the value of an existing parameter
265  *
266  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
267  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
268  */
269 SCIP_EXPORT
271  SCIP* scip, /**< SCIP data structure */
272  const char* name /**< name of the parameter */
273  );
274 
275 /** changes the value of an existing SCIP_Bool parameter
276  *
277  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
278  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
279  */
280 SCIP_EXPORT
282  SCIP* scip, /**< SCIP data structure */
283  SCIP_PARAM* param, /**< parameter */
284  SCIP_Bool value /**< new value of the parameter */
285  );
286 
287 /** changes the value of an existing SCIP_Bool parameter
288  *
289  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
290  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
291  */
292 SCIP_EXPORT
294  SCIP* scip, /**< SCIP data structure */
295  const char* name, /**< name of the parameter */
296  SCIP_Bool value /**< new value of the parameter */
297  );
298 
299 /** checks whether the value of an existing SCIP_Bool parameter is valid */
300 SCIP_EXPORT
302  SCIP* scip, /**< SCIP data structure */
303  SCIP_PARAM* param, /**< parameter */
304  SCIP_Bool value /**< value to check */
305  );
306 
307 /** changes the value of an existing int parameter
308  *
309  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
310  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
311  */
312 SCIP_EXPORT
314  SCIP* scip, /**< SCIP data structure */
315  SCIP_PARAM* param, /**< parameter */
316  int value /**< new value of the parameter */
317  );
318 
319 /** changes the value of an existing int parameter
320  *
321  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
322  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
323  */
324 SCIP_EXPORT
326  SCIP* scip, /**< SCIP data structure */
327  const char* name, /**< name of the parameter */
328  int value /**< new value of the parameter */
329  );
330 
331 /** checks whether the value of an existing int parameter is valid */
332 SCIP_EXPORT
334  SCIP* scip, /**< SCIP data structure */
335  SCIP_PARAM* param, /**< parameter */
336  int value /**< value to check */
337  );
338 
339 /** changes the value of an existing SCIP_Longint parameter
340  *
341  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
342  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
343  */
344 SCIP_EXPORT
346  SCIP* scip, /**< SCIP data structure */
347  SCIP_PARAM* param, /**< parameter */
348  SCIP_Longint value /**< new value of the parameter */
349  );
350 
351 /** changes the value of an existing SCIP_Longint parameter
352  *
353  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
354  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
355  */
356 SCIP_EXPORT
358  SCIP* scip, /**< SCIP data structure */
359  const char* name, /**< name of the parameter */
360  SCIP_Longint value /**< new value of the parameter */
361  );
362 
363 /** checks whether parameter value of an existing SCIP_Longint paramter is valid */
364 SCIP_EXPORT
366  SCIP* scip, /**< SCIP data structure */
367  SCIP_PARAM* param, /**< parameter */
368  SCIP_Longint value /**< value to check */
369  );
370 
371 /** changes the value of an existing SCIP_Real parameter
372  *
373  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
374  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
375  */
376 SCIP_EXPORT
378  SCIP* scip, /**< SCIP data structure */
379  SCIP_PARAM* param, /**< parameter */
380  SCIP_Real value /**< new value of the parameter */
381  );
382 
383 /** changes the value of an existing SCIP_Real parameter
384  *
385  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
386  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
387  */
388 SCIP_EXPORT
390  SCIP* scip, /**< SCIP data structure */
391  const char* name, /**< name of the parameter */
392  SCIP_Real value /**< new value of the parameter */
393  );
394 
395 /** checks whether parameter value of an existing SCIP_Real paramter is valid */
396 SCIP_EXPORT
398  SCIP* scip, /**< SCIP data structure */
399  SCIP_PARAM* param, /**< parameter */
400  SCIP_Real value /**< value to check */
401  );
402 
403 /** changes the value of an existing char parameter
404  *
405  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
406  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
407  */
408 SCIP_EXPORT
410  SCIP* scip, /**< SCIP data structure */
411  SCIP_PARAM* param, /**< parameter */
412  char value /**< new value of the parameter */
413  );
414 
415 /** changes the value of an existing char parameter
416  *
417  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
418  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
419  */
420 SCIP_EXPORT
422  SCIP* scip, /**< SCIP data structure */
423  const char* name, /**< name of the parameter */
424  char value /**< new value of the parameter */
425  );
426 
427 /** checks whether parameter value for a given SCIP_Real parameter is valid */
428 SCIP_EXPORT
430  SCIP* scip, /**< SCIP data structure */
431  SCIP_PARAM* param, /**< parameter */
432  const char value /**< value to check */
433  );
434 
435 /** changes the value of an existing string(char*) parameter
436  *
437  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
438  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
439  */
440 SCIP_EXPORT
442  SCIP* scip, /**< SCIP data structure */
443  SCIP_PARAM* param, /**< parameter */
444  const char* value /**< new value of the parameter */
445  );
446 
447 /** changes the value of an existing string(char*) parameter
448  *
449  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
450  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
451  */
452 SCIP_EXPORT
454  SCIP* scip, /**< SCIP data structure */
455  const char* name, /**< name of the parameter */
456  const char* value /**< new value of the parameter */
457  );
458 
459 /** checks whether parameter value for a given string parameter is valid */
460 SCIP_EXPORT
462  SCIP* scip, /**< SCIP data structure */
463  SCIP_PARAM* param, /**< parameter */
464  const char* value /**< value to check */
465  );
466 
467 /** reads parameters from a file
468  *
469  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
470  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
471  */
472 SCIP_EXPORT
474  SCIP* scip, /**< SCIP data structure */
475  const char* filename /**< file name */
476  );
477 
478 /** writes a single parameter to a file
479  *
480  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
481  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
482  */
483 SCIP_EXPORT
485  SCIP* scip, /**< SCIP data structure */
486  SCIP_PARAM* param, /**< parameter */
487  const char* filename, /**< file name, or NULL for stdout */
488  SCIP_Bool comments, /**< should parameter descriptions be written as comments? */
489  SCIP_Bool onlychanged /**< should only those parameters be written that are changed from their
490  * default value?
491  */
492  );
493 
494 /** writes all parameters in the parameter set to a file
495  *
496  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
497  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
498  */
499 SCIP_EXPORT
501  SCIP* scip, /**< SCIP data structure */
502  const char* filename, /**< file name, or NULL for stdout */
503  SCIP_Bool comments, /**< should parameter descriptions be written as comments? */
504  SCIP_Bool onlychanged /**< should only those parameters be written that are changed from their
505  * default value?
506  */
507  );
508 
509 /** resets a single parameter to its default value
510  *
511  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
512  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
513  */
514 SCIP_EXPORT
516  SCIP* scip, /**< SCIP data structure */
517  const char* name /**< name of the parameter */
518  );
519 
520 /** resets all parameters to their default values
521  *
522  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
523  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
524  */
525 SCIP_EXPORT
527  SCIP* scip /**< SCIP data structure */
528  );
529 
530 /** sets parameters to
531  *
532  * - \ref SCIP_PARAMEMPHASIS_DEFAULT to use default values (see also SCIPresetParams())
533  * - \ref SCIP_PARAMEMPHASIS_COUNTER to get feasible and "fast" counting process
534  * - \ref SCIP_PARAMEMPHASIS_CPSOLVER to get CP like search (e.g. no LP relaxation)
535  * - \ref SCIP_PARAMEMPHASIS_EASYCIP to solve easy problems fast
536  * - \ref SCIP_PARAMEMPHASIS_FEASIBILITY to detect feasibility fast
537  * - \ref SCIP_PARAMEMPHASIS_HARDLP to be capable to handle hard LPs
538  * - \ref SCIP_PARAMEMPHASIS_OPTIMALITY to prove optimality fast
539  * - \ref SCIP_PARAMEMPHASIS_PHASEFEAS to find feasible solutions during a 3 phase solution process
540  * - \ref SCIP_PARAMEMPHASIS_PHASEIMPROVE to find improved solutions during a 3 phase solution process
541  * - \ref SCIP_PARAMEMPHASIS_PHASEPROOF to proof optimality during a 3 phase solution process
542  * - \ref SCIP_PARAMEMPHASIS_NUMERICS to solve problems which cause numerical issues
543  *
544  *
545  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
546  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
547  */
548 SCIP_EXPORT
550  SCIP* scip, /**< SCIP data structure */
551  SCIP_PARAMEMPHASIS paramemphasis, /**< parameter settings */
552  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
553  );
554 
555 /** sets parameters to deactivate separators and heuristics that use auxiliary SCIP instances; should be called for
556  * auxiliary SCIP instances to avoid recursion
557  *
558  * @note only deactivates plugins which could cause recursion, some plugins which use sub-SCIPs stay activated
559  *
560  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
561  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
562  */
563 SCIP_EXPORT
565  SCIP* scip, /**< (auxiliary) SCIP data structure */
566  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
567  );
568 
569 /** sets heuristic parameters values to
570  *
571  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all heuristic parameters
572  * - SCIP_PARAMSETTING_FAST such that the time spend for heuristic is decreased
573  * - SCIP_PARAMSETTING_AGGRESSIVE such that the heuristic are called more aggregative
574  * - SCIP_PARAMSETTING_OFF which turn off all heuristics
575  *
576  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
577  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
578  */
579 SCIP_EXPORT
581  SCIP* scip, /**< SCIP data structure */
582  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
583  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
584  );
585 
586 /** sets presolving parameters to
587  *
588  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all presolving parameters
589  * - SCIP_PARAMSETTING_FAST such that the time spend for presolving is decreased
590  * - SCIP_PARAMSETTING_AGGRESSIVE such that the presolving is more aggregative
591  * - SCIP_PARAMSETTING_OFF which turn off all presolving
592  *
593  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
594  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
595  */
596 SCIP_EXPORT
598  SCIP* scip, /**< SCIP data structure */
599  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
600  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
601  );
602 
603 /** sets separating parameters to
604  *
605  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all separating parameters
606  * - SCIP_PARAMSETTING_FAST such that the time spend for separating is decreased
607  * - SCIP_PARAMSETTING_AGGRESSIVE such that the separating is done more aggregative
608  * - SCIP_PARAMSETTING_OFF which turn off all separating
609  *
610  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
611  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
612  */
613 SCIP_EXPORT
615  SCIP* scip, /**< SCIP data structure */
616  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
617  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
618  );
619 
620 /** returns the array of all available SCIP parameters
621  *
622  * @return SCIP_PARAM* array, containing all SCIP parameters.
623  */
624 SCIP_EXPORT
626  SCIP* scip /**< SCIP data structure */
627  );
628 
629 /** returns the total number of all available SCIP parameters
630  *
631  * @return number of all SCIP parameters.
632  */
633 SCIP_EXPORT
634 int SCIPgetNParams(
635  SCIP* scip /**< SCIP data structure */
636  );
637 
638 /** returns whether plugins with sub-SCIPs that could cause recursion have been disabled
639  *
640  * @return the value of the variable set->subscipsoff
641  */
642 SCIP_EXPORT
644  SCIP* scip /**< SCIP data structure */
645  );
646 
647 /**@} */
648 
649 #ifdef __cplusplus
650 }
651 #endif
652 
653 #endif
SCIP_PARAM ** SCIPgetParams(SCIP *scip)
Definition: scip_param.c:969
SCIP_RETCODE SCIPgetStringParam(SCIP *scip, const char *name, char **value)
Definition: scip_param.c:336
SCIP_RETCODE SCIPgetCharParam(SCIP *scip, const char *name, char *value)
Definition: scip_param.c:317
SCIP_RETCODE SCIPsetSeparating(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: scip_param.c:949
SCIP_RETCODE SCIPgetRealParam(SCIP *scip, const char *name, SCIP_Real *value)
Definition: scip_param.c:298
struct SCIP_ParamData SCIP_PARAMDATA
Definition: type_paramset.h:78
SCIP_Bool SCIPisStringParamValid(SCIP *scip, SCIP_PARAM *param, const char *value)
Definition: scip_param.c:725
SCIP_RETCODE SCIPsetHeuristics(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: scip_param.c:897
SCIP_RETCODE SCIPaddLongintParam(SCIP *scip, const char *name, const char *desc, SCIP_Longint *valueptr, SCIP_Bool isadvanced, SCIP_Longint defaultvalue, SCIP_Longint minvalue, SCIP_Longint maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: scip_param.c:102
SCIP_Bool SCIPisIntParamValid(SCIP *scip, SCIP_PARAM *param, int value)
Definition: scip_param.c:493
SCIP_Bool SCIPgetSubscipsOff(SCIP *scip)
Definition: scip_param.c:997
enum SCIP_Retcode SCIP_RETCODE
Definition: type_retcode.h:54
SCIP_RETCODE SCIPsetPresolving(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: scip_param.c:923
SCIP_RETCODE SCIPchgRealParam(SCIP *scip, SCIP_PARAM *param, SCIP_Real value)
Definition: scip_param.c:568
SCIP_RETCODE SCIPaddStringParam(SCIP *scip, const char *name, const char *desc, char **valueptr, SCIP_Bool isadvanced, const char *defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: scip_param.c:185
type definitions for return codes for SCIP methods
SCIP_RETCODE SCIPwriteParam(SCIP *scip, SCIP_PARAM *param, const char *filename, SCIP_Bool comments, SCIP_Bool onlychanged)
Definition: scip_param.c:760
SCIP_RETCODE SCIPsetRealParam(SCIP *scip, const char *name, SCIP_Real value)
Definition: scip_param.c:594
SCIP_RETCODE SCIPchgStringParam(SCIP *scip, SCIP_PARAM *param, const char *value)
Definition: scip_param.c:684
SCIP_RETCODE SCIPaddIntParam(SCIP *scip, const char *name, const char *desc, int *valueptr, SCIP_Bool isadvanced, int defaultvalue, int minvalue, int maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: scip_param.c:74
enum SCIP_ParamSetting SCIP_PARAMSETTING
Definition: type_paramset.h:56
SCIP_Bool SCIPisCharParamValid(SCIP *scip, SCIP_PARAM *param, const char value)
Definition: scip_param.c:667
SCIP_RETCODE SCIPresetParams(SCIP *scip)
Definition: scip_param.c:823
SCIP_Bool SCIPisBoolParamValid(SCIP *scip, SCIP_PARAM *param, SCIP_Bool value)
Definition: scip_param.c:435
SCIP_Bool SCIPisParamFixed(SCIP *scip, const char *name)
Definition: scip_param.c:210
SCIP_RETCODE SCIPchgCharParam(SCIP *scip, SCIP_PARAM *param, char value)
Definition: scip_param.c:626
type definitions for SCIP&#39;s main datastructure
SCIP_RETCODE SCIPsetBoolParam(SCIP *scip, const char *name, SCIP_Bool value)
Definition: scip_param.c:420
#define SCIP_DECL_PARAMCHGD(x)
Definition: type_paramset.h:93
SCIP_RETCODE SCIPgetBoolParam(SCIP *scip, const char *name, SCIP_Bool *value)
Definition: scip_param.c:241
SCIP_RETCODE SCIPgetIntParam(SCIP *scip, const char *name, int *value)
Definition: scip_param.c:260
SCIP_RETCODE SCIPunfixParam(SCIP *scip, const char *name)
Definition: scip_param.c:376
SCIP_PARAM * SCIPgetParam(SCIP *scip, const char *name)
Definition: scip_param.c:225
SCIP_RETCODE SCIPsetEmphasis(SCIP *scip, SCIP_PARAMEMPHASIS paramemphasis, SCIP_Bool quiet)
Definition: scip_param.c:852
SCIP_Bool SCIPisLongintParamValid(SCIP *scip, SCIP_PARAM *param, SCIP_Longint value)
Definition: scip_param.c:551
SCIP_RETCODE SCIPgetLongintParam(SCIP *scip, const char *name, SCIP_Longint *value)
Definition: scip_param.c:279
#define SCIP_Bool
Definition: def.h:84
SCIP_RETCODE SCIPchgLongintParam(SCIP *scip, SCIP_PARAM *param, SCIP_Longint value)
Definition: scip_param.c:510
SCIP_RETCODE SCIPsetIntParam(SCIP *scip, const char *name, int value)
Definition: scip_param.c:478
SCIP_RETCODE SCIPsetStringParam(SCIP *scip, const char *name, const char *value)
Definition: scip_param.c:710
SCIP_RETCODE SCIPfixParam(SCIP *scip, const char *name)
Definition: scip_param.c:358
SCIP_Bool SCIPisRealParamValid(SCIP *scip, SCIP_PARAM *param, SCIP_Real value)
Definition: scip_param.c:609
SCIP_RETCODE SCIPsetCharParam(SCIP *scip, const char *name, char value)
Definition: scip_param.c:652
enum SCIP_ParamEmphasis SCIP_PARAMEMPHASIS
Definition: type_paramset.h:75
SCIP_RETCODE SCIPaddCharParam(SCIP *scip, const char *name, const char *desc, char *valueptr, SCIP_Bool isadvanced, char defaultvalue, const char *allowedvalues, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: scip_param.c:158
SCIP_RETCODE SCIPreadParams(SCIP *scip, const char *filename)
Definition: scip_param.c:742
type definitions for handling parameter settings
#define SCIP_Real
Definition: def.h:177
#define SCIP_Longint
Definition: def.h:162
SCIP_RETCODE SCIPwriteParams(SCIP *scip, const char *filename, SCIP_Bool comments, SCIP_Bool onlychanged)
Definition: scip_param.c:783
common defines and data types used in all packages of SCIP
SCIP_RETCODE SCIPchgIntParam(SCIP *scip, SCIP_PARAM *param, int value)
Definition: scip_param.c:452
SCIP_RETCODE SCIPresetParam(SCIP *scip, const char *name)
Definition: scip_param.c:805
int SCIPgetNParams(SCIP *scip)
Definition: scip_param.c:983
SCIP_RETCODE SCIPchgBoolParam(SCIP *scip, SCIP_PARAM *param, SCIP_Bool value)
Definition: scip_param.c:394
SCIP_RETCODE SCIPaddRealParam(SCIP *scip, const char *name, const char *desc, SCIP_Real *valueptr, SCIP_Bool isadvanced, SCIP_Real defaultvalue, SCIP_Real minvalue, SCIP_Real maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: scip_param.c:130
SCIP_RETCODE SCIPsetSubscipsOff(SCIP *scip, SCIP_Bool quiet)
Definition: scip_param.c:874
SCIP_RETCODE SCIPsetLongintParam(SCIP *scip, const char *name, SCIP_Longint value)
Definition: scip_param.c:536
SCIP_RETCODE SCIPaddBoolParam(SCIP *scip, const char *name, const char *desc, SCIP_Bool *valueptr, SCIP_Bool isadvanced, SCIP_Bool defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: scip_param.c:48