Dynamic Programming. Lecture #8 of Algorithms, Data structures and Complexity. Joost-Pieter Katoen Formal Methods and Tools Group
|
|
- Gwen Farmer
- 5 years ago
- Views:
Transcription
1 Dynami Programming Leture #8 of Algorithms, Data strutures and Complexity Joost-Pieter Katoen Formal Methods and Tools Group Otober 29, 2002 JPK
2 #8: Dynami Programming ADC (214020) Overview What is dynami programming? Fibonai numbers revisited Subproblem graphs Dynami programming version of a reursive algorithm Multiplying a sequene of matries Optimal binary searh trees JPK1
3 #8: Dynami Programming ADC (214020) What is dynami programming? Main original motivation: [Bellman 1957] replae an exponential-time omputation by a polynomial-time omputation Splitting problems o sub-problems may be very expensive if not ontrolled orretly, many subproblems will be solved repeatedly Dynami programming: basi idea: store results for subproblems rather than reomputing them appliable to problems where a reursive algorithm solves many subproblems repeatedly JPK2
4 #8: Dynami Programming ADC (214020) Fibonai numbers revisited Consider the growth of a rabbit population, e.g.: suppose we have two rabbits, one of eah sex rabbits have bunnies one a month after they are 2 months old they always give birth to twins, one of eah sex they never die and never stop propagating The # rabbits after months is omputed by: for We thus obtain the sequene: JPK3
5 JPK4 fibre #8: Dynami Programming ADC (214020) A naive algorithm fibre if return else return fibre The # arithmeti steps needed to ompute fibre is: The omplexity of fibre is exponential: fibre for
6 #8: Dynami Programming ADC (214020) Subproblem graphs The subproblem graph of a reursive algorithm A for a problem is a direted graph verties are instanes (or: inputs) for this problem iff when A is invoked on it makes a diret reursive all to Subproblem graph A for problem instane of algorithm A is: the portion of the subproblem graph of A that is reahable from vertex If algorithm A always terminates then its subproblem graph is ayli JPK5
7 #8: Dynami Programming ADC (214020) Subproblem tree for Fibonai funtion vertex labels are the parameters of the reursive alls JPK6
8 #8: Dynami Programming ADC (214020) Subproblem graph for Fibonai funtion note that this is a dependeny graph JPK7
9 #8: Dynami Programming ADC (214020) Graph erpretation of dynami programming A natural reursive omputation making reursive alls as needed: is like a memoryless traversal of the subproblem graph of A memoryless traversal = DFS without oloring verties gray if there are and a DAG an have exponentially many paths! Consider the subproblem graph as a dependeny graph paths to a subproblem, this subproblem will be solved times if has edges to The essene of dynami programming is: these problems must be solved prior to solving to exeute the subproblems suh that eah needs to be solved only one and store the subproblem solutions for later use memo-ization JPK8
10 #8: Dynami Programming ADC (214020) Dynami programming version of reursive algorithm A dynami programming version DP(A) of reursive algorithm A: is a depth-first searh traversal of the subproblem graph A solutions found are stored in a ditionary ADT memo-ization Operations for ditionary : reate member retrieve store : reates an empty ditionary of items : heks whether item belongs to the ditionary : retrieves item requires ; to be in : store information item for Implementation of ditionary depends on the appliation JPK9
11 2. Prior to returning solution to store it (i.e., olor #8: Dynami Programming ADC (214020) Dynami programming version of reursive algorithm Convert algorithm A on problem o dynami version DP(A) by: 1. Prior to reursive all on subproblem hek if solution to is stored No? Do the reursive all ( is white), and add edge Yes? Retrieve the solution and perform no reursive all ( to the DFS tree is blak) blak) requires the subproblem graph to be ayli JPK10
12 if #8: Dynami Programming ADC (214020) Dynami programming version of Fibonai funtion fibdp Dit soln fib if fib else member soln // is fib already omputed? fibdp soln // reursive all else retrieve soln // retrieve stored solution if member soln // is fib already omputed? fibdp soln // reursive all else retrieve soln // retrieve stored solution fib store soln fib // store fib return fib worst-ase time omplexity is in ; spae omplexity JPK11
13 #8: Dynami Programming ADC (214020) Topologial sorting revisited A topologial order for DAG is: an assignment topo of dist egers suh that for every edge topo is alled the topologial number of we have topo A reverse topologial order for DAG to the verties of topo is as above but for every edge we have topo topo How to find a (reverse) topologial order: use DFS or analyse problem Appliation of reverse topologial order to dynami programming: a shedule of subproblems an be found suh that on solving a subproblem it is guaranteed that all subproblems on whih it depends have been solved thus: always look-up, no hek neessary JPK12
14 #8: Dynami Programming ADC (214020) Topologial sorting revisited Nr Task Depends on A hoose lothes I B dress A, H C eat breakfast E, F, G D leave B, C E make offee I F make toast I G pour juie I preedene graph transpose of depends on H shower I I wake up does there exist a shedule for this problem? JPK13
15 #8: Dynami Programming ADC (214020) Topologial sorting revisited dependeny graph drawn aording to the reverse topologial order means that task needs to be ompleted prior to task JPK14
16 #8: Dynami Programming ADC (214020) Simplifiations for Fibonai-DP There is a straightforward reverse topologial order for Fibonai: namely just inreasing order of parameter tasks an be sheduled suh that their results are always available when needed Any subproblem only depends on its two predeessor subproblems not neessary to store all results, but last two results suffies JPK15
17 #8: Dynami Programming ADC (214020) Simplified Fibonai-DP fibiter urr for urr ppred pred predppred ppred pred pred urr return urr // shift ppred // shift pred The time omplexity of fibiter is linear: fibiter The spae omplexity is JPK16
18 #8: Dynami Programming ADC (214020) Overview What is dynami programming? Fibonai numbers revisited Subproblem graphs Dynami programming version of a reursive algorithm Multiplying a sequene of matries Optimal binary searh trees JPK17
19 JPK18 #8: Dynami Programming ADC (214020) Matrix multipliation Reall matrix multipliation: element- Multiplying a -matrix and a wise multipliations -matrix requires Matrix multipliation is assoiative:
20 Mults JPK19 #8: Dynami Programming ADC (214020) The matrix multipliation order problem What is the best order to ompute for? where matrix Consider matries has ardinality,,, Multipliation order 1 produt produt 3 + produt = 20,700 = 11,750 = 41,200 = 1,400 What is the minimal number of multipliations? What is the order?
21 #8: Dynami Programming ADC (214020) How to parenthesize the produt of matries? Let be the number of different parenthesizations of matries Reursive equation for the number of parenthesizations matries matries is: if if there are exponentially many possible parenthesizations JPK20
22 #8: Dynami Programming ADC (214020) A naive solution Let the first matrix multipliation be at position : Reursively solve the remaining subproblem: Do this for any and selet the one with minimal ost Reurrene relation: show this Subproblem graph has exponentially many verties every subsequene of with elements is a reahable subproblem JPK21
23 #8: Dynami Programming ADC (214020) A naive solution matmult1 bestcost if else dim, seq bestcost bestcost for // outline // one matrix or none ost of multipliation at position seq newseq matmult1 seq with th element deleted dim, newseq bestcost min bestcost ; return bestcost JPK22
24 as #8: Dynami Programming ADC (214020) Alternative problem deomposition Let the last multipliation be at position The two remaining subproblems are: (of dimension (of dimension last step is to multiply and ) ) Identify original problem ) after hoie of, the remaining subproblems are and This reates verties in the subproblem graph To determine the minimal ost we need to hek all possibilities for JPK23
25 JPK24 dim #8: Dynami Programming ADC (214020) Alternative problem deomposition matmult2 bestcost if else bestcost for matmult2 matmult2 dim bestcost min dim dim bestcost dim dim bestcost // solve subproblem // one matrix or none ; // solve subproblem ; // solve subproblem // ost of multipliation at position return bestcost, i.e.,
26 The subproblem graph of #8: Dynami Programming ADC (214020) Subproblem graph example, i.e., subproblem : (0,4) (0,1) (1,4) (0,2) (2,4) (0,3) (3,4) (1,2) (1,3) (2,3) JPK25
27 #8: Dynami Programming ADC (214020) Subproblem graph analysis Verties are identified by with this yields For vertex verties in total two subproblems have to solved: and for allwith thus, the number of edges per vertex is less than Subproblem graph has verties and at most edges worst-ase time-omplexity of a DFS on the subproblem graph is It is feasible to onvert reursive problem o DP version as this boils down to a DFS on the subproblem graph this redues the time-omplexity from to JPK26
28 ost #8: Dynami Programming ADC (214020) Dynami programming version matmult2dp dim bestcost if bestcost else bestcost for if member ost matmult2dp dim ost ; else retrieve ost // look-up solution if member ost matmult2dp dim ost ; else retrieve ost // look-up solution dim dim dim // ost of multipliation at position bestcost min bestcost store ost bestcost ; // store obtained result return bestcost JPK27
29 #8: Dynami Programming ADC (214020) The dependeny graph of Reverse topologial order, i.e., subproblem : (0,1) (0,2) (0,3) (0,4) (1,2) (1,3) (1,4) (2,3) (2,4) (3,4) ost if min ost ost if JPK28
30 #8: Dynami Programming ADC (214020) Simplified DP matrix-multipliation order matmultorder ost for for if dim bestcost for ost ost ost dim bestcost dim dim bestcost min bestcost bestcost else bestcost // iterate over the rows // iterate over the olumns // onsider // look-up solution // look-up solution // ost of multipliation at position // store obtained result return ost JPK29
31 #8: Dynami Programming ADC (214020) Example omputation ost if min ost ost if JPK30
32 #8: Dynami Programming ADC (214020) Overview What is dynami programming? Fibonai numbers revisited Subproblem graphs Dynami programming version of a reursive algorithm Multiplying a sequene of matries Optimal binary searh trees JPK31
33 #8: Dynami Programming ADC (214020) Binary searh trees revisited In a binary searh tree (BST) keys are stored suh that: the key at a node is at least all keys in its left subtree the key at a node is at most all keys in its right subtree An inorder traversal of a binary searh tree yields a sorted list of keys two binary searh trees ontaining 2, 3, 5, 6, 7, 9 5 JPK32
34 suh that #8: Dynami Programming ADC (214020) Optimal binary searh trees Keys with probability to be sought Average nodes examined in BST with keys is: where is the number of omparisons made to loate key is the weighted retrieve ost for key in BST How to organise is minimal? how to organise the key values in a BST to minimise the average number of key omparisons? JPK33
35 #8: Dynami Programming ADC (214020) Optimal BSTs Let be the minimum weighted ost for keys if is hosen as root where is the probability to searh some key in This an be simplified to: The problem is now to ompute min Naively, a reursive algorithm yields an exponential time-omplexity JPK34
36 #8: Dynami Programming ADC (214020) DP solution to optimal BSTs float optimalbst prob float ost float bestcost for // iterate over the rows for // iterate over the olumns if bestcost else bestcost for ost ost ost bestcost min bestcost bestcost // store obtained result return ost JPK35
37 #8: Dynami Programming ADC (214020) Dynami programming reipe 1. Takle the problem top-down ; this yields a reursive algorithm 2. Define an appropriate ditionary; transform the reursive solution o a DP algorithm 3. Complexity of DP-algorithm is omplexity DFS on subproblem graph 4. Choose an appropriate data struture for implementing the ditionary 5. If possible, analyse the subproblem graph and find a reverse topologial order; simplify your DP-algorithm aordingly 6. Deide how to get the solution to the problem from the data in the ditionary JPK36
Dynamic Algorithms Multiple Choice Test
3226 Dynami Algorithms Multiple Choie Test Sample test: only 8 questions 32 minutes (Real test has 30 questions 120 minutes) Årskort Name Eah of the following 8 questions has 4 possible answers of whih
More informationDrawing lines. Naïve line drawing algorithm. drawpixel(x, round(y)); double dy = y1 - y0; double dx = x1 - x0; double m = dy / dx; double y = y0;
Naïve line drawing algorithm // Connet to grid points(x0,y0) and // (x1,y1) by a line. void drawline(int x0, int y0, int x1, int y1) { int x; double dy = y1 - y0; double dx = x1 - x0; double m = dy / dx;
More informationDefinitions Homework. Quine McCluskey Optimal solutions are possible for some large functions Espresso heuristic. Definitions Homework
EECS 33 There be Dragons here http://ziyang.ees.northwestern.edu/ees33/ Teaher: Offie: Email: Phone: L477 Teh dikrp@northwestern.edu 847 467 2298 Today s material might at first appear diffiult Perhaps
More informationSimple strategy Computes shortest paths from the start note
Leture Notes for I500 Fall 2009 Fundamental Computer Conepts of Informatis by Xiaoqian Zhang (Instrutor: Predrag Radivoja) Last time: dynami programming Today: Elementary graph algorithm (textbook Chapter
More informationThis fact makes it difficult to evaluate the cost function to be minimized
RSOURC LLOCTION N SSINMNT In the resoure alloation step the amount of resoures required to exeute the different types of proesses is determined. We will refer to the time interval during whih a proess
More informationAlgorithms for External Memory Lecture 6 Graph Algorithms - Weighted List Ranking
Algorithms for External Memory Leture 6 Graph Algorithms - Weighted List Ranking Leturer: Nodari Sithinava Sribe: Andi Hellmund, Simon Ohsenreither 1 Introdution & Motivation After talking about I/O-effiient
More informationDynamic Programming. Algorithm : Design & Analysis [16]
Dynamic Programming Algorithm : Design & Analysis [16] In the last class Shortest Path and Transitive Closure Washall s Algorithm for Transitive Closure All-Pair Shortest Paths Matrix for Transitive Closure
More informationRecursion examples: Problem 2. (More) Recursion and Lists. Tail recursion. Recursion examples: Problem 2. Recursion examples: Problem 3
Reursion eamples: Problem 2 (More) Reursion and s Reursive funtion to reverse a string publi String revstring(string str) { if(str.equals( )) return str; return revstring(str.substring(1, str.length()))
More information8 : Learning Fully Observed Undirected Graphical Models
10-708: Probabilisti Graphial Models 10-708, Spring 2018 8 : Learning Fully Observed Undireted Graphial Models Leturer: Kayhan Batmanghelih Sribes: Chenghui Zhou, Cheng Ran (Harvey) Zhang When learning
More informationQuery Evaluation Overview. Query Optimization: Chap. 15. Evaluation Example. Cost Estimation. Query Blocks. Query Blocks
Query Evaluation Overview Query Optimization: Chap. 15 CS634 Leture 12 SQL query first translated to relational algebra (RA) Atually, some additional operators needed for SQL Tree of RA operators, with
More informationCalculation of typical running time of a branch-and-bound algorithm for the vertex-cover problem
Calulation of typial running time of a branh-and-bound algorithm for the vertex-over problem Joni Pajarinen, Joni.Pajarinen@iki.fi Otober 21, 2007 1 Introdution The vertex-over problem is one of a olletion
More informationOutline. CS38 Introduction to Algorithms. Administrative Stuff. Administrative Stuff. Motivation/Overview. Administrative Stuff
Outline CS38 Introdution to Algorithms Leture 1 April 1, 2014 administrative stuff motivation and overview of the ourse stale mathings example graphs, representing graphs graph traversals (BFS, DFS) onnetivity,
More information1 Disjoint-set data structure.
CS 124 Setion #4 Union-Fin, Greey Algorithms 2/20/17 1 Disjoint-set ata struture. 1.1 Operations Disjoint-set ata struture enale us to effiiently perform operations suh as plaing elements into sets, querying
More informationLearning Convention Propagation in BeerAdvocate Reviews from a etwork Perspective. Abstract
CS 9 Projet Final Report: Learning Convention Propagation in BeerAdvoate Reviews from a etwork Perspetive Abstrat We look at the way onventions propagate between reviews on the BeerAdvoate dataset, and
More informationData Structures in Java
Data Strutures in Java Leture 8: Trees and Tree Traversals. 10/5/2015 Daniel Bauer 1 Trees in Computer Siene A lot of data omes in a hierarhial/nested struture. Mathematial expressions. Program struture.
More informationDivide-and-conquer algorithms 1
* 1 Multipliation Divide-and-onquer algorithms 1 The mathematiian Gauss one notied that although the produt of two omplex numbers seems to! involve four real-number multipliations it an in fat be done
More informationFolding. Hardware Mapped vs. Time multiplexed. Folding by N (N=folding factor) Node A. Unfolding by J A 1 A J-1. Time multiplexed/microcoded
Folding is verse of Unfolding Node A A Folding by N (N=folding fator) Folding A Unfolding by J A A J- Hardware Mapped vs. Time multiplexed l Hardware Mapped vs. Time multiplexed/mirooded FI : y x(n) h
More informationParametric Abstract Domains for Shape Analysis
Parametri Abstrat Domains for Shape Analysis Xavier RIVAL (INRIA & Éole Normale Supérieure) Joint work with Bor-Yuh Evan CHANG (University of Maryland U University of Colorado) and George NECULA (University
More informationL11 Balanced Trees. Alice E. Fischer. Fall Alice E. Fischer L11 Balanced Trees... 1/34 Fall / 34
L11 Balaned Trees Alie E. Fisher Fall 2018 Alie E. Fisher L11 Balaned Trees... 1/34 Fall 2018 1 / 34 Outline 1 AVL Trees 2 Red-Blak Trees Insertion Insertion 3 B-Trees Alie E. Fisher L11 Balaned Trees...
More informationA DYNAMIC ACCESS CONTROL WITH BINARY KEY-PAIR
Malaysian Journal of Computer Siene, Vol 10 No 1, June 1997, pp 36-41 A DYNAMIC ACCESS CONTROL WITH BINARY KEY-PAIR Md Rafiqul Islam, Harihodin Selamat and Mohd Noor Md Sap Faulty of Computer Siene and
More informationSemi-Supervised Affinity Propagation with Instance-Level Constraints
Semi-Supervised Affinity Propagation with Instane-Level Constraints Inmar E. Givoni, Brendan J. Frey Probabilisti and Statistial Inferene Group University of Toronto 10 King s College Road, Toronto, Ontario,
More informationChapter 2: Introduction to Maple V
Chapter 2: Introdution to Maple V 2-1 Working with Maple Worksheets Try It! (p. 15) Start a Maple session with an empty worksheet. The name of the worksheet should be Untitled (1). Use one of the standard
More informationOn - Line Path Delay Fault Testing of Omega MINs M. Bellos 1, E. Kalligeros 1, D. Nikolos 1,2 & H. T. Vergos 1,2
On - Line Path Delay Fault Testing of Omega MINs M. Bellos, E. Kalligeros, D. Nikolos,2 & H. T. Vergos,2 Dept. of Computer Engineering and Informatis 2 Computer Tehnology Institute University of Patras,
More informationTotal 100
CS331 SOLUTION Problem # Points 1 10 2 15 3 25 4 20 5 15 6 15 Total 100 1. ssume you are dealing with a ompiler for a Java-like language. For eah of the following errors, irle whih phase would normally
More informationAnalysis of input and output configurations for use in four-valued CCD programmable logic arrays
nalysis of input and output onfigurations for use in four-valued D programmable logi arrays J.T. utler H.G. Kerkhoff ndexing terms: Logi, iruit theory and design, harge-oupled devies bstrat: s in binary,
More informationPipelined Multipliers for Reconfigurable Hardware
Pipelined Multipliers for Reonfigurable Hardware Mithell J. Myjak and José G. Delgado-Frias Shool of Eletrial Engineering and Computer Siene, Washington State University Pullman, WA 99164-2752 USA {mmyjak,
More information-z c = c T - c T B B-1 A 1 - c T B B-1 b. x B B -1 A 0 B -1 b. (a) (b) Figure 1. Simplex Tableau in Matrix Form
3. he Revised Simple Method he LP min, s.t. A = b ( ),, an be represented by Figure (a) below. At any Simple step, with known and -, the Simple tableau an be represented by Figure (b) below. he minimum
More informationLAB 4: Operations on binary images Histograms and color tables
LAB 4: Operations on binary images Histograms an olor tables Computer Vision Laboratory Linköping University, Sween Preparations an start of the lab system You will fin a ouple of home exerises (marke
More informationTo Do. Assignment Overview. Outline. Mesh Viewer (3.1) Mesh Connectivity (3.2) Advanced Computer Graphics (Spring 2013)
daned Computer Graphis (Spring 23) CS 283, Leture 5: Mesh Simplifiation Rai Ramamoorthi http://inst.ees.berkeley.edu/~s283/sp3 To Do ssignment, Due Feb 22 Start reading and working on it now. This leture
More informationFacility Location: Distributed Approximation
Faility Loation: Distributed Approximation Thomas Mosibroda Roger Wattenhofer Distributed Computing Group PODC 2005 Where to plae ahes in the Internet? A distributed appliation that has to dynamially plae
More informationAutomatic Physical Design Tuning: Workload as a Sequence Sanjay Agrawal Microsoft Research One Microsoft Way Redmond, WA, USA +1-(425)
Automati Physial Design Tuning: Workload as a Sequene Sanjay Agrawal Mirosoft Researh One Mirosoft Way Redmond, WA, USA +1-(425) 75-357 sagrawal@mirosoft.om Eri Chu * Computer Sienes Department University
More informationExtracting Partition Statistics from Semistructured Data
Extrating Partition Statistis from Semistrutured Data John N. Wilson Rihard Gourlay Robert Japp Mathias Neumüller Department of Computer and Information Sienes University of Strathlyde, Glasgow, UK {jnw,rsg,rpj,mathias}@is.strath.a.uk
More informationA Novel Validity Index for Determination of the Optimal Number of Clusters
IEICE TRANS. INF. & SYST., VOL.E84 D, NO.2 FEBRUARY 2001 281 LETTER A Novel Validity Index for Determination of the Optimal Number of Clusters Do-Jong KIM, Yong-Woon PARK, and Dong-Jo PARK, Nonmembers
More information1. Introduction. 2. The Probable Stope Algorithm
1. Introdution Optimization in underground mine design has reeived less attention than that in open pit mines. This is mostly due to the diversity o underground mining methods and omplexity o underground
More informationParallelizing Frequent Web Access Pattern Mining with Partial Enumeration for High Speedup
Parallelizing Frequent Web Aess Pattern Mining with Partial Enumeration for High Peiyi Tang Markus P. Turkia Department of Computer Siene Department of Computer Siene University of Arkansas at Little Rok
More informationExploring the Commonality in Feature Modeling Notations
Exploring the Commonality in Feature Modeling Notations Miloslav ŠÍPKA Slovak University of Tehnology Faulty of Informatis and Information Tehnologies Ilkovičova 3, 842 16 Bratislava, Slovakia miloslav.sipka@gmail.om
More informationMenu. X + /X=1 and XY+X /Y = X(Y + /Y) = X
Menu K-Maps and Boolean Algera >Don t ares >5 Variale Look into my... 1 Karnaugh Maps - Boolean Algera We have disovered that simplifiation/minimization is an art. If you see it, GREAT! Else, work at it,
More informationDiscrete sequential models and CRFs. 1 Case Study: Supervised Part-of-Speech Tagging
0-708: Probabilisti Graphial Models 0-708, Spring 204 Disrete sequential models and CRFs Leturer: Eri P. Xing Sribes: Pankesh Bamotra, Xuanhong Li Case Study: Supervised Part-of-Speeh Tagging The supervised
More informationCS473-Algorithms I. Lecture 10. Dynamic Programming. Cevdet Aykanat - Bilkent University Computer Engineering Department
CS473-Algorithms I Lecture 1 Dynamic Programming 1 Introduction An algorithm design paradigm like divide-and-conquer Programming : A tabular method (not writing computer code) Divide-and-Conquer (DAC):
More informationSolutions to Tutorial 2 (Week 9)
The University of Syney Shool of Mathematis an Statistis Solutions to Tutorial (Week 9) MATH09/99: Disrete Mathematis an Graph Theory Semester, 0. Determine whether eah of the following sequenes is the
More informationHEXA: Compact Data Structures for Faster Packet Processing
Washington University in St. Louis Washington University Open Sholarship All Computer Siene and Engineering Researh Computer Siene and Engineering Report Number: 27-26 27 HEXA: Compat Data Strutures for
More informationChapter 3 Dynamic programming
Chapter 3 Dynamic programming 1 Dynamic programming also solve a problem by combining the solutions to subproblems. But dynamic programming considers the situation that some subproblems will be called
More information(2,4) Trees. 2/22/2006 (2,4) Trees 1
(2,4) Trees 9 2 5 7 10 14 2/22/2006 (2,4) Trees 1 Outline and Reading Multi-way search tree ( 10.4.1) Definition Search (2,4) tree ( 10.4.2) Definition Search Insertion Deletion Comparison of dictionary
More informationThe Happy Ending Problem
The Happy Ending Problem Neeldhara Misra STATUTORY WARNING This doument is a draft version 1 Introdution The Happy Ending problem first manifested itself on a typial wintery evening in 1933 These evenings
More informationCOMP 181. Prelude. Intermediate representations. Today. Types of IRs. High-level IR. Intermediate representations and code generation
Prelude COMP 181 Intermediate representations and ode generation November, 009 What is this devie? Large Hadron Collider What is a hadron? Subatomi partile made up of quarks bound by the strong fore What
More informationLarge Exploration for HW/SW partitioning of Multirate and Aperiodic Real-Time Systems
Large Exploration for HW/SW partitioning of Multirate and Aperiodi Real-Time Systems Abdenour Azzedine, Jean-hilippe Diguet, Jean-Lu illippe Université de Bretagne SUD; LESTER lab.; Lorient, Frane jean-philippe.diguet@univ-ubs.fr
More informationInterconnection Styles
Interonnetion tyles oftware Design Following the Export (erver) tyle 2 M1 M4 M5 4 M3 M6 1 3 oftware Design Following the Export (Client) tyle e 2 e M1 M4 M5 4 M3 M6 1 e 3 oftware Design Following the Export
More informationImproved flooding of broadcast messages using extended multipoint relaying
Improved flooding of broadast messages using extended multipoint relaying Pere Montolio Aranda a, Joaquin Garia-Alfaro a,b, David Megías a a Universitat Oberta de Catalunya, Estudis d Informàtia, Mulimèdia
More informationImplementing Load-Balanced Switches With Fat-Tree Networks
Implementing Load-Balaned Swithes With Fat-Tree Networks Hung-Shih Chueh, Ching-Min Lien, Cheng-Shang Chang, Jay Cheng, and Duan-Shin Lee Department of Eletrial Engineering & Institute of Communiations
More informationAn Alternative Approach to the Fuzzifier in Fuzzy Clustering to Obtain Better Clustering Results
An Alternative Approah to the Fuzziier in Fuzzy Clustering to Obtain Better Clustering Results Frank Klawonn Department o Computer Siene University o Applied Sienes BS/WF Salzdahlumer Str. 46/48 D-38302
More informationMulti-Piece Mold Design Based on Linear Mixed-Integer Program Toward Guaranteed Optimality
INTERNATIONAL CONFERENCE ON MANUFACTURING AUTOMATION (ICMA200) Multi-Piee Mold Design Based on Linear Mixed-Integer Program Toward Guaranteed Optimality Stephen Stoyan, Yong Chen* Epstein Department of
More informationGradient based progressive probabilistic Hough transform
Gradient based progressive probabilisti Hough transform C.Galambos, J.Kittler and J.Matas Abstrat: The authors look at the benefits of exploiting gradient information to enhane the progressive probabilisti
More informationCA Agile Requirements Designer 2.x Implementation Proven Professional Exam (CAT-720) Study Guide Version 1.0
Exam (CAT-720) Study Guide Version 1.0 PROPRIETARY AND CONFIDENTIAL INFORMATION 2017 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized
More informationComputational Biology 6.095/6.895 Database Search Lecture 5 Prof. Piotr Indyk
Computational Biology 6.095/6.895 Database Searh Leture 5 Prof. Piotr Indyk Previous letures Leture -3: Global alignment in O(mn) Dynami programming Leture -2: Loal alignment, variants, in O(mn) Leture
More informationCA Release Automation 5.x Implementation Proven Professional Exam (CAT-600) Study Guide Version 1.1
Exam (CAT-600) Study Guide Version 1.1 PROPRIETARY AND CONFIDENTIAL INFORMATION 2016 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized
More informationMachine Vision. Laboratory Exercise Name: Student ID: S
Mahine Vision 521466S Laoratory Eerise 2011 Name: Student D: General nformation To pass these laoratory works, you should answer all questions (Q.y) with an understandale handwriting either in English
More informationICCGLU. A Fortran IV subroutine to solve large sparse general systems of linear equations. J.J. Dongarra, G.K. Leaf and M. Minkoff.
http://www.netlib.org/linalg/ig-do 1 of 8 12/7/2009 11:14 AM ICCGLU A Fortran IV subroutine to solve large sparse general systems of linear equations. J.J. Dongarra, G.K. Leaf and M. Minkoff July, 1982
More informationOptimizing Correlated Path Queries in XML Languages. Technical Report CS November 2002
Optimizing Correlated Path Queries in XML Languages Ning Zhang and M. Tamer Özsu Tehnial Report CS-2002-36 November 2002 Shool Of Computer Siene, University of Waterloo, {nzhang,tozsu}@uwaterloo.a 1 Abstrat
More informationA {k, n}-secret Sharing Scheme for Color Images
A {k, n}-seret Sharing Sheme for Color Images Rastislav Luka, Konstantinos N. Plataniotis, and Anastasios N. Venetsanopoulos The Edward S. Rogers Sr. Dept. of Eletrial and Computer Engineering, University
More informationMethods for Multi-Dimensional Robustness Optimization in Complex Embedded Systems
Methods for Multi-Dimensional Robustness Optimization in Complex Embedded Systems Arne Hamann, Razvan Rau, Rolf Ernst Institute of Computer and Communiation Network Engineering Tehnial University of Braunshweig,
More informationA Partial Sorting Algorithm in Multi-Hop Wireless Sensor Networks
A Partial Sorting Algorithm in Multi-Hop Wireless Sensor Networks Abouberine Ould Cheikhna Department of Computer Siene University of Piardie Jules Verne 80039 Amiens Frane Ould.heikhna.abouberine @u-piardie.fr
More informationTaming Decentralized POMDPs: Towards Efficient Policy Computation for Multiagent Settings
Taming Deentralized PMDPs: Towards ffiient Poliy omputation for Multiagent Settings. Nair and M. Tambe omputer Siene Dept. University of Southern alifornia Los Angeles A 90089 nair,tambe @us.edu M. Yokoo
More informationSparse Certificates for 2-Connectivity in Directed Graphs
Sparse Certifiates for 2-Connetivity in Direted Graphs Loukas Georgiadis Giuseppe F. Italiano Aikaterini Karanasiou Charis Papadopoulos Nikos Parotsidis Abstrat Motivated by the emergene of large-sale
More informationGray Codes for Reflectable Languages
Gray Codes for Refletable Languages Yue Li Joe Sawada Marh 8, 2008 Abstrat We lassify a type of language alled a refletable language. We then develop a generi algorithm that an be used to list all strings
More informationTREES. Trees - Introduction
TREES Chapter 6 Trees - Introduction All previous data organizations we've studied are linear each element can have only one predecessor and successor Accessing all elements in a linear sequence is O(n)
More informationP-admissible Solution Space
P-admissible Solution Spae P-admissible solution spae or Problem P: 1. the solution spae is inite, 2. every solution is easible, 3. evaluation or eah oniguration is possible in polynomial time and so is
More informationAlgorithms, Mechanisms and Procedures for the Computer-aided Project Generation System
Algorithms, Mehanisms and Proedures for the Computer-aided Projet Generation System Anton O. Butko 1*, Aleksandr P. Briukhovetskii 2, Dmitry E. Grigoriev 2# and Konstantin S. Kalashnikov 3 1 Department
More informationGraph-Based vs Depth-Based Data Representation for Multiview Images
Graph-Based vs Depth-Based Data Representation for Multiview Images Thomas Maugey, Antonio Ortega, Pasal Frossard Signal Proessing Laboratory (LTS), Eole Polytehnique Fédérale de Lausanne (EPFL) Email:
More informationScheduling Multiple Independent Hard-Real-Time Jobs on a Heterogeneous Multiprocessor
Sheduling Multiple Independent Hard-Real-Time Jobs on a Heterogeneous Multiproessor Orlando Moreira NXP Semiondutors Researh Eindhoven, Netherlands orlando.moreira@nxp.om Frederio Valente Universidade
More informationIntroductory Programming, IMM, DTU Systematic Software Test. Software test (afprøvning) Motivation. Structural test and functional test
Introdutory Programming, IMM, DTU Systemati Software Test Peter Sestoft a Programs often ontain unintended errors how do you find them? Strutural test Funtional test Notes: Systemati Software Test, http://www.dina.kvl.dk/
More information1 The Knuth-Morris-Pratt Algorithm
5-45/65: Design & Analysis of Algorithms September 26, 26 Leture #9: String Mathing last hanged: September 26, 27 There s an entire field dediated to solving problems on strings. The book Algorithms on
More informationMultiple-Criteria Decision Analysis: A Novel Rank Aggregation Method
3537 Multiple-Criteria Deision Analysis: A Novel Rank Aggregation Method Derya Yiltas-Kaplan Department of Computer Engineering, Istanbul University, 34320, Avilar, Istanbul, Turkey Email: dyiltas@ istanbul.edu.tr
More informationCSI33 Data Structures
Outline Department of Mathematics and Computer Science Bronx Community College October 24, 2016 Outline Outline 1 Chapter 7: Trees Outline Chapter 7: Trees 1 Chapter 7: Trees The Binary Search Property
More informationA Support-Based Algorithm for the Bi-Objective Pareto Constraint
A Support-Based Algorithm for the Bi-Ojetive Pareto Constraint Renaud Hartert and Pierre Shaus UCLouvain, ICTEAM, Plae Sainte Bare 2, 1348 Louvain-la-Neuve, Belgium {renaud.hartert, pierre.shaus,}@ulouvain.e
More informationPlumber: a method for a multi-scale decomposition of 3D shapes into tubular primitives and bodies
ACM Symposium on Solid Modeling and Appliations (2004) P. Brunet, N. Patrikalakis (Editors) Plumber: a method for a multi-sale deomposition of 3D shapes into tubular primitives and bodies M. Mortara G.
More informationA Support-Based Algorithm for the Bi-Objective Pareto Constraint
Proeedings of the Twenty-Eighth AAAI Conferene on Artifiial Intelligene A Support-Based Algorithm for the Bi-Ojetive Pareto Constraint Renaud Hartert and Pierre Shaus UCLouvain, ICTEAM, Plae Sainte Bare
More informationCA Test Data Manager 4.x Implementation Proven Professional Exam (CAT-681) Study Guide Version 1.0
Implementation Proven Professional Study Guide Version 1.0 PROPRIETARY AND CONFIDENTIAL INFORMATION 2017 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer
More informationCompilation Lecture 11a. Register Allocation Noam Rinetzky. Text book: Modern compiler implementation in C Andrew A.
Compilation 0368-3133 Leture 11a Text book: Modern ompiler implementation in C Andrew A. Appel Register Alloation Noam Rinetzky 1 Registers Dediated memory loations that an be aessed quikly, an have omputations
More informationVertex Unfoldings of Orthogonal Polyhedra: Positive, Negative, and Inconclusive Results
CCCG 2018, Winnipeg, Canada, August 8 10, 2018 Vertex Unfoldings of Orthogonal Polyhedra: Positive, Negative, and Inonlusive Results Luis A. Garia Andres Gutierrrez Isaa Ruiz Andrew Winslow Abstrat We
More informationOutline: Software Design
Outline: Software Design. Goals History of software design ideas Design priniples Design methods Life belt or leg iron? (Budgen) Copyright Nany Leveson, Sept. 1999 A Little History... At first, struggling
More informationCS269I: Incentives in Computer Science Lecture #19: Time-Inconsistent Planning
CS269I: Inentives in Computer Siene Leture #9: Time-Inonsistent Planning Tim Roughgarden Deember 5, 26 Utility Theory and Behavioral Eonomis In almost all of the models that we ve studied in this ourse,
More information8 Instruction Selection
8 Instrution Seletion The IR ode instrutions were designed to do exatly one operation: load/store, add, subtrat, jump, et. The mahine instrutions of a real CPU often perform several of these primitive
More informationXML Data Streams. XML Stream Processing. XML Stream Processing. Yanlei Diao. University of Massachusetts Amherst
XML Stream Proessing Yanlei Diao University of Massahusetts Amherst XML Data Streams XML is the wire format for data exhanged online. Purhase orders http://www.oasis-open.org/ommittees/t_home.php?wg_abbrev=ubl
More informationAn Interactive-Voting Based Map Matching Algorithm
Eleventh International Conferene on Mobile Data Management An Interative-Voting Based Map Mathing Algorithm Jing Yuan* University of Siene and Tehnology of China Hefei, China yuanjing@mail.ust.edu.n Yu
More informationAdaptive Implicit Surface Polygonization using Marching Triangles
Volume 20 (2001), Number 2 pp. 67 80 Adaptive Impliit Surfae Polygonization using Marhing Triangles Samir Akkouhe Eri Galin L.I.G.I.M L.I.G.I.M Eole Centrale de Lyon Université Claude Bernard Lyon 1 B.P.
More information3 INTEGER LINEAR PROGRAMMING
3 INTEGER LINEAR PROGRAMMING PROBLEM DEFINITION Integer linear programming problem (ILP) of the decision variables x 1,..,x n : (ILP) subject to minimize c x j j n j= 1 a ij x j x j 0 x j integer n j=
More informationEfficient and scalable trie-based algorithms for computing set containment relations
Effiient and salale trie-ased algorithms for omputing set ontainment relations Yongming Luo #1, George H. L. Flether #2, Jan Hidders 3, Paul De Bra #4 # Eindhoven University of Tehnology, The Netherlands
More informationDepartment of Electrical Engineering and Computer Science MASSACHUSETTS INSTITUTE OF TECHNOLOGY Fall Test I Solutions
Department of Eletrial Engineering and Computer iene MAACHUETT INTITUTE OF TECHNOLOGY 6.035 Fall 2016 Test I olutions 1 I Regular Expressions and Finite-tate Automata For Questions 1, 2, and 3, let the
More informationManipulation of Graphs, Algebras and Pictures. Essays Dedicated to Hans-Jörg Kreowski on the Occasion of His 60th Birthday
Eletroni Communiations of the EASST Volume 26 (2010) Manipulation of Graphs, Algebras and Pitures Essays Dediated to Hans-Jörg Kreowski on the Oasion of His 60th Birthday Autonomous Units for Solving the
More informationFrom indoor GIS maps to path planning for autonomous wheelchairs
From indoor GIS maps to path planning for autonomous wheelhairs Jérôme Guzzi and Gianni A. Di Caro Abstrat This work fouses on how to ompute trajetories for an autonomous wheelhair based on indoor GIS
More informationZ Combinatorial Filters: Sensor Beams, Obstacles, and Possible Paths
Z Combinatorial Filters: Sensor Beams, Obstales, and Possible Paths BENJAMIN TOVAR, Northwestern University FRED COHEN, University of Rohester LEONARDO BOBADILLA, University of Illinois JUSTIN CZARNOWSKI,
More informationPathRings. Manual. Version 1.0. Yongnan Zhu December 16,
PathRings Version 1.0 Manual Yongnan Zhu E-mail: yongnan@umb.edu Deember 16, 2014-1 - PathRings This tutorial introdues PathRings, the user interfae and the interation. For better to learn, you will need
More informationWe augment RBTs to support operations on dynamic sets of intervals A closed interval is an ordered pair of real
14.3 Interval trees We augment RBTs to support operations on dynamic sets of intervals A closed interval is an ordered pair of real numbers ], with Interval ]represents the set Open and half-open intervals
More informationBayesian Belief Networks for Data Mining. Harald Steck and Volker Tresp. Siemens AG, Corporate Technology. Information and Communications
Bayesian Belief Networks for Data Mining Harald Stek and Volker Tresp Siemens AG, Corporate Tehnology Information and Communiations 81730 Munih, Germany fharald.stek, Volker.Trespg@mhp.siemens.de Abstrat
More informationAlgorithms in Systems Engineering ISE 172. Lecture 16. Dr. Ted Ralphs
Algorithms in Systems Engineering ISE 172 Lecture 16 Dr. Ted Ralphs ISE 172 Lecture 16 1 References for Today s Lecture Required reading Sections 6.5-6.7 References CLRS Chapter 22 R. Sedgewick, Algorithms
More informationmahines. HBSP enhanes the appliability of the BSP model by inorporating parameters that reet the relative speeds of the heterogeneous omputing omponen
The Heterogeneous Bulk Synhronous Parallel Model Tiani L. Williams and Rebea J. Parsons Shool of Computer Siene University of Central Florida Orlando, FL 32816-2362 fwilliams,rebeag@s.uf.edu Abstrat. Trends
More informationDesign and Analysis of Algorithms - - Assessment
X Courses» Design and Analysis of Algorithms Week 1 Quiz 1) In the code fragment below, start and end are integer values and prime(x) is a function that returns true if x is a prime number and false otherwise.
More informationRevision Statement while return growth rate asymptotic notation complexity Compare algorithms Linear search Binary search Preconditions: sorted,
[1] Big-O Analysis AVERAGE(n) 1. sum 0 2. i 0. while i < n 4. number input_number(). sum sum + number 6. i i + 1 7. mean sum / n 8. return mean Revision Statement no. of times executed 1 1 2 1 n+1 4 n
More information2017 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media,
2017 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any urrent or future media, inluding reprinting/republishing this material for advertising
More informationZ Combinatorial Filters: Sensor Beams, Obstacles, and Possible Paths
Z Combinatorial Filters: Sensor Beams, Obstales, and Possible Paths BENJAMIN TOVAR, Northwestern University FRED COHEN, University of Rohester LEONARDO BOBADILLA, University of Illinois JUSTIN CZARNOWSKI,
More information