ACI

Artificial and Computational Intelligence

Artificial and Computational Intelligence #

Artificial and Computational Intelligence studies how agents perceive, reason, search, optimise, learn and act in complex environments.

Core Learning Pages #

#Topic
1Artificial Intelligence
2Intelligent Agents and Environments
3Problem Solving and Uninformed Search
4Informed Search and Heuristic Design
5Local Search and Optimisation
6Evolutionary and Population-Based Search
7Game Playing and Adversarial Search
8Knowledge Representation and Propositional Logic

Modular Structure #

1. Introduction #

  • Artificial Intelligence foundations
  • Overview of modern AI
  • AI application domains

2. Introduction to Intelligent Agents #

  • Notion of agents and environments
  • Rationality
  • Nature of environments
  • Structure of agents
  • Problem formulation
  • Uninformed and informed search algorithms
  • Heuristics
  • Greedy Best-First Search
  • A* Search and optimality of A*
  • Heuristic accuracy and algorithm performance
  • Admissible heuristics from relaxed problems
  • Pattern databases and experience
  • Learning heuristics
  • Local search and optimisation
  • Hill Climbing
  • Local Beam Search
  • Genetic Algorithms
  • Ant Colony Optimisation
  • Neural Architecture Search
  • Neuroevolution

4. Game Playing #

  • Minimax Algorithm
  • Alpha-Beta Pruning
  • Monte Carlo Tree Search
  • Stochastic Games

5. Knowledge Representation Using Logic #

  • Propositional and Predicate Logic
  • TT-Entail and theorem proving
  • Logic representation of intelligent agents
  • Proof by resolution
  • DPLL Algorithm
  • Agents based on Propositional Logic
  • Unification
  • Forward Chaining
  • Backward Chaining
  • Resolution

6. Multi-Agent Decision Making #

  • Properties of multi-agent environments
  • Multi-agent planning
  • Non-Cooperative Game Theory
  • Cooperative Game Theory
  • Collective decision making

7. Probabilistic Representation and Reasoning #

  • Representing knowledge in uncertain domains
  • Semantics of Bayesian Networks
  • Exact inference in Bayesian Networks
  • Approximate inference in Bayesian Networks

8. Probabilistic Reasoning Over Time #

  • Time and uncertainty
  • Inference in temporal models
  • Hidden Markov Models
  • Learning HMMs
  • Dynamic Bayesian Networks

9. Ethics in AI #

  • Explainable AI
  • Logically Explained Networks
  • Explainable Bayesian Networks

Experiments #

#Experiment
1Implement Uninformed Search Algorithms such as BFS and DFS
2Implement the A* Algorithm for Informed Search
3Implement Local Search Techniques using a Genetic Algorithm
4Implement the Minimax Algorithm for Adversarial Search in game playing
5Represent knowledge using logic and perform reasoning using Prolog
6Experiment with Bayesian Networks and exact inference
7Experiment with the application of a Hidden Markov Model in Natural Language Processing

Practical Tools #

  • Programming languages: Python, Prolog
  • Tools and libraries: Jupyter, NumPy, SciPy, Pandas, pgmpy, NLTK
  • Environments: Google Colab, SWI-Prolog Online

Book References #

Primary Textbook #

  1. Stuart Russell and Peter Norvig, Artificial Intelligence: A Modern Approach, 4th Edition, Pearson Education, 2020.

Reference Books #

  1. Ryszard S. Michalski, Jaime G. Carbonell and Tom M. Mitchell, Machine Learning: An Artificial Intelligence Approach, Elsevier, 2014.
  2. Dan W. Patterson, Introduction to AI and Expert Systems, Prentice Hall of India, New Delhi, 2010.
  3. Elaine Rich and Kevin Knight, Artificial Intelligence, 2nd Edition, Tata McGraw Hill Publishing Company, New Delhi, 2003.

Home | Artificial Intelligence

Artificial Intelligence

Artificial Intelligence #

Artificial Intelligence (AI) is concerned with building systems that can perceive, reason, learn, decide and act in ways that achieve useful goals.

This page introduces the foundations of AI, its major application areas, four classic ways of thinking about intelligence, important milestones in its development, and some of the risks that accompany increasingly capable AI systems.

  • Artificial Intelligence: Foundations, Overview of Modern AI & Application Domains.
  • What is Artificial Intelligence: Acting Humanly, Thinking humanly, Thinking rationally, Acting Rationally
  • Foundations of AI , Brief Overview of Modern AI & Application Domains

