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-2021 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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
271  SCIP* scip, /**< SCIP data structure */
272  const char* name /**< name of the parameter */
273  );
274 
275 /** changes the value of an existing 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  * @attention This function is not working the way one would probably expect.
281  * Even if one finds out how to pass the parameter value via the void* argument, the function will fail
282  * to correctly set negative or fractional parameter values.
283  *
284  * @deprecated Use SCIPsetBoolParam, SCIPsetIntParam, SCIPsetRealParam, etc., instead
285  */
288  SCIP* scip, /**< SCIP data structure */
289  const char* name, /**< name of the parameter */
290  void* value /**< new value of the parameter */
291  );
292 
293 /** changes the value of an existing SCIP_Bool parameter
294  *
295  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
296  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
297  */
300  SCIP* scip, /**< SCIP data structure */
301  SCIP_PARAM* param, /**< parameter */
302  SCIP_Bool value /**< new value of the parameter */
303  );
304 
305 /** changes the value of an existing SCIP_Bool parameter
306  *
307  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
308  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
309  */
312  SCIP* scip, /**< SCIP data structure */
313  const char* name, /**< name of the parameter */
314  SCIP_Bool value /**< new value of the parameter */
315  );
316 
317 /** checks whether the value of an existing SCIP_Bool parameter is valid */
320  SCIP* scip, /**< SCIP data structure */
321  SCIP_PARAM* param, /**< parameter */
322  SCIP_Bool value /**< value to check */
323  );
324 
325 /** changes the value of an existing int parameter
326  *
327  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
328  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
329  */
332  SCIP* scip, /**< SCIP data structure */
333  SCIP_PARAM* param, /**< parameter */
334  int value /**< new value of the parameter */
335  );
336 
337 /** changes the value of an existing int parameter
338  *
339  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
340  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
341  */
344  SCIP* scip, /**< SCIP data structure */
345  const char* name, /**< name of the parameter */
346  int value /**< new value of the parameter */
347  );
348 
349 /** checks whether the value of an existing int parameter is valid */
352  SCIP* scip, /**< SCIP data structure */
353  SCIP_PARAM* param, /**< parameter */
354  int value /**< value to check */
355  );
356 
357 /** changes the value of an existing SCIP_Longint parameter
358  *
359  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
360  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
361  */
364  SCIP* scip, /**< SCIP data structure */
365  SCIP_PARAM* param, /**< parameter */
366  SCIP_Longint value /**< new value of the parameter */
367  );
368 
369 /** changes the value of an existing SCIP_Longint parameter
370  *
371  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
372  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
373  */
376  SCIP* scip, /**< SCIP data structure */
377  const char* name, /**< name of the parameter */
378  SCIP_Longint value /**< new value of the parameter */
379  );
380 
381 /** checks whether parameter value of an existing SCIP_Longint paramter is valid */
384  SCIP* scip, /**< SCIP data structure */
385  SCIP_PARAM* param, /**< parameter */
386  SCIP_Longint value /**< value to check */
387  );
388 
389 /** changes the value of an existing SCIP_Real parameter
390  *
391  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
392  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
393  */
396  SCIP* scip, /**< SCIP data structure */
397  SCIP_PARAM* param, /**< parameter */
398  SCIP_Real value /**< new value of the parameter */
399  );
400 
401 /** changes the value of an existing SCIP_Real parameter
402  *
403  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
404  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
405  */
408  SCIP* scip, /**< SCIP data structure */
409  const char* name, /**< name of the parameter */
410  SCIP_Real value /**< new value of the parameter */
411  );
412 
413 /** checks whether parameter value of an existing SCIP_Real paramter is valid */
416  SCIP* scip, /**< SCIP data structure */
417  SCIP_PARAM* param, /**< parameter */
418  SCIP_Real value /**< value to check */
419  );
420 
421 /** changes the value of an existing char parameter
422  *
423  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
424  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
425  */
428  SCIP* scip, /**< SCIP data structure */
429  SCIP_PARAM* param, /**< parameter */
430  char value /**< new value of the parameter */
431  );
432 
433 /** changes the value of an existing char parameter
434  *
435  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
436  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
437  */
440  SCIP* scip, /**< SCIP data structure */
441  const char* name, /**< name of the parameter */
442  char value /**< new value of the parameter */
443  );
444 
445 /** checks whether parameter value for a given SCIP_Real parameter is valid */
448  SCIP* scip, /**< SCIP data structure */
449  SCIP_PARAM* param, /**< parameter */
450  const char value /**< value to check */
451  );
452 
453 /** changes the value of an existing string(char*) parameter
454  *
455  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
456  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
457  */
460  SCIP* scip, /**< SCIP data structure */
461  SCIP_PARAM* param, /**< parameter */
462  const char* value /**< new value of the parameter */
463  );
464 
465 /** changes the value of an existing string(char*) parameter
466  *
467  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
468  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
469  */
472  SCIP* scip, /**< SCIP data structure */
473  const char* name, /**< name of the parameter */
474  const char* value /**< new value of the parameter */
475  );
476 
477 /** checks whether parameter value for a given string parameter is valid */
480  SCIP* scip, /**< SCIP data structure */
481  SCIP_PARAM* param, /**< parameter */
482  const char* value /**< value to check */
483  );
484 
485 /** reads parameters from a file
486  *
487  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
488  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
489  */
492  SCIP* scip, /**< SCIP data structure */
493  const char* filename /**< file name */
494  );
495 
496 /** writes a single parameter to a file
497  *
498  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
499  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
500  */
503  SCIP* scip, /**< SCIP data structure */
504  SCIP_PARAM* param, /**< parameter */
505  const char* filename, /**< file name, or NULL for stdout */
506  SCIP_Bool comments, /**< should parameter descriptions be written as comments? */
507  SCIP_Bool onlychanged /**< should only those parameters be written that are changed from their
508  * default value?
509  */
510  );
511 
512 /** writes all parameters in the parameter set to a file
513  *
514  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
515  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
516  */
519  SCIP* scip, /**< SCIP data structure */
520  const char* filename, /**< file name, or NULL for stdout */
521  SCIP_Bool comments, /**< should parameter descriptions be written as comments? */
522  SCIP_Bool onlychanged /**< should only those parameters be written that are changed from their
523  * default value?
524  */
525  );
526 
527 /** resets a single parameter to its default value
528  *
529  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
530  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
531  */
534  SCIP* scip, /**< SCIP data structure */
535  const char* name /**< name of the parameter */
536  );
537 
538 /** resets all parameters to their default values
539  *
540  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
541  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
542  */
545  SCIP* scip /**< SCIP data structure */
546  );
547 
548 /** sets parameters to
549  *
550  * - \ref SCIP_PARAMEMPHASIS_DEFAULT to use default values (see also SCIPresetParams())
551  * - \ref SCIP_PARAMEMPHASIS_COUNTER to get feasible and "fast" counting process
552  * - \ref SCIP_PARAMEMPHASIS_CPSOLVER to get CP like search (e.g. no LP relaxation)
553  * - \ref SCIP_PARAMEMPHASIS_EASYCIP to solve easy problems fast
554  * - \ref SCIP_PARAMEMPHASIS_FEASIBILITY to detect feasibility fast
555  * - \ref SCIP_PARAMEMPHASIS_HARDLP to be capable to handle hard LPs
556  * - \ref SCIP_PARAMEMPHASIS_OPTIMALITY to prove optimality fast
557  * - \ref SCIP_PARAMEMPHASIS_PHASEFEAS to find feasible solutions during a 3 phase solution process
558  * - \ref SCIP_PARAMEMPHASIS_PHASEIMPROVE to find improved solutions during a 3 phase solution process
559  * - \ref SCIP_PARAMEMPHASIS_PHASEPROOF to proof optimality during a 3 phase solution process
560  * - \ref SCIP_PARAMEMPHASIS_NUMERICS to solve problems which cause numerical issues
561  *
562  *
563  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
564  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
565  */
568  SCIP* scip, /**< SCIP data structure */
569  SCIP_PARAMEMPHASIS paramemphasis, /**< parameter settings */
570  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
571  );
572 
573 /** sets parameters to deactivate separators and heuristics that use auxiliary SCIP instances; should be called for
574  * auxiliary SCIP instances to avoid recursion
575  *
576  * @note only deactivates plugins which could cause recursion, some plugins which use sub-SCIPs stay activated
577  *
578  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
579  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
580  */
583  SCIP* scip, /**< (auxiliary) SCIP data structure */
584  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
585  );
586 
587 /** sets heuristic parameters values to
588  *
589  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all heuristic parameters
590  * - SCIP_PARAMSETTING_FAST such that the time spend for heuristic is decreased
591  * - SCIP_PARAMSETTING_AGGRESSIVE such that the heuristic are called more aggregative
592  * - SCIP_PARAMSETTING_OFF which turn off all heuristics
593  *
594  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
595  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
596  */
599  SCIP* scip, /**< SCIP data structure */
600  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
601  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
602  );
603 
604 /** sets presolving parameters to
605  *
606  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all presolving parameters
607  * - SCIP_PARAMSETTING_FAST such that the time spend for presolving is decreased
608  * - SCIP_PARAMSETTING_AGGRESSIVE such that the presolving is more aggregative
609  * - SCIP_PARAMSETTING_OFF which turn off all presolving
610  *
611  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
612  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
613  */
616  SCIP* scip, /**< SCIP data structure */
617  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
618  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
619  );
620 
621 /** sets separating parameters to
622  *
623  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all separating parameters
624  * - SCIP_PARAMSETTING_FAST such that the time spend for separating is decreased
625  * - SCIP_PARAMSETTING_AGGRESSIVE such that the separating is done more aggregative
626  * - SCIP_PARAMSETTING_OFF which turn off all separating
627  *
628  * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
629  * SCIP_Retcode "SCIP_RETCODE" for a complete list of error codes.
630  */
633  SCIP* scip, /**< SCIP data structure */
634  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
635  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
636  );
637 
638 /** returns the array of all available SCIP parameters
639  *
640  * @return SCIP_PARAM* array, containing all SCIP parameters.
641  */
644  SCIP* scip /**< SCIP data structure */
645  );
646 
647 /** returns the total number of all available SCIP parameters
648  *
649  * @return number of all SCIP parameters.
650  */
652 int SCIPgetNParams(
653  SCIP* scip /**< SCIP data structure */
654  );
655 
656 /** returns whether plugins with sub-SCIPs that could cause recursion have been disabled
657  *
658  * @return the value of the variable set->subscipsoff
659  */
662  SCIP* scip /**< SCIP data structure */
663  );
664 
665 /**@} */
666 
667 #ifdef __cplusplus
668 }
669 #endif
670 
671 #endif
SCIP_EXPORT SCIP_RETCODE SCIPgetStringParam(SCIP *scip, const char *name, char **value)
Definition: scip_param.c:336
struct SCIP_ParamData SCIP_PARAMDATA
Definition: type_paramset.h:77
#define SCIP_EXPORT
Definition: def.h:100
SCIP_EXPORT SCIP_RETCODE SCIPgetBoolParam(SCIP *scip, const char *name, SCIP_Bool *value)
Definition: scip_param.c:241
SCIP_EXPORT SCIP_RETCODE SCIPchgIntParam(SCIP *scip, SCIP_PARAM *param, int value)
Definition: scip_param.c:477
SCIP_EXPORT SCIP_PARAM * SCIPgetParam(SCIP *scip, const char *name)
Definition: scip_param.c:225
enum SCIP_Retcode SCIP_RETCODE
Definition: type_retcode.h:54
SCIP_EXPORT SCIP_RETCODE SCIPsetHeuristics(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: scip_param.c:922
SCIP_EXPORT 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
type definitions for return codes for SCIP methods
SCIP_EXPORT SCIP_RETCODE SCIPsetSubscipsOff(SCIP *scip, SCIP_Bool quiet)
Definition: scip_param.c:899
SCIP_EXPORT SCIP_Bool SCIPisBoolParamValid(SCIP *scip, SCIP_PARAM *param, SCIP_Bool value)
Definition: scip_param.c:460
SCIP_EXPORT SCIP_RETCODE SCIPgetCharParam(SCIP *scip, const char *name, char *value)
Definition: scip_param.c:317
enum SCIP_ParamSetting SCIP_PARAMSETTING
Definition: type_paramset.h:56
SCIP_EXPORT SCIP_PARAM ** SCIPgetParams(SCIP *scip)
Definition: scip_param.c:994
SCIP_EXPORT SCIP_Bool SCIPisIntParamValid(SCIP *scip, SCIP_PARAM *param, int value)
Definition: scip_param.c:518
SCIP_EXPORT SCIP_RETCODE SCIPsetRealParam(SCIP *scip, const char *name, SCIP_Real value)
Definition: scip_param.c:619
SCIP_EXPORT SCIP_RETCODE SCIPchgBoolParam(SCIP *scip, SCIP_PARAM *param, SCIP_Bool value)
Definition: scip_param.c:419
SCIP_EXPORT SCIP_RETCODE SCIPfixParam(SCIP *scip, const char *name)
Definition: scip_param.c:358
SCIP_EXPORT SCIP_Bool SCIPisCharParamValid(SCIP *scip, SCIP_PARAM *param, const char value)
Definition: scip_param.c:692
type definitions for SCIP&#39;s main datastructure
SCIP_EXPORT SCIP_RETCODE SCIPresetParams(SCIP *scip)
Definition: scip_param.c:848
#define SCIP_DECL_PARAMCHGD(x)
Definition: type_paramset.h:92
SCIP_EXPORT SCIP_RETCODE SCIPwriteParams(SCIP *scip, const char *filename, SCIP_Bool comments, SCIP_Bool onlychanged)
Definition: scip_param.c:808
SCIP_EXPORT SCIP_RETCODE SCIPsetPresolving(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: scip_param.c:948
SCIP_EXPORT SCIP_RETCODE SCIPsetCharParam(SCIP *scip, const char *name, char value)
Definition: scip_param.c:677
SCIP_EXPORT 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
SCIP_EXPORT SCIP_RETCODE SCIPgetIntParam(SCIP *scip, const char *name, int *value)
Definition: scip_param.c:260
SCIP_EXPORT SCIP_RETCODE SCIPgetRealParam(SCIP *scip, const char *name, SCIP_Real *value)
Definition: scip_param.c:298
SCIP_EXPORT SCIP_RETCODE SCIPunfixParam(SCIP *scip, const char *name)
Definition: scip_param.c:376
SCIP_EXPORT SCIP_RETCODE SCIPsetParam(SCIP *scip, const char *name, void *value)
Definition: scip_param.c:400
#define SCIP_Bool
Definition: def.h:70
SCIP_EXPORT SCIP_Bool SCIPisRealParamValid(SCIP *scip, SCIP_PARAM *param, SCIP_Real value)
Definition: scip_param.c:634
SCIP_EXPORT SCIP_RETCODE SCIPchgCharParam(SCIP *scip, SCIP_PARAM *param, char value)
Definition: scip_param.c:651
SCIP_EXPORT SCIP_Bool SCIPisParamFixed(SCIP *scip, const char *name)
Definition: scip_param.c:210
SCIP_EXPORT SCIP_RETCODE SCIPsetEmphasis(SCIP *scip, SCIP_PARAMEMPHASIS paramemphasis, SCIP_Bool quiet)
Definition: scip_param.c:877
SCIP_EXPORT int SCIPgetNParams(SCIP *scip)
Definition: scip_param.c:1008
SCIP_EXPORT 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
enum SCIP_ParamEmphasis SCIP_PARAMEMPHASIS
Definition: type_paramset.h:74
SCIP_EXPORT SCIP_RETCODE SCIPsetLongintParam(SCIP *scip, const char *name, SCIP_Longint value)
Definition: scip_param.c:561
SCIP_EXPORT SCIP_RETCODE SCIPchgStringParam(SCIP *scip, SCIP_PARAM *param, const char *value)
Definition: scip_param.c:709
SCIP_EXPORT SCIP_RETCODE SCIPsetStringParam(SCIP *scip, const char *name, const char *value)
Definition: scip_param.c:735
SCIP_EXPORT SCIP_Bool SCIPisLongintParamValid(SCIP *scip, SCIP_PARAM *param, SCIP_Longint value)
Definition: scip_param.c:576
SCIP_EXPORT SCIP_RETCODE SCIPresetParam(SCIP *scip, const char *name)
Definition: scip_param.c:830
SCIP_EXPORT SCIP_RETCODE SCIPreadParams(SCIP *scip, const char *filename)
Definition: scip_param.c:767
SCIP_EXPORT SCIP_Bool SCIPisStringParamValid(SCIP *scip, SCIP_PARAM *param, const char *value)
Definition: scip_param.c:750
SCIP_EXPORT SCIP_Bool SCIPgetSubscipsOff(SCIP *scip)
Definition: scip_param.c:1022
SCIP_EXPORT 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
type definitions for handling parameter settings
SCIP_EXPORT SCIP_RETCODE SCIPchgRealParam(SCIP *scip, SCIP_PARAM *param, SCIP_Real value)
Definition: scip_param.c:593
#define SCIP_Real
Definition: def.h:163
SCIP_EXPORT SCIP_RETCODE SCIPgetLongintParam(SCIP *scip, const char *name, SCIP_Longint *value)
Definition: scip_param.c:279
#define SCIP_Longint
Definition: def.h:148
SCIP_EXPORT SCIP_RETCODE SCIPsetBoolParam(SCIP *scip, const char *name, SCIP_Bool value)
Definition: scip_param.c:445
SCIP_EXPORT 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
common defines and data types used in all packages of SCIP
SCIP_EXPORT SCIP_RETCODE SCIPchgLongintParam(SCIP *scip, SCIP_PARAM *param, SCIP_Longint value)
Definition: scip_param.c:535
SCIP_EXPORT SCIP_RETCODE SCIPwriteParam(SCIP *scip, SCIP_PARAM *param, const char *filename, SCIP_Bool comments, SCIP_Bool onlychanged)
Definition: scip_param.c:785
SCIP_EXPORT 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_EXPORT SCIP_RETCODE SCIPsetIntParam(SCIP *scip, const char *name, int value)
Definition: scip_param.c:503
SCIP_EXPORT SCIP_RETCODE SCIPsetSeparating(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: scip_param.c:974