by Maarten Behn
Group 5

Exercise 7.1 (Modeling as Min-Cost Flow) (10 Points)

Consider the following problem.
A car manufacturer has factories to produce different car models .
For and , it is known whether factory can produce model and, if so, at what unit cost .

Furthermore, factory for can produce at most cars per month, of which at most can be of model , .

The cars are sold by car dealers .
For and , it costs to transport a vehicle from to .

Additionally, dealer , for , sells cars of model per month.
The goal is to plan the production and transportation of cars such that the total cost is minimized.

Model the above optimization problem as a minimum-cost flow problem.
Specify the set of nodes and edges, as well as the edge capacities, costs, and balances.
Argue why your modeling solves the given production problem.

Idea

Transclude of AA-UE-7.1.excalidraw

Formal definition








Argument why a min const flow problem on models the optimization problem

Each Factory has in an input flow corresponding to .
This models the amount of cars each factory can produce.

This flow gets split up into .
The edges have a max capacity of
If the factory does not produce the model the capacity would be .
Therefore incoming flow into represents how many cars of model factory can produce.

The flow from gets split up into
The incoming flow into represents how many cars of model dealer sells.
Therefore the is

The edges have a cost of to represent the cost of transporting a car of model from factory to dealer .
Therefore the edges represent the distribution problem of cars to dealers.

Exercise 7.2 (Decomposition into Cycles) (10 Points)

Prove the following lemma from the lecture:
Let be a circulation in a network . Then, there exist flows with such that
(i) ,
(ii) is a feasible circulation in for all , and
(iii) takes positive values only on edges of a cycle in for all .

Idea

repeatedly finding a cycle in and extracting flow along these cycle until
the is empty.

Helper definition


Observation

When is a non empty circulation there must be at least one cycle in .

Proof

Start at
since
following all possible edges recursively must lead back to
forming a cycle
because is finite and all flow in a circulation is conserved.

Algorithm

While is not empty
Create for
Let be a cycle found in


Proof ​ is a feasible circulation

  • satisfies conserves flow same amount goes in a circle.
  • satisfies capacity constraints all flow is positive and less or equal to the original

Proof

Each iteration removes at least one edge form (the one with the minimum flow on the cycle)
so