Learning Objectives #

  • explain what intelligence and artificial intelligence mean in practical terms
  • identify the major disciplines that contributed to AI
  • distinguish thinking humanly, acting humanly, thinking rationally and acting rationally
  • explain the idea behind the Turing Test
  • describe why the rational-agent view is central to modern AI
  • recognise important application areas and risks of AI

Big Picture #

flowchart TD
    A["Artificial Intelligence"] --> B["Human-like"]
    A --> C["Rational"]
    B --> D["Think like humans"]
    B --> E["Act like humans"]
    C --> F["Think rationally"]
    C --> G["Act rationally"]

    style A fill:#C8E6C9
    style B fill:#E1F5FE
    style C fill:#FFF9C4
    style D fill:#EDE7F6
    style E fill:#EDE7F6
    style F fill:#C8E6C9
    style G fill:#C8E6C9

1. What Is Intelligence? #

Intelligence is not a single ability. It involves several capabilities working together, including:

Intelligent Agents and Environments

Intelligent Agents and Environments #

An intelligent agent connects perception with action. It observes an environment through sensors, uses the information it receives to decide what to do, and affects the environment through actuators.

This page develops the core vocabulary for reasoning about intelligent agents: percepts, actions, rationality, performance measures, PEAS and the different properties an environment can have.

  • Intelligent Agents: Notion of Agents and Environments, Rationality
  • Nature of Environments, Structure of Agents

Learning Objectives #

  • explain the relationship between an agent and its environment
  • distinguish sensors, percepts, actions and actuators
  • explain percept sequences and the agent function
  • describe what makes an agent rational
  • distinguish rationality from omniscience
  • compare the five basic agent architectures
  • specify a task environment using PEAS
  • classify environments using standard AI properties
  • explain why environment properties affect agent design

Big Picture #

flowchart TD
    E["Environment"] -->|Percepts| S["Sensors"]
    S --> A["Agent"]
    A --> C["Actuators"]
    C -->|Actions| E

    style E fill:#E1F5FE
    style S fill:#FFF9C4
    style A fill:#C8E6C9
    style C fill:#EDE7F6

Think of an agent as a continuous loop: observe → decide → act → observe again. An action may change the environment, so the next observation may be different.

Problem Solving and Uninformed Search

Problem Solving and Uninformed Search #

A problem-solving agent converts a goal into a precisely defined search problem. An uninformed search algorithm then explores the state space using only the information in that problem definition.

  • Problem Solving Agent
  • Problem Formulation - Examples
  • From Uninformed to Informed Search Algorithms

Learning Objectives #

  • formulate a search problem using five components
  • distinguish a state-space graph from a search tree
  • explain nodes, frontiers and node expansion
  • compare tree search with graph search when states repeat
  • compare BFS, DFS, UCS, DLS and IDS
  • select an appropriate uninformed strategy for a problem
  • distinguish offline and online search

Big Picture #

flowchart TD
    G["Goal"] --> F["Formulate problem"]
    F --> S["Search for actions"]
    S --> X["Execute solution"]

    style G fill:#E1F5FE
    style F fill:#C8E6C9
    style S fill:#FFF9C4
    style X fill:#EDE7F6

1. Problem-Solving Agents ☆ #

A problem-solving agent normally follows three stages:

Informed Search and Heuristic Design

Informed Search and Heuristic Design #

Informed search uses additional knowledge to estimate which states are most promising. A good heuristic can greatly reduce unnecessary exploration while preserving solution quality.

  • Notion of Heuristics
  • Informed Search Algorithms : Greedy best first search, A* search
  • Optimality of A*
  • Heuristic Functions
  • Heuristic Accuracy & Algorithm performance
  • Admissible heuristics from relaxed problems, pattern databases. Experience.
  • Use case : Learning Heuristics using Supervised Learning

Learning Objectives #

  • explain the purpose of a heuristic function
  • compare Greedy Best-First Search and A* Search
  • trace A* using OPEN and CLOSED lists
  • test heuristics for admissibility and consistency
  • explain heuristic dominance and effective branching factor
  • derive heuristics from relaxed problems and subproblems
  • describe pattern databases, landmarks and learned heuristics

1. What Is Informed Search? ☆ #

Uninformed search knows only how to generate successors and recognise a goal. Informed search additionally estimates whether one non-goal state is more promising than another.

Local Search and Optimisation

Local Search and Optimisation #

