help-glpk
[Top][All Lists]

## Re: [Help-glpk] How to create appropriate constraint file for a problem

 From: Andrew Makhorin Subject: Re: [Help-glpk] How to create appropriate constraint file for a problem Date: Wed, 16 Dec 2009 06:26:45 +0300

```> I have attached a separate file that shows an input deck that does
> this (it is a deck in the old MPS format, btw).

sampleinp.txt:9: in fixed MPS format positions 62-72 must be blank
MPS file processing error

Commenting out the text in positions 62-72 with a dollar character
(\$) makes it suitable to be read in free mps format.

BTW, why not to use mathProg language or at least cplex lp format?

>  The problem setup will
> work for this case, but it is lacking an additional constraint that I
> want to impose... namely that the final ratio of the number of points
> in each segment to the total number on each edge should stay as close
> as possible to original ratio (the min values input originally)

> I can't seem to figure out how to impose this constraint ... just
> wondering if anyone else can enlighten me?

Let:
x[e,i] = number of points in segment i on edge e
y[e]   = sum x[e,i] = total number of points on edge e

Then the condition to be met is the following:
x[e,i] / y[e] is as close to ratio[e,i] as possible for all (e, i)

Probably it can be modeled as follows:
x[e,i] - ratio[e,i] * y[e] + s[e,i] - t[e,i] = 0  for all (e,i)
where s[e,i], t[e,i] >= 0.

Note that:
s[e,i] + t[e,i] = |x[e,i] - ratio[e,i] * y[e]|.

And the objective is to minimize the following sum:
sum (s[e,i] + t[e,i]) for all (e, i)

```