#include "symphony.h"#include "sym_timemeas.h"#include "sym_lp_params.h"#include "sym_types.h"#include "sym_lp_solver.h"#include "sym_lp_u.h"

Go to the source code of this file.
Classes | |
| struct | OUR_COL_SET |
| struct | LP_PROB |
Defines | |
| #define | COMPILING_FOR_LP |
| #define | PRINT(a, b, c) if ((a) > (b)) printf c |
Typedefs | |
| typedef struct OUR_COL_SET | our_col_set |
| typedef struct LP_PROB | lp_prob |
Functions | |
| lp_prob *get_lp_ptr | PROTO ((lp_prob **lp_list)) |
| int lp_initialize | PROTO ((lp_prob *p, int master_tid)) |
| int process_chain | PROTO ((lp_prob *p)) |
| int fathom | PROTO ((lp_prob *p, int primal_feasible)) |
| int bfind | PROTO ((int key, int *table, int size)) |
| int collect_nonzeros | PROTO ((lp_prob *p, double *x, int *tind, double *tx)) |
| int round_solution | PROTO ((lp_prob *p, double *solution_value, double *betterSolution)) |
| int local_search | PROTO ((lp_prob *p, double *solution_value, double *col_solution, double *better_solution)) |
| void add_col_set | PROTO ((lp_prob *p, our_col_set *new_cols)) |
| int var_uind_comp | PROTO ((const void *v0, const void *v1)) |
| void add_row_set | PROTO ((lp_prob *p, waiting_row **wrows, int length)) |
| void add_new_rows_to_waiting_rows | PROTO ((lp_prob *p, waiting_row **new_rows, int new_row_num)) |
| void add_waiting_rows | PROTO ((lp_prob *p, waiting_row **wrows, int add_row_num)) |
| int waiting_row_comp | PROTO ((const void *wr0, const void *wr1)) |
| int compute_violations | PROTO ((lp_prob *p, int new_row_num, waiting_row **new_rows)) |
| void add_slacks_to_matrix | PROTO ((lp_prob *p, int cand_num, branch_obj **candidates)) |
| int select_branching_object | PROTO ((lp_prob *p, int *cuts, branch_obj **can)) |
| int branch | PROTO ((lp_prob *p, int cuts)) |
| int col_gen_before_branch | PROTO ((lp_prob *p, int *new_vars)) |
| void branch_close_to_half | PROTO ((lp_prob *p, int max_cand_num, int *cand_num, branch_obj ***candidates)) |
| int process_message | PROTO ((lp_prob *p, int r_bufid, int *pindex, int *pitnum)) |
| int receive_cuts | PROTO ((lp_prob *p, int first_lp, int no_more_cuts_count)) |
| void send_node_desc | PROTO ((lp_prob *p, char node_type)) |
| array_desc pack_array_desc_diff | PROTO ((array_desc *ad, array_desc *new_ad, int *itmp)) |
| basis_desc pack_basis_diff | PROTO ((node_desc *oldnode, node_desc *newnode, char uind_type, char cutind_type, int *itmp)) |
| char pack_base_diff | PROTO ((int *size, int *oldstat, int *newstat, int *itmp)) |
| char pack_extra_diff | PROTO ((array_desc *olddesc, int *oldstat, array_desc *newdesc, int *newstat, char oldbasis_type_in_tm, char newdesc_type_in_tm, int *itmp, int *size)) |
| void send_branching_info | PROTO ((lp_prob *p, branch_obj *can, char *action, int *keep)) |
| void send_cuts_to_pool | PROTO ((lp_prob *p, int eff_cnt_limit)) |
| void free_cut | PROTO ((cut_data **lpcut)) |
| void free_waiting_row | PROTO ((waiting_row **wrow)) |
| void free_waiting_rows | PROTO ((waiting_row **rows, int row_num)) |
| void free_waiting_row_array | PROTO ((waiting_row ***rows, int row_num)) |
| void free_cuts | PROTO ((cut_data **lpcuts, int cut_num)) |
| void free_col_set | PROTO ((our_col_set **colset)) |
| void free_candidate | PROTO ((branch_obj **cand)) |
| void free_node_desc | PROTO ((node_desc **desc)) |
| int comp_cut_name | PROTO ((const void *c0, const void *c1)) |
| int is_feasible_u | PROTO ((lp_prob *p, char branching)) |
| void send_feasible_solution_u | PROTO ((lp_prob *p, int xlevel, int xindex, int xiter_num, double lpetol, double new_ub, int cnt, int *xind, double *xval)) |
| void display_lp_solution_u | PROTO ((lp_prob *p, int which_sol)) |
| int select_candidates_u | PROTO ((lp_prob *p, int *cuts, int *new_vars, int *cand_num, branch_obj ***candidates)) |
| int compare_candidates_u | PROTO ((lp_prob *p, double oldobjval, branch_obj *best, branch_obj *can)) |
| int select_child_u | PROTO ((lp_prob *p, branch_obj *can, char *action)) |
| void add_to_desc_u | PROTO ((lp_prob *p, node_desc *desc)) |
| int same_cuts_u | PROTO ((lp_prob *p, waiting_row *wrow1, waiting_row *wrow2)) |
| void unpack_cuts_u | PROTO ((lp_prob *p, int from, int type, int cut_num, cut_data **cuts, int *new_row_num, waiting_row ***new_rows)) |
| int send_lp_solution_u | PROTO ((lp_prob *p, int tid)) |
| int generate_column_u | PROTO ((lp_prob *p, int lpcutnum, cut_data **cuts, int prevind, int nextind, int generate_what, double *colval, int *colind, int *collen, double *obj, double *ub, double *lb)) |
| void print_stat_on_cuts_added_u | PROTO ((lp_prob *p, int added_rows)) |
| char analyze_multicriteria_solution | PROTO ((lp_prob *p, int *indices, double *values, int length, double *true_objval, double etol, char branching)) |
| typedef struct OUR_COL_SET our_col_set |
| int lp_initialize PROTO | ( | (lp_prob *p, int master_tid) | ) |
| int generate_cuts_in_lp_u PROTO | ( | (lp_prob *p) | ) |
| int fathom PROTO | ( | (lp_prob *p, int primal_feasible) | ) |
| int bfind PROTO | ( | (int key, int *table, int size) | ) |
| int collect_fractions PROTO | ( | (lp_prob *p, double *x, int *tind, double *tx) | ) |
| int round_solution PROTO | ( | (lp_prob *p, double *solution_value, double *betterSolution) | ) |
| int local_search PROTO | ( | (lp_prob *p, double *solution_value, double *col_solution, double *better_solution) | ) |
| int restore_lp_feasibility PROTO | ( | (lp_prob *p, our_col_set *new_cols) | ) |
| int var_cind_comp PROTO | ( | (const void *v0, const void *v1) | ) |
| void add_row_set PROTO | ( | (lp_prob *p, waiting_row **wrows, int length) | ) |
| void add_new_rows_to_waiting_rows PROTO | ( | (lp_prob *p, waiting_row **new_rows, int new_row_num) | ) |
| void add_waiting_rows PROTO | ( | (lp_prob *p, waiting_row **wrows, int add_row_num) | ) |
| int waiting_row_comp PROTO | ( | (const void *wr0, const void *wr1) | ) |
| int compute_violations PROTO | ( | (lp_prob *p, int new_row_num, waiting_row **new_rows) | ) |
| int add_violated_slacks PROTO | ( | (lp_prob *p, int cand_num, branch_obj **candidates) | ) |
| int select_branching_object PROTO | ( | (lp_prob *p, int *cuts, branch_obj **can) | ) |
| int branch PROTO | ( | (lp_prob *p, int cuts) | ) |
| int col_gen_before_branch PROTO | ( | (lp_prob *p, int *new_vars) | ) |
| void branch_close_to_one_and_cheap PROTO | ( | (lp_prob *p, int max_cand_num, int *cand_num, branch_obj ***candidates) | ) |
| int process_message PROTO | ( | (lp_prob *p, int r_bufid, int *pindex, int *pitnum) | ) |
| int receive_cuts PROTO | ( | (lp_prob *p, int first_lp, int no_more_cuts_count) | ) |
| void send_node_desc PROTO | ( | (lp_prob *p, char node_type) | ) |
| array_desc pack_array_desc_diff PROTO | ( | (array_desc *ad, array_desc *new_ad, int *itmp) | ) |
| basis_desc pack_basis_diff PROTO | ( | (node_desc *oldnode, node_desc *newnode, char uind_type, char cutind_type, int *itmp) | ) |
| char pack_base_diff PROTO | ( | (int *size, int *oldstat, int *newstat, int *itmp) | ) |
| char pack_extra_diff PROTO | ( | (array_desc *olddesc, int *oldstat, array_desc *newdesc, int *newstat, char oldbasis_type_in_tm, char newdesc_type_in_tm, int *itmp, int *size) | ) |
| void send_branching_info PROTO | ( | (lp_prob *p, branch_obj *can, char *action, int *keep) | ) |
| void send_cuts_to_pool PROTO | ( | (lp_prob *p, int eff_cnt_limit) | ) |
| void free_cut PROTO | ( | (cut_data **lpcut) | ) |
| void free_waiting_row PROTO | ( | (waiting_row **wrow) | ) |
| void free_waiting_rows PROTO | ( | (waiting_row **rows, int row_num) | ) |
| void free_waiting_row_array PROTO | ( | (waiting_row ***rows, int row_num) | ) |
| void free_cuts PROTO | ( | (cut_data **lpcuts, int cut_num) | ) |
| void free_col_set PROTO | ( | (our_col_set **colset) | ) |
| void free_candidate_completely PROTO | ( | (branch_obj **cand) | ) |
| void free_node_desc PROTO | ( | (node_desc **desc) | ) |
| int comp_cut_name PROTO | ( | (const void *c0, const void *c1) | ) |
| int is_feasible_u PROTO | ( | (lp_prob *p, char branching) | ) |
| void send_feasible_solution_u PROTO | ( | (lp_prob *p, int xlevel, int xindex, int xiter_num, double lpetol, double new_ub, int cnt, int *xind, double *xval) | ) |
| void display_lp_solution_u PROTO | ( | (lp_prob *p, int which_sol) | ) |
| int select_candidates_u PROTO | ( | (lp_prob *p, int *cuts, int *new_vars, int *cand_num, branch_obj ***candidates) | ) |
| int compare_candidates_u PROTO | ( | (lp_prob *p, double oldobjval, branch_obj *best, branch_obj *can) | ) |
| void print_branch_stat_u PROTO | ( | (lp_prob *p, branch_obj *can, char *action) | ) |
| int same_cuts_u PROTO | ( | (lp_prob *p, waiting_row *wrow1, waiting_row *wrow2) | ) |
| void unpack_cuts_u PROTO | ( | (lp_prob *p, int from, int type, int cut_num, cut_data **cuts, int *new_row_num, waiting_row ***new_rows) | ) |
| int send_lp_solution_u PROTO | ( | (lp_prob *p, int tid) | ) |
| int generate_column_u PROTO | ( | (lp_prob *p, int lpcutnum, cut_data **cuts, int prevind, int nextind, int generate_what, double *colval, int *colind, int *collen, double *obj, double *ub, double *lb) | ) |
| void print_stat_on_cuts_added_u PROTO | ( | (lp_prob *p, int added_rows) | ) |
| char analyze_multicriteria_solution PROTO | ( | (lp_prob *p, int *indices, double *values, int length, double *true_objval, double etol, char branching) | ) |
1.6.1