# The scenario: Initial state Target (Goal) states A set of intermediate states A set of operations that move the agent from one state to another.

Save this PDF as:

Size: px
Start display at page:

Download "The scenario: Initial state Target (Goal) states A set of intermediate states A set of operations that move the agent from one state to another."

## Transcription

1 CmSc310 Artificial Intelligence Solving Problems by Searching - Uninformed Search 1. Introduction All AI tasks involve searching. General idea: You know where you are (initial state) and where you want to be (target states) You know the available actions that you could take to solve your problem You don't know which sequence of actions will get you to a solution You can search through all the possible sequences to find one that will give a solution. The scenario: Initial state Target (Goal) states A set of intermediate states A set of operations that move the agent from one state to another. The task: Find a sequence of operations that will move the agent from the initial state to a target state. Solved in terms of searching a graph The set of all states: search space Target state1 Initial state Target state2 1

2 Actions: may be physical actions (such as move from town A to town B, or put block C on the table) or may be more abstract actions, like theorem proving steps (we may be searching for a sequence of steps that will allow us to prove X from the set of facts S). Examples: Puzzles: Find a sequence of actions to solve the puzzle Chess: Find the sequence of moves that will result in winning the game. Travel: Find a route from the starting place to the destination. 2. Problem-solving agents Decide what to do by finding a sequence of actions that lead to desirable states 2.1. Goal formulation The desirable states constitute the goal of the agent. The task here for the developer is to decide how the desirable states (the target states) would be described. - by listing - by property 2.2. Problem formulation Problem formulation is the process of deciding which actions and states to consider. Questions: Given the initial state and a set of desirable states, how can we describe the intermediate states? Given the description of states, what are the actions that will take us from one state to another? Given a set of states and a set of actions, what are the applicable conditions, i.e. for a given state which actions are applicable? 2.3. Search for a solution A search algorithm has: input: the problem as formulated in step 2.2. output: sequence of actions that lead from the initial state to a target state. 2

3 2.4. State Space Search Basic idea: 1. You have to decide on a representation of the state of the world, the available actions in the domain, 2. Go systematically through all possible sequences to find a sequence of actions that will get you from your initial to target state. initial state - where the agent is operator set - set of action to go from one state into another goal test - a test to see if the agent is in a goal state path coast - the cost of the path from the initial to the goal state - the sum of the costs of each edge in the path. State space - the set of states generated by the set of operators. Measuring the performance Does the agent find a solution Is the solution good What was the cost of the search Search tree - built during the search process Root - corresponds to the initial state Nodes: correspond to intermediate states (two different nodes may correspond to one and the same state) Links - correspond to the operators applied to move from one state to the next state Node description: The corresponding state The parent node The operator applied The length of the path from the root to that node The cost of the path To expand a node means to apply operators to the node and obtain next nodes in the tree i.e. to generate its children. successor nodes: obtained from the current node by applying the operators. 3

4 Note the distinction between a node and a state. A node is part of the search tree. A state is part of the agent s world. One and the same state can be reached via different paths in the search tree. Several nodes may correspond to the same state Search strategies A. Uninformed vs. informed Uninformed search (blind search)- no information about the number of steps. Informed search (heuristic search) - choose "the best " direction in the search tree using some heuristics. B. Depth-first vs. breadth-first Depth-first search: explore the tree in depth, (use a stack) Breadth-first search: generate the successors for all nodes at a given level before proceeding with the next level of the tree (use a queue) Comparison of depth-first and breadth-first search Length of path: breadth-first finds the shortest path first. Memory: depth-first uses less memory Time: If the solution is on a short path - breadth first is better, if the path is long - depth first is better. 3. Generate and test method Initially stack/queue is empty Store root (initial state) in stack/queue While there are unexpanded nodes in stack/queue DO: Take a node While there are applicable operators DO: Generate next state/node by applying a relevant operator Test to see if the goal state is reached. If yes - stop Test to see if the state is on the path from the root to the generated node If no - add the generated state/node into a stack/queue To get the solution: Print the path from the root to the found goal state Comments: The second test is absolutely necessary in depth-first search, it may be omitted in breadth first search 4

