Implementing a general-purpose edge router

  • David P. Dobkin
  • Emden R. Gansner
  • Eleftherios Koutsofios
  • Stephen C. North
Methodologies and Applications I
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1353)


Although routing is a well-studied problem in various contexts, there remain unsolved problems in routing edges for graph layouts. In contrast with techniques from other domains such as VLSI CAD and robotics, where physical constraints play a major role, aesthetics play the more important role in graph layout. For graphs, we seek paths that are easy to follow and add meaning to the layout. We describe a collection of aesthetic attributes applicable to drawing edges in graphs, and present a general approach for routing individual edges subject to these principles. We also give implementation details and survey difficulties that arise in an implementation.


Short Path Layered Graph Virtual Node Simple Polygon Visibility Graph 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    J.-D. Boissonnat, A. Cerezo, and J. Leblond. Shortest paths of bounded curvature in the plane. J. Intell. and Robotics Systems, 11:5–20, 1994.CrossRefGoogle Scholar
  2. 2.
    B. Chazelle. A theorem on polygon cutting with applications. In Proc. 23rd IEEE Symp. Foundations of Computer Science, pages 339–349, 1982.Google Scholar
  3. 3.
    D. P. Dobkin, D. L. Souvaine, and C. J. Van Wyk. Decomposition and intersection of simple splinegons. Algorithmica, 3:473–486, 1988.CrossRefGoogle Scholar
  4. 4.
    L. E. Dubins. On curves of minimal length with a constraint on average curvature and with prescribed initial and terminal positions and tangents. Amer. J. Math., 79:497–516, 1957.Google Scholar
  5. 5.
    S. Fortune and G. Wilfong. Planning constrained motion. Annals of Mathematics and Artificial Intelligence, 3:21–82, 1991.CrossRefGoogle Scholar
  6. 6.
    E.R. Gansner, E. Koutsofios, S.C. North, and K.P. Vo. A technique for drawing directed graphs. IEEE Transactions on Software Engineering, March 1993.Google Scholar
  7. 7.
    E.R. Gansner, S.C. North, and K.P. Vo. Dag-a program that draws directed graphs. Software-Practice and Experience, 18(11):1047–1062, 1988.Google Scholar
  8. 8.
    S. K. Ghosh and D. M. Mount. An output-sensitive algorithm for computing visibility graphs. SIAM J. Computing, 20(5):888–910, 1991.CrossRefGoogle Scholar
  9. 9.
    J. Hershberger and J. Snoeyink. Computing minimum length paths of a given homotopy class. In Proc. 2nd Workshop Algorithms Data Struct., volume 519 of Lecture Notes in Computer Science, pages 331–342. Springer-Verlag, 1991.Google Scholar
  10. 10.
    10.P. Jacobs. Minimal length curvature constrained paths in the presence of obstacles. Technical Report 90042, Laboratoire d'Automatique et d'Analyse des Systemes, 7 Avenue du Colonel Roche-31077 Toulouse, France, February 1990.Google Scholar
  11. 11.
    Y. Kanayama and B. I. Hartman. Smooth local path planning for autonomous vehicles. In Proc. IEEE Intl. Conf. on Robotics and Automation, volume 3, pages 1265–1270, 1989.Google Scholar
  12. 12.
    J.-C. Latombe. Robot Motion Planning. Kluwer Academic Publishers, Boston, 1991.Google Scholar
  13. 13.
    J. P. Laumond. Finding collision-free smooth trajectories for a non-holonomic mobile robot. In Proc. Intl. Joint Conf. on Artificial Intelligence, pages 1120–1123, 1987.Google Scholar
  14. 14.
    W. Nelson. Continuous-curvature paths for autonomous vehicles. In Proc. IEEE Intl. Conf. on Robotics and Automation, volume 3, pages 1260–1264, 1989.Google Scholar
  15. 15.
    S.C. North. Incremental layout in dynadag. In F.J. Brandenburg, editor, Symp. on Graph Drawing GD'95, volume 1027 of Lecture Notes in Computer Science, pages 409–418, 1996.Google Scholar
  16. 16.
    M. H. Overmars and E. Welzl. New methods for computing visibility graphs. In Proc. 4th Annu. ACM Sympos. Comput. Geom., pages 164–171, 1988.Google Scholar
  17. 17.
    J. A. Reeds and L. A. Shepp. Optimal paths for a car that goes both forwards and backwards. Pacific J. of Mathematics, 145(2), 1990.Google Scholar
  18. 18.
    G. Sander, M. Alt, C. Ferdinand, and R. Wilhelm. Clax, a visualized compiler. In F.J. Brandenburg, editor, Symp. on Graph Drawing GD'95, volume 1027 of Lecture Notes in Computer Science, pages 459–462, 1996.Google Scholar
  19. 19.
    Philip J. Schneider. An algorithm for automatically fitting digitized curves. In Andrew S. Glassner, editor, Graphics Gems, pages 612–626. Academic Press, Boston, Mass., 1990.Google Scholar
  20. 20.
    J. T. Schwartz and M. Sharin, Algorithmic motion planning in robotics. In J. van Leeuwen, editor, Algorithms and Complexity, volume A of Handbook of Theoretical Computer Science, pages 391–430. Elsevier, Amsterdam, 1990.Google Scholar
  21. 21.
    S. Suri. A linear time algorithm for minimum link paths inside a simple polygon. Computer Vision and Graphical Image Processing, 35:99–110, 1986.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • David P. Dobkin
    • 1
  • Emden R. Gansner
    • 2
  • Eleftherios Koutsofios
    • 2
  • Stephen C. North
    • 2
  1. 1.Princeton UniversityPrincetonUSA
  2. 2.AT&T LaboratoriesFlorham ParkUSA

Personalised recommendations