Download presentation
Presentation is loading. Please wait.
1
Jonathan Kalechstain 27.5.2013 Tel Aviv University
GENERALIZED FLOWS Jonathan Kalechstain Tel Aviv University
2
Introduction Until now, we made an assumption that if k units of flow leaves node u, then k units of flow arrives at node v. This assumption may not be always true, like in transmission of unstable gas , or leaking pipes. u k v
3
Using multipliers We are given a graph πΊ=(π,πΈ)
We associate a positive π π,π with every arc π,π βE Assume that if 1 unit of flow was sent from node i along the arc (π,π) then π π,π units of flow arrived at node j. Notice that the model is a generalization of the minimal cost flow problem, with every arc having the multiplier π π,π =1
4
Example Assume that π π’,π£ =0.8 V received 8 units of flow! u 10 v
5
Notations and Assumptions
G=(V,E) is a directed graph Capacity function u(v,w) > 0 for every (π£,π€)βπΈ Cost function c(v,w) β₯0 for every π£,π€ βπΈ An arc multiplier π π£,π€ β₯0 for every π£,π€ βπΈ Balance function b(v) for every π£βπ we will have a number b(v) > 0 β supply b(v) < 0 β demand
6
Formulation Of The Generalized Flow Problem(linear programming)
Minimize (π,π)βπΈ π π,π βπ₯(π,π) Subject to: {π:(π,π)βπΈ} π₯ π,π β π: π,π βπΈ π₯ π,π βπ π,π =π π βπβπ And 0β€π₯ π,π β€π’ π,π ,β(π,π)βπΈ
7
An Important Remark π’(π,π) is an upper bound on the flow that we send from i, not the flow that arrives at node j. π(π,π) is the cost per unit flow we send from i, not the per unit cost that arrives at node j
8
Example Assume that π π’,π£ =0.8 and π π’,π£ =4
V received 8 units of flow and we pay 40 units not 32! u X(u,v)=10 v
9
Augmented Forest structures
10
Flows along Paths Let P be a path from node s to node t (not directed) in the network. Let π and π denote the sets of forward arcs and backwards arcs in P. Definition: the path multiplier of a path P is defined as follows: π π = (π,π)β π π π,π (π,π)β π π π,π Forward arc means that if we send flow along a path, the arc is the same direction as the path. If itβs in opposite direction we call it a backward arc
11
Example All arcs are forward arcs π π,π u v 3 0.5 4 1 1 2 3 4 5
12
Example ( π₯ π,π πππππ‘πππ, π π,π ) u v (2,3) 0.5 4 1 1 2 3 4 5
( π₯ π,π πππππ‘πππ, π π,π ) u v (2,3) 0.5 4 1 1 2 3 4 5 Add two units of flow from 1 to 2! 2 receives 6 units of flow
13
Example ( π₯ π,π πππππ‘πππ, π π,π ) u v 3 (6,0.5) 4 1 1 2 3 4 5
( π₯ π,π πππππ‘πππ, π π,π ) u v 3 (6,0.5) 4 1 1 2 3 4 5 2 send its 6 unit of flow out! 3 receives 3 units of flow
14
Example ( π₯ π,π πππππ‘πππ, π π,π ) u v 3 0.5 (3,4) 1 1 2 3 4 5
( π₯ π,π πππππ‘πππ, π π,π ) u v 3 0.5 (3,4) 1 1 2 3 4 5 3 send its 3 unit of flow out! 4 receives 12 units of flow
15
Example π π = (π,π)β π π π,π (π,π)β π π π,π = 3β0.5β4β1 1 =6
( π₯ π,π πππππ‘πππ, π π,π ) u v 3 0.5 4 (12,1) 1 2 3 4 5 4 send its 12 unit of flow out! 5 receives 12 units of flow 2 units were first sent, and eventually 12 were received. Notice the relation is 6 π π = (π,π)β π π π,π (π,π)β π π π,π = 3β0.5β4β1 1 =6
16
Example Not all arcs are forward arcs π π,π u v 2 6 2 1 2 3 4
17
Example ( π₯ π,π πππππ‘πππ, π π,π ) u v (1,2) 6 2 1 2 3 4
( π₯ π,π πππππ‘πππ, π π,π ) u v (1,2) 6 2 1 2 3 4 Add one units of flow from 1 to 2! 2 receives 2 units of flow
18
Example ( π₯ π,π πππππ‘πππ, π π,π ) u v 2 (- 1 3 ,6) 2 1 2 3 4
( π₯ π,π πππππ‘πππ, π π,π ) u v 2 (- 1 3 ,6) 2 1 2 3 4 In order to keep the mass balance constraint, after node 2 got 2 units of flow, 3 decreases itβs flow by one third of a unit 2 receives -2 units of flow
19
Example π π = (π,π)β π π π,π (π,π)β π π π,π = 2β2 6 = 2 3
( π₯ π,π πππππ‘πππ, π π,π ) π π = (π,π)β π π π,π (π,π)β π π π,π = 2β2 6 = 2 3 u v 2 6 (2, 1 3 ) 1 2 3 4 Now to keep the mass balance constraint node 3 adds of flow. Node 4 receives extra units of flow. So after sending 1 unit of flow from 1, 4 gets units. Therefore the multiplier is
20
Conclusion Property 1: If we send 1 unit of flow from node s to another node t along a path P, then π(π) units become available at node t.
21
Flows along Cycles Let W be a path from node s to itself (not directed, with some orientation) in the network. Let π and π denote the sets of forward arcs and backwards arcs in W. The cycle multiplier of a circle W is : π π = (π,π)β π π π,π (π,π)β π π π,π
22
Some definitions π π = (π,π)β π π π,π (π,π)β π π π,π If π π >1, then an excess is created in node s. we call this a gainy cycle. If π π <1, then a deficit is created in node s. we call this a lossy cycle. If π π =1, then mass balanced is conserved in all nodes. we call this a breakeven cycle.
23
Proof: nominator and denominator switch by definition.
π π = (π,π)β π π π,π (π,π)β π π π,π Property 2: if π π is the multiplier of a cycle W with a particular orientation, then 1 π π is the multiplier of the same cycle with opposite direction Proof: nominator and denominator switch by definition. Property 3: if π π β 1 the cycle is loosy with one orientation and gainy with the other.
24
Property 4: By sending π units along a nonbreakeven cycle starting at node s, we create an imbalance of |πβ π π β1 | units at node s. Proof: at first we send π units, and then by property 1,πβπ π units arrive back at node s, so the size of the imbalance is |πβπ π - π| Reminder: Property 1: If we send 1 unit of flow from node s to another node t along a path P, then π(π) units become available at node t.
25
Augmented Tree Let πΊ πΌ =( π πΌ , π πΌ ) be a subgraph of G=(π,πΈ) such that π πΌ βπ and π πΌ βπΈ. πΊ πΌ is considered an augmented tree if π πΌ is a spanning tree of π πΌ together with some extra edge π= π,π which is called the extra arc An augmented tree has a designated node called the root. Each augmented tree is hanging from itβs root
26
Example b and c are two augmented trees of the graph a. The extra arc is represented by a dashed line
27
An augmented tree contains exactly one circle.
The cycle is referred to as the extra cycle An augmented tree is called a good augmented tree if for the extra cycle W π(W)β 1
28
Augmented Forest We define an augmented forest πΊ π =(π,πΉ) when πΉβπΈ as a collection of node-disjoint augmented trees that span all the nodes in the graph. An augmented forest is considered good if each of itβs components is a good augmented tree. See 2 slides ago at d, to see an example of an augmented forest of the graph. The arcs of the augmented forest are called augmented-forest arcs and the remaining arcs are called nonaugmented-forest arcs
29
Augmented Forest Structures and Optimality Conditions
Let πΊ=(π,πΈ) Let πΈ=πΉβͺπΏβͺπ define a partition of E, and let F be a good augmented forest. we refer to the arcs in L as nonaugmented-forest arcs at their lower bound we refer to the arcs in U as nonaugmented-forest arcs at their upper bound. The triple (πΉ,πΏ,π) defines an augmented forest structure.
30
Feasibility An augmented forest structure (πΉ,πΏ,π) is feasible if we set π₯ π,π =0 β π,π βπΏ and π₯ π,π = π’ π,π β π,π βπ and the flow X on the augmented-forest arcs satisfy the generalized flow definition (mass balance constraints and flow bounds). We say that an augmented forest structure is nondegenerate if 0< π₯ π,π < π’ π,π ,β π,π βπΉ We will also say that a feasible augmented forest structure (πΉ,πΏ,π) is an optimal augmented forest structure if its associated flow X is an optimal solution of the generalized flow problem
31
Node Potentials and Reduced Costs
Let π:VβR be the node potentials function With respect to π , we define the reduced cost of an arc (π,π) as : π π,π π = π π,π βπ π + π π,π π(π)
32
Generalized Flow Optimality Condition
A flow x* is an optimal solution of the generalized network flow problem if it is feasible and for some potential function π the following conditions are satisfied: If 0<π₯ π,π β < π’ π,π then π π,π π =0 If π₯ π,π β =0 then π π,π π β₯0 If π₯ π,π β = π π,π then π π,π π β€0
33
Proof Claim 1 : minimizing π,π βπΈ π π,π π₯ π,π is equivalent to minimizing π,π βπΈ π π,π π π₯ π,π Similar to a proof was given in the past Back to the sentence: let x be some arbitrary flow.
34
Looking at π,π βπΈ π π,π π β( π₯ π,π β π₯ π,π β )
If 0<π₯ π,π β < π π,π then π π,π π =0 If π₯ π,π β =0 then π π,π π β₯0 If π₯ π,π β = π’ π,π then π π,π π β€0 Looking at π,π βπΈ π π,π π β( π₯ π,π β π₯ π,π β ) Letβs prove that each term in the summation is not negative: Lets look at the following 3 cases to prove this: 0<π₯ π,π β < π’ π,π in this case it is given that π π,π π =0 π₯ π,π β =0 in this case π₯ π,π β₯ π₯ π,π β =0, and because π π,π π β₯0, we multiply two non negative numbers so the result is not negative. π₯ π,π β = π’ π,π in this case π₯ π,π β€ π₯ π,π β = π’ π,π , and because π π,π π β€0, we multiply two non positive numbers so the result is not negative.
35
So now π π β π₯β π₯ β = π π π₯β π π π₯ β β₯0, which means that π π π₯β₯ π π π₯ β . We showed that with the 3 conditions, some feasible flow π₯ β is minimal.
36
Augmented Forest Structure Optimality Conditions
This propertyβs proof is immediate from the last sentence: A feasible augmented forest structure (πΉ,πΏ,π) with the associated flow π₯ β is an optimal augmented forest structure if for some function π:πβπ
the pair(π, π₯ β ) satisfy the following optimality conditions: π π,π π =0,β π,π βπΉ (because 0β€π₯ π,π β β€ π’ π,π ) π π,π π β₯0,β π,π βπΏ (because 0=π₯ π,π β ) π π,π π β€0,β π,π βπ (because π’ π,π =π₯ π,π β )
37
Determining Node Potentials for an Augmented Forest Structure
Let (πΉ,πΏ,π) be an augmented forest structure. The augmented forest F contains several augmented trees. The following algorithm is performed per tree. Let πβͺ{ π,π } be some augmented tree, and let node h be itβs root. We would like to satisfy the condition that π π,π π =0,β π,π βπΉ , so we use the following equation: π π,π π = π π,π βπ π + π π,π π π =0
38
The main idea We start by setting π β =π which will be determined later. We then use DFS on the not directed tree T, and because of connectivity and DFS properties, we will always know π(π) or π(π) when π π,π βπ π + π π,π π π =0, so for each node we will get a single equation with one variable (and π). We use the extra arc (π,π) to determine π, and update the potentials (they are linear functions of π).
39
Algorithm pseudo code
40
Example Special arc ( π π,π , π π,π ) u v (10,1) (5,2) (6,3) (8,3)
(10,2)
41
Example Determine π ππππ‘ =π Special arc ( π π,π , π π,π ) π(π’) root π
(10,1) (5,2) (6,3) (8,3) (10,2)
42
Example Running DFS(not including the special arc), going to red.
( π π,π , π π,π ) π(π’) Running DFS(not including the special arc), going to red. π πππππ,πππ βπ πππππ + π πππππ,πππ π πππ = 10βπ+1βπ πππ =0βπ πππ =πβ10 root π (10,1) (5,2) (6,3) πβ10 (8,3) (10,2)
43
Example Running DFS(not including the special arc), going to yellow.
( π π,π , π π,π ) π(π’) Running DFS(not including the special arc), going to yellow. π π¦πππππ€,πππ βπ π¦πππππ€ + π π¦πππππ€,πππ π πππ = 8βπ π¦πππππ€ +3β πβ10 =0 βπ π¦πππππ€ =3πβ22 root π (10,1) (5,2) (6,3) πβ10 (8,3) (10,2) 3πβ22
44
β¦β¦β¦ Special arc ( π π,π , π π,π ) π(π’) root π (10,1) (5,2) (6,3) πβ10
β π (8,3) (10,2) 3πβ22 β π
45
Special Arc π πππ,πππ’π βπ πππ + π πππ,πππ’π π πππ’π =
( π π,π , π π,π ) π(π’) π πππ,πππ’π βπ πππ + π πππ,πππ’π π πππ’π = 6β πβ10 +3(β π)=0 β0.5ΞΈ=β8.5βπ=β17 root β17 (10,1) (5,2) (6,3) β27 β11 Time complexity: O(n) (8,3) (10,2) β73 β10.5
46
Determining Flow for an Augmented Forest Structure
Let (πΉ,πΏ,π) be an augmented tree structure with the current assumption that the network is uncapacitated, which means π=β
. We present an algorithm determining the flow for each augmented tree. In this algorithm we start from the leaf nodes, and advance toward the root.
47
Let πβͺ{ π,π } be some augmented tree of the forest.
We define π(π) as the imbalance of a node, and begin with π π =π(π). We set the flow of the extra arc π₯ π,π =π and all other arcs get flow 0. We can say we decreased the imbalance at node a by π units, and increased it at node b by π π π,π units. Now we start updating the graph in the following way:
48
Case 1: More of the tree After update, we delete the leaf node j and the relevant edge e(i) e(i)+ π π,π π(π) π π π₯ π,π =0 π₯ π,π =π(π) j j e(j) j is a leaf node
49
Case 2: More of the tree After update, we delete the leaf node j and the relevant edge e(i) e(i)+ π(π) π π,π π π π₯ π,π =0 π₯ π,π =β π(π) π π,π j j e(j) j is a leaf node
50
After updating the rest of the leaves (each time we get a new tree ) each arc is a function of π.
we set π ππππ‘ =0, calculate the value of π, and place it in all of the arcs flows. Now we have a flow that satisfy the mass balance constraint (if all arcs were not capacitated)
51
Pseudo code
52
Running Example Special arc 5 e(i) (1,0) (1,0) π π,π , π₯ π,π (0.5, π)
(0.5, π) (2,0) (3,0) e(j) 10 -20
53
Running Example Special arc We set : π πππ =π πππ βπ=βπ
π πππ’π =π πππ’π + π πππ,πππ’π π=0.5π 5 e(i) (1,0) (1,0) π π,π , π₯ π,π (0.5, π) (2,0) (3,0) e(j) 10 -20
54
Running Example Special arc Now lets look at the yellow leaf:
We have an edge (yellow,red) So : π π¦πππππ€ =0 π πππ =π πππ + π π¦πππππ€,πππ β10=βπ+3β10=βπ+30 Flow(yellow,red)=10 5 e(i) (1,0) (1,0) (π π,π , π₯ π,π ) βπ 0.5π (0.5, π) (2,0) (3,10) e(j) 10 -20
55
Running Example Special arc Now lets look at the green leaf:
We have an edge (blue,green) So : π πππππ =0 π πππ’π =π πππ’π β 20 π πππ’π,πππππ =0.5πβ10 Flow(blue,green)=10 5 e(i) (1,0) (1,0) (π π,π , π₯ π,π ) βπ+30 0.5π (0.5, π) (2,10) e(j) -20
56
Running Example Special arc Now lets look at the blue leaf:
We have an edge (black,blue) So : π πππ’π =0 π πππππ =π πππππ + 0.5πβ =0.5πβ5 Flow(black,blue)=β0.5π+10 5 e(i) (1,0) (1,0) (π π,π , π₯ π,π ) βπ+30 0.5πβ10 (0.5, π) e(j)
57
Running Example Special arc Now lets look at the red leaf:
We have an edge (black,red) So : π πππ =0 π πππππ =π πππππ + βπ =β0.5π+25 Flow(black,red)=πβ30 Now to determine π: β0.5π+25=0βπ=50 0.5πβ5 e(i) (1,0) (π π,π , π₯ π,π ) βπ+30 e(j)
58
Final flow Special arc 5 b(i) 20 -15 π₯ π,π 50 10 10 b(j) 10 -20
59
It is easy to prove this algorithm finds a unique flow and value of π.
Eventually we get some linear function of π for π ππππ‘ =π ππππ‘ +g ππππ‘ π=0β π=β π(ππππ‘) π(ππππ‘) It is important to show that g(root) is never 0. Proof:
60
It is easy to see that ππ ππππ‘ is the imbalance of the root, resulting from setting the flow on the arc (π,π) as π. Setting the flow on the arc (π,π) as π creates a deficit of π units at a, and an excess of π π,π π at b. let π π₯βπ¦ denote the tree path from x to y, and let π( π π₯βπ¦ ) denote the path multiplier. We can cancel the deficit at node a by sending π π( π ππππ‘βπ ) from the root, and cancel the excess at node b by sending π π π,π from node b to the root (π π πβππππ‘ π π π,π units arrive at the root)
61
So using the last conclusions we can say that g(root)= π π πβππππ‘ π π,π β 1 π( π ππππ‘βπ )
So g(root)=0βπ π πβππππ‘ π π,π π( π ππππ‘βπ )=1, but this is exactly the multiplier of the circle. So if the circle is not breakeven (i.e the augmented tree is good), the proof stands.
62
Extending to capacitated case
The initialization is the same. For every π,π βπ do begin π₯ π,π = π’ π,π :setting the required flow π π =π π β π’ π,π : set deficit π π =π π + π π,π π’ π,π : set excess. 3. Run the previous algorithm
63
Conclusion about the flow
We need the augmented trees to be good augmented tree. Our flow satisfy mass balance constraint, but doesnβt promise the flow is legitimate (e.g. negative flow as seen in example) The flow on the arcs of the augmented forest that satisfy the mass balance constraint is unique, so the forest structure is feasible if and only if the flow bounds are satisfied
64
Properties from linear programming (no proof)
Arcs in a set B have a unique solution if and only if B is a good augmented forest A set B of arcs defines a basis(an extreme point on the polytope) of the generalized network problem if and only if B is a good augmented forest. This means that there exist an optimal solution for a good augmented tree. (3)
65
The Generalized Network Simplex Algorithm
This algorithm maintains a good feasible augmented forest structure at every iteration, using pivot rules to eventually reach an improved augmented forest structure that satisfies the optimality conditions
66
Pseudo Code
67
Obtaining an Initial Good Augmented Forest Structure
Easy to achieve an artificial initial augmented forest structure, simply by adding self edges with sufficiently large cost, infinite capacity and appropriate multipliers on these edges. We will avoid full details and proof but assume we have a good initial augmented forest structure. Computing x and π like explained in previous slides. (4)
68
Initial Augmented Forest
(π π,π , π π,π , π’ π,π ) (0.5,π,β) The forest is the set of self arcs. Set π₯ π,π = π(π) 1β π π,π M is big enough so that if a feasible solution exists, no optimal solution with positive flow on the self arcs exists. b(i) 5 (2,π,β) (2,π,β) (0.5,π,β) (2,π,β) 10 -20
69
Optimality Testing and the Entering Arc
To determine whether a spanning tree structure is optimal we check: If the spanning tree structure satisfies the conditions it is optimal ο we terminate Else, the algorithm selects a non-forest violating arc to enter the forest:
70
Pivot Rules For any eligible arc (i, j) we refer to I π π,π π I as its violation. The network simplex algorithm can select any eligible arc to enter the tree and still would terminate finitely (with some provisions for dealing with degeneracy) Pivot rules for selecting entering arcs: Dantzig's pivot rule First eligible arc pivot rule Candidate list pivot rule These rules were shown in the simplex lecture
71
Identifying the Leaving Arc
Assume the entering arc is π,π βπΏ (will prove only for this case). Denote π¦ π,π as the change in flow units for π,π βπΉ if we use 1 unit of flow on π,π If we knew the values π¦ π,π ,β π,π βπΉ then it would be easy to know the maximum number of flow we can use on π,π so all edges will remain between their lower and upper bound. This promise we have an arc that reached itβs lower or higher bound β this is the arc we drop.
72
Determine π¦ π,π Use the Algorithm presented before to compute the value of each arc in the trees of k,l: At first the flow is 0 for all edges, and the imbalance vector is: e(i) = -1 if i=k e(i) = π π,π if i=l e(i) = 0 else The arc flow we obtain are the π¦ π,π values
73
Determine the Maximum Flow On (k,l) Within the Bounds
If we add πΏ units of flow to (k,l) then to keep the flow bounds : 0β€ π₯ π,π +πΏ π¦ π,π β€ π’ π,π β π,π βπΉβͺ{ π,π } It is easy to see that if π¦ π,π >0 then the edge will go up to itβs lower bound, and if π¦ π,π <0 then the opposite will happen. Denote πΏ π,π by the maximum number of units allowed to use to make π,π reach itβs lower\upper bound then: πΏ π,π = (π’ π,π β π₯ π,π ) π¦ π,π ππ π¦ π,π >0 β π₯ π,π π¦ π,π ππ π¦ π,π <0 β ππ π¦ π,π =0 So the largest value for which π₯+πΏπ¦ is feasible is πΏ=minβ‘[ πΏ π,π ]
74
We augment πΏ units on the arc (π,π) and change the value of each arc to π₯ π,π +πΏ π¦ π,π .
The leaving arc is one of the arcs for which πΏ is defined (the blocking arc). We say that the iteration is not degenerate if πΏ>0 (or else we had a degenerate tree) All of these actions take O(m) time
75
Updating the Augmented Forest
When leaving arc (p, q) is determined for a given entering arc (k, I), we updates the tree structure If the leaving arc is the same as the entering arc, (when Ξ΄ = Ξ΄pq =upq), the tree does not change. -the arc (k, I) merely moves from the set L to the set U, or vice versa. If the leaving arc differs from the entering arc, we need to prove we still have a good augmented forest. We use the fact that the simplex method moves from one basis to another, and each basis is a good augmented forest. (5)
76
Updating Potentials, Tree Indices
Use the node potential algorithm presented before for the new tree(s) O(n) time. Update the tree indices β can do it from scratch in O(n) time.
77
Termination (1) The Algorithm moves from one feasible augmented forest structure to the other until it satisfies the optimality conditions. In a pivot operation, the objective function value decreases by the amount of πΏ|π π,π π | at every iteration (no proof) If each pivot operation is nondegenrate (i.e πΏ>0) each subsequent augmented forest structure has a smaller cost.
78
Termination (2) Since any network has a finite number of augmented forest structures, and each augmented forest structure has a unique associated cost(which decreases with every iteration), the generalized network simplex algorithm terminates.
79
Dealing with Degenerate Pivots
We define π as an n-vector whose elements are (πΌ,πΌ,β¦,πΌ) for a sufficiently small real number πΌ. If we replace π by π+π it is possible to prove that the augmented forest structure at every iteration is not degenerate and therefore the algorithm terminates. It is also possible to prove that an optimal augmented forest structure of the perturbed problem is also an optimal augmented forest structure of the original problem. (6)
80
Complexity #of iterations * complexity of iteration.
Cannot bound the number of iterations by any polynomial p(n,m). In practice the number of iterations is generally a low order polynomial p(n,m). All of the operations: identifying the entering arc, computing π¦ π,π values, updating flows, potentials and tree indices require O(m) time. So in practice the time complexity is a low order polynomial p(n,m). Empirical investigations found that the generalized network simplex algorithm is 2 to 3 times slower than that of the minimal cost simplex algorithm.
81
An Application Example
Sally owns a warehouse of fixed capacity 1000 units to store a type of wine whose price is unstable She knows the price of the product for the next 3 time periods, and she needs to manage her purchases, sales and storage patterns. Suppose she holds πΌ 0 =100 units of the wine, and she has πΆ 0 =10,000 dollars in assets. In each period she can sell and buy wine under the limitations. The price of the wine varies(we define it as π(π) at time i) and ultimately all of the wine must be sold. The idea is to maximize the amount of cash πΆ 4 available at the end of the third period. (1)
82
π = ( π 1 , π 2 , π 3 ) (πππ π‘,πππππππ‘π¦,ππ’ππ‘ππππππ) u v Warehouse:
π = ( π 1 , π 2 , π 3 ) Warehouse: Can store 1000 units of wine πΌ 0 = 100 π’πππ‘π =10,000$ Flow represent wine quantity here (πππ£πππ‘πππ¦_βππππππ $ π’πππ‘ ,1000,1) 1 2 3v sell sell sell (0,β, π 3 ) (0,β, 1 π 1 ) buy buy 1β 2β 3β 4β Flow represent $ here (0,β,ππππ πππ‘πππ π‘)
83
The End
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.