5 4. Toy problems and real world problems Toy problems are used mainly for the purpose of testing search algorithms. They have a small amount of states and operators and it is relatively easy to describe them. Real world problems are much more difficult to describe. Some real world problems are: Route finding The travelling salesperson problem Robot navigation Sources of difficulty: Large number of states, and /or Large number of operators Uncertainty in the outcome of an action Examples of toy problems: Problem 1: ``You are given two jugs, a 4-gallon one and a 3-gallon one. Neither has any measuring markers on it. There is a tap that can be used to fill the jugs with water. How can you get exactly 2 gallons of water into the 4-gallon jug''. We have to decide: a. representation of the problem state, initial and final states b. representation of the actions available in the problem, in terms of how they change the problem state. c. what would be the cost of the solution Path cost Search cost For the example: a. problem state: pair of numbers (X,Y): X - water in jug 1, Y - water in jug 2. Initial state: (0,0) Final state: (2, X) 5

6 Available actions (operators): Description Pre-conditions on (X,Y) Action (Post-conditions) O1. Fill A X < 3 (3, Y) O2. Fill B Y < 4 (X,4) O3. Empty A X > 0 (0,Y) O4. Empty B Y > 0 (X,0) O5. Pour A into B a. X > 4 - Y b. X 4 - Y ( X + Y - 4, 4) ( 0, X + Y) O6. Pour B into A a. Y > 3 - X b. Y 3 - X The actions can be applied only if the conditions hold. (3, X + Y - 3) ( X + Y, 0) Generate and test method: Take a node, Generate next nodes by applying relevant operators (not all operators are applicable for a given node!) Test to see if the goal state is reached. If yes - stop If no - add the generated nodes into a stack/queue (do not add if the node has already been generated on the path to the root) and repeat the procedure. To get the solution: Record the paths 0,0 a O1 O2 b 3,0 0,4 c O2 O5 O1 O6 3,4 0,3 3,4 3,1 6

7 Problem 2: A farmer has to move a goat, a cabbage and a wolf from one side of a river to the other side using a small boat. The boat can carry only the farmer and one more object (either the goat, or the cabbage, or the wolf). If the farmer leaves the goat with the wolf alone, the wolf would kill the goat. If the goat is alone with the cabbage, it will eat the cabbage. How can the farmer move all his property safely to the other side of the river? 1. Identify the initial and the target states and the goal test 2. Choose appropriate representation of the states. 3. Decide on operators to change the states. Describe how each operator changes the states. 4. Identify restrictions: are all operators applicable to all states? 5. Decide on how the cost would be measured. 6. Solve the problem Problems with Simple Search Techniques: Combinatorial Explosions with high branching factor of the state space representation 7

### Lecture 2 of 41. Agents and Problem Solving

Lecture 2 of 41 Agents and Problem Solving Monday, 23 August 2004 William H. Hsu, KSU http://www.kddresearch.org http://www.cis.ksu.edu/~bhsu Reading for Next Class: Chapter 3, Appendix A, Russell and

### 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,

### Measuring the Performance of an Agent

25 Measuring the Performance of an Agent The rational agent that we are aiming at should be successful in the task it is performing To assess the success we need to have a performance measure What is rational

### AI and computer game playing. Artificial Intelligence. Partial game tree for Tic-Tac-Toe. Game tree search. Minimax Algorithm

