[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
## [Bug-glpk] Bug in amd_order.c ?

**From**: |
niels |

**Subject**: |
[Bug-glpk] Bug in amd_order.c ? |

**Date**: |
Sun, 24 May 2009 01:36:46 +0300 |

Hello,
I'm sorry to say I think I may have found a small bug in amd_order.c
When using glpk 4.38 and I try to solve this problem with the interior
point method (either null or default params) :
Minimize
obj: - x_4 - x_5
Subject To
r_1: + x_4 - 2 x_1 = 4
r_2: + 2 x_5 + x_2 = 12
r_3: + 2 x_5 + 3 x_4 + x_3 = 18
End
I get this:
glp_write_lp: writing problem data to `outpb.lp'...
Scaling...
A: min|aij| = 1.000e+00 max|aij| = 3.000e+00 ratio = 3.000e+00
Problem data seem to be well scaled
GM: min|aij| = 8.882e-01 max|aij| = 1.126e+00 ratio = 1.268e+00
Original LP has 3 row(s), 5 column(s), and 7 non-zero(s)
Working LP has 3 row(s), 5 column(s), and 7 non-zero(s)
Matrix A has 7 non-zeros
Matrix S = A*A' has 5 non-zeros (upper triangle)
Approximate minimum degree ordering (AMD)...
xfree: ptr = (nil); null pointer
Error detected in file glplib07.c at line 175
Aborted
I traced through the code a bit and found that on line 132 in
src/amd/amd_order.c you have:
Rp = NULL ;
Then just before the status is returned (line 192 I think) you have
amd_free (Rp) ;
however since amd_free is a pseudonym of xfree and xfree throws the
error above when it receives a var with an null value, you can see the
problem...
Thanks and Regards,
niels klitgord

**[Bug-glpk] Bug in amd_order.c ?**,
*niels* **<=**