190 likes | 202 Views
A software tool designed to assist teachers and students in learning and visualizing graph algorithms. The tool includes a graphical user interface and built-in algorithms for solving various graph problems. It also supports extensibility for adding custom algorithms.
E N D
Eunis 2002 New Technologies A Software Tool for Teaching and Learning Graph’s Algorithms Grafos 2001 Escola Superior de Gestão de Santarém Portugal António Roberto Ana Sofia Lino
Grafos 2001 A Software Tool for Teaching and Learning Graph’s Algorithms Agenda • Objectives • Architecture • Use Examples • Conclusions
Grafos 2001 Objectives: • Graphical Input • Graphical Output B • Problem’s Solution • Algorithm’sSteps C A • Extensible E D
Grafos 2001 Architecture Microsoft Visio gives the User Interface and the Drawing Capabilities
Grafos 2001 Architecture Visio Customization with Grafo Template Results Step by Step Next Step Grafo Shapes Stencil Initial State Minimal Spanning Tree Shortest Path Maximum Flow • Master Shapes : • Node • Arc
Grafos 2001 Architecture Graphical User Interface Drawing Power Visio
Grafos 2001 Architecture Graphical User Interface Drawing Power Visio What ismissing? • Data Structure ActiveX Dll Visio Add-In • Algorithms Where do we put this logic ?
Grafos 2001 Architecture Graph Editing Visio Add-In Event’s Handlers Internal Representation Programming with Visio Objects Connection Deleted Connection Added Shape Deleted Text Changed Shape Added Built-in Algorithms
Grafos 2001 Architecture Results / Step by Step Visio Add-In Event’s Handlers Internal Representation Shortest Path Programming with Visio Objects Built-in Algorithms Output
Grafos 2001 Architecture Extensibility ActiveX Automation Server Grafos2001 Object Model Visio Add-In How can we extend to other algorithms ? Event’s Handlers Automation Object Interface Internal Representation Where do we write the new algorithms ? • Built-in algorithms : • Prim’s algorithm ( Minimal Spanning Tree ) • Dijkstra’s algorithm ( Shortest Path ) • Ford-Fulkerson ( Maximum Flow Problem ) Built-in Algorithms
Grafos 2001 Architecture Extensibility Visio Programming Environment ActiveX Automation Server Programming with Grafos2001 objects
Grafos 2001 Architecture Visio – Grafos2001 Synergy Event’s Handlers Built-in Algorithms Event Visio Objects Internal Representation Object’s Interface Grafos2001 Objects
Use Examples Built-in Algorithm : Shortest Path Grafos 2001
Use Examples Extensibility Example Grafos 2001 Graph Coloring
Use Examples Extensibility Example Grafos 2001 Euler Theorem
Use Examples Extensibility Example Grafos 2001 Euler Circuit – Hierholzer’s Algorithm
Use Examples Extensibility Example Grafos 2001 Programming with Grafos2001’s Objects
Grafos 2001 Conclusions • We think Grafos2001 can be used as a tool: • that helps the teacher to prepare and expose the subject; • that can be used to visualize the solutions and develop algorithms; • We want to establish contact with other people interested. • Free download from www.antonioroberto.com • We haven’t feedback from portuguese universities contacted • 2ª prize at Microsoft Portugal Software Contest ( Special/Universities )
Grafos 2001 Conclusions Future work : • add support to oriented graphs • translate to English • solve bugs detected • expand Grafos2001 object model • redesign the system