# The A* Search Algorithm. Siyang Chen

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 The A* Search Algorithm Siyang Chen

2 Introduction A* (pronounced A-star ) is a search algorithm that finds the shortest path between some nodes S and T in a graph.

3 Heuristic Functions Suppose we want to get to node T, and we are currently at node v. Informally, a heuristic function h(v) is a function that estimates how v is away from T.

4 Heuristic Functions Suppose we want to get to node T, and we are currently at node v. Informally, a heuristic function h(v) is a function that estimates how v is away from T. Example: Suppose I am driving from Durham to Raleigh. A heuristic function would tell me approximately how much longer I have to drive.

5 Admissible Heuristics A heuristic function is admissible if it never overestimates the distance to the goal.

6 Admissible Heuristics A heuristic function is admissible if it never overestimates the distance to the goal. Example: h(v) = 0 is an admissible heuristic.

7 Admissible Heuristics A heuristic function is admissible if it never overestimates the distance to the goal. Example: h(v) = 0 is an admissible heuristic. Less trivial example: If our nodes are points on the plane, then the straight-line distance h(v) = (v x T x ) 2 + (v y T y ) 2 is an admissible heuristic.

8 Consistent Heuristics Suppose two nodes u and v are connected by an edge. A heuristic function h is consistent or monotone if it satisfies the following: h(u) e(u, v) + h(v) where e(u, v) is the edge distance from u to v.

9 Consistent Heuristics Suppose two nodes u and v are connected by an edge. A heuristic function h is consistent or monotone if it satisfies the following: h(u) e(u, v) + h(v) where e(u, v) is the edge distance from u to v. Reasoning: If I want to reach T from u, then I can first go through v, then go to T from there. (This is very similar to the triangle inequality.)

10 Consistent Heuristics Suppose two nodes u and v are connected by an edge. A heuristic function h is consistent or monotone if it satisfies the following: h(u) e(u, v) + h(v) where e(u, v) is the edge distance from u to v. Reasoning: If I want to reach T from u, then I can first go through v, then go to T from there. (This is very similar to the triangle inequality.) Example: h(v) = 0 is a consistent heuristic.

11 Consistent Heuristics Suppose two nodes u and v are connected by an edge. A heuristic function h is consistent or monotone if it satisfies the following: h(u) e(u, v) + h(v) where e(u, v) is the edge distance from u to v. Reasoning: If I want to reach T from u, then I can first go through v, then go to T from there. (This is very similar to the triangle inequality.) Example: h(v) = 0 is a consistent heuristic. Less trivial example, again: If our nodes are points on the plane, h(v) = (v x T x ) 2 + (v y T y ) 2 is a consistent heuristic.

12 Consistent Heuristics Suppose two nodes u and v are connected by an edge. A heuristic function h is consistent or monotone if it satisfies the following: h(u) e(u, v) + h(v) where e(u, v) is the edge distance from u to v. Reasoning: If I want to reach T from u, then I can first go through v, then go to T from there. (This is very similar to the triangle inequality.) Example: h(v) = 0 is a consistent heuristic. Less trivial example, again: If our nodes are points on the plane, h(v) = (v x T x ) 2 + (v y T y ) 2 is a consistent heuristic. All consistent heuristics are admissible. (Proof left to the reader.)

13 Description of A* We are now ready to define the A* algorithm. Suppose we are given the following inputs: A graph G = (V, E), with nonnegative edge distances e(u, v) A start node S and an end node T An admissible heuristic h Let d(v) store the best path distance from S to v that we have seen so far. Then we can think of d(v) + h(v) as the estimate of the distance from S to v, then from v to T. Let Q be a queue of nodes, sorted by d(v) + h(v).

