Research Trends in Artificial Intelligence Muhammad Younas Hassan Javid Danish Shah 05020110 05020304 06020225 Maze – Solving Robot Robot’s Tasks The robot is a simple machine. It can move north, south, east or west (NSE or W). It has no sensory input and does not have conditional moves; its behavior is determined by a list of which moves it is to take while in the maze. The maze has one entrance (where the robot starts) and one goal (the robot's goal). The closer the robot gets to the goal in the fewest number of moves, the better its score will be. Maze – Solving Robot Robot’s Tasks The robot will simply be represented as a list of moves. e.g (n e e s s) etc. Maze Size can be variable. Such as a 4*4 maze can look like this. E is the entrance, and R is where the robot current position after executing the moves given above. Since the robot cannot see anything, it merely moves until it reaches the goal. How close it gets to the goal determines its score. If it reaches the goal, it gets a high score and extra pointes are awarded when it reaches the goal with the fewer steps. GOAL WALL ENTRANCE WALL R Maze – Solving Robot Definitions Genome The list of a population member's genes. Genes are 1s and 0s. For example:(1 0 0 1 1 0 1 1) Phenome Phenome is an expression of an individual's genome in the "world." In this case, the phenome is the form of what's being evolved, or a description of the behavior of the individual, and it comes directly from the genome. The robot's genome would be a list of its moves, decoded from the genome. If every 2 bits in the genome encoded for one move (00 = n, 01 = s, 10 = e, 11 = w), then the above genome's phenome would be GENOME= (1 0 0 1 1 0 1 1) PHENOME=(e s e w) Maze – Solving Robot Definitions Fitness Fitness tells how good a genome is. Genomes are sometimes scored directly, but often they are converted into a phenome and the phenome is given a score. For example in GENOME= (1 0 0 1 1 0 1 1) that is PHENOME=( e s e w ) if the robot's moves of e, s, e, w lead it closer to the exit, it would have a higher score than one that leads it to some dark corner of the maze far away from the goal. Individual Genetic Algorithms will operate on individuals. An individual will be a list of the fitness, genome and corresponding phenome. For example (4 (1 0 0 1 1 0 1 1) (e s e w)) Population is group of individuals. The GA operates on these, producing their phenomes from genomes, evaluating each one's fitness, then selecting mates and producing new individuals for the next generation. This will be a list of individuals. Maze – Solving Robot The Genetic Algorithm The Genetic Algorithm will begin with an initial population with randomly generated genomes. It generates phenomes for each genome, then evaluates each individual's fitness based on its phenome. During each run, we will apply the genetic operations and delete/create new individuals. Maze – Solving Robot The Genetic Algorithm Some of the routines that we have outlined and implemented are so far are. 1. Mutate Takes a genome, returns the same genome with some of the bits flipped. 2. Cross Over Takes 2 genomes, performs one-point crossover on them to produce two new genomes. 3. Mate Takes 2 individuals and performs crossover on their genomes to get 2 new genomes. It then mutates the new genomes. Finally, it makes 2 new individuals with dummy values for fitness and phenome. Maze – Solving Robot The Genetic Algorithm Selecting an Individual Takes a population of individuals. Chooses a single individual randomly and returns that individual. This random choice is based on the fitness value of a genome in the population Random Population Takes a population size and number of genes in each genome and generates a population of individuals with random genomes Random Genome This function takes a genome-length and returns a random genome of that length. ……………………………………… Maze – Solving Robot The Genetic Algorithm We are almost done with the research for our project and we have outlines almost complete pseudo code. We have started working on implementation and have implemented some of the routines (functions) that were listed before. Hopefully by next presentation we will come up with more routines implemented. References Embodied Intelligence at www.ai.mit.edu. Genetic Algorithms at genetic algorithm@Everything2.com Maze Solving Algorithms at www.aboutAI.net. Artificial Intelligence at www.indiana.edu John Knight page at www.doe.carleton.ca. Tony Pipes page at www.ias.uwe.ac.uk.