ANIMATION OF ALGORITHMS ON GRAPHS

Size: px
Start display at page:

Download "ANIMATION OF ALGORITHMS ON GRAPHS"

Transcription

1 Master Informatique 1 ère année MASTER 1 ENGLISH REPORT YEAR ANIMATION OF ALGORITHMS ON GRAPHS AUTHORS : TUTOR : MICKAEL PONTON FREDERIC SPADE JEAN MARC NICOD

2 ABSTRACT Among the units studied in our fourth year in Computer Sciences at the University of Franche-Comte, the supervised project is one of the more important practice parts during the second semester. This project's particularity is that we have to write, as well as present it orally, in English. The purpose of this report is to present the work done on our project whose subject was "Animation of algorithms on graphs". This presentation rstly contains some basic denitions on graphs to allow everyone to easily understand the subject; secondly, a description of purpose of application and specications; thirdly, an explanation of our resolution of the matter.

3 Contents 1 Introduction 1 2 BASIC DEFINITION AND MAIN USES OF GRAPHS Denition Main uses OUR PROJECT SPECIFICATION Context Specication OUR ANALYSIS 6 5 SOLUTIONS Tutors Maintenance algorithms Compilation tool Colours of the graph Students REGRETS 9 7 Conclusion 10

4 1 Introduction A graph is the data structure the more general to describe many situations. They are therefore used in our daily lives often to solve dicult problems. For example, nding the best schedule for a review session minimizing its duration is equivalent to a colouring problem on graphs, nding the best duration of a project can be summed up in search of the longest path in the graph of the tasks of the siteâ Algorithms on graphs are numerous. Their understanding is not always easy. However, with an example, the explanations are more convincing. Therefore, Mr Nicod, lecturer at the University of Franche-ComtÃ, would like to make available to its students the animations of the behaviour of algorithms being presented. The aim of our project is to answer this need. 1

5 2 BASIC DEFINITION AND MAIN USES OF GRAPHS The representation of a problem by a plan, a drawing, an outline often contributes to a better and quicker understanding. The theory of graphs is constructed, originally, on this principle. 2.1 Denition A minimum of two points, a link between these two points, here is the minimalist structure of a graph! More seriously, there are several ways to dene a graph. The easiest way may be to see it as a set of vertices or points connected by edges. Indeed, graphs are used to describe a set of objects and their relationships, i.e. links between objects. So the objects are nodes of the graph and links between objects are vertices of the graph. On the scheme above, we can see these two dierent components: The nodes which are the bubbles marked by letters a to h The edges that are linking nodes each other Edges have two particularities: 1. They can be oriented or non-oriented. The direction of an edge matches with the direction allowed to go from one node to another. In case of an oriented edge, the line turns into eche and is also called an arc. 2

6 2. They can be weighted. A value, also named weight, is attributed for the path between both nodes linked by the weighted edge. This value can be for example a time or a distance. This type of structure allows modeling many situations such as a computer network, a network of water or electricity, road maps. Thanks to the graphs and the application of specic algorithms on these graphs, it becomes possible to resolve and even to optimize many complex problems like nding optimal paths and cycles. A path of a graph is a sequence of the edges travelled to go from a node to another node. A cycle of a graph is the chain of nodes covering the entire graph and in which the initial node is also the nal one, and in which every edge is used only one time during the "travel". On the scheme above, we can see in red: a path and in green: a cycle. 2.2 Main uses The range of graph uses is large. Indeed, the pair graph / algorithm on this graph is a resolution tool commonly used in our environment. For example: In the city of Grenoble, the optimization of circuit garbage collection is based on a graph and its algorithm. In the industrial world, this tool is essential in warehouses for an optimal management of the movement of loaded robots that retrieve pallets of products. On the urban side, the choice of a street to become one-way without making impossible city trac is validated by a graph and its algorithm. The pair graph/algorithm is also very useful to solve the problem of construction of highways linking major cities with the lowest total mileage. More surprising, the algorithm for graph 3

7 coloring has determined that only four colors are necessary, on the France map, to full color all departments with no neighbour of the same color. 4

8 3 OUR PROJECT SPECIFICATION Our project focuses on the animation of algorithms on graphs. The aim is to provide to M. Nicod, a powerful educational tool to its students under the teaching of graphs. The animation of the behavior of algorithms presented will be a precious complement in convincing explanation and understanding. 3.1 Context There is existing software written in Java. In fact, two students of professional license have made the codes allowing the graphic seizure of a graph. Then, as part of their supervised project of Master 1 in Computer Science, two others students have added the export of an algorithm on the current graph in a Flash animation. These developments will be our base of work. 3.2 Specication This project involves 2 phases. On the one hand: The rst phase consists in making a reliable mode of production of animations. Indeed, we will have to correct the existing code, provide additional functionality and validate the code. On the other hand: The second part focuses on the programming of several algorithms on graphs. To enable the display of up animation graphs, the program needs a library of algorithms applied on graphs. The aim of this phase is to understand and write algorithms such as nding shortest paths, the computation of a spanning tree of minimum weight of the current graph. The animation of the graphs must operate under dierent operating systems (MS Windows, Linux, Mac OSX). The programmation language is Java. The educational aim of this project is the implementation of all the teachings related to Java programming and graph theory. It is, moreover, a subject with a strong algorithmic connotation. 5

9 4 OUR ANALYSIS We are convinced of the enormous interest of this application in educational level. Be able to broadcast animation graphs with no limit of the environment, without special software, except a browser, is a vital asset. The application could, for example, nd all its value in the context of distance education. Each student would be able to see the animation of all the algorithms described in the fascicles of the course with a single click in his browser. The courses would be easier to begin with, more alive, more interactive and more understandable through these illustrations. This requires that: The application allows the management of a maximum of algorithms (add/modify/delete), simulations are reliable and customizable, export in the ash le is eective Our main goal was to complete and make reliable to the maximum the existing software. To achieve this, we took ownership of the existing code. This has been a long and dicult, but necessary, step in this project. We have been able to purify, sanitize, commenting the code. In addition, improved ergonomics and user-friendly software has been one of our concerns with each change or addition of functionality. Our approach has always been the same for modify the existing as for add functionality: report of a problem or a lack, analysis, integration of our solution. In our view, there are two categories of users of the application: Tutors who are responsible for managing the addition / modication / deletion of graph algorithms to simulate as well as the simulation modes Students must be able to view the animations in any browser in any environment. 6

