[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-glpk] operand preceding == has invalid type
From: |
Andrew Makhorin |
Subject: |
Re: [Help-glpk] operand preceding == has invalid type |
Date: |
Thu, 14 Oct 2010 23:11:37 +0400 |
> I am new to linear programming and I am having difficulty formulating the
> objective function. glpsol is able to find a solution with a null (0)
> objective function, but cannot process this objective function:
>
> minimize objective_function:
> sum{(i11,j11,k11,i12,j12,k12) in LogicalLink,
> (i21,j21) in PhysicalSwitch, k21 in 1..24,
> (i22,j22) in PhysicalSwitch, k22 in 1..24:
> x[i12,j12,k12,i22,j22,k22] + x[i11,j11,k11,i21,j21,k21] == 2}
> sqrt(
> (x_offset[i21,j21,k21] - x_offset[i22,j22,k22])**2 +
> (y_offset[i21,j21,k21] - y_offset[i22,j22,k22])**2
> );
>
> I'm trying to map a logical network onto a physical network. Logical
> switches with M ports are mapped to physical switches with N ports (N >= M).
> A logical switch port is mapped to a physical switch port. The constraints
> by themselves give a feasible solution, but I wanted to add an optimization
> function to minimize the total length of physical cable. I'm attaching to
> complete MathProg program below.
Glpk is intended for lp/mip only and therefore does not allow quadratic
objectives like in your instance. You can approximate your objective by
a piecewise linear function using a standard technique; since your
objective is convex, no binary variables are needed. Another way is to
use a quadratic programming package.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Help-glpk] operand preceding == has invalid type,
Andrew Makhorin <=