Alaa AK Ismaeel
Total Page:16
File Type:pdf, Size:1020Kb
Alaa A. K. Ismaeel Dynamic Hierarchical Graph Drawing Alaa A. K. Ismaeel Dynamic Hierarchical Graph Drawing Dynamic Hierarchical Graph Drawing by Alaa A. K. Ismaeel Dissertation, Karlsruher Instituts für Technologie (KIT), Fakultät für Wirtschaftswissenschaften, 2012 Tag der mündlichen Prüfung: 21. Mai 2012 Referent: Prof. Dr. Hartmut Schmeck, Institut für Angewandte Informatik und For- male Beschreibungsverfahren (AIFB), Karlsruher Instituts für Technologie (KIT), Karlsruhe, Germany. Korreferent: Prof. Dr. Jürgen Branke, Warwick Business School, The University of Warwick, Coventry, United Kingdom. Dynamic Hierarchical Graph Drawing Zur Erlangung des akademischen Grades eines Doktors der Wirtschaftswissenschaften (Dr. rer. pol.) von der Fakultät für Wirtschaftswissenschaften des Karlsruher Instituts für Technologie (KIT) genehmigte DISSERTATION von M.Sc. Alaa Aly Khalaf Ismaeel aus El-Minia, Ägypten Tag der mündlichen Prüfung: 21. Mai 2012 Referent: Prof. Dr. Hartmut Schmeck Korreferent: Prof. Dr. Jürgen Branke 2012 Karlsruhe Our Lord! Condemn us not if we forget, or miss the mark! ﺳﻮﺭﺓ ﺍﻟﺒﻘﺮﺓ – ﺁﻳﺔ ٢٨٦ Surah Al-Baqara – Verse 286 Acknowledgements First and foremost, my praise and deepest thanks are to God the Almighty for guiding me on the right path. Without HIS help and care, my efforts would have gone astray. Looking back, I feel immense gratitude to many people around me who have supported me while I was working on this Ph.D. thesis. The past four and a quarter years have given me many exciting, challenging and truly valuable experiences. This thesis is the result of a scholarship to carry out PhD in Computer Science at Karlsruhe Institute of Technology (KIT) in Germany. The scholarship was financially supported by the Egyptian Government (Egyptian Ministry of Higher Education) through the Egyptian Culture Bureau and Study Mission in Berlin. I would like to thank all of the administrative staff in Berlin and in the Culture Affairs & Mission Sector in Cairo. I am sincerely thankful to my supervisor, Prof. Dr. Hartmut Schmeck. Despite his busy schedule in an ever-expanding research group plus his many responsibilities at the KIT, he frequently had some time for valuable and effective discussions. I am really grateful for you, Prof. Schmeck, for accepting me as one of your PhD students and also for getting involved as a member in your Efficient Algorithms research group at the Institute AIFB. Furthermore, for your encouragement, guidance and support that enabled me to develop an understanding of the thesis. Similarly, I would also like to thank Prof. Dr. Jürgen Branke, from the University of Warwick, United Kingdom. He accepted, without hesitation, the request to serve as a second reviewer on the examination committee and also for his valuable comments. Before moving to the United Kingdom, Prof. Branke was working at the Institute AIFB, at the KIT. The preparation of the PhD proposal of this thesis was based on creative discussions with him. Moreover, I cannot forget how he helped me in my first few days in Karlsruhe. I am really very grateful for him. Furthermore, many thanks go to Prof. Dr. Karl-Heinz Waldmann and Prof. Dr. Ute Werner, both from the Karlsruhe Institute of Technology (KIT), who served as examiner and chairman, respectively, on the examination committee. At the AIFB intensive and collaborative cooperation has been carried out with my col- league Dr. Pradyumn Shukla during the last two years of the thesis. I am greatly indebted to you for your honestly, help and kind support. Furthermore, I am grateful to all of my colleagues with whom I have worked during the last few years. The current and former mem- bers of the research group "Efficient Algorithms" provided a pleasant and productive working atmosphere. I would like to express my thanks to Dr. Ingo Pänke, Felix Vogel, Lukas König, Dr. Sanaz Mostaghim, Dr. Holger Prothmann, Dr. Urban Richter, Dr. Andreas Kamper, xiii Acknowledgements Dr. Lei Liu, Dr. André Wiesner, Florian Allerding, Birger Becker, Frederic Toussaint, Nu- groho Fredivianus, Christian Hirsch, Sabrina Merkel, Marc Mültin, Daniel Pathmaperuma, Friederike Pfeiffer, Micaela Wünsche, Fabian Rigoll, Fredy Rios, and our secretary Mrs. In- geborg Götz. Special thanks also go to Felix, Sanaz, Lukas, and my office partner Nug. In the Graph Drawing community, it is an honour for me to thank Christian Bachmaier and Andreas Gleißner (University of Passau, Germany) for our valuable discussions and the implementation of the Gravisto graph visualization toolkit. Furthermore, I am grateful to Prof. Perter Eades (University of Sydney, Australia), Prof. Roberto Tamassia (Brown University, USA), Prof. Ulrik Brandes (University of Konstanz, Germany) for our valuable discussions and the advice they gave during the 2010 and 2011 Graph Drawing conferences. Also, thanks are presented to Dr. Helen C. Purchase (University of Glasgow, Scotland), for her valuable comments. Moreover, for the non-scientific side of my thesis, I offer my sincerest regards and blessings to all of those who supported me in any capacity during the completion of this thesis. I am grateful to my family and friends in Egypt for their constant moral support. Special thanks go to my father, my brothers Ashraf and Osama, father-in-law, mother-in-law, and brothers and sisters in law, who always believed in me, supported me in every respect and for their constant encouragement and endless praying for me throughout the last few years. Last but not least, words fail to express my deepest thanks to my wife and life partner Mariam. I am so proud to dedicate this thesis to her, as she always enriches my life with her cheerful, spirited approach to life and countless and endless support. Really, she has been there for me every time I needed her even in stressful and chaotic times. Finally, I would like to show my gratitude to my children Alzhraa, Abdelmohsen, and Ashraqat for their innocent smiles, funny reactions and for making my Karlsruhe years so wonderful and unforgettable. Karlsruhe, May 2012 Alaa A. K. Ismaeel xiv Abstract Graph Drawing addresses the geometric representation of graphs. It is motivated by appli- cation fields in which it is crucial to visualize structural information as graphs. The majority of research into graph drawing has been in regard to efficient algorithms for working with static graphs in which the graph structure does not change. In dynamic graphs, changes in the graph structure and/or its drawing at use time of the graph are possible by adding, delet- ing, or modifying vertices and/or edges. Many graph drawing scenarios are dynamic since they involve a repeated updating of the graph, and consequently its drawing, after certain change is executed. One of the main objectives in dynamic graph drawing is preserving the user’s mental map, which is minimizes the effort the user has to spend in order to become re-familiarized with the drawing after some actions have been executed. The recommended approach for preserving the user’s mental map is to minimize the changes between the new and current drawings. Effectively, minimizing the changes involves computing a measure of similarity between the two drawings. Collectively, these measures are known as difference metrics. Some considered difference metrics are the Euclidean distance, relative distance, edge orthogonality, vertex width, and vertex ordering. This thesis is concerned with the problem of proposing and validating difference metrics of dynamic hierarchical graph drawings. The existing approaches in this direction focus on how to execute an action on a dynamic hierarchical graph, or on measuring the difference between drawings of a dynamic hierarchical graph using difference metrics. We introduce a new general framework on how to formulate difference metrics for hierarchical graphs. This framework is based on distinguishing between the vertices and edges that are inserted into or deleted from the graph and those that are still shared in both drawings. The general form of a difference metric is formulated by considering the topological and geometric characteristics of hierarchical graphs and have also been applied to existing metrics that are used with non- hierarchical graph drawings. The proposed formulation could be applied to any hierarchical graph of any size and could be easily extended to different graph types. Measuring the similarity between two different drawings should not be done with respect to some computations of similarity metrics only since the human judgement based on the perception of what appears aesthetic into account. So, an experimental user study is carried out in order to validate the introduced difference metrics based on user evaluations. Another problem for drawing hierarchical graphs aesthetically is minimizing crossings be- tween edges. Two approaches are considered in solving this problem. The first is the layer-by- layer sweep and the second is the global approach. In the layer-by-layer sweep approach, the xv Abstract problem is solved repeatedly by computing the order of the vertices in each layer according to their connectivity in the upper and lower layer, then the algorithm moves to the next two layers. In the global approach, the order of vertices in all layers is computed simultaneously. A new algorithm is introduced, named the efficient barycenter, which empirically produces better results than some recent global algorithms and traditional layer-by-layer algorithms, in both the number of crossings and the execution time. Finally, a new method for generating random hierarchical graphs is introduced. This method is based on a precise counting of the maximum number of edges in a hierarchical graph. Two generators for proper and generally non-proper hierarchical graph are introduced. Both generators control all the parameters of a hierarchical graph, like the number of layers, the number of vertices in each layer, the minimum number of outgoing edges of a vertex, the edge density and the ratio of the long edges in the graph. xvi Contents Figures List xix Tables List xxi Algorithms List xxiii 1 Introduction 1 1.1 Graph Drawing ..................................