AI and computer game playing Artificial Intelligence Introduction to game-playing search imax algorithm, evaluation functions, alpha-beta pruning, advanced techniques Game playing (especially chess and

### G52APT AI Programming Techniques

G52APT AI Programming Techniques Lecture 8: Depth first search in Prolog Brian Logan School of Computer Science bsl@cs.nott.ac.uk Outline of this lecture recap: definition of a search problem state spaces

### 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

### 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)

### 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,

### 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)

### Solving the 8 Puzzle in a Minimum Number of Moves: An Application of the A* Algorithm

Solving the 8 Puzzle in a Minimum Number of Moves: An Application of the A* Algorithm Daniel R. Kunkle Computer Science Dept. College of Computing and Information Sciences Rochester Institute of Technology

### 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).

### 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

### Teaching Introductory Artificial Intelligence with Pac-Man

Teaching Introductory Artificial Intelligence with Pac-Man John DeNero and Dan Klein Computer Science Division University of California, Berkeley {denero, klein}@cs.berkeley.edu Abstract The projects that

### CPSC 211 Data Structures & Implementations (c) Texas A&M University [ 313]

CPSC 211 Data Structures & Implementations (c) Texas A&M University [ 313] File Structures A file is a collection of data stored on mass storage (e.g., disk or tape) Why on mass storage? too big to fit

### Binary Search Trees CMPSC 122

Binary Search Trees CMPSC 122 Note: This notes packet has significant overlap with the first set of trees notes I do in CMPSC 360, but goes into much greater depth on turning BSTs into pseudocode than

### Problem solving and search

Problem solving and search hapter 3 hapter 3 1 eminders ssignment 0 due 5pm today ssignment 1 posted, due 2/9 ection 105 will move to 9-10am starting next week hapter 3 2 Outline Problem-solving agents

### 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.

### Krishna Institute of Engineering & Technology, Ghaziabad Department of Computer Application MCA-213 : DATA STRUCTURES USING C

Tutorial#1 Q 1:- Explain the terms data, elementary item, entity, primary key, domain, attribute and information? Also give examples in support of your answer? Q 2:- What is a Data Type? Differentiate

### Artificial Intelligence: Search Methods. D. Kopec and T.A. Marsland

Artificial Intelligence: Search Methods D. Kopec and T.A. Marsland Introduction Search is inherent to the problems and methods of artificial intelligence (AI). That is because AI problems are intrinsically

### A binary heap is a complete binary tree, where each node has a higher priority than its children. This is called heap-order property

CmSc 250 Intro to Algorithms Chapter 6. Transform and Conquer Binary Heaps 1. Definition A binary heap is a complete binary tree, where each node has a higher priority than its children. This is called

### 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

### Midterm Practice Problems

6.042/8.062J Mathematics for Computer Science October 2, 200 Tom Leighton, Marten van Dijk, and Brooke Cowan Midterm Practice Problems Problem. [0 points] In problem set you showed that the nand operator

### 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

### 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

### 3 Abstract Data Types and Search

3 Abstract Data Types and Search Chapter Objectives Chapter Contents Prolog s graph search representations were described and built: Lists A recursive tree-walk algorithm The cut predicate,!, for Prolog

### 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

### Search methods motivation 1

Suppose you are an independent software developer, and your software package Windows Defeater R, widely available on sourceforge under a GNU GPL license, is getting an international attention and acclaim.

### CompSci-61B, Data Structures Final Exam

Your Name: CompSci-61B, Data Structures Final Exam Your 8-digit Student ID: Your CS61B Class Account Login: This is a final test for mastery of the material covered in our labs, lectures, and readings.

### 6.852: Distributed Algorithms Fall, 2009. Class 2

.8: Distributed Algorithms Fall, 009 Class Today s plan Leader election in a synchronous ring: Lower bound for comparison-based algorithms. Basic computation in general synchronous networks: Leader election

### Optimizations. Optimization Safety. Optimization Safety. Control Flow Graphs. Code transformations to improve program

Optimizations Code transformations to improve program Mainly: improve execution time Also: reduce program size Control low Graphs Can be done at high level or low level E.g., constant folding Optimizations

### 2. (a) Explain the strassen s matrix multiplication. (b) Write deletion algorithm, of Binary search tree. [8+8]

Code No: R05220502 Set No. 1 1. (a) Describe the performance analysis in detail. (b) Show that f 1 (n)+f 2 (n) = 0(max(g 1 (n), g 2 (n)) where f 1 (n) = 0(g 1 (n)) and f 2 (n) = 0(g 2 (n)). [8+8] 2. (a)

### Implementation of a Chess Playing Artificial. Intelligence. Sean Stanek.

Implementation of a Chess Playing Artificial Intelligence Sean Stanek vulture@cs.iastate.edu Overview Chess has always been a hobby of mine, and so have computers. In general, I like creating computer

### Alexander Reinefeld, Thorsten Schütt, ZIB 1

Alexander Reinefeld, Thorsten Schütt, ZIB 1 Solving Puzzles with MapReduce Alexander Reinefeld and Thorsten Schütt Zuse Institute Berlin Hadoop Get Together, 29.09.2009, Berlin How to solve very large

### Evaluation of Test Cases Using ACO and TSP Gulwatanpreet Singh, Sarabjit Kaur, Geetika Mannan CTITR&PTU India

Evaluation of Test Cases Using ACO and TSP Gulwatanpreet Singh, Sarabjit Kaur, Geetika Mannan CTITR&PTU India Abstract: A test case, in software engineering is a set of conditions or variables under which

### UNIVERSITI MALAYSIA SARAWAK KOTA SAMARAHAN SARAWAK PSD2023 ALGORITHM & DATA STRUCTURE

STUDENT IDENTIFICATION NO UNIVERSITI MALAYSIA SARAWAK 94300 KOTA SAMARAHAN SARAWAK FAKULTI SAINS KOMPUTER & TEKNOLOGI MAKLUMAT (Faculty of Computer Science & Information Technology) Diploma in Multimedia

### Sequential lmove Games. Using Backward Induction (Rollback) to Find Equilibrium

Sequential lmove Games Using Backward Induction (Rollback) to Find Equilibrium Sequential Move Class Game: Century Mark Played by fixed pairs of players taking turns. At each turn, each player chooses

### Decision Trees and Networks

Lecture 21: Uncertainty 6 Today s Lecture Victor R. Lesser CMPSCI 683 Fall 2010 Decision Trees and Networks Decision Trees A decision tree is an explicit representation of all the possible scenarios from

### Course Outline Department of Computing Science Faculty of Science. COMP 3710-3 Applied Artificial Intelligence (3,1,0) Fall 2015

Course Outline Department of Computing Science Faculty of Science COMP 710 - Applied Artificial Intelligence (,1,0) Fall 2015 Instructor: Office: Phone/Voice Mail: E-Mail: Course Description : Students

### COMP-424: Artificial intelligence. Lecture 7: Game Playing

COMP 424 - Artificial Intelligence Lecture 7: Game Playing Instructor: Joelle Pineau (jpineau@cs.mcgill.ca) Class web page: www.cs.mcgill.ca/~jpineau/comp424 Unless otherwise noted, all material posted

### Load balancing. David Bindel. 12 Nov 2015

Load balancing David Bindel 12 Nov 2015 Inefficiencies in parallel code Poor single processor performance Typically in the memory system Saw this in matrix multiply assignment Overhead for parallelism

### 2) Write in detail the issues in the design of code generator.

COMPUTER SCIENCE AND ENGINEERING VI SEM CSE Principles of Compiler Design Unit-IV Question and answers UNIT IV CODE GENERATION 9 Issues in the design of code generator The target machine Runtime Storage

### Scheduling. Open shop, job shop, flow shop scheduling. Related problems. Open shop, job shop, flow shop scheduling

Scheduling Basic scheduling problems: open shop, job shop, flow job The disjunctive graph representation Algorithms for solving the job shop problem Computational complexity of the job shop problem Open

### Data Structure [Question Bank]

Unit I (Analysis of Algorithms) 1. What are algorithms and how they are useful? 2. Describe the factor on best algorithms depends on? 3. Differentiate: Correct & Incorrect Algorithms? 4. Write short note:

### Block Diagram Reduction

Appendix W Block Diagram Reduction W.3 4Mason s Rule and the Signal-Flow Graph A compact alternative notation to the block diagram is given by the signal- ow graph introduced Signal- ow by S. J. Mason

### 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

### SYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis

SYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis M. Vidyasagar Cecil & Ida Green Chair The University of Texas at Dallas Email: M.Vidyasagar@utdallas.edu October 17, 2015 Outline

### Informatique Fondamentale IMA S8

Informatique Fondamentale IMA S8 Cours 4 : graphs, problems and algorithms on graphs, (notions of) NP completeness Laure Gonnord http://laure.gonnord.org/pro/teaching/ Laure.Gonnord@polytech-lille.fr Université

### Game-Playing & Adversarial Search MiniMax, Search Cut-off, Heuristic Evaluation

Game-Playing & Adversarial Search MiniMax, Search Cut-off, Heuristic Evaluation This lecture topic: Game-Playing & Adversarial Search (MiniMax, Search Cut-off, Heuristic Evaluation) Read Chapter 5.1-5.2,

### IE 680 Special Topics in Production Systems: Networks, Routing and Logistics*

IE 680 Special Topics in Production Systems: Networks, Routing and Logistics* Rakesh Nagi Department of Industrial Engineering University at Buffalo (SUNY) *Lecture notes from Network Flows by Ahuja, Magnanti

### Factorizations: Searching for Factor Strings

" 1 Factorizations: Searching for Factor Strings Some numbers can be written as the product of several different pairs of factors. For example, can be written as 1, 0,, 0, and. It is also possible to write

### Adversarial Search and Game- Playing. C H A P T E R 5 C M P T 3 1 0 : S u m m e r 2 0 1 1 O l i v e r S c h u l t e

Adversarial Search and Game- Playing C H A P T E R 5 C M P T 3 1 0 : S u m m e r 2 0 1 1 O l i v e r S c h u l t e Environment Type Discussed In this Lecture 2 Fully Observable yes Turn-taking: Semi-dynamic

### The N-Puzzle Problem

The N-Puzzle Problem Zdravko Markov 1, Ingrid Russell, Todd Neller June 20, 2005 1. Introduction The N-puzzle game provides a good framework for illustrating conceptual AI search in an interesting and

### 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

### Test Case Design Techniques

Summary of Test Case Design Techniques Brian Nielsen, Arne Skou {bnielsen ask}@cs.auc.dk Development of Test Cases Complete testing is impossible Testing cannot guarantee the absence of faults How to select

### Chess Algorithms Theory and Practice. Rune Djurhuus Chess Grandmaster runed@ifi.uio.no / runedj@microsoft.com October 3, 2012

Chess Algorithms Theory and Practice Rune Djurhuus Chess Grandmaster runed@ifi.uio.no / runedj@microsoft.com October 3, 2012 1 Content Complexity of a chess game History of computer chess Search trees

### Reliability Guarantees in Automata Based Scheduling for Embedded Control Software

1 Reliability Guarantees in Automata Based Scheduling for Embedded Control Software Santhosh Prabhu, Aritra Hazra, Pallab Dasgupta Department of CSE, IIT Kharagpur West Bengal, India - 721302. Email: {santhosh.prabhu,

### Introduction Solvability Rules Computer Solution Implementation. Connect Four. March 9, 2010. Connect Four

March 9, 2010 is a tic-tac-toe like game in which two players drop discs into a 7x6 board. The first player to get four in a row (either vertically, horizontally, or diagonally) wins. The game was first

### Algorithms and Data Structures

Algorithms and Data Structures CMPSC 465 LECTURES 20-21 Priority Queues and Binary Heaps Adam Smith S. Raskhodnikova and A. Smith. Based on slides by C. Leiserson and E. Demaine. 1 Trees Rooted Tree: collection

### Finite Automata and Formal Languages

Finite Automata and Formal Languages TMV026/DIT321 LP4 2011 Lecture 14 May 19th 2011 Overview of today s lecture: Turing Machines Push-down Automata Overview of the Course Undecidable and Intractable Problems

### (Refer Slide Time: 2:03)

Control Engineering Prof. Madan Gopal Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 11 Models of Industrial Control Devices and Systems (Contd.) Last time we were

### Laboratory work in AI: First steps in Poker Playing Agents and Opponent Modeling

Laboratory work in AI: First steps in Poker Playing Agents and Opponent Modeling Avram Golbert 01574669 agolbert@gmail.com Abstract: While Artificial Intelligence research has shown great success in deterministic

### Network (Tree) Topology Inference Based on Prüfer Sequence

Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 vanniarajanc@hcl.in,

### THE last two decades have witnessed an exponential

IEEE JSAC - SAMPLING 2006 1 Practical Beacon Placement for Link Monitoring Using Network Tomography Ritesh Kumar and Jasleen Kaur Abstract Recent interest in using tomography for network monitoring has

### SOLVING PROBLEMS BY SEARCHING

3 SOLVING PROBLEMS BY SEARCHING In which we see how an agent can find a sequence of actions that achieves its goals, when no single action will do. PROBLEM SOLVING AGENT The simplest agents discussed in

### Full and Complete Binary Trees

Full and Complete Binary Trees Binary Tree Theorems 1 Here are two important types of binary trees. Note that the definitions, while similar, are logically independent. Definition: a binary tree T is full

### Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi

Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture - 15 Limited Resource Allocation Today we are going to be talking about

### 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

### 5. A full binary tree with n leaves contains [A] n nodes. [B] log n 2 nodes. [C] 2n 1 nodes. [D] n 2 nodes.

1. The advantage of.. is that they solve the problem if sequential storage representation. But disadvantage in that is they are sequential lists. [A] Lists [B] Linked Lists [A] Trees [A] Queues 2. The

### 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

### 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

### The Turing Test! and What Computer Science Offers to Cognitive Science "

The Turing Test and What Computer Science Offers to Cognitive Science " Profs. Rob Rupert and Mike Eisenberg T/R 11-12:15 Muenzinger D430 http://l3d.cs.colorado.edu/~ctg/classes/cogsci12/ The Imitation

### Sanjeev Kumar. contribute

RESEARCH ISSUES IN DATAA MINING Sanjeev Kumar I.A.S.R.I., Library Avenue, Pusa, New Delhi-110012 sanjeevk@iasri.res.in 1. Introduction The field of data mining and knowledgee discovery is emerging as a

### Improving Knowledge-Based System Performance by Reordering Rule Sequences

Improving Knowledge-Based System Performance by Reordering Rule Sequences Neli P. Zlatareva Department of Computer Science Central Connecticut State University 1615 Stanley Street New Britain, CT 06050

### Expert Systems : AI Course Lecture 35 36, notes, slides www.myreaders.info/, RC Chakraborty, e-mail rcchak@gmail.

Expert Systems : AI Course Lecture 35 36, notes, slides www.myreaders.info/, RC Chakraborty, e-mail rcchak@gmail.com, June 01, 2010 www.myreaders.info/html/artificial_intelligence.html www.myreaders.info

### 6 March 2007 1. Array Implementation of Binary Trees

Heaps CSE 0 Winter 00 March 00 1 Array Implementation of Binary Trees Each node v is stored at index i defined as follows: If v is the root, i = 1 The left child of v is in position i The right child of

### Dynamic programming formulation

1.24 Lecture 14 Dynamic programming: Job scheduling Dynamic programming formulation To formulate a problem as a dynamic program: Sort by a criterion that will allow infeasible combinations to be eli minated

### Bowdoin Computer Science

Bowdoin Science What is computer science, what are its applications in other disciplines, and its impact in society? 101: Introduction to CS Pre-requisites: none Assumes no prior knowledge of programming

V. Adamchik 1 Graph Theory Victor Adamchik Fall of 2005 Plan 1. Basic Vocabulary 2. Regular graph 3. Connectivity 4. Representing Graphs Introduction A.Aho and J.Ulman acknowledge that Fundamentally, computer

### CONDENSING THE CC-2001 CORE IN AN INTEGRATED CURRICULUM

CONDENSING THE CC-2001 CORE IN AN INTEGRATED CURRICULUM Ingrid Russell, CS Department, University of Hartford, irussell@hartford.edu Michael Georgiopoulos, EECS, University of Central Florida, michaelg@mail.ucf.edu

CSE / Notes : Task Scheduling & Load Balancing Task Scheduling A task is a (sequential) activity that uses a set of inputs to produce a set of outputs. A task (precedence) graph is an acyclic, directed

### Chapter 7: Queues and Deques

Chapter 7: Queues and Deques After the stack, the next simplest data abstraction is the queue. As with the stack, the queue can be visualized with many examples you are already familiar with from everyday

### Smart Graphics: Methoden 3 Suche, Constraints

Smart Graphics: Methoden 3 Suche, Constraints Vorlesung Smart Graphics LMU München Medieninformatik Butz/Boring Smart Graphics SS2007 Methoden: Suche 2 Folie 1 Themen heute Suchverfahren Hillclimbing Simulated

### Algorithms and Data Structures

Algorithm Analysis Page 1 BFH-TI: Softwareschule Schweiz Algorithm Analysis Dr. CAS SD01 Algorithm Analysis Page 2 Outline Course and Textbook Overview Analysis of Algorithm Pseudo-Code and Primitive Operations

### So today we shall continue our discussion on the search engines and web crawlers. (Refer Slide Time: 01:02)

Internet Technology Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #39 Search Engines and Web Crawler :: Part 2 So today we

### 1 2-3 Trees: The Basics

CS10: Data Structures and Object-Oriented Design (Fall 2013) November 1, 2013: 2-3 Trees: Inserting and Deleting Scribes: CS 10 Teaching Team Lecture Summary In this class, we investigated 2-3 Trees in

### Any two nodes which are connected by an edge in a graph are called adjacent node.

. iscuss following. Graph graph G consist of a non empty set V called the set of nodes (points, vertices) of the graph, a set which is the set of edges and a mapping from the set of edges to a set of pairs

### 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)

### IAI : Expert Systems

IAI : Expert Systems John A. Bullinaria, 2005 1. What is an Expert System? 2. The Architecture of Expert Systems 3. Knowledge Acquisition 4. Representing the Knowledge 5. The Inference Engine 6. The Rete-Algorithm

### Binary Search Trees. A Generic Tree. Binary Trees. Nodes in a binary search tree ( B-S-T) are of the form. P parent. Key. Satellite data L R

Binary Search Trees A Generic Tree Nodes in a binary search tree ( B-S-T) are of the form P parent Key A Satellite data L R B C D E F G H I J The B-S-T has a root node which is the only node whose parent

### Introduction to Data Structures and Algorithms

Introduction to Data Structures and Algorithms Chapter: Elementary Data Structures(1) Lehrstuhl Informatik 7 (Prof. Dr.-Ing. Reinhard German) Martensstraße 3, 91058 Erlangen Overview on simple data structures

### 15-381: Artificial Intelligence. Introduction and Overview

15-381: Artificial Intelligence Introduction and Overview Course data All up-to-date info is on the course web page: - http://www.cs.cmu.edu/afs/cs.cmu.edu/academic/class/15381-s07/www/ Instructors: -

### Lecture 2 Introduction to Data Flow Analysis

Lecture 2 Introduction to Data Flow Analysis I. Introduction II. Example: Reaching definition analysis III. Example: Liveness analysis IV. A General Framework (Theory in next lecture) Reading: Chapter

### Decision Trees from large Databases: SLIQ

Decision Trees from large Databases: SLIQ C4.5 often iterates over the training set How often? If the training set does not fit into main memory, swapping makes C4.5 unpractical! SLIQ: Sort the values

### Lecture 1: Course overview, circuits, and formulas

Lecture 1: Course overview, circuits, and formulas Topics in Complexity Theory and Pseudorandomness (Spring 2013) Rutgers University Swastik Kopparty Scribes: John Kim, Ben Lund 1 Course Information Swastik

### A Fast Algorithm For Finding Hamilton Cycles

A Fast Algorithm For Finding Hamilton Cycles by Andrew Chalaturnyk A thesis presented to the University of Manitoba in partial fulfillment of the requirements for the degree of Masters of Science in Computer

Load Balancing Backtracking, branch & bound and alpha-beta pruning: how to assign work to idle processes without much communication? Additionally for alpha-beta pruning: implementing the young-brothers-wait

### Introduction & Overview

ID2204: Constraint Programming Introduction & Overview Lecture 01, Christian Schulte cschulte@kth.se Software and Computer Systems School of Information and Communication Technology KTH Royal Institute

### AN AI PLANNING APPROACH FOR GENERATING BIG DATA WORKFLOWS

AN AI PLANNING APPROACH FOR GENERATING BIG DATA WORKFLOWS Wesley Deneke 1, Wing-Ning Li 2, and Craig Thompson 2 1 Computer Science and Industrial Technology Department, Southeastern Louisiana University,