[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug-glpk] [Fwd: glpk 4.52 - ubuntu 14.04 distribution]
From: |
Andrew Makhorin |
Subject: |
[Bug-glpk] [Fwd: glpk 4.52 - ubuntu 14.04 distribution] |
Date: |
Tue, 24 Jun 2014 14:58:53 +0400 |
-------- Forwarded Message --------
From: Piotr Wygocki <address@hidden>
To: address@hidden
Subject: glpk 4.52 - ubuntu 14.04 distribution
Date: Mon, 23 Jun 2014 15:13:30 +0200
The following code works fine with glpk-4.45 but fails with glpk 4.52
#include "glpk.h"
int main() {
double inf = 100000000.;
glp_prob * m_lp = glp_create_prob();
glp_load_matrix(m_lp, 0, NULL, NULL, NULL);
//adding 4 cols
glp_add_cols(m_lp, 4);
int colNr = 1;
glp_set_col_bnds(m_lp, 1, 2, 0, inf);
glp_set_obj_coef(m_lp, 1 , 2);
glp_set_mat_col(m_lp, 1, 0, NULL, NULL);
colNr = 2;
glp_set_col_bnds(m_lp, colNr, 2, 0, inf);
glp_set_obj_coef(m_lp, colNr , 3);
glp_set_mat_col(m_lp, colNr, 0, NULL, NULL);
colNr = 3;
glp_set_col_bnds(m_lp, colNr, 2, 0, inf);
glp_set_obj_coef(m_lp, colNr , 1);
glp_set_mat_col(m_lp, colNr, 0, NULL, NULL);
colNr = 4;
glp_set_col_bnds(m_lp, colNr, 2, 0, inf);
glp_set_obj_coef(m_lp, colNr , 3);
glp_set_mat_col(m_lp, colNr, 0, NULL, NULL);
int m_idx_cols_tmp[3];
double m_val_cols_tmp[3];
//adding 4 columns
int rowNr = glp_add_rows(m_lp, 1);
glp_set_row_bnds(m_lp, rowNr, 5, 1, 1);
m_idx_cols_tmp[1] = 2;
m_val_cols_tmp[1] = 1;
m_idx_cols_tmp[2] = 1;
m_val_cols_tmp[2] = 1;
glp_set_mat_row(m_lp, 1, 2, m_idx_cols_tmp, m_val_cols_tmp);
rowNr = glp_add_rows(m_lp, 1);
glp_set_row_bnds(m_lp, rowNr, 5, 1, 1);
m_idx_cols_tmp[1] = 4;
m_val_cols_tmp[1] = 1;
m_idx_cols_tmp[2] = 3;
m_val_cols_tmp[2] = 1;
glp_set_mat_row(m_lp, 2, 2, m_idx_cols_tmp, m_val_cols_tmp);
rowNr = glp_add_rows(m_lp, 1);
glp_set_row_bnds(m_lp, rowNr, 3, -inf, 2);
m_idx_cols_tmp[1] = 3;
m_val_cols_tmp[1] = 1;
m_idx_cols_tmp[2] = 1;
m_val_cols_tmp[2] = 2;
glp_set_mat_row(m_lp, 3, 2, m_idx_cols_tmp, m_val_cols_tmp);
rowNr = glp_add_rows(m_lp, 1);
glp_set_row_bnds(m_lp, rowNr, 3, -inf, 2);
m_idx_cols_tmp[1] = 4;
m_val_cols_tmp[1] = 1;
m_idx_cols_tmp[2] = 2;
m_val_cols_tmp[2] = 2;
glp_set_mat_row(m_lp, 4, 2, m_idx_cols_tmp, m_val_cols_tmp);
//solving
glp_smcp m_glpk_control;
glp_init_smcp(&m_glpk_control);
m_glpk_control.msg_lev = GLP_MSG_OFF;
m_glpk_control.meth = GLP_PRIMAL;
glp_adv_basis(m_lp, 0);
glp_simplex(m_lp, &m_glpk_control);
//deleting 2 columns
int arr[2];
arr[0] = 0;
arr[1] = 4;
glp_del_cols(m_lp, 1, arr);
arr[1] = 3;
glp_del_cols(m_lp, 1, arr);
//deleting 2 rows
arr[1] = 4;
glp_del_rows(m_lp, 1, arr);
arr[1] = 3;
glp_del_rows(m_lp, 1, arr);
//solve
glp_simplex(m_lp, &m_glpk_control);
return 0;
}
compilation:
gcc glp.c -lglpk
gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1)
fails with:
Assertion failed: ptr < end
Error detected in file bflib/sgf.c at line 99
Aborted (core dumped)
Regards,
Piotr
- [Bug-glpk] [Fwd: glpk 4.52 - ubuntu 14.04 distribution],
Andrew Makhorin <=