Local search improves one or a few complete candidate solutions by moving through their neighbourhoods. It is especially useful when the final configuration matters but the path used to reach it does not.

– Local Search Algorithms & Optimisation Problems

  • Hill Climbing Search
  • Local Beam Search
  • Online Search Agents

Learning Objectives #

  • distinguish path optimisation from state optimisation
  • explain states, neighbours and objective functions
  • apply hill climbing and its variants
  • recognise local maxima, plateaus and ridges
  • explain random-restart and stochastic hill climbing
  • describe local and stochastic beam search and trace one beam update

Big Picture #

flowchart TD
    S["Current state"] --> N["Generate neighbours"]
    N --> E["Evaluate values"]
    E --> B["Choose candidate"]
    B --> S
    B --> G["Stop condition"]

    style S fill:#E1F5FE
    style N fill:#FFF9C4
    style E fill:#EDE7F6
    style B fill:#C8E6C9
    style G fill:#C8E6C9

1. Path Optimisation vs State Optimisation ☆ #

In classical route search, the path is the solution. The agent must remember how it travelled from the start to the goal.

Evolutionary and Population-Based Search

Evolutionary and Population-Based Search #

Population-based search explores with many candidate solutions at once. Genetic Algorithms evolve encoded solutions, Ant Colony Optimisation builds paths using collective pheromone signals, and neuroevolution applies evolutionary ideas to neural-network design.

  • Genetic Algorithm

  • Ant Colony Optimisation

  • Neural Architecture Search

  • Use case : Neuro Evolution - Evolutionary computation to design or train neural networks

Learning Objectives #

  • explain the purpose of population-based search
  • describe representation, fitness, selection, crossover and mutation
  • trace the core Genetic Algorithm loop and one numerical iteration
  • explain exploration and exploitation in Ant Colony Optimisation
  • interpret the main ACO transition and pheromone-update equations
  • distinguish NAS, NEAT, DeepNEAT and CoDeepNEAT

Big Picture #

flowchart TD
    P["Population-based search"] --> G["Genetic Algorithms"]
    P --> A["Ant Colony Optimisation"]
    G --> N["Neuroevolution"]
    N --> D["Deep network design"]

    style P fill:#E1F5FE
    style G fill:#C8E6C9
    style A fill:#FFF9C4
    style N fill:#EDE7F6
    style D fill:#C8E6C9

1. Why Use a Population? ☆ #

A single-state method follows one candidate through the search space. A population-based method maintains several candidates in parallel.

Game Playing and Adversarial Search

Game Playing and Adversarial Search #

Game-playing agents search in environments where other agents influence the outcome. In competitive games, a good move must account not only for what the agent wants to achieve, but also for the strongest response an opponent can make.

  • Searching to play games

  • Minimax Algorithm

  • Alpha-Beta Pruning

  • Monte Carlo Tree Search

  • Stochastic Games

Learning Objectives #

  • formulate a game as an adversarial search problem
  • construct a game tree with alternating MAX and MIN turns
  • design and interpret a static evaluation function
  • back up values using Minimax
  • apply Alpha-Beta Pruning and identify cut-offs
  • explain the four phases of Monte Carlo Tree Search
  • calculate an MCTS selection score using UCB1
  • evaluate chance outcomes in a stochastic game

Big Picture #

flowchart TD
    A["Game state"] --> B["Generate legal moves"]
    B --> C["Build game tree"]
    C --> D["Evaluate leaves"]
    D --> E["Choose robust action"]
    E --> A

    style A fill:#E1F5FE
    style B fill:#FFF9C4
    style C fill:#EDE7F6
    style D fill:#FFF9C4
    style E fill:#C8E6C9

In normal search, the agent controls its own actions and the transition model determines what happens next. In adversarial search, another agent chooses actions that may reduce the first agent’s utility.

Knowledge Representation and Propositional Logic

Knowledge Representation and Propositional Logic #

An intelligent agent can store observations and rules, combine them through logical reasoning, and use the resulting conclusions to choose an action. Knowledge representation makes this information explicit so that the agent can reuse what it knows and reason about situations it has not directly observed.

Module topics

  • Overview of Logics- Propositional, Predicate, TT-Entail, Theorem Proving
  • Logic Representation of a sample agent, Proof by resolution, DPLL Algorithm, Agents based on Propositional logic
  • Unification, forward chaining, Backward Chaining, Resolution

The explanations below develop knowledge-based agents and propositional reasoning, using one continuous Wumpus World example.