Download Network Modelling and Networks

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
U
Primal pivot operations
The idea of primal pivot operations is to
increase flow over a basis circuit belonging to
an arc with negative shadow price. This will
decrease the total cost.
U
Pivot operation
There is an arc (a-d) with negative shadow price.
Increasing the flow over the corresponding
basis circuit will decrease total cost.
This increase is bounded by a-d (12), c-f (1) and
a-c (21), so maximal possible increase is 1.
Now c-f is bonded, remove it from the spanning
tree.
a-d becomes basic arc:
Now recomputed the potentials (green) and the
shadow prices:
cce ’ = 18 – 11 – 8 = -1
cef ’ = 11 – 15 + 6 = 2
B
B
B
B
(floor arc)
(roof arc)
Now c-e has negative shadow price:
The flow in its basis circuit can be increased by
10.
Compute new basis flow
Compute new potentials
Compute new shadow prices
ccf ’ = 11 – 15 + 6 = 2
cde’ = 19 – 8 – 10 = 1
B
B
B
B
All shadow prices are non-negative. No increase
is possible, the solution is optimal. Cost = 791.
A basis flow is called primal feasible if and only
if it satisfies all capacity restrictions.
U
U
A basis flow is called dual feasible if and only if
all shadow prices are nonnegative.
U
U
A flow that is both primal and dual feasible is
optimal (this follows from LP duality theory)
Primal pivot operation:
1. Find a basis arc l with c l ’ < 0.
2. Augment the flow over the basic circuit C l
with a maximal flow that satisfies all capacity
bounds.
3. Choose a blocking arc k on C l.
4. Perform a pivot operation on (k,l):
4a. k is the new bonded arc.
4b. l is the new basis arc
4c. recomputed the basis flow
4d. recomputed the potentials
4e. recomputed the shadow prices
5. If there is a negative shadow price (choose
the most negative and) go to 2.
B
B
B
B
B
B
The primal pivot operation adapts the flow while
keeping primal feasibility, meanwhile the cost is
reduced.
Finding a primal feasible basis flow to start with
may be difficult. A non-feasible flow can be
converted into a feasible flow on an adapted
network by adding extra arcs:
If the original problem has an optimal solution,
then the flow on the extra arcs will be 0.
If the original problem does not have a feasible
flow, then the optimal flow on the augmented
network will have non-zero flows on extra arcs.
This is similar to the two-phase (Big M)
approach for LP problems where you cannot
start in the origin
Recomputation of the potentials can be done
easily. Removing an arc from the spanning tree
cuts it in two connected parts. The potentials on
the component of the root do not change. The
potentials on the other component all change by
the same amount:
 v’ = v + c l’ if augmentation direction is w  v.
= v - c l’ if augmentation direction is v  w.
B
B
B
B
B
B
B
B
B
B
U
Dual pivot operation
Now suppose we change the restriction on a-d
from [8,20] to [8,15].
The solution found earlier is not primal feasible,
but it is dual feasible (all shadow prices are
nonnegative).
Arc a-d violates primal feasibility. Choose this
arc to pivot and remove it from the spanning
tree. Now c-f or d-e is needed to restire the
spanning tree. Choose the one with the smallest
shadow price: c cg’ = 2, c de’ = 1, so choose d-e
(choosing the smallest shadow price guarantees
that after pivoting all shadow prices are still
nonnegative, so the solution stays dual
feasible).
B
B
B
B
Recompute the flow, the potentials and the
shadow prices:
cad’ = 10 – 15 + 6 = 1
ccf ’ = 8 – 2 – 5 = 1
B
B
B
B
both are positive (dual feasible). The new flow
satisfies all capacity bounds (primal feasible)
and is therefore optimal! Cost = 795.