[Symphony] biobjective problems

Ted Ralphs ted at lehigh.edu
Sun Sep 15 12:45:28 EDT 2013


It looks correct to me (without knowing what the second objective is).
SYMPHONY converts all problems to minimization internally, so the negative
objective values are just because we don't check whether the problem was
maximization and negate the objective values if it is. This should be easy
to change. You can file a ticket and I'll try to get to it.

Ted


On Sun, Sep 15, 2013 at 12:39 PM, Papis Wongchaisuwat
<papis_31 at hotmail.com>wrote:

> Thank you for a reply.
> I tried to start from simple problem that I found in presentation online.
> vmax [8x1, x2]
> s.t. 7x1 + x2 <= 56
> 28x1 + 9x2 <= 252
> 3x1 + 7x2 <=105
> x1, x2 >=0
>
> In bicriteria.c, I use
> #include "symphony.h"
>
> int main(int argc, char **argv)
> {
>
>    sym_environment *env = sym_open_environment();
>    sym_parse_command_line(env, argc, argv);
>    sym_load_problem(env);
>
>    sym_set_obj2_coeff(env, 1, 1);
>
>    sym_mc_solve(env);
>
>    sym_close_environment(env);
>
>    return(0);
>
> }
>
> my lp file :
>
> Maximize ****
>
> obj: 8 var_1 + var_2****
>
>
>
> Subject to ****
>
>  C1: 7 var_1 + var_2 <= 56****
>
> C2: 28 var_1 + 9 var_2 <= 252****
>
> C3: 3 var_1+ 7 var_2 <= 105****
>
> Bound****
>
> var_1>=0****
>
> var_2>=0****
>
> Integer
>
> var_1
>
> var_2
>
> End ****
>
>
> I got incorrect results.
>
> This is what I got
>
> First Objective: -64.000 Second Objective: 0.000 Range: 0.468750-1.000000
> First Objective: -47.000 Second Objective: -15.000 Range: 0.000000-0.468750
>
> What did I do wrong?
>
> Thank you,
> Papis
>
>
>
> ------------------------------
> From: ted at Lehigh.EDU
> Date: Sun, 15 Sep 2013 12:27:26 -0400
>
> Subject: Re: [Symphony] biobjective problems
> To: papis_31 at hotmail.com
> CC: hennebry at web.cs.ndsu.nodak.edu; symphony at list.coin-or.org
>
>
> sym_set_obj2_coeff(env, i, j) sets the objective function coefficient of
> variable "i" to value "j" in the second objective, as documented here:
>
> http://www.coin-or.org/SYMPHONY/man-5.5/node176.html
>
> At the moment, setting the objective coefficients one by one is the only
> way to specify a second objective through the API. Of course, you can also
> just directly set the objective function in SYMPHONY's internal
> representation of the instance.
>
> I have plans to improve this and to add the ability to specify two
> objectives through a modeling language, such as GMPL, but I haven't gotten
> to it yet.
>
> Cheers,
>
> Ted
>
>
> On Sat, Sep 14, 2013 at 10:58 PM, Papis Wongchaisuwat <
> papis_31 at hotmail.com> wrote:
>
> I found  bicriteria.c file in Examples. I tried running with the data set
> and I got several solutions as I am supposed to get.
> However, I am not sure whether I got a correct result.
> These are some parts of bicriteria.c file
> #include "symphony.h"
>
> int main(int argc, char **argv)
> {
>
>    sym_environment *env = sym_open_environment();
>    sym_parse_command_line(env, argc, argv);
>    sym_load_problem(env);
>
>    sym_set_obj2_coeff(env, 1, -1);
>
>    sym_mc_solve(env);
>
>    sym_close_environment(env);
>
>    return(0);
>
> }
>
> #endif
>
> Does anyone know what sym_set_obj2_coeff(env, 1, -1) means?  When should
> I use 1 or -1?
> My sample data is a minimization problem.
>
> Thank you,
> Papis
>
> > Date: Fri, 13 Sep 2013 23:29:29 -0500
>
> > From: hennebry at web.cs.ndsu.nodak.edu
> > To: papis_31 at hotmail.com
> > CC: symphony at list.coin-or.org
> > Subject: RE: [Symphony] biobjective problems
> >
> > On Sat, 14 Sep 2013, Papis Wongchaisuwat wrote:
> >
> > > I would like to run bi-objective Set cover and Set pack problems.
> Attached files are some examples that I want to run. MCKP and these
> problems are quite different. I don't know how to apply MCKP or either use
> any other ways to run these problems.
> >
> > From reading the manual,
> > I gather one can call sym_explicit_load_problem( ... )
> > and follow it by calling sym_mc_solve( ... ) .
> > Is there a reason that you cannot do that?
> >
> > --
> > Michael hennebry at web.cs.ndsu.NoDak.edu
> > "On Monday, I'm gonna have to tell my kindergarten class,
> > whom I teach not to run with scissors,
> > that my fiance ran me through with a broadsword." -- Lily
>
> _______________________________________________
> 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
>



-- 
Dr. Ted Ralphs
Associate Professor, Lehigh University
(610) 628-1280
ted 'at' lehigh 'dot' edu
coral.ie.lehigh.edu/~ted
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/symphony/attachments/20130915/4d0a34e5/attachment.html>


More information about the Symphony mailing list