10 5 SOLUTIONS 5.1 Tutors The application must enable the management of a maximum of algorithms. We have therefore extended the capabilities of existing software to avoid restrictions in the addition of algorithms to animate. Each algorithm requires specic settings that can greatly vary from one algorithm to another: for example, the number of parameters, the weight of edges, the direction of an edge, and many other more technical. We changed the code in order not to restrict the application. Furthermore, tutors need an interface functional and reliable to manage algorithms. We mainly provide solutions to following problems: Dicult maintenance of algorithms Compilation tool inecient and not user-friendly Delicate management of simulation modes Maintenance algorithms After analysis, it appears that maintenance algorithms is dicult because all the algorithms are in a single le. Each public method is an algorithm. Our solution is to separate each algorithm and create as many le as algorithm Compilation tool Compile an algorithm always fails in the editing window, even if the algorithm is correct. In addition, after the compilation of an algorithm, no message appears in the result window. The user has no explanation of errors occurred during compilation. We wanted to add results of the compilation in the result window. Now, after modifying the code, the application displays, in addition to the message of success or failure of the compilation, the output of the compiler. This includes details about the errors and warnings. Before modication: 7

11 After modication: Furthermore, when compiling the project, are now erased binaries les.class, executables, documentation Java.doc and the user les (cong, graphs and algorithms) Colours of the graph Colour management for an algorithm is dicult. Indeed, the user must rst create the dierent colours required for the algorithm; otherwise, the algorithm does not work. This is now xed. In addition, in the original program, all algorithms have the same colours. For purposes of visibility, we decided to propose a personalization of colours for each algorithm. We therefore integrate the separation of modes of simulation algorithm and also changed the code so that the predened modes (default and selection) and user modes are stored in dierent lists. 5.2 Students Students need to view Flash animations of algorithms on graph. Moreover, these animations are subject to the constraint of portability. So, Flash export must be reliable 100To achieve this, we have solved the following problems: 8

12 In some situations, the ash does nothing (when adding the cartridge for example), In the animation exported from some algorithms, the edges do not change colour or there is no animation at all, Export on Windows does not work 6 REGRETS Writing algorithms was approached just at the end of the project. So we could not write a lot of algorithms to simulate. However, we have tried to implement the algorithm of Prim. The aim of this algorithm is to solve a large family of problems involving interactions between dierent components of a system where you want a service or provide communications at low cost. It is important to see that we are here from the perspective of the designer and not the user. Most often that family problems back to physically connect the components by eliminating redundancy for a system as simple as possible: a tree. For example, an operator must connect cities with a new broadband network. A number of direct connections point to point between the cities are technically possible. The distance between two cities in the nal network has little importance in view of the ow but the costs of the network are obviously not the same for the various point-to point. The operator therefore needs to determine how to connect all cities in minimizing the total cost of the network. As we can see in the scheme below, this algorithm selects just any edges (red marqued link). So to connect cities each others, it can be necessary to go through an indirect path. The direct edge is sometimes not marqued by the algorithm. For example to link Caen to Rennes, the path of minimum cost is not directly Caen-Rennes, but Caen-Angers-Rennes. 9

13 7 Conclusion Figure 1: example of the prim algorihm To conclude, this project was very instructive. From a technical point of view, it was for us a real addition to our course on graph theory. We have been able to go a little deeper into this fascinating subject. Indeed, we had to dissect, understand and try to write algorithms on graphs such as Prim or Bellman-Ford. Moreover, the reliability phase of the existing program is also highly instructive. This step was very timeconsuming. The diculty in understanding existing code led us to measure the importance of standard programming, the creation of an intuitive code. Several times, the desire to rewrite many parts of the programs has been very strong. Each developer has its own logic of development and project organization. However, existing sources surely allowed us to more easily identify the parts of code to change, what could fail and has focused on features that seemed interesting to implement in the program. From a human point of view, it is not always easy to work on several on the same project for many reasons. First of all, each person has his own vision of a project and the developments that he wants to give it despite a same specication. Then, each has his own way to plan, organize the tasks it must accomplish. Finally, we must know how to optimize human resources team like as knowledge, skills, experience of each to overcome the various diculties met throughout the project. We therefore measured the importance of working procedures, coordination of development and communication. In our point of view, the main improvement is assuredly expanding to the maximum the library of algorithms. 10

perform. If more storage is required, more can be added without having to modify the processor (provided that the extra memory is still addressable).

perform. If more storage is required, more can be added without having to modify the processor (provided that the extra memory is still addressable). How to Make Zuse's Z3 a Universal Computer Raul Rojas January 14, 1998 Abstract The computing machine Z3, built by Konrad Zuse between 1938 and 1941, could only execute xed sequences of oating-point arithmetical

More information

CPSC 320 Sample Solution, Playing with Graphs!

CPSC 320 Sample Solution, Playing with Graphs! CPSC 320 Sample Solution, Playing with Graphs! September 23, 2017 Today we practice reasoning about graphs by playing with two new terms. These terms/concepts are useful in themselves but not tremendously

More information

CSM27 Exercises. Hans Georg Schaathun. November 25, Week In session. 1.2 Weekly Exercises. Security problems brain storming

CSM27 Exercises. Hans Georg Schaathun. November 25, Week In session. 1.2 Weekly Exercises. Security problems brain storming CSM27 Exercises Hans Georg Schaathun November 25, 2008 1 Week 1 1.1 In session Security problems brain storming Classication of brain stormed problems. 1.2 Weekly Exercises 1.2.1 Current Security Problems