14 Pseudocode for A* { if v S d(v) 0 if v = S Q := the set of nodes in V, sorted by d(v) + h(v) while Q not empty do v Q.pop() for all neighbours u of v do if d(v) + e(v, u) d(u) then d(u) d(v) + e(v, u) end if end for end while

15 Comparison to Dijkstra s Algorithm Observation: A* is very similar to Dijkstra s algorithm: { if v S d(v) 0 if v = S Q := the set of nodes in V, sorted by d(v) while Q not empty do v Q.pop() for all neighbours u of v do if d(v) + e(v, u) d(u) then d(u) d(v) + e(v, u) end if end for end while

16 Comparison to Dijkstra s Algorithm Observation: A* is very similar to Dijkstra s algorithm: { if v S d(v) 0 if v = S Q := the set of nodes in V, sorted by d(v) while Q not empty do v Q.pop() for all neighbours u of v do if d(v) + e(v, u) d(u) then d(u) d(v) + e(v, u) end if end for end while In fact, Dijkstra s algorithm is a special case of A*, when we set h(v) = 0 for all v.

17 Performance How good is A*?

18 Performance How good is A*? If we use an admissible heuristic, then A* returns the optimal path distance. Furthermore, any other algorithm using the same heuristic will expand at least as many nodes as A*.

19 Performance How good is A*? If we use an admissible heuristic, then A* returns the optimal path distance. Furthermore, any other algorithm using the same heuristic will expand at least as many nodes as A*. In practice, if we have a consistent heuristic, then A* can be much faster than Dijkstra s algorithm.

20 Performance How good is A*? If we use an admissible heuristic, then A* returns the optimal path distance. Furthermore, any other algorithm using the same heuristic will expand at least as many nodes as A*. In practice, if we have a consistent heuristic, then A* can be much faster than Dijkstra s algorithm. Example: Consider cities (points on the plane), with roads (edges) connecting them. Then the straight-line distance is a consistent heuristic.

21 Performance How good is A*? If we use an admissible heuristic, then A* returns the optimal path distance. Furthermore, any other algorithm using the same heuristic will expand at least as many nodes as A*. In practice, if we have a consistent heuristic, then A* can be much faster than Dijkstra s algorithm. Example: Consider cities (points on the plane), with roads (edges) connecting them. Then the straight-line distance is a consistent heuristic. (Proofs may be found in most introductory textbooks on artificial intelligence.)

### Algorithms and Data Structures (INF1) Lecture 14/15 Hua Lu

Algorithms and Data Structures (INF1) Lecture 14/15 Hua Lu Department of Computer Science Aalborg University Fall 2007 This Lecture Shortest paths Problem preliminary Shortest paths in DAG Bellman-Moore

### Minimum cost maximum flow, Minimum cost circulation, Cost/Capacity scaling

6.854 Advanced Algorithms Lecture 16: 10/11/2006 Lecturer: David Karger Scribe: Kermin Fleming and Chris Crutchfield, based on notes by Wendy Chu and Tudor Leu Minimum cost maximum flow, Minimum cost circulation,

### CSE 326, Data Structures. Sample Final Exam. Problem Max Points Score 1 14 (2x7) 2 18 (3x6) 3 4 4 7 5 9 6 16 7 8 8 4 9 8 10 4 Total 92.

Name: Email ID: CSE 326, Data Structures Section: Sample Final Exam Instructions: The exam is closed book, closed notes. Unless otherwise stated, N denotes the number of elements in the data structure

### Lecture 2.1 : The Distributed Bellman-Ford Algorithm. Lecture 2.2 : The Destination Sequenced Distance Vector (DSDV) protocol

Lecture 2 : The DSDV Protocol Lecture 2.1 : The Distributed Bellman-Ford Algorithm Lecture 2.2 : The Destination Sequenced Distance Vector (DSDV) protocol The Routing Problem S S D D The routing problem

### 2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

### Approximation Algorithms

Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

### Graph Theory Problems and Solutions

raph Theory Problems and Solutions Tom Davis tomrdavis@earthlink.net http://www.geometer.org/mathcircles November, 005 Problems. Prove that the sum of the degrees of the vertices of any finite graph is

### Informed search algorithms. Chapter 4, Sections 1 2 1

Informed search algorithms Chapter 4, Sections 1 2 Chapter 4, Sections 1 2 1 Outline Best-first search A search Heuristics Chapter 4, Sections 1 2 2 Review: Tree search function Tree-Search( problem, fringe)

### Data Structures and Algorithms Written Examination

Data Structures and Algorithms Written Examination 22 February 2013 FIRST NAME STUDENT NUMBER LAST NAME SIGNATURE Instructions for students: Write First Name, Last Name, Student Number and Signature where

### Moving Target Search. 204 Automated Reasoning

Moving Target Search Toru Ishida NTT Communications and Information Processing Laboratories 1-2356, Take, Yokosuka, 238-03, JAPAN ishida%nttkb.ntt.jp@relay.cs.net Richard E. Korf Computer Science Department

### Artificial Intelligence Methods (G52AIM)

Artificial Intelligence Methods (G52AIM) Dr Rong Qu rxq@cs.nott.ac.uk Constructive Heuristic Methods Constructive Heuristics method Start from an empty solution Repeatedly, extend the current solution

### CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010

CS 598CSC: Combinatorial Optimization Lecture date: /4/010 Instructor: Chandra Chekuri Scribe: David Morrison Gomory-Hu Trees (The work in this section closely follows [3]) Let G = (V, E) be an undirected

### WAN Wide Area Networks. Packet Switch Operation. Packet Switches. COMP476 Networked Computer Systems. WANs are made of store and forward switches.

Routing WAN Wide Area Networks WANs are made of store and forward switches. To there and back again COMP476 Networked Computer Systems A packet switch with two types of I/O connectors: one type is used

### AI: A Modern Approach, Chpts. 3-4 Russell and Norvig

AI: A Modern Approach, Chpts. 3-4 Russell and Norvig Sequential Decision Making in Robotics CS 599 Geoffrey Hollinger and Gaurav Sukhatme (Some slide content from Stuart Russell and HweeTou Ng) Spring,

### Local Search The perfect guide

Local Search The perfect guide Tanmay Kadam 1, Nikhil Saxena 2, Akash Kosambia 3, Prof Anita Lahane 4 1 (Computer Engineering, Rajiv Gandhi Institute of Technology, University of Mumbai, India) 2 (Computer

### ! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

### The Goldberg Rao Algorithm for the Maximum Flow Problem

The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }

### Social Media Mining. Graph Essentials

Graph Essentials Graph Basics Measures Graph and Essentials Metrics 2 2 Nodes and Edges A network is a graph nodes, actors, or vertices (plural of vertex) Connections, edges or ties Edge Node Measures

### Incremental Routing Algorithms For Dynamic Transportation Networks

UCGE Reports Number 20238 Department of Geomatics Engineering Incremental Routing Algorithms For Dynamic Transportation Networks (URL: http://www.geomatics.ucalgary.ca/research/publications/gradtheses.html)

### MATHEMATICS Unit Decision 1

General Certificate of Education January 2008 Advanced Subsidiary Examination MATHEMATICS Unit Decision 1 MD01 Tuesday 15 January 2008 9.00 am to 10.30 am For this paper you must have: an 8-page answer

### 3. INNER PRODUCT SPACES

. INNER PRODUCT SPACES.. Definition So far we have studied abstract vector spaces. These are a generalisation of the geometric spaces R and R. But these have more structure than just that of a vector space.

### Cpt S 223. School of EECS, WSU

The Shortest Path Problem 1 Shortest-Path Algorithms Find the shortest path from point A to point B Shortest in time, distance, cost, Numerous applications Map navigation Flight itineraries Circuit wiring

### Practical Guide to the Simplex Method of Linear Programming

Practical Guide to the Simplex Method of Linear Programming Marcel Oliver Revised: April, 0 The basic steps of the simplex algorithm Step : Write the linear programming problem in standard form Linear

### 2.3 Convex Constrained Optimization Problems

42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

### Why? A central concept in Computer Science. Algorithms are ubiquitous.

Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

### A Review And Evaluations Of Shortest Path Algorithms

A Review And Evaluations Of Shortest Path Algorithms Kairanbay Magzhan, Hajar Mat Jani Abstract: Nowadays, in computer networks, the routing is based on the shortest path problem. This will help in minimizing

### Acceptance of reservations for a rent-a-car company J.Alberto Conejero 1, Cristina Jordan 2, and Esther Sanabria-Codesal 1

Int. J. Complex Systems in Science vol. 2(1) (2012), pp. 27 32 Acceptance of reservations for a rent-a-car company J.Alberto Conejero 1, Cristina Jordan 2, and Esther Sanabria-Codesal 1 1 Instituto Universitario

### Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique

### Geometry of Vectors. 1 Cartesian Coordinates. Carlo Tomasi

Geometry of Vectors Carlo Tomasi This note explores the geometric meaning of norm, inner product, orthogonality, and projection for vectors. For vectors in three-dimensional space, we also examine the

### Network File Storage with Graceful Performance Degradation

Network File Storage with Graceful Performance Degradation ANXIAO (ANDREW) JIANG California Institute of Technology and JEHOSHUA BRUCK California Institute of Technology A file storage scheme is proposed

### Analysis of Algorithms, I

Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadth-first search (BFS) 4 Applications

### Data Structures in Java. Session 16 Instructor: Bert Huang

Data Structures in Java Session 16 Instructor: Bert Huang http://www.cs.columbia.edu/~bert/courses/3134 Announcements Homework 4 due next class Remaining grades: hw4, hw5, hw6 25% Final exam 30% Midterm

### Voronoi with Obstacles, Delaunay Constrained Triangulation and Delaunay 3D

Voronoi with Obstacles, Delaunay Constrained Triangulation and Delaunay 3D Marc Comino Trinidad December 13, 2014 Table of contents Shortest-path Voronoi Diagram Visibility Shortest-path Voronoi Diagram

### Bicolored Shortest Paths in Graphs with Applications to Network Overlay Design

Bicolored Shortest Paths in Graphs with Applications to Network Overlay Design Hongsik Choi and Hyeong-Ah Choi Department of Electrical Engineering and Computer Science George Washington University Washington,

### Continuous Fastest Path Planning in Road Networks by Mining Real-Time Traffic Event Information

Continuous Fastest Path Planning in Road Networks by Mining Real-Time Traffic Event Information Eric Hsueh-Chan Lu Chi-Wei Huang Vincent S. Tseng Institute of Computer Science and Information Engineering

### DYNAMIC GRAPH ANALYSIS FOR LOAD BALANCING APPLICATIONS

DYNAMIC GRAPH ANALYSIS FOR LOAD BALANCING APPLICATIONS DYNAMIC GRAPH ANALYSIS FOR LOAD BALANCING APPLICATIONS by Belal Ahmad Ibraheem Nwiran Dr. Ali Shatnawi Thesis submitted in partial fulfillment of

Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

### Dynamic Programming. Applies when the following Principle of Optimality

Dynamic Programming Applies when the following Principle of Optimality holds: In an optimal sequence of decisions or choices, each subsequence must be optimal. Translation: There s a recursive solution.

### NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

NP-complete? NP-hard? Some Foundations of Complexity Prof. Sven Hartmann Clausthal University of Technology Department of Informatics Tractability of Problems Some problems are undecidable: no computer

### Large induced subgraphs with all degrees odd

Large induced subgraphs with all degrees odd A.D. Scott Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, England Abstract: We prove that every connected graph of order

### Pathfinding in Two-dimensional Worlds

Pathfinding in Two-dimensional Worlds A survey of modern pathfinding algorithms, and a description of a new algorithm for pathfinding in dynamic two-dimensional polygonal worlds. Master s Thesis Authors:

Chapter 7 Load Balancing and Termination Detection Load balancing used to distribute computations fairly across processors in order to obtain the highest possible execution speed. Termination detection

### Load Balancing and Termination Detection

Chapter 7 Load Balancing and Termination Detection 1 Load balancing used to distribute computations fairly across processors in order to obtain the highest possible execution speed. Termination detection

### Virtual Data Center Allocation with Dynamic Clustering in Clouds

BNL-106312-2014-CP Virtual Data Center Allocation with Dynamic Clustering in Clouds Li Shi 33rd IEEE International Performance Computing and Communications Conference (IPCCC 2014) Austin, TX December 5-7,

### Cloud Enabled Emergency Navigation Using Faster-than-real-time Simulation

Cloud Enabled Emergency Navigation Using Faster-than-real-time Simulation Huibo Bi and Erol Gelenbe Intelligent Systems and Networks Group Department of Electrical and Electronic Engineering Imperial College

### ! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

### Discuss the size of the instance for the minimum spanning tree problem.

3.1 Algorithm complexity The algorithms A, B are given. The former has complexity O(n 2 ), the latter O(2 n ), where n is the size of the instance. Let n A 0 be the size of the largest instance that can

Load Balancing Load Balancing Load balancing: distributing data and/or computations across multiple processes to maximize efficiency for a parallel program. Static load-balancing: the algorithm decides

### Routing in packet-switching networks

Routing in packet-switching networks Circuit switching vs. Packet switching Most of WANs based on circuit or packet switching Circuit switching designed for voice Resources dedicated to a particular call

### An Introduction to The A* Algorithm

An Introduction to The A* Algorithm Introduction The A* (A-Star) algorithm depicts one of the most popular AI methods used to identify the shortest path between 2 locations in a mapped area. The A* algorithm

### The Shortest Route. Developing an online bicycle route planner for the Netherlands. Supervisor: Peter Kampstra Second reader: Sandjai Bhulai

The Shortest Route Developing an online bicycle route planner for the Netherlands B M I Wouter Pepping BMI Paper VU University Amsterdam April 2009 Supervisor: Peter Kampstra Second reader: Sandjai Bhulai

### Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline Goals Computation of Problems Concepts and Definitions Complexity Classes and Problems Polynomial Time Reductions Examples

### Approximation Algorithms for Data Management in Networks

Approximation Algorithms for Data Management in Networks Christof Krick Harald Räcke Matthias Westermann Abstract This paper deals with static data management in computer systems connected by networks.

### An Optimal Algorithm to Find Maximum and Minimum Height Spanning Trees on Cactus Graphs

121 AMO - Advanced Modeling and Optimization, Volume 10, Number 1, 2008 An Optimal Algorithm to Find Maximum and Minimum Height Spanning Trees on Cactus Graphs Kalyani Das and Madhumangal Pal Department

### Cost Model: Work, Span and Parallelism. 1 The RAM model for sequential computation:

CSE341T 08/31/2015 Lecture 3 Cost Model: Work, Span and Parallelism In this lecture, we will look at how one analyze a parallel program written using Cilk Plus. When we analyze the cost of an algorithm

### 12 Abstract Data Types

12 Abstract Data Types 12.1 Source: Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: Define the concept of an abstract data type (ADT).

### Mining Social Network Graphs

Mining Social Network Graphs Debapriyo Majumdar Data Mining Fall 2014 Indian Statistical Institute Kolkata November 13, 17, 2014 Social Network No introduc+on required Really? We s7ll need to understand

### Online Appendix. A2 : Description of New York City High School Admissions

Online Appendix This appendix provides supplementary material for Strategy-proofness versus Efficiency in Matching with Indifferences: Redesigning the NYC High School Match. The numbering of sections parallels

### Graphs without proper subgraphs of minimum degree 3 and short cycles

Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract

### MATHEMATICS Unit Decision 1

General Certificate of Education January 2007 Advanced Subsidiary Examination MATHEMATICS Unit Decision 1 MD01 Tuesday 16 January 2007 9.00 am to 10.30 am For this paper you must have: an 8-page answer

### INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & TECHNOLOGY (IJCET)

INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & TECHNOLOGY (IJCET) International Journal of Computer Engineering and Technology (IJCET), ISSN 0976 6367(Print), ISSN 0976 6367(Print) ISSN 0976 6375(Online)

### DATA ANALYSIS IN PUBLIC SOCIAL NETWORKS

International Scientific Conference & International Workshop Present Day Trends of Innovations 2012 28 th 29 th May 2012 Łomża, Poland DATA ANALYSIS IN PUBLIC SOCIAL NETWORKS Lubos Takac 1 Michal Zabovsky

### Shortcut sets for plane Euclidean networks (Extended abstract) 1

Shortcut sets for plane Euclidean networks (Extended abstract) 1 J. Cáceres a D. Garijo b A. González b A. Márquez b M. L. Puertas a P. Ribeiro c a Departamento de Matemáticas, Universidad de Almería,

### Non-Separable Detachments of Graphs

Egerváry Research Group on Combinatorial Optimization Technical reports TR-2001-12. Published by the Egrerváry Research Group, Pázmány P. sétány 1/C, H 1117, Budapest, Hungary. Web site: www.cs.elte.hu/egres.

### Lecture 4: BK inequality 27th August and 6th September, 2007

CSL866: Percolation and Random Graphs IIT Delhi Amitabha Bagchi Scribe: Arindam Pal Lecture 4: BK inequality 27th August and 6th September, 2007 4. Preliminaries The FKG inequality allows us to lower bound

### CS2 Algorithms and Data Structures Note 11. Breadth-First Search and Shortest Paths

CS2 Algorithms and Data Structures Note 11 Breadth-First Search and Shortest Paths In this last lecture of the CS2 Algorithms and Data Structures thread we will consider the problem of computing distances

### Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

Computer Algorithms NP-Complete Problems NP-completeness The quest for efficient algorithms is about finding clever ways to bypass the process of exhaustive search, using clues from the input in order

### Helvetic Coding Contest 2016

Helvetic Coding Contest 6 Solution Sketches July, 6 A Collective Mindsets Author: Christian Kauth A Strategy: In a bottom-up approach, we can determine how many brains a zombie of a given rank N needs

### CMPSCI611: Approximating MAX-CUT Lecture 20

CMPSCI611: Approximating MAX-CUT Lecture 20 For the next two lectures we ll be seeing examples of approximation algorithms for interesting NP-hard problems. Today we consider MAX-CUT, which we proved to

### Instruction scheduling

Instruction ordering Instruction scheduling Advanced Compiler Construction Michel Schinz 2015 05 21 When a compiler emits the instructions corresponding to a program, it imposes a total order on them.

### Outline. Internet Routing. Alleviating the Problem. DV Algorithm. Routing Information Protocol (RIP) Link State Routing. Routing algorithms

Outline Internet Routing Venkat Padmanabhan Microsoft Research 9 pril 2001 Routing algorithms distance-vector (DV) link-state (LS) Internet Routing border gateway protocol (BGP) BGP convergence paper Venkat

### Graph Theory and Complex Networks: An Introduction. Chapter 06: Network analysis. Contents. Introduction. Maarten van Steen. Version: April 28, 2014

Graph Theory and Complex Networks: An Introduction Maarten van Steen VU Amsterdam, Dept. Computer Science Room R.0, steen@cs.vu.nl Chapter 0: Version: April 8, 0 / Contents Chapter Description 0: Introduction

### CS91.543 MidTerm Exam 4/1/2004 Name: KEY. Page Max Score 1 18 2 11 3 30 4 15 5 45 6 20 Total 139

CS91.543 MidTerm Exam 4/1/2004 Name: KEY Page Max Score 1 18 2 11 3 30 4 15 5 45 6 20 Total 139 % INTRODUCTION, AI HISTORY AND AGENTS 1. [4 pts. ea.] Briefly describe the following important AI programs.

### Incremental Maximum Flows for Fast Envelope Computation

Incremental Maximum Flows for Fast Envelope Computation Nicola Muscettola NASA Ames Research Center Moffett Field, CA 9035 mus@email.arc.nasa.gov Abstract Resource envelopes provide the tightest exact

### Answers to Sample Questions on Network Layer

Answers to Sample Questions on Network Layer ) IP Packets on a certain network can carry a maximum of only 500 bytes in the data portion. An application using TCP/IP on a node on this network generates

### An Evaluation of Network Survivability When Defense Levels Are Discounted by the Accumulated Experience of Attackers

An Evaluation of Network Survivability When Defense Levels Are Discounted by the Accumulated Experience of Attackers Frank Yeong-Sung Lin National Tatiwan University, Taiwan yslin@im.ntu.edu.tw Pei-Yu

### Time-dependent networks as models to achieve fast exact time-table queries

Electronic Notes in Theoretical Computer Science 92 No. 1 (2003) URL: http://www.elsevier.nl/locate/entcs/volume92.html 12 pages Time-dependent networks as models to achieve fast exact time-table queries

### CS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team

CS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team Lecture Summary In this lecture, we learned about the ADT Priority Queue. A

### The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge,

The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge, cheapest first, we had to determine whether its two endpoints

### Near Optimal Solutions

Near Optimal Solutions Many important optimization problems are lacking efficient solutions. NP-Complete problems unlikely to have polynomial time solutions. Good heuristics important for such problems.

### International Journal of Advanced Research in Computer Science and Software Engineering

Volume 3, Issue 7, July 23 ISSN: 2277 28X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Greedy Algorithm:

### GPU Accelerated Pathfinding

GPU Accelerated Pathfinding By: Avi Bleiweiss NVIDIA Corporation Graphics Hardware (2008) Editors: David Luebke and John D. Owens NTNU, TDT24 Presentation by Lars Espen Nordhus http://delivery.acm.org/10.1145/1420000/1413968/p65-bleiweiss.pdf?ip=129.241.138.231&acc=active

### Scalable Keyword Search on Large RDF Data

name name name 1 Scalable Keyword Search on Large RDF Data Wangchao Le, Feifei Li, Anastasios Kementsietsidis, Songyun Duan Abstract Keyword search is a useful tool for exploring large RDF datasets. Existing

### Graph Theory and Complex Networks: An Introduction. Chapter 06: Network analysis

Graph Theory and Complex Networks: An Introduction Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.0, steen@cs.vu.nl Chapter 06: Network analysis Version: April 8, 04 / 3 Contents Chapter

### Search Heuristics for Load Balancing in IP-networks

Search Heuristics for Load Balancing in IP-networks Mattias Söderqvist Swedish Institute of Computer Science mso@sics.se 3rd March 25 SICS Technical Report T25:4 ISSN 11-3154 ISRN:SICS-T--25/4-SE Abstract

### 1. Sorting (assuming sorting into ascending order) a) BUBBLE SORT

DECISION 1 Revision Notes 1. Sorting (assuming sorting into ascending order) a) BUBBLE SORT Make sure you show comparisons clearly and label each pass First Pass 8 4 3 6 1 4 8 3 6 1 4 3 8 6 1 4 3 6 8 1

### SEARCHING AND KNOWLEDGE REPRESENTATION. Angel Garrido

Acta Universitatis Apulensis ISSN: 1582-5329 No. 30/2012 pp. 147-152 SEARCHING AND KNOWLEDGE REPRESENTATION Angel Garrido ABSTRACT. The procedures of searching of solutions of problems, in Artificial Intelligence

### arxiv: v2 [math.co] 30 Nov 2015

PLANAR GRAPH IS ON FIRE PRZEMYSŁAW GORDINOWICZ arxiv:1311.1158v [math.co] 30 Nov 015 Abstract. Let G be any connected graph on n vertices, n. Let k be any positive integer. Suppose that a fire breaks out

### A number of tasks executing serially or in parallel. Distribute tasks on processors so that minimal execution time is achieved. Optimal distribution

Scheduling MIMD parallel program A number of tasks executing serially or in parallel Lecture : Load Balancing The scheduling problem NP-complete problem (in general) Distribute tasks on processors so that

### Home Page. Data Structures. Title Page. Page 1 of 24. Go Back. Full Screen. Close. Quit

Data Structures Page 1 of 24 A.1. Arrays (Vectors) n-element vector start address + ielementsize 0 +1 +2 +3 +4... +n-1 start address continuous memory block static, if size is known at compile time dynamic,

### On the independence number of graphs with maximum degree 3

On the independence number of graphs with maximum degree 3 Iyad A. Kanj Fenghui Zhang Abstract Let G be an undirected graph with maximum degree at most 3 such that G does not contain any of the three graphs

### An Introduction to APGL

An Introduction to APGL Charanpal Dhanjal February 2012 Abstract Another Python Graph Library (APGL) is a graph library written using pure Python, NumPy and SciPy. Users new to the library can gain an

### Computational Geometry. Lecture 1: Introduction and Convex Hulls

Lecture 1: Introduction and convex hulls 1 Geometry: points, lines,... Plane (two-dimensional), R 2 Space (three-dimensional), R 3 Space (higher-dimensional), R d A point in the plane, 3-dimensional space,

### College 5, Routing, Internet. Host A. Host B. The Network Layer: functions

CSN-s 5/1 College 5, Routing, Internet College stof 1 Inleiding: geschiedenis, OSI model, standaarden, ISOC/IETF/IRTF structuur Secties: 1.2, 1.3, 1.4, 1.5 2 Fysieke laag: Bandbreedte/bitrate Secties:

### Triangle deletion. Ernie Croot. February 3, 2010

Triangle deletion Ernie Croot February 3, 2010 1 Introduction The purpose of this note is to give an intuitive outline of the triangle deletion theorem of Ruzsa and Szemerédi, which says that if G = (V,

### Keyword Search in Graphs: Finding r-cliques

Keyword Search in Graphs: Finding r-cliques Mehdi Kargar and Aijun An Department of Computer Science and Engineering York University, Toronto, Canada {kargar,aan}@cse.yorku.ca ABSTRACT Keyword search over