• Keine Ergebnisse gefunden

A Feasible Flow representing Bends

3.3 Conclusion

4.1.2 A Feasible Flow representing Bends

From here on, we consider the graph to be 2-connected. Note that any(2, l)-tight graph can easily be extended to a 2-connected (2, l)-tight graph by adding an appropriate number of degree two vertices.

To describe the behavior of the bends of a grid-path, we introduce a flow network similar to the flow network introduced by Tamassia [Tam87]. A flow networkN is a graph that has

two distinct sets of vertices that are the sources and the sinks of the network. The sources and the sinks in our case, as well as in the network designed by Tamassia, are the faces of the graph (see Figure 4.3). For a face of a graph G, needing a convex angle of a bend is presented as having an excess, i.e., it is a source. Similarly, needing a concave angle of a bend is presented as having a demand, i.e., it is a sink. Whenever we speak about excess, the face is a source and when we speak about demand, the face is a sink.

(a) (b) (c)

+1 0 −1

Figure 4.3: Examples of faces drawn by grid-paths, the number in the face denotes the number of convex angles needed.

A path going from a source to sink must go over vertices, as the vertices will be represented as grid-paths with bends. Therefore, the network N = (A(G), S, T) is the angle graph together with a subset of the vertices of the angle graph that represents the sources and a subset that represents the sinks. The angle graphA(G)is a plane bipartite graph in which each edge represents an angle ofG. Formally, the angle graph arises fromGby setting the union of the vertices and faces ofGas the vertices ofA(G)and the edges ofA(G)are the pairsvf,v∈V(G), f ∈F(G), such thatvis a vertex onf inG(see Figure 4.5). The angle graph of a 2-connected plane graph is a maximal planar bipartite graph. The outer face has different properties in a VCPG, therefore we consider graphs with a fixed embedding.

A path in the network, going from a source to a sink, passing through a vertexv, represents a bend in the grid-path of the vertex v. Let f1 be the previous node with respect to the direction of the flow, andf2be the next node, with respect tov. Then this bend ofvis such that, the convex angle lies inf1and the concave angle lies inf2. The difference between the network needed for VCPGs and the network defined by Tamassia for orthogonal drawings is that in the case of VCPGs the flow goes through a vertex and in the case of orthogonal drawings the flow goes through an edge. In other words, the underlying graph of the network defined by Tamassia is the dual graph and not the angle graph (see Figure 4.4). We will now proceed with the formal introduction of the encoding of the bends of a VCPG.

Figure 4.4: An example of a feasible flow forK4with as underlying graph the dual graph (left) or the angle graph (right).

A flowψis a weighted directed graph, with the networkN as underlying graph. The weight of an edge, denotes the amount of flow that is routed over this edge. On the right side of

Figure 4.5 a flowψis depicted. The edges that get weight zero are left out. The edges that do not have weight zero are labeled with their weight. The face-vertices ofA(G)can be a source or a sink, depending on the size of the face in G. The vertex-vertices of A(G)are neither sources nor sinks. The capacity of the edges is unbounded. From a VCPG R we construct a flowψ as follows. For each bend ofpv, such that the convex angle of this bend lies inf1and the concave angle lies inf2, add a unit of flow f1→v→f2.

3 23

c

a b

c

a b

Figure 4.5: The angle graph (black) of the octahedron (grey) and the angle graph with the feasible flow induced by the VCPG on the left of Figure 4.2.

Proposition 4.6. Letψ be the flow obtained from a VCPG of a(2, l)-tight graph G. Then the following holds. Every interior 3-face has excess 1. Every interiork-face f, fork >3, has demand|f| −4. The outer face f has demand (4−2l) +|f|.

Proof. Following the boundary of an interior region of a VCPG and adding the changes in direction one should obtain2π. Each edge is represented as a proper contact and therefore changes the direction withπ/2. A convex angle at a vertex changes the direction withπ/2 as well and a concave angle at a vertex changes the direction with −π/2. For a face f, letc(f)be the number of concave angles at vertices minus the number of convex angles at vertices. For an interior facef we obtain:

2π=π/2· |f| −π/2·c(f). (4.2)

The value c(f) also counts the incoming minus the outgoing flow in ψ. Therefore, by rearranging 4.2 to

c(f) = 4− |f|

we obtain the desired result.

For the outer facef, the bends have to be counted differently. For the outer face, an edge gives a change in direction of −π/2. A free end gives a change in direction of π. For the angles at vertices there is no difference, a convex angle at a vertex changes the direction withπ/2 and a concave angle at a vertex changes the direction with−π/2. Similarly as for the interior faces we obtain

c(f) = (2l−4)− |f|

where l is the number of free ends. As c(f)< 0, the outer face is a sink with demand (4−2l) +|f|in ψ.

A valid flow for the networkN, satisfies the flow conservation law at each vertex that is not a source or a sink, i.e., the net flow is zero at each vertex that is not a source or a sink. At a

sink, the sum of the incoming flow minus the sum of the outgoing flow is at most the demand of the sink. At a source, the sum of the outgoing flow minus the sum of the incoming flow is at most the size of the excess. A valid flowψ is a feasible flow for the network N if the demand of every sink is satisfied. As the demands of the sinks add up to the sum of the excesses of the sources, in a feasible flow the excess of each source is also completely used.

The total value of a feasible flow is equal to the number of interior 3-faces (the number of sources), which in turn is equal to the sum of the demands of all sinks.

f∈Fint

(4− |f|) + (2l−4)− |f|= 4|F| −

f∈F

|f| −2l−8 = 2(2|V| − |E| −l) = 0 The number of bends prescribed by the flow is

v∈V

ψ(v),

whereψ(v)denotes the amount of flow that goes through the vertexv. In order to relate to a VCPG it is necessary thatψis anintegral feasible flow for the networkN. Note that since the demands and excesses are integral the existence of a (minimum cost) integral feasible flow is guaranteed, for example by the result of Tardos [Tar85]. In the sequel we will omit the word ‘integral’ as we only consider integral feasible flows.

A flow does not uniquely define a VCPG either. The two VCPGs in Figure 4.6 induce the same feasible flow, but the edges are represented in a different way. The obvious question is whether every feasible integral flow inA(G)belongs to a VCPG. Unfortunately this is not the case (see Figure 4.7). However, using both the orientation and the feasible flow, we will obtain a characterization of VCPGs.

f a

c d

e

b g

a b

c

e f

g d

e g d b

c a f

Figure 4.6: A feasible flow does not uniquely define a VCPG. On the left two VCPGs and on the right the feasible flow induced by both of the VCPGs. The difference is the orientation of the cyclee, a, b, f (in red).