22 #ifndef _PRIMAL_HEURISTICS_H
23 #define _PRIMAL_HEURISTICS_H
69 int sp_add_solution
PROTO((
lp_prob *p,
int cnt,
int *indices,
double *values,
double obj_value,
int bc_index));
70 int sp_delete_solution
PROTO((
sp_desc *sp,
int position));
71 int sp_is_solution_in_sp
PROTO((
lp_prob *p,
int cnt,
int *indices,
double *values,
double obj_value));
79 double *colSolution,
double *betterSolution);
86 char is_last_iter,
double t_lb);
93 double *betterSolution,
double t_lb));
96 double *betterSolution,
double t_lb));
98 int apply_local_search
PROTO((
lp_prob *p,
double *solution_value,
99 double *col_solution,
double *better_solution,
double *dual_gap,
double t_lb));
100 int local_search
PROTO((
lp_prob *p,
double *solution_value,
101 double *col_solution,
double *better_solution,
double t_lb));
104 int diving_search
PROTO((
lp_prob *p,
double *solutionValue,
double *colSolution,
105 double *betterSolution,
char is_last_iter,
double t_lb));
107 int *frac_ind,
int frac_cnt,
int d_fixed_cnt,
int fix_incr_cnt,
108 int d_type,
double *obj,
double *ip_sol,
double *x_rank,
109 char *direction,
int *min_ind,
char *min_dir,
char should_fix));
111 int ds_get_frac_vars
PROTO((
LPdata *lp_data,
double *x,
int *indices,
112 int *frac_ip_cnt,
int *int_ip_cnt));
114 int ds_fix_common_vars
PROTO((
LPdata * lp_data,
var_desc **vars,
double *ip_sol,
double *x));
118 int restricted_search
PROTO((
lp_prob *p,
double *solution_value,
double *colSolution,
119 double *betterSolution,
int fr_mode,
double t_lb));
122 char *sym_fixed_type,
double *sym_fixed_val,
int *max_int_fix,
int *max_c_fix);
125 int lbranching_search
PROTO((
lp_prob *p,
double *solution_value,
double *colSolution,
126 double *betterSolution,
double t_lb));
132 char *sym_fixed_type,
double *sym_fixed_val,
133 double *sym_fixed_offset,
int *unfix_nz,
int *new_ind));
int fp_solve_lp(LPdata *lp_data, FPdata *fp_data, char *is_feasible)
int fp_add_obj_row(LPdata *new_lp_data, int n, const double *obj, double rhs)
int fp_is_feasible(LPdata *lp_data, const CoinPackedMatrix *matrix, const double *r_low, const double *r_up, FPdata *fp_data, char *is_feasible)
int fp_round(lp_prob *p, FPdata *fp_data, LPdata *lp_data)
int fp_should_call_fp(lp_prob *p, int branching, int *should_call, char is_last_iter, double t_lb)
Sparse Matrix Base Class.
char * sos_var_fixed_zero
int sp_free_sp(sp_desc *sp)
int resize_tmp1_arrays(LPdata *lp_data, int new_size)
int fp_fix_sos_var(lp_prob *p, FPdata *fp_data, int ind)
int feasibility_pump(lp_prob *p, char *found_better_solution, double &solution_value, double *colSolution, double *betterSolution)
int fp_can_sos_var_fix(lp_prob *p, FPdata *fp_data, int ind, int *filled_row_count)
int fp_initialize_lp_solver(lp_prob *p, LPdata *new_lp_data, FPdata *fp_data, double *colSolution)
int fr_force_feasible(lp_prob *p, char use_base, int *sym_fixed_int_cnt, int *sym_fixed_c_cnt, char *sym_fixed_type, double *sym_fixed_val, int *max_int_fix, int *max_c_fix)