More information

CS170 First Midterm Answers 17 Feb { What are the strongly connected components of the directed graph shown below?

CS170 First Midterm Answers 17 Feb { What are the strongly connected components of the directed graph shown below? S70 First Midterm Answers 7 Feb 998 Answer to Version of Question. (3 points) { What are the strongly connected components of the directed graph shown below? A 000000 0000 00000 0 E H 0 0 00 0000 0 00

More information

MSc(IT) Program. MSc(IT) Program Educational Objectives (PEO):

MSc(IT) Program. MSc(IT) Program Educational Objectives (PEO): MSc(IT) Program Master of Science (Information Technology) is an intensive program designed for students who wish to pursue a professional career in Information Technology. The courses have been carefully

More information

EE6301 DIGITAL LOGIC CIRCUITS UNIT IV ASYNCHRONOUS SEQUENTIAL CIRCUITSAND PROGRAMMABLE LOGIC DEVICES PART A

EE6301 DIGITAL LOGIC CIRCUITS UNIT IV ASYNCHRONOUS SEQUENTIAL CIRCUITSAND PROGRAMMABLE LOGIC DEVICES PART A EE6301 DIGITAL LOGIC CIRCUITS UNIT IV ASYNCHRONOUS SEQUENTIAL CIRCUITSAND PROGRAMMABLE LOGIC DEVICES PART A 1. What is deadlock condition? [N/D 14] A condition resulting when one task is waiting to access

More information

Connexions module: m Linear Equations. Rupinder Sekhon

Connexions module: m Linear Equations. Rupinder Sekhon Connexions module: m18901 1 Linear Equations Rupinder Sekhon This work is produced by The Connexions Project and licensed under the Creative Commons Attribution License 3.0 Abstract This chapter covers

More information

Discrete mathematics

Discrete mathematics Discrete mathematics Petr Kovář petr.kovar@vsb.cz VŠB Technical University of Ostrava DiM 470-2301/02, Winter term 2018/2019 About this file This file is meant to be a guideline for the lecturer. Many

More information

JSish. Ryan Grasell. June For my senior project, I implemented Professor Keen s JSish spec in C++. JSish

JSish. Ryan Grasell. June For my senior project, I implemented Professor Keen s JSish spec in C++. JSish JSish Ryan Grasell June 2015 1 Introduction For my senior project, I implemented Professor Keen s JSish spec in C++. JSish is a subset of Javascript with support for execution from the command line and

More information

AIM. 10 September

AIM. 10 September AIM These two courses are aimed at introducing you to the World of Web Programming. These courses does NOT make you Master all the skills of a Web Programmer. You must learn and work MORE in this area

More information

Lecture 1: Overview

Lecture 1: Overview 15-150 Lecture 1: Overview Lecture by Stefan Muller May 21, 2018 Welcome to 15-150! Today s lecture was an overview that showed the highlights of everything you re learning this semester, which also meant

More information

Pizza Delivery Helper

Pizza Delivery Helper Pizza Delivery Helper Aldo Doronzo 2008 / 2009 Abstract This is a report describing the Pizza Delivery Helper project realized during the course of Mobile Services taught by prof. Ricci at the Free University

More information

Predicting Lattice reduction

Predicting Lattice reduction Predicting Lattice reduction Nicolas Gama, Phong Nguyen Ecole Normale Supérieure,CNRS,INRIA, France. April 14, 2008 Nicolas Gama, Phong Nguyen (Ecole Normale Supérieure,CNRS,INRIA, Predicting Lattice reduction

More information

Reverse Engineering with a CASE Tool. Bret Johnson. Research advisors: Spencer Rugaber and Rich LeBlanc. October 6, Abstract

Reverse Engineering with a CASE Tool. Bret Johnson. Research advisors: Spencer Rugaber and Rich LeBlanc. October 6, Abstract Reverse Engineering with a CASE Tool Bret Johnson Research advisors: Spencer Rugaber and Rich LeBlanc October 6, 994 Abstract We examine using a CASE tool, Interactive Development Environment's Software

More information

ASG WHITE PAPER DATA INTELLIGENCE. ASG s Enterprise Data Intelligence Solutions: Data Lineage Diving Deeper

ASG WHITE PAPER DATA INTELLIGENCE. ASG s Enterprise Data Intelligence Solutions: Data Lineage Diving Deeper THE NEED Knowing where data came from, how it moves through systems, and how it changes, is the most critical and most difficult task in any data management project. If that process known as tracing data

More information

A Hands-on Project approach to Teaching Solid Modeling

A Hands-on Project approach to Teaching Solid Modeling Paper ID #13155 A Hands-on Project approach to Teaching Solid Modeling Prof. Randy Shih, Oregon Institute of Technology Randy Shih is a Professor in the Manufacturing and Mechanical Engineering and Technology

More information

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanford.edu) January 11, 2018 Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 In this lecture

More information

Web site Image database. Web site Video database. Web server. Meta-server Meta-search Agent. Meta-DB. Video query. Text query. Web client.

Web site Image database. Web site Video database. Web server. Meta-server Meta-search Agent. Meta-DB. Video query. Text query. Web client. (Published in WebNet 97: World Conference of the WWW, Internet and Intranet, Toronto, Canada, Octobor, 1997) WebView: A Multimedia Database Resource Integration and Search System over Web Deepak Murthy

More information

Skill. Robot/ Controller

Skill. Robot/ Controller Skill Acquisition from Human Demonstration Using a Hidden Markov Model G. E. Hovland, P. Sikka and B. J. McCarragher Department of Engineering Faculty of Engineering and Information Technology The Australian

More information

Index Generation and Advanced Search Functions for. Muitimedia Presentation Material. Yahiko Kambayashi 3 Kaoru Katayama 3 Yasuhiro Kamiya 3

Index Generation and Advanced Search Functions for. Muitimedia Presentation Material. Yahiko Kambayashi 3 Kaoru Katayama 3 Yasuhiro Kamiya 3 Index Generation and Advanced Search Functions for Muitimedia Presentation Material Yahiko Kambayashi 3 Kaoru Katayama 3 Yasuhiro Kamiya 3 Osami Kagawa 33 3 Department of Information Science, Kyoto University

More information

MSc Computing and Technology (Part-Time)

MSc Computing and Technology (Part-Time) MSc Computing and Technology (Part-Time) Campus: London Level of study: Postgraduate Tuition fee: 7,650 (UK/EU) Entry requirements: 2:2 (second class) honours degree or equivalent in any discipline English

More information

The members of the Committee approve the thesis of Baosheng Cai defended on March David B. Whalley Professor Directing Thesis Xin Yuan Commit

The members of the Committee approve the thesis of Baosheng Cai defended on March David B. Whalley Professor Directing Thesis Xin Yuan Commit THE FLORIDA STATE UNIVERSITY COLLEGE OF ARTS AND SCIENCES COMPILER MODIFICATIONS TO SUPPORT INTERACTIVE COMPILATION By BAOSHENG CAI A Thesis submitted to the Department of Computer Science in partial fulllment

More information

A Java-based Course in Human-Computer Interaction. Eileen Kraemer. The University of Georgia. Athens, GA interface.

A Java-based Course in Human-Computer Interaction. Eileen Kraemer. The University of Georgia. Athens, GA interface. A Java-based Course in Human-Computer Interaction Eileen Kraemer Computer Science Department The University of Georgia Athens, GA 30602 Abstract The ACM/SIGCHI proposed curriculum for Human-Computer Interaction

More information

DoConference Web Conferencing: DoMore DoConference

DoConference Web Conferencing: DoMore DoConference DoConference Web Conferencing: DoMore DoConference Use DoConference Conferencing for: Training and E-Learning Deliver interactive online classes, E-Learning sessions and educate easily and affordably.

More information

C H A P T E R 1. Introduction to Computers and Programming

C H A P T E R 1. Introduction to Computers and Programming C H A P T E R 1 Introduction to Computers and Programming Topics Introduction Hardware and Software How Computers Store Data How a Program Works Using Python Computer Uses What do students use computers

More information

About Router esim Student Version 1.1: Instructor FAQ

About Router esim Student Version 1.1: Instructor FAQ About Router esim Student Version 1.1: Instructor FAQ 1-1 About Router esim Student Version 1.1: Instructor FAQ Copyright 2001, Cisco Systems, Inc Changes in Router esim Student Version 1.1 Router esim

More information

Dynamic load balancing of SCSI WRITE and WRITE SAME commands

Dynamic load balancing of SCSI WRITE and WRITE SAME commands Dynamic load balancing of SCSI WRITE and WRITE SAME commands Vladimir Tikhomirov Supervised by Dr. Simo Juvaste Advised by Antti Vikman and Timo Turunen Master's thesis. June 13, 2013 School of Computing

More information

COE318 Lecture Notes Week 3 (Week of Sept 17, 2012)

COE318 Lecture Notes Week 3 (Week of Sept 17, 2012) COE318 Lecture Notes: Week 3 1 of 8 COE318 Lecture Notes Week 3 (Week of Sept 17, 2012) Announcements Quiz (5% of total mark) on Wednesday, September 26, 2012. Covers weeks 1 3. This includes both the

More information

Lecture 01 & 02 Computer Programming

Lecture 01 & 02 Computer Programming Lecture 01 & 02 Computer Programming 15 Computer Systems Engineering Second Semester By: Mr. Ali Asghar Manjotho, Lecturer, CSE-MUET Contents Computer programming (LL 02) Why programming? (LL 02) Instructions

More information

Vector Addition and Subtraction: Analytical Methods

Vector Addition and Subtraction: Analytical Methods Connexions module: m42128 1 Vector Addition and Subtraction: Analytical Methods OpenStax College This work is produced by The Connexions Project and licensed under the Creative Commons Attribution License

More information

Grafos2001. António Roberto, Ana Sofia Lino. Escola Superior de Gestão de Santarém, Portugal

Grafos2001. António Roberto, Ana Sofia Lino. Escola Superior de Gestão de Santarém, Portugal Grafos2001 António Roberto, Ana Sofia Lino Escola Superior de Gestão de Santarém, Portugal a.roberto@mail.telepac.pt Escola Superior de Gestão de Santarém, Portugal ana.lino@esgs.pt Abstract Software Grafos2001

More information

16 Greedy Algorithms

16 Greedy Algorithms 16 Greedy Algorithms Optimization algorithms typically go through a sequence of steps, with a set of choices at each For many optimization problems, using dynamic programming to determine the best choices

More information

Intergrity Policies CS3SR3/SE3RA3. Ryszard Janicki. Outline Integrity Policies The Biba Integrity Model

Intergrity Policies CS3SR3/SE3RA3. Ryszard Janicki. Outline Integrity Policies The Biba Integrity Model Intergrity Policies CS3SR3/SE3RA3 Ryszard Janicki Acknowledgments: Material based on Computer Security: Art and Science by Matt Bishop (Chapter 6) Ryszard Janicki Intergrity Policies 1 / 13 Outline 1 2

More information

Lesson 2 page 1. ipad # 17 Font Size for Notepad (and other apps) Task: Program your default text to be smaller or larger for Notepad

Lesson 2 page 1. ipad # 17 Font Size for Notepad (and other apps) Task: Program your default text to be smaller or larger for Notepad Lesson 2 page 1 1/20/14 Hi everyone and hope you feel positive about your first week in the course. Our WIKI is taking shape and I thank you for contributing. I have had a number of good conversations

More information

An Evaluation of Information Retrieval Accuracy. with Simulated OCR Output. K. Taghva z, and J. Borsack z. University of Massachusetts, Amherst

An Evaluation of Information Retrieval Accuracy. with Simulated OCR Output. K. Taghva z, and J. Borsack z. University of Massachusetts, Amherst An Evaluation of Information Retrieval Accuracy with Simulated OCR Output W.B. Croft y, S.M. Harding y, K. Taghva z, and J. Borsack z y Computer Science Department University of Massachusetts, Amherst

More information

TOTAL CREDIT UNITS L T P/ S SW/F W. Course Title: Analysis & Design of Algorithm. Course Level: UG Course Code: CSE303 Credit Units: 5

TOTAL CREDIT UNITS L T P/ S SW/F W. Course Title: Analysis & Design of Algorithm. Course Level: UG Course Code: CSE303 Credit Units: 5 Course Title: Analysis & Design of Algorithm Course Level: UG Course Code: CSE303 Credit Units: 5 L T P/ S SW/F W TOTAL CREDIT UNITS 3 1 2-5 Course Objectives: The designing of algorithm is an important

More information

TERMINOLOGY MANAGEMENT DURING TRANSLATION PROJECTS: PROFESSIONAL TESTIMONY

TERMINOLOGY MANAGEMENT DURING TRANSLATION PROJECTS: PROFESSIONAL TESTIMONY LINGUACULTURE, 1, 2010 TERMINOLOGY MANAGEMENT DURING TRANSLATION PROJECTS: PROFESSIONAL TESTIMONY Nancy Matis Abstract This article briefly presents an overview of the author's experience regarding the

More information

Introduction. Thank you for picking up Silverlight 1.0 Unleashed! IN THIS CHAPTER. . Who Should Read This Book?. Software Requirements

Introduction. Thank you for picking up Silverlight 1.0 Unleashed! IN THIS CHAPTER. . Who Should Read This Book?. Software Requirements Nathan_Intro_Iss 9/21/07 2:01 AM Page 1 IN THIS CHAPTER. Who Should Read This Book?. Software Requirements Thank you for picking up Silverlight 1.0 Unleashed! Silverlight is changing the way many people

More information

Reactive and Hybrid Agents. Based on An Introduction to MultiAgent Systems and slides by Michael Wooldridge

Reactive and Hybrid Agents. Based on An Introduction to MultiAgent Systems and slides by Michael Wooldridge Reactive and Hybrid Agents Based on An Introduction to MultiAgent Systems and slides by Michael Wooldridge Reactive Architectures Problems with symbolic/logical approaches (transduction, computational

More information

BPMone 2.8 Release Notes

BPMone 2.8 Release Notes BPMone 2.8 Release Notes 2012 Perceptive Software Date: 11/7/2012 Version: 2.8 BPMone is a trademark of Lexmark International Technology SA, registered in the U.S. and other countries. Perceptive Software

More information

EM WORKSHOP : AN INTERACTIVE TOOL TO BUILD WEB- BASED ELECTROMAGNETICS COURSES

EM WORKSHOP : AN INTERACTIVE TOOL TO BUILD WEB- BASED ELECTROMAGNETICS COURSES EM WORKSHOP : AN INTERACTIVE TOOL TO BUILD WEB- BASED ELECTROMAGNETICS COURSES JEAN-MICHEL DRICOT and PHILIPPE DE DONCKER Département d Electricité Générale Université Libre de Bruxelles Elecgen CP165/51

More information

Outline. Computer Science 331. Information Hiding. What This Lecture is About. Data Structures, Abstract Data Types, and Their Implementations

Outline. Computer Science 331. Information Hiding. What This Lecture is About. Data Structures, Abstract Data Types, and Their Implementations Outline Computer Science 331 Data Structures, Abstract Data Types, and Their Implementations Mike Jacobson 1 Overview 2 ADTs as Interfaces Department of Computer Science University of Calgary Lecture #8

More information

CAD with use of Designers' Intention. Osaka University. Suita, Osaka , Japan. Abstract

CAD with use of Designers' Intention. Osaka University. Suita, Osaka , Japan. Abstract CAD with use of Designers' Intention Eiji Arai, Keiichi Shirase, and Hidefumi Wakamatsu Dept. of Manufacturing Science Graduate School of Engineering Osaka University Suita, Osaka 565-0871, Japan Abstract

More information

Computer Science Curriculum for International Students

Computer Science Curriculum for International Students Computer Science Curriculum for International Students 2011-2012 Language of instruction Although the lecturer is allowed to teach his course in Dutch, - the course notes, handbook and/or other information

More information

Blocking vs. Non-blocking Communication under. MPI on a Master-Worker Problem. Institut fur Physik. TU Chemnitz. D Chemnitz.

Blocking vs. Non-blocking Communication under. MPI on a Master-Worker Problem. Institut fur Physik. TU Chemnitz. D Chemnitz. Blocking vs. Non-blocking Communication under MPI on a Master-Worker Problem Andre Fachat, Karl Heinz Homann Institut fur Physik TU Chemnitz D-09107 Chemnitz Germany e-mail: fachat@physik.tu-chemnitz.de

More information

Installation. List Wrangler - Mailing List Manager for GTK+ Part I. 1 Requirements. By Frank Cox. September 3,

Installation. List Wrangler -  Mailing List Manager for GTK+ Part I. 1 Requirements. By Frank Cox. September 3, List Wrangler - Email Mailing List Manager for GTK+ By Frank Cox September 3, 2012 theatre@melvilletheatre.com Abstract Do you have a mailing list of people that you send periodic emails to? If so, List

More information

CSC148, Lab #4. General rules. Overview. Tracing recursion. Greatest Common Denominator GCD

CSC148, Lab #4. General rules. Overview. Tracing recursion. Greatest Common Denominator GCD CSC148, Lab #4 This document contains the instructions for lab number 4 in CSC148H. To earn your lab mark, you must actively participate in the lab. We mark you in order to ensure a serious attempt at

More information

The SUMO Speaker Series for Undergraduates. The Art Gallery Problem

The SUMO Speaker Series for Undergraduates. The Art Gallery Problem The SUMO Speaker Series for Undergraduates (food from Pizza Chicago) Wednesday, April 21 4:40-5:30, room 380C The Art Gallery Problem Amy Pang Abstract: Imagine you are the curator of an art gallery with

More information

DRAFT for FINAL VERSION. Accepted for CACSD'97, Gent, Belgium, April 1997 IMPLEMENTATION ASPECTS OF THE PLC STANDARD IEC

DRAFT for FINAL VERSION. Accepted for CACSD'97, Gent, Belgium, April 1997 IMPLEMENTATION ASPECTS OF THE PLC STANDARD IEC DRAFT for FINAL VERSION. Accepted for CACSD'97, Gent, Belgium, 28-3 April 1997 IMPLEMENTATION ASPECTS OF THE PLC STANDARD IEC 1131-3 Martin hman Stefan Johansson Karl-Erik rzen Department of Automatic

More information

\Classical" RSVP and IP over ATM. Steven Berson. April 10, Abstract

\Classical RSVP and IP over ATM. Steven Berson. April 10, Abstract \Classical" RSVP and IP over ATM Steven Berson USC Information Sciences Institute April 10, 1996 Abstract Integrated Services in the Internet is rapidly becoming a reality. Meanwhile, ATM technology is

More information

Using Travelling Salesman Problem Algorithms to. Plan the Most Time-efficient Route for Robots

Using Travelling Salesman Problem Algorithms to. Plan the Most Time-efficient Route for Robots Using Travelling Salesman Problem Algorithms to Plan the Most Time-efficient Route for Robots Zhaoxin Xue The High School Affiliated to Renmin University of China, 14-0646 Using Travelling Salesman Problem

More information

The Mobile-IP Testbed of the HP-OVUA. MNM Team. March 25, Abstract

The Mobile-IP Testbed of the HP-OVUA. MNM Team. March 25, Abstract The Mobile-IP Testbed of the HP-OVUA Stephen Heilbronner MNM Team heilbron@informatik.uni-muenchen.de March 25, 1997 Abstract Within the HP-OUA a special interest group on Mobility was founded in 1995.

More information

Using Flex 3 in a Flex 4 World *

Using Flex 3 in a Flex 4 World * OpenStax-CNX module: m34631 1 Using Flex 3 in a Flex 4 World * R.G. (Dick) Baldwin This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract Learn how

More information

Users and roles. Contents

Users and roles. Contents Users and roles Help bits Contents Overview... 3 Users... 4 Operation... 5 Users tab... 6 Creating a new user... 9 Role tab... 10 Editing a role... 11 Creating a new role... 11 Role deletion... 12 Privacy

More information

CTI Short Learning Programme in IT Enigneering

CTI Short Learning Programme in IT Enigneering CTI Short Learning Programme in IT Enigneering Module Descriptions 2015 1 Short Learning Programme in IT Engineering (8 months full-time, 20 months part-time) Computer Literacy Knowing how to use a computer

More information

What Time Where Muddy City 10 min MSTLessonPlan.docx MSTWorksheets.pptx Discussion 5 min MSTLessonPlan.docx

What Time Where Muddy City 10 min MSTLessonPlan.docx MSTWorksheets.pptx Discussion 5 min MSTLessonPlan.docx MST Lesson Plan Overview Minimal Spanning Trees Summary Many networks link our society: telephone networks, utility supply networks, computer networks, and road networks. For a particular network there

More information

DUTs DE SAINT-DIÉ. 2 and 3-year courses D U Ts & VOCATIONAL DEGREES

DUTs DE SAINT-DIÉ. 2 and 3-year courses D U Ts & VOCATIONAL DEGREES IUT DE SAINT-DIÉ 2 and 3-year courses D U Ts & VOCATIONAL DEGREES Web applications Audiovisual Automatic controls DUTs & Communication Graphic design Software development Electrical engineering L A N O

More information

Basic Definitions and Concepts Complement to the Prologue and to Chapter 1, Respecting the Rules

Basic Definitions and Concepts Complement to the Prologue and to Chapter 1, Respecting the Rules Basic s and Concepts Complement to the Prologue and to Chapter 1, Respecting the Rules 1. CHAINS, CYCLES AND CONNECTIVITY Take out a sheet of paper, choose a few spots, and mark those spots with small

More information

CS112 Lecture: Introduction to Karel J. Robot

CS112 Lecture: Introduction to Karel J. Robot CS112 Lecture: Introduction to Karel J. Robot Last revised 1/17/08 Objectives: 1. To introduce Karel J. Robot as an example of an object-oriented system. 2. To explain the mechanics of writing simple Karel

More information

Chapter 14 Section 3 - Slide 1

Chapter 14 Section 3 - Slide 1 AND Chapter 14 Section 3 - Slide 1 Chapter 14 Graph Theory Chapter 14 Section 3 - Slide WHAT YOU WILL LEARN Graphs, paths and circuits The Königsberg bridge problem Euler paths and Euler circuits Hamilton

More information

Part 4: Using the Power Behind the Process Entering Data & Generating Reports

Part 4: Using the Power Behind the Process Entering Data & Generating Reports Part 4: Using the Power Behind the Process Entering Data & Generating Reports The Power Behind the Process, PowerPath s specially designed software, is an essential piece of the PowerPath System. PowerPath

More information

Spontania Administrators Manual

Spontania Administrators Manual Spontania Administrators Manual ClearOne 5225 Wiley Post Way Suite 500 Salt Lake City, UT 84116 Telephone 1.800.945.7730 1.801.975.7200 Spontania Support 801-974-3612 TechSales 1.800.705.2103 FAX 1.801.977-0087

More information

Computer Principles and Components 1

Computer Principles and Components 1 Computer Principles and Components 1 Course Map This module provides an overview of the hardware and software environment being used throughout the course. Introduction Computer Principles and Components

More information

PCIe40 temperature protection system

PCIe40 temperature protection system PCIe40 temperature protection system Angel Romero C-149360-1 Summer Student Report LHCb European Organization for Nuclear Research Supervision: Paolo Durante 4th August 2017 . Contents List of Figures

More information

Position vs Time Graphs *

Position vs Time Graphs * OpenStax-CNX module: m54110 1 Position vs Time Graphs * OpenStax HS Physics This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 4.0 1 : By the end of this

More information

Logic and Discrete Mathematics

Logic and Discrete Mathematics ICY0001 Logic and Discrete Mathematics Margarita Spit²akova Department of Software Science Tallinn University of Technology 2018/19 Fall semester margarita.spitsakova@ttu.ee Introduction 1 / 14 Next section

More information

HEARTLANDS ACADEMY LESSON STUDY SERIES RESEARCH LESSON 2 GEOMETRICAL REASONING

HEARTLANDS ACADEMY LESSON STUDY SERIES RESEARCH LESSON 2 GEOMETRICAL REASONING HEARTLANDS ACADEMY LESSON STUDY SERIES 2015-2016 RESEARCH LESSON 2 GEOMETRICAL REASONING Spatial intuition or spatial perception is an enormously powerful tool and that is why geometry is actually such

More information

Software Development & Education Center. Revit 2013

Software Development & Education Center. Revit 2013 Software Development & Education Center Revit 2013 (Architecture BIM MEP Structure Family Editor) Autodesk Revit Architecture Essential Objective The primary objective of this course is to teach students

More information

y 2 x 1 Simulator Controller client (C,Java...) Client Ball position joint 2 link 2 link 1 0 joint 1 link 0 (virtual) State of the ball

y 2 x 1 Simulator Controller client (C,Java...) Client Ball position joint 2 link 2 link 1 0 joint 1 link 0 (virtual) State of the ball Vision-based interaction with virtual worlds for the design of robot controllers D. d'aulignac, V. Callaghan and S. Lucas Department of Computer Science, University of Essex, Colchester CO4 3SQ, UK Abstract

More information

WHITE PAPER. SCORM 2.0: Assessment Framework. Business Area Data Representation and Interfaces

WHITE PAPER. SCORM 2.0: Assessment Framework. Business Area Data Representation and Interfaces Introduction Page 1 WHITE PAPER SCORM 2.0: Assessment Framework Business Area Data Representation and Interfaces Dr. Fanny Klett, Lead Business Area Data Representation and Interfaces Fraunhofer IDMT Ehrenbergstraße

More information

Proceedings of the 6th Int. Conf. on Computer Analysis of Images and Patterns. Direct Obstacle Detection and Motion. from Spatio-Temporal Derivatives

Proceedings of the 6th Int. Conf. on Computer Analysis of Images and Patterns. Direct Obstacle Detection and Motion. from Spatio-Temporal Derivatives Proceedings of the 6th Int. Conf. on Computer Analysis of Images and Patterns CAIP'95, pp. 874-879, Prague, Czech Republic, Sep 1995 Direct Obstacle Detection and Motion from Spatio-Temporal Derivatives

More information

Statistics: Normal Distribution, Sampling, Function Fitting & Regression Analysis (Grade 12) *

Statistics: Normal Distribution, Sampling, Function Fitting & Regression Analysis (Grade 12) * OpenStax-CNX module: m39305 1 Statistics: Normal Distribution, Sampling, Function Fitting & Regression Analysis (Grade 12) * Free High School Science Texts Project This work is produced by OpenStax-CNX

More information

COMPUTER INFORMATION SYSTEMS PROGRAMS

COMPUTER INFORMATION SYSTEMS PROGRAMS COMPUTER INFORMATION SYSTEMS PROGRAMS The Computer Information Systems programs provide courses to improve students computer and software knowledge and skills. The CIS Associate in Science degrees enables

More information

webinar guide! live, online training solutions! The Art of Negotiating! > webinar training option available for all seminars! (212) !

webinar guide! live, online training solutions! The Art of Negotiating! > webinar training option available for all seminars! (212) ! webinar guide! live, online training solutions! > webinar training option available for all seminars! (212) 796-5600! info@negotiation.com! www.negotiation.com! Copyright 2011 The Negotiation Institute

More information

CSM #1: Calculus II & III Short Course

CSM #1: Calculus II & III Short Course CSM #1: Calculus II & III Short Course Client: Gus Greivel Sidney Cox Andy Hicks John Slattery Colin Wein Faculty Advisor: Dr. Robert Underwood Field Session 2005 Executive Summary Freshmen and transfer

More information

The diverse software in Adobe Creative Suite 2 enables you to create

The diverse software in Adobe Creative Suite 2 enables you to create Chapter 1: Introducing Adobe Creative Suite 2 In This Chapter Looking over InDesign Drawing with Illustrator Introducing Photoshop Getting started with Acrobat Going over GoLive Integrating the programs

More information

Data Description Measures of central tendency

Data Description Measures of central tendency Data Description Measures of central tendency Measures of average are called measures of central tendency and include the mean, median, mode, and midrange. Measures taken by using all the data values in

More information

INTRODUCTION TO THE COURSE

INTRODUCTION TO THE COURSE 1 INTRODUCTION TO THE COURSE KOM3191 Object-Oriented Programming 2 Outline Computer Organization Machine Languages, Assembly Languages and High-Level Languages History of C++ C++ Development Environment

More information

Database Systems Concepts *

Database Systems Concepts * OpenStax-CNX module: m28156 1 Database Systems Concepts * Nguyen Kim Anh This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract This module introduces

More information

CTI Higher Certificate in Information Systems (Internet Development)

CTI Higher Certificate in Information Systems (Internet Development) CTI Higher Certificate in Information Systems (Internet Development) Module Descriptions 2015 1 Higher Certificate in Information Systems (Internet Development) (1 year full-time, 2½ years part-time) Computer

More information

MEI Further Mathematics Support Programme

MEI Further Mathematics Support Programme Further Mathematics Support Programme the Further Mathematics Support Programme www.furthermaths.org.uk Modelling and problem solving with Networks Sharon Tripconey Let Maths take you Further Nov 2009

More information

Graphs Introduction and Depth first algorithm

Graphs Introduction and Depth first algorithm Graphs Introduction and Depth first algorithm Carol Zander Introduction to graphs Graphs are extremely common in computer science applications because graphs are common in the physical world. Everywhere

More information

Cisco Digital Media System: Simply Compelling Communications

Cisco Digital Media System: Simply Compelling Communications Cisco Digital Media System: Simply Compelling Communications Executive Summary The Cisco Digital Media System enables organizations to use high-quality digital media to easily connect customers, employees,

More information

The application of interactive media in the three dimensional animation teaching

The application of interactive media in the three dimensional animation teaching Acta Technica 62 (2017), No. 4A, 689696 c 2017 Institute of Thermomechanics CAS, v.v.i. The application of interactive media in the three dimensional animation teaching Xuan Qi 1 Abstract. Teaching diculty,

More information

ART OF 3D MODELLING & ANIMATION

ART OF 3D MODELLING & ANIMATION ART OF 3D MODELLING & ANIMATION COURSE OVERVIEW This is a three year long course for secondary students covering on the various aspects of Drawing, 2D animation and 3D animation. At the end of each year,

More information

Building and Analyzing Topology in Autodesk Map GI21-1

Building and Analyzing Topology in Autodesk Map GI21-1 December 2-5, 2003 MGM Grand Hotel Las Vegas Building and Analyzing Topology in Autodesk Map GI21-1 Alex Penney ISD Training Content Manager, Autodesk Professional Services, Autodesk Inc. Topology is one

More information

Evaluation of HMI Development. Linda Andersson. for Embedded System Control. Thesis no: BCS

Evaluation of HMI Development. Linda Andersson. for Embedded System Control. Thesis no: BCS Thesis no: BCS-2014-01 Evaluation of HMI Development for Embedded System Control Linda Andersson Faculty of Computing Blekinge Institute of Technology SE371 79 Karlskrona Sweden This thesis is submitted

More information

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus 1. Course Objectives Welcome to MET CS342 Data Structures with Java. The intent of this

More information

Smart City, Internet of Things, Security and Privacy

Smart City, Internet of Things, Security and Privacy Smart City, Internet of Things, Security and Privacy Peter Waher Abstract. This course contains a series of lectures and practical laboratory assignments spanning four days that provide the participants

More information

BSc (Honours) Computer Science Curriculum Outline

BSc (Honours) Computer Science Curriculum Outline BSc (Honours) Computer Science Curriculum Outline 1. Introduction: The economic and strategic importance provided by Computer Science and Information Technology is increasing daily. This importance is

More information

Business Intelligence & Data Warehouse

Business Intelligence & Data Warehouse BD51 Business Intelligence & Data Warehouse Final Exam A13 Redactor : Christian FISCHER Département Informatique Automne 2013 Working conditions : Documentation alloewed : BD51 Course and Lab Book. Duration

More information

Problems for Breakfast

Problems for Breakfast Problems for Breakfast Shaking Hands Seven people in a room start shaking hands. Six of them shake exactly two people s hands. How many people might the seventh person shake hands with? Soccer Schedules

More information

Sharing Data with Your Accountant or Your Client

Sharing Data with Your Accountant or Your Client Chapter 15 Sharing Data with Your Accountant or Your Client Sharing QuickBooks Data QuickBooks File Types Data Sharing for the Business Owner Data Sharing for the Accountant Sharing Data Checklist 424

More information

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanfordedu) February 6, 2018 Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 In the

More information

7 Next choice is 4, not 3...

7 Next choice is 4, not 3... Math 0 opics for rst exam Chapter 1: Street Networks Operations research Goal: determine how to carry out a sequence of tasks most eciently Ecient: least cost, least time, least distance,... Example: reading

More information

PDA Database Programming in PL/SQL (Oracle PL/SQL Developer Certified Associate Certification Course)

PDA Database Programming in PL/SQL (Oracle PL/SQL Developer Certified Associate Certification Course) PDA Database Programming in PL/SQL (Oracle PL/SQL Developer Certified Associate Certification Course) IT Professional Training Table of Contents Introduction... 3 SQL:... 3 PL/SQL:... 3 Class Schedule...

More information

Department of Electrical Engineering, Keio University Hiyoshi Kouhoku-ku Yokohama 223, Japan

Department of Electrical Engineering, Keio University Hiyoshi Kouhoku-ku Yokohama 223, Japan Shape Modeling from Multiple View Images Using GAs Satoshi KIRIHARA and Hideo SAITO Department of Electrical Engineering, Keio University 3-14-1 Hiyoshi Kouhoku-ku Yokohama 223, Japan TEL +81-45-563-1141

More information

point in worrying about performance. The goal of our work is to show that this is not true. This paper is organised as follows. In section 2 we introd

point in worrying about performance. The goal of our work is to show that this is not true. This paper is organised as follows. In section 2 we introd A Fast Java Interpreter David Gregg 1, M. Anton Ertl 2 and Andreas Krall 2 1 Department of Computer Science, Trinity College, Dublin 2, Ireland. David.Gregg@cs.tcd.ie 2 Institut fur Computersprachen, TU

More information

Rowena Cole and Luigi Barone. Department of Computer Science, The University of Western Australia, Western Australia, 6907

Rowena Cole and Luigi Barone. Department of Computer Science, The University of Western Australia, Western Australia, 6907 The Game of Clustering Rowena Cole and Luigi Barone Department of Computer Science, The University of Western Australia, Western Australia, 697 frowena, luigig@cs.uwa.edu.au Abstract Clustering is a technique

More information

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered ² Architectural design decisions ² Architectural views ² Architectural patterns ² Application architectures 2 Software architecture ² The design

More information