Download presentation
Presentation is loading. Please wait.
Published byDesirae Liscomb Modified over 9 years ago
1
Tetris – Genetic Algorithm Presented by, Jeethan & Jun
2
Evolutionary Algorithm A commonly used method by which solutions to problems that might otherwise be impossible to solve are solved. Usually be used to find the near-optimal solution for the problems which have many candidate solutions by using the evolutionary principles and methods. Can also be used to tackle problems that humans don't really know how to solve. Widely used with other algorithms in engineering and other fields. Introduction
3
Tetris is a computer game invented by Alexey Pajitnov in 1985. Then it was widely played on many other devices such as game consoles. The game is played on a game-board, usually with a width of 10 and height of 20. There are seven distinct Tetrominoes, each of which occupies four grid cells of the game board. The Tetrominoes move downwards with a certain speed while the player can rotate them and move them horizontally. One Tetrominoes stops moving as soon as it hits the ground or previously placed Tetrominoes. Tetris Game Overview
4
Each fully occupied horizontal line in the game-board is removed and all blocks above slip down by one line. The game ends as soon as a new tetrominoes cannot enter the board. GOAL - The player has to clear as many lines as possible before the board is filled.
5
Types of Tetrominoes
6
Blocks of four (tetrominoes) falling from the top of the board. The player moves and rotates the blocks and stacks them up: Rules
7
black outline is one of the places you can put the shaped block. Rules
8
How to design using AI ? Using Genetic Algorithm - Determine which positions are good and which are bad The AI is going to go through each position and choose the best possible one. Tetris AI - Outline
9
Avoid Penalize height since when all the blocks are stacked up to the top, you lose: Strategies
10
Penalize holes Blockades Strategies
11
Step 1 : Look at the current block and the next block and simulate ALL possible combinations (positions and rotations) of the two blocks. Step 2: Calculate a score for each of the positions. Step 3: Move the block to the position with the highest score and repeat. Algorithm for Tetris
12
To get a score for a position : Score = A * Sum of Heights + B * Number of Clears + C * Number of Holes + D * Number of Blockades For each edge touching, another block the wall the floor
13
Charles Darwin specifies four criteria for the process of natural selection to occur: Variation: Organisms in a population must be slightly different from one another. Inheritance: Traits of parent organisms must be passed onto their offspring. Limited space: Only some of the offspring in any generation is able to survive and pass on its genes. Competition: Individuals that are more fit are more likely to pass on their genes to the next generation. Implementing genetic algorithm
14
1.A chromosome which expresses a possible solution to the problem as a string. ( since there are a set of seven weights,chromosome is an array of seven doubles ) 2. A fitness function which takes a chromosome as input and returns a higher value for better solutions. Factors influencing Natural selection process
15
The fitness function – the score is just the number of lines the AI runs for before it dies. Scoring system : Nintendo’s original scoring system for Tetris — 40 points for one clear, 120 points for two simultaneous clears, 300 for three simultaneous clears, and 1200 for four simultaneous clears. Fitness Function
16
3. A population which is just a set of many chromosomes (sixteen chromosomes ; Initially the chromosomes are filled with randomly generated numbers. Each generation onwards, the population’s chromosomes are derived from the best candidates of the previous generation — but the population size stays the same)
17
Tournament selection: Selection Method
18
A crossover operation which determines how parents combine to produce offspring Cross over is a process of taking more than one parent solutions and producing a child solution from them A mutation operation which determines how random deviations manifest themselves (We have a 10% chance of a mutation – a chromosome that is different from either parent’s) Crossover & Mutation
19
https://www.youtube.com/watch?v=Q0n1cvNLd04 https://www.youtube.com/watch?v=Q0n1cvNLd04 https://www.youtube.com/watch?v=WL8hehlRxq0 https://www.youtube.com/watch?v=WL8hehlRxq0 Demo
20
Using Genetic Algorithm we can find the local optimum solution quickly but its very hard to achieve the global optimum solution – The best solution. Suggestion for better performance: Adjusting mutation rates with generations Instead of a simple weighted approach, add an intermediary intelligent system and optimize that system. E.g. weights of a neural network or parameters of a fuzzy logic system.logic Conclusion
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.