1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 2 /* */ 3 /* This file is part of the program and library */ 4 /* SCIP --- Solving Constraint Integer Programs */ 5 /* */ 6 /* Copyright (c) 2002-2023 Zuse Institute Berlin (ZIB) */ 7 /* */ 8 /* Licensed under the Apache License, Version 2.0 (the "License"); */ 9 /* you may not use this file except in compliance with the License. */ 10 /* You may obtain a copy of the License at */ 11 /* */ 12 /* http://www.apache.org/licenses/LICENSE-2.0 */ 13 /* */ 14 /* Unless required by applicable law or agreed to in writing, software */ 15 /* distributed under the License is distributed on an "AS IS" BASIS, */ 16 /* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */ 17 /* See the License for the specific language governing permissions and */ 18 /* limitations under the License. */ 19 /* */ 20 /* You should have received a copy of the Apache-2.0 license */ 21 /* along with SCIP; see the file LICENSE. If not visit scipopt.org. */ 22 /* */ 23 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 24 25 /**@file paramset.h 26 * @ingroup INTERNALAPI 27 * @brief internal methods for handling parameter settings 28 * @author Tobias Achterberg 29 * @author Timo Berthold 30 */ 31 32 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/ 33 34 #ifndef __SCIP_PARAMSET_H__ 35 #define __SCIP_PARAMSET_H__ 36 37 38 #include "scip/def.h" 39 #include "blockmemshell/memory.h" 40 #include "scip/type_set.h" 41 #include "scip/type_retcode.h" 42 #include "scip/type_paramset.h" 43 #include "scip/pub_paramset.h" 44 #include "scip/pub_misc.h" 45 46 #ifdef __cplusplus 47 extern "C" { 48 #endif 49 50 /** creates parameter set */ 51 SCIP_RETCODE SCIPparamsetCreate( 52 SCIP_PARAMSET** paramset, /**< pointer to store the parameter set */ 53 BMS_BLKMEM* blkmem /**< block memory */ 54 ); 55 56 /** frees parameter set */ 57 void SCIPparamsetFree( 58 SCIP_PARAMSET** paramset, /**< pointer to the parameter set */ 59 BMS_BLKMEM* blkmem /**< block memory */ 60 ); 61 62 /** creates a bool parameter, sets it to its default value, and adds it to the parameter set */ 63 SCIP_RETCODE SCIPparamsetAddBool( 64 SCIP_PARAMSET* paramset, /**< parameter set */ 65 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 66 BMS_BLKMEM* blkmem, /**< block memory */ 67 const char* name, /**< name of the parameter */ 68 const char* desc, /**< description of the parameter */ 69 SCIP_Bool* valueptr, /**< pointer to store the current parameter value, or NULL */ 70 SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */ 71 SCIP_Bool defaultvalue, /**< default value of the parameter */ 72 SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */ 73 SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */ 74 ); 75 76 /** creates a int parameter, sets it to its default value, and adds it to the parameter set */ 77 SCIP_RETCODE SCIPparamsetAddInt( 78 SCIP_PARAMSET* paramset, /**< parameter set */ 79 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 80 BMS_BLKMEM* blkmem, /**< block memory */ 81 const char* name, /**< name of the parameter */ 82 const char* desc, /**< description of the parameter */ 83 int* valueptr, /**< pointer to store the current parameter value, or NULL */ 84 SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */ 85 int defaultvalue, /**< default value of the parameter */ 86 int minvalue, /**< minimum value for parameter */ 87 int maxvalue, /**< maximum value for parameter */ 88 SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */ 89 SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */ 90 ); 91 92 /** creates a SCIP_Longint parameter, sets it to its default value, and adds it to the parameter set */ 93 SCIP_RETCODE SCIPparamsetAddLongint( 94 SCIP_PARAMSET* paramset, /**< parameter set */ 95 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 96 BMS_BLKMEM* blkmem, /**< block memory */ 97 const char* name, /**< name of the parameter */ 98 const char* desc, /**< description of the parameter */ 99 SCIP_Longint* valueptr, /**< pointer to store the current parameter value, or NULL */ 100 SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */ 101 SCIP_Longint defaultvalue, /**< default value of the parameter */ 102 SCIP_Longint minvalue, /**< minimum value for parameter */ 103 SCIP_Longint maxvalue, /**< maximum value for parameter */ 104 SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */ 105 SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */ 106 ); 107 108 /** creates a SCIP_Real parameter, sets it to its default value, and adds it to the parameter set */ 109 SCIP_RETCODE SCIPparamsetAddReal( 110 SCIP_PARAMSET* paramset, /**< parameter set */ 111 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 112 BMS_BLKMEM* blkmem, /**< block memory */ 113 const char* name, /**< name of the parameter */ 114 const char* desc, /**< description of the parameter */ 115 SCIP_Real* valueptr, /**< pointer to store the current parameter value, or NULL */ 116 SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */ 117 SCIP_Real defaultvalue, /**< default value of the parameter */ 118 SCIP_Real minvalue, /**< minimum value for parameter */ 119 SCIP_Real maxvalue, /**< maximum value for parameter */ 120 SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */ 121 SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */ 122 ); 123 124 /** creates a char parameter, sets it to its default value, and adds it to the parameter set */ 125 SCIP_RETCODE SCIPparamsetAddChar( 126 SCIP_PARAMSET* paramset, /**< parameter set */ 127 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 128 BMS_BLKMEM* blkmem, /**< block memory */ 129 const char* name, /**< name of the parameter */ 130 const char* desc, /**< description of the parameter */ 131 char* valueptr, /**< pointer to store the current parameter value, or NULL */ 132 SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */ 133 char defaultvalue, /**< default value of the parameter */ 134 const char* allowedvalues, /**< array with possible parameter values, or NULL if not restricted */ 135 SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */ 136 SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */ 137 ); 138 139 /** creates a string parameter, sets it to its default value, and adds it to the parameter set */ 140 SCIP_RETCODE SCIPparamsetAddString( 141 SCIP_PARAMSET* paramset, /**< parameter set */ 142 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 143 BMS_BLKMEM* blkmem, /**< block memory */ 144 const char* name, /**< name of the parameter */ 145 const char* desc, /**< description of the parameter */ 146 char** valueptr, /**< pointer to store the current parameter value, or NULL */ 147 SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */ 148 const char* defaultvalue, /**< default value of the parameter */ 149 SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */ 150 SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */ 151 ); 152 153 /** returns whether an existing parameter is fixed */ 154 SCIP_Bool SCIPparamsetIsFixed( 155 SCIP_PARAMSET* paramset, /**< parameter set */ 156 const char* name /**< name of the parameter */ 157 ); 158 159 /** returns the pointer to an existing SCIP parameter */ 160 SCIP_PARAM* SCIPparamsetGetParam( 161 SCIP_PARAMSET* paramset, /**< parameter set */ 162 const char* name /**< name of the parameter */ 163 ); 164 165 /** gets the value of an existing SCIP_Bool parameter */ 166 SCIP_RETCODE SCIPparamsetGetBool( 167 SCIP_PARAMSET* paramset, /**< parameter set */ 168 const char* name, /**< name of the parameter */ 169 SCIP_Bool* value /**< pointer to store the parameter */ 170 ); 171 172 /** gets the value of an existing int parameter */ 173 SCIP_RETCODE SCIPparamsetGetInt( 174 SCIP_PARAMSET* paramset, /**< parameter set */ 175 const char* name, /**< name of the parameter */ 176 int* value /**< pointer to store the parameter */ 177 ); 178 179 /** gets the value of an existing SCIP_Longint parameter */ 180 SCIP_RETCODE SCIPparamsetGetLongint( 181 SCIP_PARAMSET* paramset, /**< parameter set */ 182 const char* name, /**< name of the parameter */ 183 SCIP_Longint* value /**< pointer to store the parameter */ 184 ); 185 186 /** gets the value of an existing SCIP_Real parameter */ 187 SCIP_RETCODE SCIPparamsetGetReal( 188 SCIP_PARAMSET* paramset, /**< parameter set */ 189 const char* name, /**< name of the parameter */ 190 SCIP_Real* value /**< pointer to store the parameter */ 191 ); 192 193 /** gets the value of an existing char parameter */ 194 SCIP_RETCODE SCIPparamsetGetChar( 195 SCIP_PARAMSET* paramset, /**< parameter set */ 196 const char* name, /**< name of the parameter */ 197 char* value /**< pointer to store the parameter */ 198 ); 199 200 /** gets the value of an existing string parameter */ 201 SCIP_RETCODE SCIPparamsetGetString( 202 SCIP_PARAMSET* paramset, /**< parameter set */ 203 const char* name, /**< name of the parameter */ 204 char** value /**< pointer to store the parameter */ 205 ); 206 207 /** changes the fixing status of an existing parameter */ 208 SCIP_RETCODE SCIPparamsetFix( 209 SCIP_PARAMSET* paramset, /**< parameter set */ 210 const char* name, /**< name of the parameter */ 211 SCIP_Bool fixed /**< new fixing status of the parameter */ 212 ); 213 214 /** changes the value of an existing SCIP_Bool parameter */ 215 SCIP_RETCODE SCIPparamsetSetBool( 216 SCIP_PARAMSET* paramset, /**< parameter set */ 217 SCIP_SET* set, /**< global SCIP settings */ 218 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 219 const char* name, /**< name of the parameter */ 220 SCIP_Bool value /**< new value of the parameter */ 221 ); 222 223 /** changes the value of an existing int parameter */ 224 SCIP_RETCODE SCIPparamsetSetInt( 225 SCIP_PARAMSET* paramset, /**< parameter set */ 226 SCIP_SET* set, /**< global SCIP settings */ 227 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 228 const char* name, /**< name of the parameter */ 229 int value /**< new value of the parameter */ 230 ); 231 232 /** changes the value of an existing SCIP_Longint parameter */ 233 SCIP_RETCODE SCIPparamsetSetLongint( 234 SCIP_PARAMSET* paramset, /**< parameter set */ 235 SCIP_SET* set, /**< global SCIP settings */ 236 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 237 const char* name, /**< name of the parameter */ 238 SCIP_Longint value /**< new value of the parameter */ 239 ); 240 241 /** changes the value of an existing SCIP_Real parameter */ 242 SCIP_RETCODE SCIPparamsetSetReal( 243 SCIP_PARAMSET* paramset, /**< parameter set */ 244 SCIP_SET* set, /**< global SCIP settings */ 245 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 246 const char* name, /**< name of the parameter */ 247 SCIP_Real value /**< new value of the parameter */ 248 ); 249 250 /** changes the value of an existing char parameter */ 251 SCIP_RETCODE SCIPparamsetSetChar( 252 SCIP_PARAMSET* paramset, /**< parameter set */ 253 SCIP_SET* set, /**< global SCIP settings */ 254 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 255 const char* name, /**< name of the parameter */ 256 char value /**< new value of the parameter */ 257 ); 258 259 /** changes the value of an existing string parameter */ 260 SCIP_RETCODE SCIPparamsetSetString( 261 SCIP_PARAMSET* paramset, /**< parameter set */ 262 SCIP_SET* set, /**< global SCIP settings */ 263 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 264 const char* name, /**< name of the parameter */ 265 const char* value /**< new value of the parameter */ 266 ); 267 268 /** changes the value of an existing parameter */ 269 SCIP_RETCODE SCIPparamsetSet( 270 SCIP_PARAMSET* paramset, /**< parameter set */ 271 SCIP_SET* set, /**< global SCIP settings */ 272 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 273 const char* name, /**< name of the parameter */ 274 const char* value, /**< new value of the parameter as string */ 275 SCIP_Bool fix /**< whether to fix parameter */ 276 ); 277 278 /** changes the default value of an existing SCIP_Bool parameter */ 279 SCIP_RETCODE SCIPparamsetSetDefaultBool( 280 SCIP_PARAMSET* paramset, /**< parameter set */ 281 const char* name, /**< name of the parameter */ 282 SCIP_Bool defaultvalue /**< new default value of the parameter */ 283 ); 284 285 /** changes the default value of an existing int parameter */ 286 SCIP_RETCODE SCIPparamsetSetDefaultInt( 287 SCIP_PARAMSET* paramset, /**< parameter set */ 288 const char* name, /**< name of the parameter */ 289 int defaultvalue /**< new default value of the parameter */ 290 ); 291 292 /** changes the default value of an existing SCIP_Longint parameter */ 293 SCIP_RETCODE SCIPparamsetSetDefaultLongint( 294 SCIP_PARAMSET* paramset, /**< parameter set */ 295 const char* name, /**< name of the parameter */ 296 SCIP_Longint defaultvalue /**< new default value of the parameter */ 297 ); 298 299 /** changes the default value of an existing SCIP_Real parameter */ 300 SCIP_RETCODE SCIPparamsetSetDefaultReal( 301 SCIP_PARAMSET* paramset, /**< parameter set */ 302 const char* name, /**< name of the parameter */ 303 SCIP_Real defaultvalue /**< new default value of the parameter */ 304 ); 305 306 /** changes the default value of an existing char parameter */ 307 SCIP_RETCODE SCIPparamsetSetDefaultChar( 308 SCIP_PARAMSET* paramset, /**< parameter set */ 309 const char* name, /**< name of the parameter */ 310 char defaultvalue /**< new default value of the parameter */ 311 ); 312 313 /** changes the default value of an existing string parameter */ 314 SCIP_RETCODE SCIPparamsetSetDefaultString( 315 SCIP_PARAMSET* paramset, /**< parameter set */ 316 const char* name, /**< name of the parameter */ 317 const char* defaultvalue /**< new default value of the parameter */ 318 ); 319 320 /** reads parameters from a file */ 321 SCIP_RETCODE SCIPparamsetRead( 322 SCIP_PARAMSET* paramset, /**< parameter set */ 323 SCIP_SET* set, /**< global SCIP settings */ 324 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 325 const char* filename /**< file name */ 326 ); 327 328 /** writes all parameters in the parameter set to a file */ 329 SCIP_RETCODE SCIPparamsetWrite( 330 SCIP_PARAMSET* paramset, /**< parameter set */ 331 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 332 const char* filename, /**< file name, or NULL for stdout */ 333 SCIP_Bool comments, /**< should parameter descriptions be written as comments? */ 334 SCIP_Bool onlychanged /**< should only the parameters been written, that are changed from default? */ 335 ); 336 337 /** installs default values for all parameters */ 338 SCIP_RETCODE SCIPparamsetSetToDefaults( 339 SCIP_PARAMSET* paramset, /**< parameter set */ 340 SCIP_SET* set, /**< global SCIP settings */ 341 SCIP_MESSAGEHDLR* messagehdlr /**< message handler */ 342 ); 343 344 /** installs default value for a single parameter */ 345 SCIP_RETCODE SCIPparamsetSetToDefault( 346 SCIP_PARAMSET* paramset, /**< parameter set */ 347 SCIP_SET* set, /**< global SCIP settings */ 348 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 349 const char* paramname /**< name of the parameter */ 350 ); 351 352 /** sets parameters to 353 * 354 * - \ref SCIP_PARAMEMPHASIS_DEFAULT to use default values (see also SCIPparamsetSetToDefault()) 355 * - \ref SCIP_PARAMEMPHASIS_COUNTER to get feasible and "fast" counting process 356 * - \ref SCIP_PARAMEMPHASIS_CPSOLVER to get CP like search (e.g. no LP relaxation) 357 * - \ref SCIP_PARAMEMPHASIS_EASYCIP to solve easy problems fast 358 * - \ref SCIP_PARAMEMPHASIS_FEASIBILITY to detect feasibility fast 359 * - \ref SCIP_PARAMEMPHASIS_HARDLP to be capable to handle hard LPs 360 * - \ref SCIP_PARAMEMPHASIS_OPTIMALITY to prove optimality fast 361 * - \ref SCIP_PARAMEMPHASIS_PHASEFEAS to find feasible solutions during a 3 phase solution process 362 * - \ref SCIP_PARAMEMPHASIS_PHASEIMPROVE to find improved solutions during a 3 phase solution process 363 * - \ref SCIP_PARAMEMPHASIS_PHASEPROOF to proof optimality during a 3 phase solution process 364 * - \ref SCIP_PARAMEMPHASIS_NUMERICS to solve problems which cause numerical issues 365 */ 366 SCIP_RETCODE SCIPparamsetSetEmphasis( 367 SCIP_PARAMSET* paramset, /**< parameter set */ 368 SCIP_SET* set, /**< global SCIP settings */ 369 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 370 SCIP_PARAMEMPHASIS paramemphasis, /**< parameter emphasis */ 371 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 372 ); 373 374 /** sets parameters to deactivate separators and heuristics that use auxiliary SCIP instances; should be called for 375 * auxiliary SCIP instances to avoid recursion 376 */ 377 SCIP_RETCODE SCIPparamsetSetToSubscipsOff( 378 SCIP_PARAMSET* paramset, /**< parameter set */ 379 SCIP_SET* set, /**< global SCIP settings */ 380 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 381 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 382 ); 383 384 /** sets heuristic parameters values to 385 * - SCIP_PARAMSETTING_DEFAULT which are the default values of all heuristic parameters 386 * - SCIP_PARAMSETTING_FAST such that the time spend for heuristic is decreased 387 * - SCIP_PARAMSETTING_AGGRESSIVE such that the heuristic are called more aggregative 388 * - SCIP_PARAMSETTING_OFF which turn off all heuristics 389 */ 390 SCIP_RETCODE SCIPparamsetSetHeuristics( 391 SCIP_PARAMSET* paramset, /**< parameter set */ 392 SCIP_SET* set, /**< global SCIP settings */ 393 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 394 SCIP_PARAMSETTING paramsetting, /**< parameter settings */ 395 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 396 ); 397 398 /** sets presolving parameters to 399 * - SCIP_PARAMSETTING_DEFAULT which are the default values of all presolving parameters 400 * - SCIP_PARAMSETTING_FAST such that the time spend for presolving is decreased 401 * - SCIP_PARAMSETTING_AGGRESSIVE such that the presolving is more aggregative 402 * - SCIP_PARAMSETTING_OFF which turn off all presolving 403 */ 404 SCIP_RETCODE SCIPparamsetSetPresolving( 405 SCIP_PARAMSET* paramset, /**< parameter set */ 406 SCIP_SET* set, /**< global SCIP settings */ 407 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 408 SCIP_PARAMSETTING paramsetting, /**< parameter settings */ 409 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 410 ); 411 412 /** sets separating parameters to 413 * - SCIP_PARAMSETTING_DEFAULT which are the default values of all separating parameters 414 * - SCIP_PARAMSETTING_FAST such that the time spend for separating is decreased 415 * - SCIP_PARAMSETTING_AGGRESSIVE such that the separating is done more aggregative 416 * - SCIP_PARAMSETTING_OFF which turn off all separating 417 */ 418 SCIP_RETCODE SCIPparamsetSetSeparating( 419 SCIP_PARAMSET* paramset, /**< parameter set */ 420 SCIP_SET* set, /**< global SCIP settings */ 421 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 422 SCIP_PARAMSETTING paramsetting, /**< parameter settings */ 423 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 424 ); 425 426 /** returns the array of parameters */ 427 SCIP_PARAM** SCIPparamsetGetParams( 428 SCIP_PARAMSET* paramset /**< parameter set */ 429 ); 430 431 /** returns the number of parameters in the parameter set */ 432 int SCIPparamsetGetNParams( 433 SCIP_PARAMSET* paramset /**< parameter set */ 434 ); 435 436 /** copies all parameter values of the source parameter set to the corresponding parameters in the target set */ 437 SCIP_RETCODE SCIPparamsetCopyParams( 438 SCIP_PARAMSET* sourceparamset, /**< source parameter set */ 439 SCIP_PARAMSET* targetparamset, /**< target parameter set */ 440 SCIP_SET* set, /**< global SCIP settings of target SCIP */ 441 SCIP_MESSAGEHDLR* messagehdlr /**< message handler of target SCIP */ 442 ); 443 444 /** checks whether value of SCIP_Bool parameter is valid */ 445 SCIP_Bool SCIPparamIsValidBool( 446 SCIP_PARAM* param, /**< parameter */ 447 SCIP_Bool value /**< value to check */ 448 ); 449 450 /** checks whether value of integer parameter is valid */ 451 SCIP_Bool SCIPparamIsValidInt( 452 SCIP_PARAM* param, /**< parameter */ 453 int value /**< value to check */ 454 ); 455 456 /** checks whether value of SCIP_Longint parameter is valid */ 457 SCIP_Bool SCIPparamIsValidLongint( 458 SCIP_PARAM* param, /**< parameter */ 459 SCIP_Longint value /**< value to check */ 460 ); 461 462 /** checks whether value of SCIP_Real parameter is valid */ 463 SCIP_Bool SCIPparamIsValidReal( 464 SCIP_PARAM* param, /**< parameter */ 465 SCIP_Real value /**< value to check */ 466 ); 467 468 /** checks whether value of char parameter is valid */ 469 SCIP_Bool SCIPparamIsValidChar( 470 SCIP_PARAM* param, /**< parameter */ 471 const char value /**< value to check */ 472 ); 473 474 /** checks whether value of string parameter is valid */ 475 SCIP_Bool SCIPparamIsValidString( 476 SCIP_PARAM* param, /**< parameter */ 477 const char* value /**< value to check */ 478 ); 479 480 /** sets value of SCIP_Bool parameter */ 481 SCIP_RETCODE SCIPparamSetBool( 482 SCIP_PARAM* param, /**< parameter */ 483 SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */ 484 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 485 SCIP_Bool value, /**< new value of the parameter */ 486 SCIP_Bool initialize, /**< is this the initialization of the parameter? */ 487 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 488 ); 489 490 /** sets value of int parameter */ 491 SCIP_RETCODE SCIPparamSetInt( 492 SCIP_PARAM* param, /**< parameter */ 493 SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */ 494 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 495 int value, /**< new value of the parameter */ 496 SCIP_Bool initialize, /**< is this the initialization of the parameter? */ 497 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 498 ); 499 500 /** sets value of SCIP_Longint parameter */ 501 SCIP_RETCODE SCIPparamSetLongint( 502 SCIP_PARAM* param, /**< parameter */ 503 SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */ 504 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 505 SCIP_Longint value, /**< new value of the parameter */ 506 SCIP_Bool initialize, /**< is this the initialization of the parameter? */ 507 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 508 ); 509 510 /** sets value of SCIP_Real parameter */ 511 SCIP_RETCODE SCIPparamSetReal( 512 SCIP_PARAM* param, /**< parameter */ 513 SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */ 514 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 515 SCIP_Real value, /**< new value of the parameter */ 516 SCIP_Bool initialize, /**< is this the initialization of the parameter? */ 517 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 518 ); 519 520 /** sets value of char parameter */ 521 SCIP_RETCODE SCIPparamSetChar( 522 SCIP_PARAM* param, /**< parameter */ 523 SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */ 524 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 525 char value, /**< new value of the parameter */ 526 SCIP_Bool initialize, /**< is this the initialization of the parameter? */ 527 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 528 ); 529 530 /** sets value of string parameter */ 531 SCIP_RETCODE SCIPparamSetString( 532 SCIP_PARAM* param, /**< parameter */ 533 SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */ 534 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 535 const char* value, /**< new value of the parameter */ 536 SCIP_Bool initialize, /**< is this the initialization of the parameter? */ 537 SCIP_Bool quiet /**< should the parameter be set quiet (no output) */ 538 ); 539 540 /** sets default value of SCIP_Bool parameter */ 541 void SCIPparamSetDefaultBool( 542 SCIP_PARAM* param, /**< parameter */ 543 SCIP_Bool defaultvalue /**< new default value */ 544 ); 545 546 /** sets default value of int parameter */ 547 void SCIPparamSetDefaultInt( 548 SCIP_PARAM* param, /**< parameter */ 549 int defaultvalue /**< new default value */ 550 ); 551 552 /** sets default value of SCIP_Longint parameter */ 553 void SCIPparamSetDefaultLongint( 554 SCIP_PARAM* param, /**< parameter */ 555 SCIP_Longint defaultvalue /**< new default value */ 556 ); 557 558 /** sets default value of SCIP_Real parameter */ 559 void SCIPparamSetDefaultReal( 560 SCIP_PARAM* param, /**< parameter */ 561 SCIP_Real defaultvalue /**< new default value */ 562 ); 563 564 /** sets default value of char parameter */ 565 void SCIPparamSetDefaultChar( 566 SCIP_PARAM* param, /**< parameter */ 567 char defaultvalue /**< new default value */ 568 ); 569 570 /** sets default value of string parameter */ 571 void SCIPparamSetDefaultString( 572 SCIP_PARAM* param, /**< parameter */ 573 const char* defaultvalue /**< new default value */ 574 ); 575 576 /** sets the parameter to its default setting */ 577 SCIP_RETCODE SCIPparamSetToDefault( 578 SCIP_PARAM* param, /**< parameter */ 579 SCIP_SET* set, /**< global SCIP settings */ 580 SCIP_MESSAGEHDLR* messagehdlr /**< message handler */ 581 ); 582 583 /** writes a single parameter to a file */ 584 SCIP_RETCODE SCIPparamWrite( 585 SCIP_PARAM* param, /**< parameter */ 586 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */ 587 const char* filename, /**< file name, or NULL for stdout */ 588 SCIP_Bool comments, /**< should parameter descriptions be written as comments? */ 589 SCIP_Bool onlychanged /**< should only the parameters been written, that are changed from default? */ 590 ); 591 592 #ifdef __cplusplus 593 } 594 #endif 595 596 #endif 597