next up previous contents Back to SYMPHONY Home Page
Next: user_generate_column Up: User-written functions of the Previous: user_send_lp_solution

user_logical_fixing

int user_logical_fixing(void *user, int varnum, var_desc **vars, 
                        double *x, char *status)

Description:

Logical fixing is modifying the stati of variables based on logical implications derived from problem-specific information. In this function the user can modify the status of any variable. Valid stati are: NOT_FIXED, TEMP_FIXED_TO_LB, PERM_FIXED_TO_LB, TEMP_FIXED_TO_UB and PERM_FIXED_TO_UB. Be forewarned that fallaciously fixing a variable in this function can cause the algorithm to terminate improperly. Generally, a variable can only be fixed permanently if the matrix is full at the time of the fixing (i.e. all variables that are not fixed are in the matrix). There are no default options.

Arguments:

tabular1646

Return values:

tabular1648

Wrapper invoked from:
fix_variables() after doing reduced cost fixing, but only when a specified number of variables have been fixed by reduced cost (see LP parameter settings).



Ted Ralphs
Thu Jun 8 12:44:45 CDT 2000