1 >> Daniel Archambault: Okay. Good morning, everyone. Hopefully, we're going to get started in a few seconds. My name is Daniel Archambault, and I'm chairing this session on Lombardi and metro maps. So our first speaker is David Eppstein. And to note, this is the best paper of track one at Graph Drawing 2012. So a little bit of a round of applause for that. [applause] >> Daniel Archambault: Without further ado, David. >> David Eppstein: Okay. So we've heard a little bit about this yesterday in a couple talks, and we'll hear more about it so I don't want to spend too much detail, but Mark Lombardi, famous artist, drew social networks representing conspiracy theories, and his drawings used a lot of these circular arcs and are also very -- there's a lot of rhythm to the placement of the edges and the vertices. And so we've tried to imitate that a little bit in a style of drawing called Lombardi drawing. And the key properties of a Lombardi drawing are that the edges are drawn as circular arcs and they have to have perfect angular resolution, meaning that at every vertex, the edge spacing is perfectly uniform. So this is a four regular graph. Every vertex has four edges meeting at right angles. And there have been several papers on this so far, producing results including this sort of drawing. We can show that all plane trees, even if the ordering of the children of each node is fixed, can be drawn in this way with polynomial area. If you use strayed lines, you can still get perfect angular resolution, but that forces you to use exponential area. So there's a big improvement you can get using circular arcs in this way. Regular graphs, we sort of know how to draw. We have a pretty clear characterization of which ones do or do not have drawings. Of course, the drawings might also involve crossings. We have a few results on planar graphs. So some very special classes of planar graphs. The Halin graphs formed by a tree by adding a cycle connecting all the leaves of the tree. And certain very symmetric graph, such as, in this case, the graph of the dodeka hedron, we know how to draw with Lombardi drawings. 2 But not every planar graph has a Lombardi drawing. These are two counter examples from previous works. These are both graphs that have Lombardi drawings, but they do not have planar Lombardi drawings. If you draw them with perfect angular resolution, you're going to be forced to make some crossings. So there's a lot we still don't know. We don't know which planar graphs have planar Lombardi drawings. We don't know which regular planar graphs have planar Lombardi drawings. We don't even know if we're outer planar graphs, which is a very, special case. And we've seen in one of the posters that we can find these drawings for outer paths, which are an even more special case. We don't know what the computational complexity of finding these drawings is, and I'm not going to answer any of these questions, but today, what I will tell you about is some progress on this question, which regular graphs have planar Lombardi drawings. The answer is all three regular graphs, not all four regular graphs. And that extends to some other low-degree graphs as well. So let me tell you about some of the tools I'll be using for these results. The first is something that has been used in a lot of graph drawing papers, including at least one of the Lombardi papers previous. Which is the circle packing theorem. Every planar graph can be represented using a circle for each of its vertices, no two circles crossing each other. And the tangentsys between circles representing the adjacencies of the planar graph. There are a couple of special cases of this that, where the circle packing is more highly constrained. If you start with a triangles, even the that is essentially the plane that I'll maximal planar graph, one in which all of the faces are outer face, then it has a circle packing that represents it unique. It's unique up to the certain transformations of be talking about in a second. And in this case, actually, these circles are not interior disjoint. There's one that surrounds all of the others. But that's almost the same thing. The other variant of this that again has this same uniqueness property is if you start with a three-connected planar graph; then you can find a simultaneous circle packing representations of both the graph and its dual. The blue graph here and the red graph. The blue graph represents a cube, and the red graph represents a dual octahedron. 3 And not only are adjacent vertices in each of those two primal and dual graphs represented by tangent circles, but a vertex in the primal that's on a face of the primal, that vertex face pair is represented by a pair of circles that are at right angles to each other. So that each dual edge is represented by a tangency that is orthogonal to the tangency representing the primal edge. That's another way of saying the same thing. And that is essentially unique. So I said something in the previous thing about Mobius transformations. Mobius transformation, there are a number of different ways of representing it, but it's a transformation of the plane that can be represented using complex number coordinate system for the plane as a fractional linear transformation. This type of function. Also, complex conjugation, sometimes allowed, sometimes not allowed. It doesn't make a lot of difference for us. And this has some really nice properties. They include all of the translations and rotations and similarities that you're familiar with as transformations of the plane, but a lot more transformations besides that. These are conformal transformation, meaning that they preserve the angle between any two curves that touch each other. And they preserve circularity. In fact, they can be defined as the transformations of the plane that preserve circularity. So a circle is transformed to another circle with lines treated as a special case of circles that have infinite radius. Because a circle might sometimes be transformed to a line. And because they preserve both circularity and angles, they preserve the property of being a Lombardi drawing, and that's going to be important for us. So if you have a Lombardi drawing, you transform it, you get another Lombardi drawing of the same graph. The same angular resolution. It may have different vertex spacing. It may be more or less readable, but it will still be a Lombardi drawing. Okay. This is about drawing graphs in the plane, in the familiar Euclidian plane. But it's drawing graphs in a way that is transformed by Mobius transformations, and that somehow brings in 3D hyperbolic geometry. So this is maybe a bit unfamiliar as a space, but it can be modeled by more familiar objects in Euclidian geometry. So we can model 3D hyperbolic geometry as a half plane. The half space above a plane in Euclidian geometry, say the planes 4 equal zero. All of the points with Z greater than zero are half space, and those are the points in hyperbolic geometry. The lines in hyperbolic geometry get modeled as semi circles that come out of this boundary plane perpendicularly and go back into it. And the planes in this 3D geometry are modeled as hemispheres, little domes that sit on this half space -- plane boundary of the half space. So like Euclidian three-dimensional space, if you stand anywhere in three-dimensional space and look in a certain direction, the geometry is exactly the same as if you stand at a different point and look in a different direction. There's a symmetry, taking every point and every reference frame around that point to any other one. And hyperbolic geometry has that same amount of symmetry, but a different symmetry group. And it's a very symmetric space. But the symmetries of the 3D space, when you look at their action on this boundary plane at infinity of the hyperbolic space, the boundary of the half space model, they turn into Mobius transformations. And so that's the connection between this 2D graph drawing that we're doing and 3D geometry. Okay. So with those tools, we can now devise a kind of Voronoi diagram or power diagram, if you like, of circle packings. So if you have some circles in the Euclidian plane, I want to divide the whole plane up into cells within which, you know, this circle controls this whole cell around it and these little gaps to the next circle and so on. And this diagram that I'm about to explain to you has be an intrinsic definition in 2D geometry, but the way I came to it was through 3D, and I think that's a clearer description. So if we have circles in the Euclidian plane, let's view this plane as the boundary plane of a half space model of 3D hyperbolic geometry. Each circle in the plane is the rim of one of these half -- hemisphere dome half planes or entire planes in 3D geometry. It's the boundary of a hyperbolic plane. And in 3D geometry, in hyperbolic geometry, just as in Euclidian geometry, we can identity Voronoi diagrams as the subset of the space that's nearer to this site than to these other sites, and so let's just construct the 3D hyperbolic Voronoi diagram of this system of hyperbolic planes. It's some messy 3D object, but easy to define. There's a way to stepped this to circles that might cross each other. We're 5 going to need that later. In that case, we want to use signed distances, rather than just distances from these planes. And then once we've constructed this 3D hyperbolic object, it's a partition of 3D hyperbolic space, we'll restrict that partition to the boundary plane of the half space and see what kind of partition we get on this plane. And it looks something like this. So this has some nice properties. In 3D hyperbolic geometry, the bisector of two planes, the set of points that are equidistant from both of them is itself a plane, and when we translate that back down into 2D geometry, the bisector in this diagram that we get of two disjoint circles is itself a circle that passes between them. The Voronoi diagram in 3D, if you translate the space around or rotate it, you get the same Voronoi diagram, it's invariant under that kind of transformation. What that means in 2D is this planar diagram is invariant under Mobius transformations. And a key property that we need for Lombardi drawing is Mobius transformations are a big enough family of transformations that you can take any three mutually tangent circles, say these three, and find a transformation that takes them to a position where they all have the same size as each other. So their centers form an equilateral triangle. Their points of tangentsys form an equilateral triangle, and the diagram that you get in that case just looks like, by symmetry, the only thing it could look like is three infinite straight rays meeting at 120 degree angles going out to infinity. They meet at 120 degree angles at that point, but then in Mobius geometry, thrust one extra point at infinity. Not a line of points at infinity as in the more familiar projective geometry, but just one point. And these three rays meet at that point. the straight circles. That point at infinity contains all And so actually, this diagram of three equal circles that are tangent to each other has two points where those boundaries meet, and they meet at 120 degrees at both of them. And if you transform that to any other three tangent circles, what you get is a diagram called a double bubble. It's three circular arcs meeting at two points, the three arcs come together at these two different points and they meet at 120 degree angles. 6 And another way of saying the same thing is it's a Lombardi drawing of a multigraph that has two vertices connected by three edges. Okay. So I think I'm going to skip this part. This is just explaining how you can define the same diagram in 2D using a fairly natural definition of distance from a circle in 2D and then it's just the minimization diagram of the distance, and it turns out to be the same as the 3D definition I've given you, but it's not entirely obvious why. So we're ready to do some Lombardi drawing we already have a Lombardi drawing of this very special graph. Let's go for some other graphs. So if I have a three-connected, three regular planar graph, every vertex has degree three and it's three connected, there's no way of deleting two vertices and disconnecting it, then the dual graph of that graph is a maximal planar graph. Maximal planar graphs have circle packings where all of the graphs between circles are these ideal triangles with three tangent circles. We find a dual graph, we find a circle packing for it. This part, by the way, is not completely a combinatorial algorithm. There are efficient numerical algorithms for finding these circle packings. They produce accurate results, but they are numerical approximations to the correct circle packing rather than, you know, something you can represent exactly with algebraic numbers. But we can find these, that works well in practice. I've implemented all of this, by the way, this part. Not the later part to the paper. We use a Mobius transformation to make this circle packing a little bit nicer, because if you just use this circle packing, it's going to give you a bad drawing. For one thing, if these three outer circles all have the same radius, you're going to have a drawing where one of the vertices has gone all the way off to infinity, and that's not good. For another, these circles have very different sizes from each other. This one is tiny, this one is much bigger. So we'd like to do a transformation that maximizes the size of the smallest circle, and that's something that you can do using a paper of mine from over ten years ago. And finally, we just find this power diagram of this circle packing. It has a Voronoi vertex where three of these regions meet inside each of these three circle gaps. The circular arcs meet at 120 degrees at each of those vertices, and this is the dual graph of the circle packing, and therefore it's the original graph you started with. 7 So we can draw any three connected, three regular planar graph using a Lombardi drawing. Here are some examples. I have more in the paper. I think they look kind of pretty. They have this circular outline that the vertices are all uniformly spaced. You might -- at least they're locally uniformly spaced. You might get situations where some parts of the drawing are much smaller scale than others. So it definitely can be forced to use exponential area if you're concerned about that. We can extend this to graphs that have degree less than three using standard -for two-connected graphs, we just use the SPQR tree, make a drawing for each three-connected component, glue them together because the two edges that they glue together on are going to be co-circular in the drawings and that makes it easy to glue them. The case for graphs that are not even two-connected is messier, but is just decomposing the graph on its bridges and modifying the drawing so that it has places to glue those bridges together and doing the gluing. So there's nothing conceptually difficult here. It's just some messy case analysis. We can also do some four-regular graphs. If you have a four-regular graph drawn in the plane, then its faces the dual graph form is bipartite. And we can two-color them blue and pink. And if you look at just the pink faces and think of them as forming a graph, sort of half of the dual of the original graph, so this face is adjacent so this one, this one, and this one. That's this graph H that I've got in the text. If that half dual graph is three-connected, then we can find one of these orthogonal circle packings where this half dual graph, the pink one, turns out to be orthogonal to the other half dual graph, the blue one, and so we get a circle packing with orthogonal circles. And if we again compute the power diagram, we get a Lombardi drawing. I don't have time to do the details. But that doesn't work for all four-regular graphs. This graph, I'm pretty sure, has a Lombardi drawing, but not by this method because when you decompose it into these half dual graphs, they're not three-connected. This one, I can prove, and it's in the full version of the paper, that it doesn't have a Lombardi drawing at all, and the reason involves these four cycles, this inner one in the center and the outer one turn out that those have to be co-circular and those circles overlap in a bad way. 8 So let me just conclude here. We've shown that every planar graph have maximum degree at three, regardless of whether it's regular. Has a Lombardi drawing that's also planar. The runtime, it's not a combinatorial algorithm. The runtime depends on how accurately you want to compute these circles packings, but I've implemented it in a three-connected case, and I haven't tried it on graphs of more than maybe 100 vertices, just because the drawings don't look very good when it gets tiny scale on some parts and big scale on the other. It's this exponential area problem. Actually, no, that's not true. I've done some regular graphs of, like, a hexagonal lattice type graph of up to about 250 vertices. Anyway, didn't pay any attention to efficiency when implementing it, used a slow interpreted language and it's completely usable. So it's a fast algorithm. It scales well, unlike, say, the spring methods that we've been hearing about. It works in some four-regular cases but not all. And so I think there's still a lot more to learn about Lombardi drawing, and I also just want to put in a brief plug. I have another pre-print online that's not published yet that this same method that I used to find Lombardi drawings, I can also use to characterize compound soap bubbles. Soap bubbles form graphs. What graphs do you get in turns out to be the two-connected, three-regular planar graphs, and you can prove that using exactly the same Lombardi drawing method. >> Daniel Archambault: Time for one question? >>: While the second speaker is setting up, one question. Yes. Do you think it's possible to find [indiscernible]. >> David Eppstein: If you want -- if it's possible, and it may be, not all Lombardi drawings are constructed in this way. There exist drawings of, for instance, a cube graph that do not come from circle packings in this way. If you want to construct a drawing using circle packings, then it's definitely going to use exponential area, because there's not a lot of choice in how to place everything. But I don't know whether there might be some way of getting polynomial area using a different method. >> Daniel Archambault: Okay. Our second presentation will be on the usability of Lombardi drawings, and this presentation will be given by Martin Nollenburg. 9 >> Martin Nollenburg: Thank you very much. So as he said in this talk we try to study what effects these Lombardi drawings that have been presented, for example, by David just a few minutes ago have on the use ability -- can use Lombardi drawing to get a better understanding of the graphs. So this is joint work with Helen Purchase, who couldn't make it, unfortunately, and John Hamer from the University of Glasgow, and Stephen Kobourov from Arizona. So you know what Lombardi drawings are. They're inspired by mark Lombardi, who died 12 years ago. In a nutshell, they're defined by circular arc edges and perfect angular resolution. And as you've seen, there are several theoretical results and also practical algorithms over the last two, three years at GD conferences. On the left side, you see one of Lombardi's drawings. On the right side, you see one of those very symmetric drawings from one of our papers. So what you can say in general is that Lombardi drawings produce smooth, organic shapes and they have a distinct aesthetic appeal, at least for regular, nice, symmetric graphs. But we can also relax the conditions a bit and get to near-Lombardi drawings where either you don't have perfect angle resolution anymore or you say the edges are not circular arcs but maybe a smooth combination of several circular arcs. These have been studied as well. But the open question is are these drawings useful in practice? So we ask the following research question. Lombardi drawings improve graph readability over traditional straight-line graph drawings. Or, more specifically, does Lombardization, so using a straight-line drawing and trying to curve the edges in order to reach these Lombardi criteria as good as possible, do they improve readability or, if we don't use an initial straight-line drawing, does an unrestricted or free near-Lombardi drawing improve readability? What you can see here is three drawings of the same graph. On the left side, it's a traditional straight-line drawing. Here, you can see that this graph has exactly the same node positions, but we try to graph the edges in a way to improve angular resolution. On the right side, this is a graph that is unrestricted so we can place the nodes freely and try to improve the angular resolution and [indiscernible]. 10 So as a bit of background we've already heard that not all planar graphs have planar Lombardi drawings. Same is true for non-planar graphs and there are even graphs that do not have Lombardi drawings at all. But last year, they were presented two different force-based methods that created Lombardi-like drawings by relaxing the optimal angles a bit. And these we can use to make this comparison. So the first method that we will compare is the traditional spring embedder. We used the [indiscernible] angled approach so we have repulsive forces for all vertex pairs and attractive forces for all the edges and then it will wait until we get some stable drawing, like the one that you see in this picture. The second method is from the paper by Chernobalsky, et al., from last year. And there were actually two algorithms proposed in this paper. The first one is the so-called dummy vertex algorithm, and you first compute a traditional spring layout with the method one that I just said. Then once you have that, you add a dummy vertex on each of the edges and you restrict this dummy vertex to lie on the bisector of the end points. So when you have this additional dummy vertex and you move it along the line, you can set the radius of the edge to curve it. And then we compute repulsive forces for all these dummy vertices, so we keep the original vertices fixed and use forces for the dummy vertices in order to improve edge spreading and things like that. So the effects that you get from these layouts is that the original vertex position is preserved. We guarantee circular arc edges, and then the forces that we use, they generally enlarge the angles at the vertices. So you get better angular resolution here. And this is the layout you would get of this graph. The third method is the so-called unrestricted Lombardi embedder. It's called a tangent-based algorithm in the paper of last year, and it uses also different forces, but they start all from scratch. So we have, again, repulsive forces for the vertex pairs and attractive forces for the edges, as in the angle model and they also have tangential forces for all the edges that made sure that you get circular arc edges. And there are rotational forces for each vertex based on neighbors. So you can rotate this template of tangents around the vertices and put it into a good position. The layout effects that you get from this method is again that we can guarantee 11 circular arc edges. In this sense, it satisfies the Lombardi properties and, in many cases, this can achieve actually optimal angles. So in the paper by Chernobalsky, they made a comparison of how many angles are actually satisfying the perfect angle resolution and this is called Lombardi-ness, and it's generally higher for this method than for method two. So we asked these two questions. Does Lombardization, curving the edges, improve readability? For this, we can compare the traditional straight layout with this restricted Lombardi embedder layout. These two. The second question, does a free near-Lombardi drawing compare readability? And here, we can compare traditional straight with the free Lombardi embedder, with the second -- the third method here. So which graphs did we use for this study? We decided on three graph attributes that we can compare so we took planar graphs and non-planar graphs. The second dimension, we used small and medium-sized graphs. I mean, they are all very small, but it's 20 vertices or 40 vertices and the third parameter was the edge densities. So we looked at sparse graphs and dense graphs, where the edge vertex ratio for sparse is 1.25 and 3.5 on dense graphs. Of course, if you have planar graphs, then you can't get 3.5, but you just use triangulations here. What should be noted here is that these spring force base methods, they do not guarantee planar drawings for planar graphs. So we input planar graphs, but the drawings that you get might have crossings. So when we have these parameters, we get eight different combinations here. In the top row, you see all the planar graphs. And you can actually see that the actual things in these layouts. On the left-hand side, we have the small graphs with 20 nodes and on the right-hand side being the dense graphs with 40 nodes. And probably the largest effect is between sparse and dense. So the sparse graphs are nicely readable, but the dense graphs get messy. But this is true for Lombardi and straight line drawings. So there's not much of a difference here. So now we know three algorithms, graph classes. What are the tasks that we asked our users here? The first task is to find the shortest path between two highlighted nodes. So you can see in this example that we highlight two green 12 nodes, and you need to find the length of the shortest path here. In this case, the answer would be three. Of course, the edges are not highlighted. The second task is to identify how many neighbors two highlighted vertices have in common. So we have these two blue vertices here and you need to find these four red vertices visually and the correct answer here would be four. And the third task is asking for the highest degree vertex so we highlight three different vertices in the graph. I'm not sure you can see the colors. There should be a red vertex, a green vertex and a blue vertex somewhere, and which of the three has the highest degree. So the first two tasks, they require that you follow edges visually to connect things, whereas the third task is something local where you need to look at a half edges that are adjacent to that. Here I'll show you some examples that were used in the study with combinations. This is a layout with a restricted Lombardi embedder for a planar medium sparse graph and you are asking for the number of common neighbors of these two vertices. And in this case, the correct answer should be one, I guess, here. The next graph is made by a free Lombardi drawing. So unrestricted. It's a planar small dense graph, and this is super the degree task, so which of the three vertices has the highest three. Any guesses? I guess green has five. Third graph is the traditional spring layout graph, planar medium dense, and we're asking the shortest path question. So what's the shortest path between these two green guys, and it should be length three here. And then we have again a straight line drawing, nonplanar small sparse, and we ask for common neighbors, which is quite easy here, because there's only a single common neighbor. Here we have a restricted Lombardi drawing nonplanar, small but dense. And we're asking the degree task, so this has five, this has five and this has six so answer should be red. And the last guy is some free Lombardi drawing, nonplanar medium sparse. You're asking for the shortest path. In this case, it should be one, two, three. So that's the correct answer here. These are some examples but in total, of course, we had more examples. What we did is we implemented an online system presenting these stimuli and collecting the answers. We have eight different graph types. We have three different 13 algorithms and we have three different tasks that we ask. So in total, there were 72 tasks for the users to do. And we used a within-participant design so every user did all the same tasks on the same graphs. This is how an experimental session worked. So we started with a consent form, explaining what the experiment -- I mean, not really what the background, but getting agreement of people that we can use the data and stuff like that. Then we started with a tutorial, explaining all the concepts that we used, how to answer the questions, showing examples of what the shortest path would be. So that the users really get an understanding of what we want from them. Then we had some guided example trials, where we asked all the tasks and made sure that you could only proceed to the next step once you answered it correctly. So this is to verify that users really got the questions correctly. And then there was this instruction to answer the following questions as quickly and as accurately as people could do. So we're measuring time and accuracy. Then we started with nine hidden practice tasks so we didn't tell the users that they are practice tasks, just to counteract any learning effects you might get here. And then this was followed by the main experiment. There was a break after every eight trials, because this is quite challenging if you have to really quickly answer all these questions so you do a block of eight and then you can relax. Once you're ready, you do the next block of eight and experiments. And we used a different random order of these graphs for different participants. After this main experiment, we asked preference questions. So we showed three drawings of the same graph and asked which of those do you like most. And there was another question later on, which do you like least. So we get, also, 24 layouts that are compared here. In the end, there was an optional interview with some of the participants to get some feedback of the process. Okay. So what did we measure there was accuracy question. measured the response time so question. And for this later like most and like least. and what data did we collect here? Of course, Was the data answered correctly or not. We how long did it take participants to answer the block of preference tasks, we got these choices, 14 Who participated in the study? So we had 69 participants in total. Two of them did not answer this demographic question so it doesn't add up to 69, but just 67. So we had 14 female participants, 53 male. Then we also asked them how familiar they are with graphs. 39 of them were quite familiar with graphs, 21 of them had seen graphs before, but are not using them all the time. And seven people had never seen graphs before. The duration of the experiment was about 30 minutes in total. And as incentives, we used the high-score table during the breaks so people could see how well they compared to other people, which should be trying to score high and we gave away some Amazon vouchers for highest performer and for some randomly chosen persons. What we analyzed, we compared the layout methods for all the participants and all the graphs, but specifically for the different tasks and then we could also distinguish between the graph tasks that had, so dense, sparse, small, medium, planar, non-planar. But the latter three questions, they did not really give new results. They just mirrored what we see in general so we won't talk about those here. Now let's look at the performance results. So in this chart, we measured the time. So the response time in the top row and the error rate in the bottom row and we marked significant statistic differences by these black bars. So let's look at this in more detail. The overall response time was significantly shorter for straight line drawings than for Lombardi drawings, both of them. On average, this was something like 10 or 11 second, and it was 12.5 or 12 seconds for the Lombardi drawings. So overall, straight line was faster. Then we look at different tasks that we have here. So for shortest path, it's the same pattern. So the straight line drawing is faster for shortest path. For common neighbors, it's only significantly faster than the free Lombardi layout. But if we use the same positions from the straight line drawing, then there was no significant difference. Highest degree tasks, they were much faster on average, so only five seconds. And in this case, the restricted Lombardi was slowest and significantly slower than the other two. 15 And now it's interesting to see what the error rates are. So people performed and made less errors on the straight line drawings overall, but this is different for the three tasks that we have. So finding shortest path was much more complicated on the free Lombardi layouts. So here, we got error rates of 25 percent, whereas it's 0.1 or 0.12 for the other two layouts. And there was a significant difference between the LE column and TS and RLE. But you could not say that RLE is significantly worse than straight line here. For the common neighbors, the straight line drawing is significantly better than the other two. But when we asked for highest degree, now we see one of the advantages of Lombardi drawings that the free Lombardi drawing, which spreads out the angles best has much lower error rate than the other two. We also looked at the preference analysis. So we made two judgments for each graph. We gave away a score of zero for the like most answer, a score of one for the like least answer, and there was no answer, it was 0.5. What you can see, that on average, the restricted Lombardi layouts were much -were liked better, significantly better than the other two layouts. So the average or the indifferent value of 0.5 is here and the restricted Lombardi layouts are on average better than that. The other two are worse than that. This pattern is more extreme if you lock at sparse graphs or at planar graphs. So then the value of RLE was around 0.3, and it was about 0.6 for the other two. So people liked these Lombardi drawings better. Here are some examples. And we can also look at the preference versus the performance. So these charts are normalized results, meaning that you get a score of 1.0 for the worst thing that we measured here and the lower you are, the better you are in this respect. So you can see that the LE for the free Lombardi layouts, they're pretty bad overall. Traditional straight line drawings are best in terms of error, and they are faster, slightly faster. But if you look for a preference, then the RLE drawings are much nicer here. So there's a trade-off between the two. So to conclude, we saw that the tradition at straight line drawings, they showed better performance than both Lombardi methods in most cases, not all of them. They improved angular resolution helped in the degree task significantly. But if you look at preference, then the restricted Lombardi 16 layouts were aesthetically preferred over the other two. So what can we conclude from? Maybe one hypothesis is that the detours of these curved edges, they are detrimental if you need to follow edges, because you need to make, depending on the radius, quite far away from the direct connection. But the Lombardi drawings are still beneficial due to the user preference because if users like a drawing, they're much more likely to look at it, to work with it, than if they get some drawing which is really nasty and they don't look at. A remark here, there's a concurrent study by [indiscernible], et al., that will be presented at [indiscernible] in a few weeks studying roughly the same question. They could not show any significant accuracy in time differences between the different layouts, but here there was an overwhelming preference for straight line drawings. So this es quite different here. Of course, this study has some limitations so we made a choice of graphs. You can look at different graphs, maybe if you could use these algorithms like David implemented in Lombardi layouts look much nicer, of course. So we looked only at these algorithms that we had available. You can take different tasks and you can also look at different people in doing the experiments. And for future work, it would make maybe sense to limit the edge curvature to use some curving to spread out the angles, but not too much in order to narrow the visual search range that you get. You could also optimize for sequences because in the interviews that we did of edges form smooth paths, then this somehow. And if you do that straight here. of edges that form smooth visual paths, with participants, they said if sequences reduces the complexity of the drawing line, you get all these little bends It would also be interesting to study effects not only of the edge type that you use, but also how this combines with other aesthetics. So if you can use circular arcs but get fewer crossings, in that sense maybe these drawings are nicer than straight line with many crossings, things like that. Okay. Thank you. >> Daniel Archambault: Thank you. we set up for the next talk. >>: I think we have time for one question while Can you think of any environmental reasons that would drive the edge 17 preference other than the drawings themselves? was taken out, who was conducting the study? For instance, where the study >> Martin Nollenburg: We made sure that the people who participated were not graph drawing experts. >>: I just meant the people running the study. >> Martin Nollenburg: Yes. >>: The people running the study [indiscernible] researching Lombardi drawings. >> Martin Nollenburg: That is true, but the participants did not really know that, so we used some of our students, but they had no clue that I'm researching Lombardi drawings, and I think that did not really make a big difference here. >>: [indiscernible]. >> Martin Nollenburg: >> Daniel Archambault: >>: Half of it, and half was online in U.K. and -- yeah. Maybe one more. The 72 stimuli, were they all the same for all the participants? >> Martin Nollenburg: Yes. >>: How did you decide on the pairs of vertices and the relative positions and how difficult it was to find those? >> Martin Nollenburg: So they were selected in a way that the possible answers spread nicely so you get shortest paths that have lengths. I don't think we had length one, but two, three, four, five. Not longer than that for the degree tasks, yeah, so this was ->>: So you had some idea of the difficulty of the tasks. for this somehow? >> Martin Nollenburg: And did you control No, I don't think we controlled for that. Maybe. 18 >>: You described a high variance in the background of the individuals. Did you study performance of the seven who had never seen graphs from those who were very familiar? >> Martin Nollenburg: So we also looked at these demographic differences. And what was interesting is that those people who had never seen graphs before, you could not see any significant differences between the -- for the performance and also for the preference. The same is, I think, true for the female participants. >>: Was one worse than the others? >> Martin Nollenburg: >>: That I would need to check in the data. That would be interesting. Thank you. Very good work. >> Daniel Archambault: Thank you very much. Our next paper is circle representations for simple four-regular planar graphs, and our speaker is Michael Bekos. >> Michael Bekos: My name is Michaelis Bekos, and this is joint work with Chrysanthi Raftopoulou. And the talk has to do about circle representation of simple four-regular planar graphs. So I will try to define the problem by a very simple example. If one throws some circles on the plane, which may intersect with each other or touch with each other, and then if place vertices at the intersection, touching points of the circles, then the result is a drawing of a four-regular planar graph, which we call the system of circles. And this is actually under the assumption of no three circles pass through the same point. So 40 years, Lovasz conjectures that there the reverse procedure is also possible. So every simple connected four-regular planar graph admits such a realization as a system of circles. And this is exactly the problem that we started. So given a four-regular planar graph, the question is whether we can draw it on the plane using a set of circles such that the vertices of the graph are the intersection touching points of the circles, and the edges of the four-regular planar graph are the [indiscernible] of the drawing. 19 And our contribution consists of two results, a positive one and the negative one. The positive one suggests that every connected four-regular planar graph admits a realization as a system of circles. And the negative result says that existing [indiscernible] graphs that are not three-connected but simply connected and do not admit realization as system of circles. And I will start with the positive result. So let's assume that we allow the circles only to cross, so we do not allow intersecting circles. Then it's not difficult to show that so then it's not difficult to show that the number of vertices of the input graphs would be even, and this is because every pair of circles is going to view exactly two vertices. However, it is not that there exists four regular three planar connected graphs that require an odd number of vertices, and this implies that the touching points between the circles has necessary motive to generate the whole family of graphs. What I will prove in the next couple of slides is that touching points between the circles are also necessary in order to generate all different three-connected four-regular planar graphs. So for this particular case of touching points is the circle packing theorem, also mentioned previously, which states that any simple planar graph can be represented on the plane such that the vertices of the graph correspond to disjoint disks and to this touch, with its [indiscernible], the corresponding vertices are adjacent. And this particularly important that the input graph is simple. So if, for example this exists a double edge between the vertices, this implies that the corresponding circles here have to touch at two points, and this is not feasible. And the same holds for self-loops. No our case, angled graph is four-regular, which implies that it's Eulerian, and for Eulerian graph, it is known that the dual graph is bipartite. So if we place a vertex as its face of the input graph and connect vertices that correspond to adjacent faces, then the resulting graph is dual. And here we can color the faces of the graph using colors in the example blue and white such that adjacent faces are of different color. Then we construct an [indiscernible] graph to prime by placing a vertex at its [indiscernible] phase and then we connect two vertices, if and only if the corresponding blue faces meet at the vertex. So in this particular example, every blue face touch 20 every other blue face, and the result, the auxiliary graph is actually the [indiscernible] graph. What you have also proved is in the case where the input graph is connected, the constructed graph to prime is simple, and we can apply the circle packing theorem on it, and if we do so, every blue face will be transformed to a circle, and two circles will touch a point if and only if their corresponding face is met at the point, and this is exactly the realization that we want. So by this simple algorithm, we have proved that every simple three-connected four-regular planar graph admits a realization as a system of touching circles, and this, of course, affirmatively answers the conjecture of Lovasz. And now the negative result. But before I proceed with the proof of the negative result, I will show you why the previous approach cannot be applied. So this is a graph, biconnected graph which contains a separation pairs. The faces of the graph are still two colorable, but if we construct the auxiliary graph to prime, we observe here that, for example, this face and this face has to touch at two points. So a double edge between the corresponding vertices must be there, and the circle packing theorem cannot be applied. So our idea to prove that there exists connected four-regular planar graphs that do not admit realizations, a system of circles consists of three steps. In the first step, we, in a sense, investigate a particular four-regular planar graph that is the [indiscernible] graph, and we prove that it has finitely many realizations of system of circles. And in the second step, we augment the [indiscernible] graph by appropriately attaching a [indiscernible] subgraph and thus you construct a graph which contains cutvertices and separation pairs. In the third step, we prove that this specific graph has no realization as system of circles. In general, there exists several properties for a graph to admit realization of the system of circles. One of these properties suggests that two circles may have at most two vertices in common. So if the circle is close, they contribute two crossing vertices. If the circle starts [indiscernible] single vertex and if the circles are disjoined, then they do not contribute any vertex. If we [indiscernible] this property to the octahedron graph, this implies that 21 the realization of the octahedron graph can have at least, must have at least three circles ask. This is because octahedron graph has six vertices. Another property is that on So if we have just a single you have two vertices, then simple graphs, this case is every circle, there exists at least three vertices. vertex implies that we have a [indiscernible]. If we have a double edge. And since we consider kind of [indiscernible]. Again, if we translate the property to the octahedron graph, we obtain the realization that the octahedron graph has at most four circles, and this is because the octahedron graph has 12 edges. We can prove that the octahedron graph has exactly three realizations as a system of circles. One realization is a system of intersecting circles and two realizations, a system of touching circles, depending on whether the outer face is bounded by a circle or not. The gadget subgraph is what we use in order to augment the octahedron graph. It's actually this graph, which is almost four-regular except from two vertices, degree two, and can be easily constructed using two copies of the octahedron graph and touch them on a simple skeleton graph. Actually, we split the sets of the octahedron graph by placing an additional vertex and we identify the additional vertex with the [indiscernible] two vertices of the [indiscernible] graph. And if it is particularly important here that the gadget subgraph has cutvertices. And this implies that this skeleton graph can be drawn as two tangent circles, and the circles that we need to realize the skeleton graph are completely independent from the circles that we need in order to realize octahedron graph. So in order to augment the octahedron graph, we split every edge of the octahedron graph by a path of length nine and then we use the new vertices here as in points of the gadget subgraphs and we touch actually four copies of the gadget subgraph. And this is a graph that we construct. It's a large graph, consists of more than a hundred vertices. However, it's still highly symmetric and the planarity implies that a pair of gadget subgraphs would be attached one page of its edge and another one to the other side of its edge. Then some geometry follows. But the basic properties that in realization of 22 the augmented octahedron graph as a system of circles, the realization of each gadget subgraph and the realization of the underlying octahedron graph are really dependent. Which means that the circles that we need in order to realize the octahedron graph and the circles that we need in order to realize each gadget subgraph are independent. However, we know that the octahedron graph has three different realization or system of circles, and what we have to do is to appropriately attach the gadget subgraphs along the circle [indiscernible] between the vertices. Another property that we have [indiscernible] is that the note that the two attached pairs of gadget subgraphs are [indiscernible] we need an arc length more than pi. But for every of the different realization of the octahedron graph system of circles, those arcs cannot have length more than pi. So we have proven that this, the augmented octahedron graph does not admit a realization on a system of circles. Another proof that exists in [indiscernible] do not admit a realization of a system of circles. We [indiscernible] rotation to the gadget subgraph. So to construct the gadget subgraph, we use the octahedron graph. We have proven that we can use the other three-connected four-regular planar graph and this implies that there exists infinitely many graphs that do not admit realization as system of circles. What we have also proved recently, but is not part of this work is that for biconnected graphs, there exist graphs that do not admit realization on a system of circles. Of course, a decision problem is another problem. We have also proved tight upper and lower bounds for a number of circles, and for the case of three-connected four-regular planar graphs, we have created realization of the maximum number of circles. So the realization with the minimum number of circles are also important. And another would be start the representation of even regular planar graphs. And I think that's the end. >> Daniel Archambault: Okay, great. Thank you for that presentation. I think we have time for one or two questions while the next speaker sets up here. Any questions? Yes? >>: There seems to be some similarity to David's talk in what you do with the 23 dual [indiscernible] can you comment on that? >> Michael Bekos: >>: Similar with what? With David's talk. >> Michael Bekos: Oh, okay, yeah. use the half dual and ->>: It's more or less the same approach so you I need this half dual to be three-connected, and you don't. Thanks. >> Daniel Archambault: Okay. Thank the speaker again. Now, our next talk is smooth orthogonal layouts, and this presentation will be given by Michael Kaufman, please. >> Michael Kaufmann: Hello, everybody. So this is joint work with Michaelis, again, that you know already, and Stephen Kobourov and Antonios Symvonis. And since I liked Michaelis' template so, I borrowed his template, but I added some symbol to indicate that this research was done when they all visited me. I will start with a personal motivation for this problem and then explain what it is. So when I worked on orthogonal drawing many years ago, in the '90s, really serious, I always wanted to have a beautifier for it, and the beautifier is I didn't like really the bends. So I tried to minimize, but I also wanted to draw them like with round corners, not with sharp ends, but with round bends and I called it a beautifier. And I was asking, kept asking my students please provide me such a beautifier, software to do that, but they were refusing. And finally, I gave up. So I wanted to smooth the bends in some way. Why did I give up? So the usual answer was, it's kind of trivial so you just replace the bend by a little curve and that's it. So where's the task, where's the problem? Well, I couldn't answer by that time where the problem is, but now is the time where, to see the fun behind it. And this is here. So now we have an orthogonal drawing, this, and we want to convert it into something smooth. And then you really replace the bend by, like, curves and, well, I still wanted to have orthogonal joint because I like orthogonal joints so I insisted, but I didn't want Lombardi or stuff like that. 24 So I allow quarter circles, semi circles, and three quarter circles. You'll see here a quarter circle and also a semi circle replacing that. So and why, why is the right one kind of nicer than the left one. So we should have come one an algorithm, with a model to measure this. And so we introduced the notion of curve complexity. And curve complexity is the number of -- how can you compare this. So we say count the number of segments per age and curve complexity is the maximum number of such segments. Well, the segments, so if you have two bends, you have three segments. In orthogonal, it's clear. And here, it's also clear. So this is a segment, this is a segment, this is a segment. So the right one has curve complexity one. And it's drawn with curve complexity one. So it kind of better than the left one in that sense. I mean, we allow more features now with the smooth -- we allow quarter circles and so can this reduce the curve complexity? Well, it's not clear. We have to still define the setting. Do we start with an orthogonal layout, or should we start from scratch and draw the thing. There are two approaches. Either given the layout, smooth it or given the planar graph and draw it in a smooth way. And smooth is that also it's not forbidden to have sharp bends, right. After the straight line segment, after horizontal segment, you should have a little circle. Here's a negative result that says it cannot always be done if you're on the first setting. So there's an orthogonal drawing of a cube. If you take that and you want to smoothen it, that means you replace the bend by a little circle, you get still curve complexity two. So you didn't reduce it. Of course, there's, as I said, in the second setting, you can do it like this. Curve complexity one. That's, I think, a quite nice drawing of the cube. What can be done in general. So look at this. We have a [indiscernible] edge that indicates how to do it. Now we replace every bend by a little quarter circle. Then, of course, from curve complexity K, we now add K minus 1 additional circle, little quarter circles that makes, increases the curve complexity. So it's still a long way to go to increase -- to decrease it, right. First technique comes now. So by stretching the layout, you can reduce this [indiscernible] of a factor of two to a factor of three half. So if you stretch it, then every unit, every horizontal unit, so here the problem is that 25 what I want is I want to save vertical segments, all vertical segments. And by stretching it horizontally, that makes -- then it enables me to make the circles larger until they touch. And then the vertical segments are gone. So I'll say half of -- all the vertical segments. It's quite nice. It's a bit of an improvement. And it's a general technique. So if you would have three segments, like horizontal, vertical, horizontal, and you want to do it smooth, we would have five smooth segments. Then if you stretch it, we end up with four smooth segments. Just to have an example. So at the moment, we have -- if we have only one bend, we can always do it like by just stretching. We can save the vertical segment. So we end up with a horizontal and a curve. Complexity two. Before, it was also complexity two. One bend. So one bend layouts can be converted into layouts of curve complexity two. Here's another little observation that shows that you might get exponential explosion by doing this. So look at this graph and let's start here and we have a chain, a vertical chain and a horizontal chain of, let's say, N vertices. And every pair is connected either by a vertex or by just an edge. The next one is a vertex and then an edge. And now we want to replace this by a curve. You see here, here if you place it by a circle, this comes already very close to here. And the next one, if you would replace it by a circle, it would intersect here. So you have to stretch it a little bit. And you have to stretch it by a factor of square root of two. So every other step, if you have a blow-up of square root of two. That means for that, this example shows that you might get exponential area by using curves and insisting of a minimal number of -- minimal curve complexity. So what we just want to come closer to our goal to reduce the curve complexity or the curve complexity of the orthogonal drawing. So here are some more examples that we thought that are nice. So some platonic solids. And the first three look quite okay. So this is [indiscernible]. This is octahedron, and this is already not so nice anymore. And as you see, it was already a bad example in Michaelis' talk. You see here, we were not able to draw it with just curve complexity one. And we found a formal proof why it's not the case. And that's a small graph. You just have to check a few 26 cases and argue why it's the case. An algorithm, so algorithm for smooth orthogonal drawings. The good old Biedl/Kant algorithm is a nice algorithm for orthogonal drawings. With a small number of ends per edge. So it produces two bends per edge, except of one edge. And you wanted to draw our -- you want to use such layouts and convert it to smooth orthogonal bends. So here's a little sketch of the algorithm. So what you do is you compute an ST, assume biconnectivity. We are only do biconnectivity. And then so ST number, in ST numbers, you have for every vertex except the source, think, you have at least one incoming, one outcoming edge. It's oriented like this. So the incoming normally comes from below, and the outgoing, at least if there's one, goes above towards the top and if you have, for example, this one, and you have three outgoing, then they go like this. And if it has three ending, then they come from -- you place that one such that they really come from the two sides and one just from the middle. Very easy. Now, that makes two bends, except of one edge that you see on the left. Now, we do that stretching again and save. I mean, when we just replace the bends, the two -- the bends, we would have so three orthogonal segments and two bends, which is five. Now we replace the two horizontal segments by stretching the thing vertically now. That saves the two horizontal segment and then we get only three segments, two curves and one straight. It looks like one curve and straight or one curve, straight and the ending curve, right. So we could prove that for biconnected planar graphs, we use curve complexity, can be drawn if it's curve complexity three. It's still not satisfying. We want to be below three, because we have three for the orthogonal case. It's not, still not really better. We were successful to do that after the three. Then we have nor freedom and we can prove that. But I don't want to go into detail about that. One more thing that I didn't like in orthogonal -- in the traditional orthogonal drawing is that what about higher degrees. If you have, in the traditional orthogonal model, you have only four directions so you have this restriction. And therefore, we worked in the past, almost 20 years ago, on this Kandinsky model. And that was the very first drawing in the very first 27 paper. And you see the vertices are now boxes, not just points. And edges go out to several edges. They go out in parallel to one side. Now, if you want to have this smooth now, so what can you do? And then I -- what do we know. And I know this technique. It turns out that it's quite applicable there. So what you do is let's say this is Hamiltonean. We draw the Hamiltonean path like. Then, of course, that separates the edges into top part and bottom part and then we just draw the edges like this. Of course, sometimes it's just with semi circles. And, of course, if it's not Hamiltonean, we have to use dummy vertices to make it Hamiltonean, and then you might get something like, well, this was now Hamiltonean. Then you have to cross that spine, maybe, and you might get such a wave. But that's all. So in that model, if you allow more, higher degree, then you can do curve complexity two. Okay. That's almost the end. Open questions are, there are a lot of open questions. What about the complexity. We have no idea to determine the smooth curve complexity. Is it hard to really minimize. We don't know about this. So if you have a two-bend drawing given, can it be converted into a complexity two with just one straight and one, like, curve at most. And, of course, all practical issues. Implementations. How do you really -can it be used in practice, or evaluation, is was it just a fun project to work on. And, of course, there are many more questions. Thank you. >> Daniel Archambault: Thank you. We have time for one or two questions while the next speaker's setting up. Will. >>: So you're preserving the bedding of the orthogonal layout, or did you preserve the position of the vertices but not the embedding. So could you use three quarter circles. You can GAO either inside or outside, which would be, like, your exponential area, which is not the true. >> Michael Kaufmann: In that case, yes. then you cannot switch. Joe. But if you draw a boundary around, 28 >>: So [indiscernible] orthogonal drawing can be transformed into a smooth complexity two and then use a corollary of both the complexity three for orthogonal complexity four [indiscernible] smooth complexity four orthogonal layout. I was wondering if you have an example of where you can not go from a complexity three or orthogonal layout to a smooth complexity three orthogonal layout. >> Michael Kaufmann: An example where we have two bends in the orthogonal. >>: Where you have the three orthogonal layout, from the complexity three orthogonal layout to the smooth complexity three orthogonal layout. Is there something that ->>: [inaudible]. >> Michael Kaufmann: complexity three. >>: Two bends is I think it's the same thing. >> Michael Kaufmann: >>: No, no, he says if this is -- no. It's the same. Is it? >> Michael Kaufmann: >> Daniel Archambault: Well, it would answer that. Thank the speaker. So the answer is no. More? Ooh, sorry. >>: Have you thought about using ellipses instead of circles and that would save you ->> Michael Kaufmann: >> Daniel Archambault: Oh, yeah. Okay. No, because I didn't like that. Let's thank the speaker. So our next talk is Drawing Metro Maps Using Bezier Curves, and Martin Fink will be giving the presentation. >> Martin Fink: Okay. Thank you. So this is a joint work with Herman Haverkort, Martin Martin Nollenburg, Alexander Wolff, Julian Schuhmann, a 29 student in Pittsburgh, and Max Roberts. So as you can see, it's about metro maps. We have this famous octilinear style drawings. This is actually computer generated by the mixed integer program of mar ten and Sasha. There are other works like the ones from like the ones from Hung, et al., or Stott, et al. So this is well studied. We want something else. We want drawings like this. No straight line segments just curves. All the lines are curvy. This is a drawing that is created by our co-author, Max Roberts. He's a psychologist who is interested in metro maps and he's also an artist so he creates them himself. So let me explain why we want such drawings. We want to compare them against octilinear drawings. In octilinear, we have the metro lines which consists of several straight line segments. So we have polylines. There are bends. At some points there are also bends inside stations. The drawings are very schematized. So we just have four possible slopes or H directions so that's why it's called octilinear. In contrast, our curvy drawings have lines that consist of several curves. In our case, we use Bezier curves. The consequence is that the lines are very smooth, so easy to follow. No bends inside stations. So there was a user study from Roberts, et al., that suggested that people that are actually faster planning their routes, planning their trips with such curves. Also, people said they still preferred the classical octilinear maps in contrast to that. Okay. Also, these maps took more artistic, like the one I showed you. That follows also a demand of Peter Eades from 2010 from the final talk. So this is also nice. Okay. Now, let's go into details. We need to know about Bezier curves. I think everyone has heard about these. They are just parametric curves. We use cubic Bezier curves. I don't want to go into details with formulas so please don't look at this. The important thing is that we have four points, two end points, P and Q. Two control points, P prime, Q prime. They define a curve. Very important for us is this. At a vertex, we have a tangent, which is the direction between the point and the next control point, and the curve leaves the vertex exactly in this direction. 30 We want to make use of this, and we do it in the following way. Imagine there is some station, some vertex, there is some edge so some part of a metro line on which some train can leave the station in this direction. Then we reuse this tangent for another edge, like this, and then the line goes smoothly through the station. Of course, we can also have splittings of metro lines. There can be several metro lines that should touch in this station so this is really useful for us. And we use this as follows. We don't model the prime, Q prime, by their coordinates. We model tangent, and the distance between the point and direction. So these are the two parameters for points, the control points, P them by the direction, the the control point in this us. Okay. So there was some previous work using Bezier curves in this context. One was by Brandes, Shubina, Tamassia, Wagner in 2001. Also, in some other constellations. They use Bezier curves for visualizing train connections. Especially for having nice angular resolution. What they didn't do was they didn't move vertices, so this is really a geographic map with Bezier curves as an overlay. Some other -- okay, sorry. We also use the sharing of tangents, which they didn't do. And, of course, we moved the vertices. Another work was by Finkel and Tamassia. They had a force-directed algorithm for drawing graphs, not metro maps, with Bezier curves. But they used some different style, different idea. Their control points are actually vertices. So they are added to the graph with some extra constraints, extra edges. But then they can use some classic force-directed algorithm and get some drawing for this and then retransform it into a drawing with Bezier curves. Of course, we use something different. We also use a force-directed algorithm, but our algorithm knows about the Bezier curves. It knows about our model of the control points and uses the tangents very much. So this is quite differently. Okay. So as I told you, we use Bezier curves for representing the edges. We use some force-directed approach. So instead of just having forces that try to move vertices, we also have forces that try to change the shape of a curve. We will see this. Let me first show you how we start. For any force-directed 31 algorithm, we need some initial layout, and we want some nice layouts. So let's suppose we have a metro map. We have some geographic plan, like with polylines for the metro lines. And now we first transform this into a straight line drawing just by forgetting about all the details on lines. We just use the straight line connections between the geographic positions. Of course, there are some crossings. The crossings also existed before. So it doesn't matter. And we now transform this crossing into a dummy vertex so that we have a planar drawing. And now the idea is to skip the first transformation and just use some octilinear drawing. The official metro map some generate metro map. And later, it also turned out that this actually creates nicer results. So because we have a nicer initial drawing. And now that we have a straight line planar drawing, we need to transform this into a drawing with curves. This step is actually a bit exaggerated. What we do is we look at this point. We have this green line crossing the station. Then we choose some tangent which should be close to these two directions and we place the control points very, very close to the station. So we actually still have the -- almost have the straight line drawing. We don't get crossings, because we place these control points so close to the vertex. But we have these common tangents. Okay. This is our initial drawing. Now let me quickly explain the basic idea. We use the force-directed approach, which should be clear to everyone. So while the drawing doesn't change too much, so there is only very small displacement. Then we stop, we do some transformations and after this, we also have some post-processing, which tries to smooth the drawing additionally. So inside we have some computation of forces that try to change the drawing. We apply these forces, we apply some additional simplification, and more precisely, here we compute forces and then they sum up to desired changes. One thing is that we have displacement for vertices, and we have some changes on curves. That is, we have rotations on tangents and we have changes of distances between points and control points. In the next step, we want to apply the forces. Here we have to be careful, because we can easily get crossings. So at some point, we cannot simply an I 32 ply the desired changes as they are. And then, finally, in one iteration, we apply some simplification. That is, we merge some curves, two curves into one so that we have lower complexity and we have a smoother drawing. And something similar is done after the last iteration. We also do this around vertices of degree four. So that the vertex becomes a crossing of two curves, which additionally smooths the drawing. Okay. Now, let's go into details. We start with the forces. For the vertices. This is very much standard. We have repulsion between vertices. We have attraction between adjacent vertices, and we just use standard forces like -- we use the one from the Fruchterman Rheingold algorithm. We use the nice properties of this, because we -- these forces knows about some desired edge length and we place this so that it is set according to the number of intermediate stops. So like here, we have two stops, three segments. So this edge should be three times as long as some edge between just two stations. Because the number of intermediate stations normally is a good indicator for traveling time. Okay. Additionally, we have some other force. We have attraction of vertices on to the geographic position, which is useful because we want to see a station on the map close to its precision. It can be moved, but it should not be too far away so that users can find them on the map. So let's go to the new forces. They are forces that try to change the shape of a curve. Let's look at such a curve here. The control points are very close to the end points of the curve. This is not nice. We have this, like, kind of sharp bends here. On the other hand, if the control points are far away, the curve becomes very long. If they are farther away, it can even be generated without -- with a self-intersection. We also don't like this. We want something like this. And as a compromise, it turned out that a good criterion was looking at the distance between the vertex and its close control point and the distance between the vertices and the ratio should be approximately one over three. We do this by adding a force which is also similar to the Fruchterman Rheingold forces for attraction or repulsion between adjacent vertices. So we kind of have a spring force between the control point and the vertex. Of course, this is a one-dimensional force so we just are on this tangent. And this desired length is one third of this length. 33 Okay. Another thing that we want to do is we want to straighten curves. like here, this is not nice with these changes of direction. We prefer something like this or even more towards a straight line segment. So This is easy to explain, because a straight line segment is the less complex Bezier curves. We do this by having two forces, one tries to move a vertex V towards the tangent, and this position here is actually determined looking at this distance, which corresponds to the desired edge length. So we just attract this vertex towards this point. Another thing that is we want to change the tangent. We do this by looking at this angle. The desired tangent should be just the straight line through the vertex and the other end vertex. So we have this desired rotation by the angle alpha. Here we have to be a bit careful how to add up these forces. Suppose we some suggestion like this. These two edges share the tangent. They have desired changes, but this edge is much longer. So a better desired change than just evening out would be that we still move towards this direction because this long edge is kind of important. We use something similar to the law of the lever so we have some weighting of these desired changes, these desired rotations by this distance, the distance between control point and end point. So this would be the resulting rotation. Okay. And the final force is one trying to improve the angular resolution. Here it's very small, as you can see here. We want something like this, and to this end we look at the, again at the angles between tangents and at just a repulsion between the tangents where the force is something similar to one over alpha. So it's stronger if the angle is small. Okay. So now that we have the forces, we also have to think about avoiding intersections. I will only give the short idea so we don't want intersections when applying these desired changes to this, and we just use smaller vectors, but we don't change the directions until we have some crossing free new drawing. Okay. Now, the additional step is this merging of curves. The simplification step. Here we have two curves. There's a line just going through this station. It should look smoothly so we can't just say, okay, let's keep these control points, have this curve, and just say okay, this is a vertex which is 34 not represented in the graph. We just know that it's there on this edge and we can add it in the final drawing. We could also move these control points a bit to avoid crossings, but in our tests, it turned out not to be necessary. So it almost always worked with the simple approach. So similar to this, we can also try to do this when we have such a crossing. So we have one line and another line crossing in a station. You can try to merge these two curves into one curve. The same for the other two curves, and then our vertex becomes a crossing. Of course, we have to be careful, because the ratio of this length and this length should approximately be kept. We don't want additional crossings, just that one. So here, it was actually necessary to move the control points a bit away from their original positions, and we got many additional constraints like the ones I told you about the ratio between edge length. We can also have additional crossings here, which are stations. So this didn't work well inside the algorithm. We use a lot of flexibility and the drawing more or less then stays the same. So we just do this once after the last iteration. Okay. Now, let me show you some testing result. This is Vienna. This is the octilinear map. We start with this, we transform it and we perform our algorithm in this case with without merging edges. This results in a quite complex drawing with 90 curves, which is not so nice. Then we add our step of merging curves. We just have 25 curves. It already looks much nicer. Now if we apply this merging in such interchange stations, we just have nine curves, so the drawing is really much nicer than before. Let me just show you some additional results for Montreal, for Sydney, and finally for London in contrast to what we've seen in of the introduction. So here we can see there are still some problems inside dense regions in the city center while it's better outside or at the boundary. So we've seen it works well in sparse regions. It doesn't work so well in the 35 center. Minimizing number of curves is very important and the thing is I don't think that there is much more room for improvement with just local changes with the force directed approach. So we should try something else, some global optimization. Okay. That's it. Thanks for your attention. >> Daniel Archambault: Okay. Thank you, Martin. Do we have a few questions? >>: So I have more of a philosophical question. These experiments, they're experiments that show that human eye [indiscernible]. So if you want to understand whether there is [indiscernible] two vertices, you tend to follow the straight line. >> Martin Fink: Yes. >>: And also other talks in this session seem to say that somehow straight line drawings prevail in terms of the usability to answer specific queries from the point of view of the user. I agree that curves are nicer to look at. But the metro map is something you want to use when you go around. So is there any study that says that curves are, indeed, more useful or more practical. >> Martin Fink: There is the user study I mentioned in the introduction by Max Roberts and others. He gave the participants the question what's the fastest way from A to B. Some marked locations. Ones with a map with curves and ones with some octilinear map. And in their experiments, it turned out that people were faster with curves. They still said they didn't like the curves so much, but that's just a contradiction. Maybe they are just not used to them. >>: [indiscernible] highly complicated model, a force model. I'll wondering how long it took you to come up with this. You must have tried some forces and then tried some different ones. What's the length of the time to prepare this, as it must have been very complicated. >> Martin Fink: Yes. So actually, we started at a [indiscernible] seminar, which was in, I think, December, 2010. So there was Max Roberts around. There 36 was Martin around. So that's when it started, yeah. testing needed some time. But you're right, the Actually, the co-author, Julian Schuhmann was a bachelor student, so he did the implementing and testing as part of his bachelor thesis. >>: I think it's an incredible effort. >> Daniel Archambault: speakers again. Okay. Any more questions. If not, let's thank all the