Disclosure: when you buy through links on our site, we may earn an affiliate commission.

Artificial Intelligence I: Meta-Heuristics and Games in Java

Graph Algorithms, Genetic Algorithms, Simulated Annealing, Swarm Intelligence, Minimax, Heuristics and Meta-Heuristics
(679 reviews)
7,161 students
Created by


CourseMarks Score®







Platform: Udemy
Video: 9h 10m
Language: English
Next start: On Demand

Table of contents


This course is about the fundamental concepts of artificial intelligence. This topic is getting very hot nowadays because these learning algorithms can be used in several fields from software engineering to investment banking. Learning algorithms can recognize patterns which can help detecting cancer for example. We may construct algorithms that can have a very  good guess about stock price movement in the market.
Section 1 – Breadth-First Search (BFS)
•what is breadth-first search algorithm
•why to use graph algorithms in AI
Section 2 – Depth-First Search (DFS)
•what is depth-first search algorithm
•implementation with iteration and with recursion
•depth-first search stack memory visualization
•maze escape application
Section 3 – Iterative Deepening Depth-First Search (IDDFS)
•what is iterative deepening depth-first search algorithm
Section 4 – A* Search Algorithm
•what is A* search algorithm
•what is the difference between Dijkstra’s algorithm and A* search
•what is a heuristic
•Manhattan distance and Euclidean distance
Section 5 – Optimization Approaches
•basic optimization algorithms
•brute-force search
•hill climbing algorithm
Section 6 – Simulated Annealing
•what is simulated annealing
•how to find the extremum of functions
•how to solve combinatorial optimization problems
•travelling salesman problem (TSP)
Section 7 – Genetic Algorithms
•what are genetic algorithms
•artificial evolution and natural selection
•crossover and mutation
•solving the knapsack problem
Section 8 – Particle Swarm Optimization (PSO)
•what is swarm intelligence
•what is the Particle Swarm Optimization algorithm
Section 9 – Game Trees
•what are game trees
•how to construct game trees
Section 10 – Minimax Algorithm and Game Engines
•what is the minimax algorithm
•what is the problem with game trees?
•using the alpha-beta pruning approach
•chess problem
Section 11 – Tic Tac Toe with Minimax
•Tic Tac Toe game and its implementation
•using minimax algorithm
In the first chapter we are going to talk about the basic graph algorithms. Several advanced algorithms can be solved with the help of graphs, so as far as I am concerned these algorithms are the first steps.
Second chapter is about local search: finding minimum and maximum or global optimum in the main. These searches are used frequently when we use regression for example and want to find the parameters for the fit. We will consider basic concepts as well as the more advanced algorithms: heuristics and meta-heuristics.
The last topic will be about minimax algorithm and how to use this technique in games such as chess or tic-tac-toe, how to build and construct a game tree, how to analyze these kinds of tree like structures and so on. We will implement the tic-tac-toe game together in the end.
Thanks for joining the course, let’s get started!

You will learn

✓ Get a good grasp of artificial intelligence
✓ Understand how AI algorithms work
✓ Understand graph search algorithms – BFS, DFS and A* search
✓ Understand meta-heuristics
✓ Understand genetic algorithms
✓ Understand simulated annealing
✓ Understand swarm intelligence and particle swarm optimization
✓ Understand game trees
✓ Understand minimax algorithm and alpha-beta pruning
✓ Tic Tac Toe game from scratch with minimax algorithm


• Basic Java (SE)

This course is for

• This course is meant for students or anyone who interested in algorithms and optimization approaches and have some background in basic Java
Software Engineer
My name is Balazs Holczer. I am from Budapest, Hungary. I am qualified as a physicist. At the moment I am working as a simulation engineer at a multinational company. I have been interested in algorithms and data structures and its implementations especially in Java since university. Later on I got acquainted with machine learning techniques, artificial intelligence, numerical methods and recipes such as solving differential equations, linear algebra, interpolation and extrapolation. These things may prove to be very very important in several fields: software engineering, research and development or investment banking. I have a special addiction to quantitative models such as the Black-Scholes model, or the Merton-model.
Take a look at my website if you are interested in these topics!
Browse all courses by on Coursemarks.
Platform: Udemy
Video: 9h 10m
Language: English
Next start: On Demand

Students are also interested in