[Symphony] SYMPHONY fails in solving with optimal initial solution

Ted Ralphs ted at lehigh.edu
Fri Mar 25 15:06:16 EDT 2011


I just committed a fix to SYMPHONY 5.3 that *should* fix this issue.
The column solution was getting checked and stored correctly, but the
flag indicating a solution existed was not set.

Cheers,

Ted

On Fri, Mar 25, 2011 at 12:28 PM, Linh Truong Dieu
<linhtd at soict.hut.edu.vn> wrote:
> Dear Ted,
> Thank you for the answer, it confirms my suspections.
> I used OSI function: setColSolutions (it call sym_set_col_solution) for
> setting the initial solution to Symphony. As I checked in the code of
> Symphony, it does verify if the given solution is feasible before setting
> the bound. So in order to increase 1 into the objective I need to produce
> the corresponding variable values which is a bit difficult.
>  I do not see if Symphony has a function for setting only the bound without
> the need to specify corresponding variable values. If you know this
> function, please tell me.
> Best,
> Linh
>
> 2011/3/25 Ted Ralphs <ted at lehigh.edu>
>>
>> Yes, this is a point of confusion that has come up before. If SYMPHONY
>> cannot find a solution *better* than the initial bound given, it
>> reports the instance infeasible. Essentially, it treats improvement of
>> the initial bound as a constraint that must be satisfied. I will try
>> to find some time to fix this, so it reports the correct result. In
>> the meantime, rest assured that everything is working correctly as far
>> as the algorithm itself is concerned.
>>
>> By the way, part of the issue is that we don't actually use the
>> solution given or try to verify that it is feasible. We just try to
>> improve upon the given bound. This is the original design why, in some
>> sense, the result reported is correct. One thing you can do if you
>> want SYMPHONY to report the result is to give it an initial bound just
>> slightly above the one produced by the initial solution (if it's a
>> pure integer problem and the objective has all integer coefficients,
>> then just add 1). Then the solution will be produced as expected.
>> Generally speaking, this doesn't in crease the running time *too*
>> much.
>>
>> Cheers,
>>
>> Ted
>>
>> On Fri, Mar 25, 2011 at 2:34 AM, Linh Truong Dieu
>> <linhtd at soict.hut.edu.vn> wrote:
>> > Dear all,
>> > I'm using Symphony 5.2.4 for some Mixed Interger problem. The problem is
>> > large so that I try to use set initial solution for the problem before
>> > solving it using branch and bound. I used Osi interface.
>> > However, sometimes when the initial solution is coincidently the optimal
>> > solution then the branch and bound after that terminate with a
>> > conclusion
>> > that the problem is infeasible which is completely illogic. I did test
>> > if
>> > the problem is feasible by running the problem again without setting the
>> > initial solution, the branch and bound process find the optimal
>> > solution.
>> >
>> > I used setColSolution() for setting the initial solution and
>> > branchAndBound() for calling brand and Bound process.
>> > Can someone help me.
>> > Many thanks,
>> > Linh
>> > --
>> > Truong Dieu Linh, PhD
>> > Department of Data Communications and Networks
>> > Faculty of Information Technology/School of ICT
>> > Hanoi University of Technology
>> > http://www.it-hut.edu.vn/~linhtd
>> >
>> > _______________________________________________
>> > Symphony mailing list
>> > Symphony at list.coin-or.org
>> > http://list.coin-or.org/mailman/listinfo/symphony
>> >
>> >
>>
>>
>>
>> --
>> Dr. Ted Ralphs
>> Associate Professor, Lehigh University
>> (610) 628-1280
>> ted 'at' lehigh 'dot' edu
>> coral.ie.lehigh.edu/~ted
>
>
>
> --
> Truong Dieu Linh, PhD
> Department of Data Communications and Networks
> Faculty of Information Technology/School of ICT
> Hanoi University of Technology
> http://www.it-hut.edu.vn/~linhtd
>



-- 
Dr. Ted Ralphs
Associate Professor, Lehigh University
(610) 628-1280
ted 'at' lehigh 'dot' edu
coral.ie.lehigh.edu/~ted





More information about the Symphony mailing list