
Explore four main sections of the course—introduction, uninformed search, informed search, and metaheuristics—and learn theory, implementation in Java, and applications like robot path planning.
Clarify what artificial intelligence means and common misconceptions. Highlight major AI branches, especially reasoning and problem solving and search techniques used across robotics, machine learning, and computer vision.
Explore the history of artificial intelligence across three eras, highlighting milestones such as the Turing test and neural networks. See how deep learning and big data define today's AI landscape.
Explore UML class diagrams in Java, visualizing class structure with attributes, methods, and visibility, and modeling associations, inheritance, and interfaces for clean design before implementation.
Examine how search methods classify state-space problems, from initial to goal states, and compare uninformed brute-force searches with informed heuristic approaches in AI.
Explore the theory of breadth-first search, starting from the root, using a queue to visit state-space nodes level by level, and examine practical applications like web crawlers and friend suggestions.
Implement a breadth-first search in Java by building Node, Graph, BFS, and Main classes, using a queue and visited flags to traverse and test a graph.
Implement a web crawler with breadth-first search in Java, starting from a url, using a queue and a visited set to map unique urls by parsing html links.
Explore depth-first search, or DFS, and how it visits the deepest point, backtracks, and uses a stack for implementation. See DFS's role in robot path planning and AI agents.
Implement depth first search in Java using a stack to traverse a node-based graph. Build and test the graph in main, printing the traversal order.
Apply depth first search to solve a maze in java by building a graph of nodes, visualizing the maze, and locating the path from start to target.
Extend the maze graph to run a stack-based depth-first search that returns the visited path from start to target and visually presents the final path.
Explore iterative deepening search, a depth-first based method that increases depth levels to combine memory efficiency with completeness in large state spaces like chess.
Implement iterative deepening search in Java by running depth-first search across increasing depth levels, using a graph with a target to stop when found.
Explore best first search, a heuristic method that uses costs and a cost matrix to guide node selection and prune branches, with implementation in Java.
Implement a Java-based heuristic search to find the shortest path from the root to leaves in a graph using a 2D weight matrix for edge costs.
Master the A* search theory by combining g-cost and heuristic h to form f = g + h, guiding exploration with a priority open list and a closed list.
Develop and visualize a* pathfinding in Java by implementing g, f, and heuristic values for nodes, and rendering a heatmap of distances in the maze.
Explore the A* search algorithm for maze pathfinding in Java, including open and closed sets, priority queue, g/h/f values, and heuristics like Manhattan and Euclidean.
The genetic algorithm mimics natural evolution by leveraging selection, crossover, mutation, and elitism to evolve a population of chromosomes and genes guided by a fitness function, with practical Java implementations.
Develop and test a Java genetic algorithm by implementing chromosome and population classes, fitness evaluation, and operators like mutation, crossover, and elitism to minimize the sum of genes (zero).
Continue building a genetic algorithm in Java by implementing population setup, tournament selection, single index crossover, mutation, and elitism, then test fitness improvements across generations.
Apply a genetic algorithm to robot path planning in a maze, evolving routes with fitness functions and chromosomes, and visually display the best path.
Access free resources to boost your programming career, including a learn-to-code course, a programmer's guide in e-book form, and over 100 videos on career paths and fundamentals.
One area in Java development that is extremely hot right now is Artificial Intelligence.
Java developers who understand how to develop Artificial Intelligence (AI) programs, or use the concepts in their projects, are in extremely high demand, and because there is only a relatively low number of Java developers who know and understand how to add AI to their projects, these skilled Java AI developers can command huge salaries.
This course gives you the chance to join this small pool of well paid developers.
Why learn AI as a Java Developer?
AI adoption across all industries is exploding as more and more companies find out how AI can dramatically improve efficiency and reduce costs. It very much has practical uses in everyday development.
AI is extremely useful in making applications smarter, and one of its main purposes is to allow automation of processes and systems so that complex tasks and functions are carried out in a way that is optimized for productivity and better performance.
What does a Java Developer need to learn to use AI ?
The first thing you need to understand to come up to speed and understand the state-of-the-art AI techniques taught in this course is the history of AI. A comprehensive AI history is included in the course.
You then need to learn the different definitions of AI, which is also included in this course. Examples are also provided to help with understanding.
Next is knowledge of the overall classification of AI algorithms and methods. Again included in this course.
What is covered in the course?
In addition to what has been mentioned above, you will come to understand what Uninformed and Informed search algorithms are, and their differences.
You’ll then learn the most fundamental AI search techniques and be able to implement those techniques in Java.
We'll work with you to show you about a number of uninformed search techniques namely, Exhaustive search, Breadth First search, Depth First search and Iterative Depth First search.
And then follow up with two informed search techniques namely Greedy search and A* search.
By the end of this course, not only will you have a comprehensive understanding of AI, but you'll be able to apply these concepts in your own Java projects.
This is the very first Udemy course dedicated to AI search techniques.
Included in this course are real-world case studies about robot path planning and web crawlers.
You can check the syllabus on this page for a complete list of topics.
Is this course for you?
This is not a course for beginners. You need to have an understanding of Java, the Java GUI and the Java API. You should be comfortable with Java object-oriented programming.
However, no Artificial Intelligence experience is required or assumed when you start the course.
Who is the instructor?
Your instructor in this course is Dr Seyedali Mirjalili. He is a lecturer and researcher with over 10 years of experience, who’s internationally recognised for his advances in Swarm Intelligence (SI) and optimisation.
He has published more than 80 journal articles in the AI field and has over 6000 citations.
He is also an editor of four leading AI journals and reviewer of over 100.
During his career Dr Seyedali has built a name for himself as one of the most-cited researchers in Artificial Intelligence globally.
As you can see the instructor is highly skilled and an expert in his field, and perfectly positioned to teach you about Search algorithms with AI using Java in this course.
What if you have questions?
As if this course wasn’t complete enough, Dr Seyedalil offers full support, and will answer any questions you may have.
This means you’ll never find yourself stuck on one lesson for days on end. With his guidance, you’ll progress smoothly through this course without any major roadblocks.
There’s no risk either!
This course comes with a full 30 day money-back guarantee. Meaning if you are not completely satisfied with the course or your progress, simply let the instructor know and he will refund you 100%, every last penny no questions asked.
You either end up with AI skills, go on to develop great programs and potentially make an awesome career for yourself, or you try the course and simply get all your money back if you don’t like it…
You literally can’t lose.
Ready to get started, developer?
Enrol now using the “Add to Cart” button on the right, and get started on your way to creative, advanced AI brilliance. Or, take this course for a free spin using the preview feature, so you know you’re 100% certain this course is for you.
See you on the inside (hurry, the AI class is waiting!)