# Artificial Intelligence - Syllabus

Embark on a profound academic exploration as you delve into the Artificial Intelligence course (AI) within the distinguished Tribhuvan university's CSIT department. Aligned with the 2074 Syllabus, this course (CSC261) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60 + 20 + 20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.

This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.

**Course Description:** The course introduces the ideas and techniques underlying the principles and

design of artificial intelligent systems. The course covers the basics and applications of AI

including: design of intelligent agents, problem solving, searching, knowledge representation

systems, probabilistic reasoning, neural networks, machine learning and natural language

processing.

**Course Objectives:** The main objective of the course is to introduce concepts of Artificial

Intelligence. The general objectives are to learn about computer systems that exhibit intelligent

behavior, design intelligent agents, identify AI problems and solve the problems, design knowledge

representation and expert systems, design neural networks for solving problems, identify different

machine learning paradigms and identify their practical applications.

#### Units

1.1. Artificial Intelligence (AI), AI Perspectives: acting and thinking humanly, acting and thinking rationally

1.2. History of AI

1.3. Foundations of AI

1.4. Applications of AI

Intelligent Agents

2.1. Introduction of agents, Structure of Intelligent agent, Properties of Intelligent Agents

2.2. Configuration of Agents, PEAS description of Agents

2.3. Types of Agents: Simple Reflexive, Model Based, Goal Based, Utility Based.

2.4. Environment Types: Deterministic, Stochastic, Static, Dynamic, Observable, Semi-

observable, Single Agent, Multi Agent

Problem Solving by Searching

3.1. Definition, Problem as a state space search, Problem formulation, Well-defined

problems,

3.2. Solving Problems by Searching, Search Strategies, Performance evaluation of search

techniques

3.3. Uninformed Search: Depth First Search, Breadth First Search, Depth Limited Search,

Iterative Deepening Search, Bidirectional Search

3.4. Informed Search: Greedy Best first search, A* search, Hill Climbing, Simulated

Annealing

3.5. Game playing, Adversarial search techniques, Mini-max Search, Alpha-Beta Pruning.

3.6. Constraint Satisfaction Problems

Knowledge Representation

4.1. Definition and importance of Knowledge, Issues in Knowledge Representation,

Knowledge Representation Systems, Properties of Knowledge Representation Systems.

4.2. Types of Knowledge Representation Systems: Semantic Nets, Frames, Conceptual

Dependencies, Scripts, Rule Based Systems, Propositional Logic, Predicate Logic

4.3. Propositional Logic(PL): Syntax, Semantics, Formal logic-connectives, truth tables,

tautology, validity, well-formed-formula, Inference using Resolution, Backward

Chaining and Forward Chaining

4.4. Predicate Logic: FOPL, Syntax, Semantics, Quantification, Inference with FOPL: By

converting into PL (Existential and universal instantiation), Unification and lifting,

Inference using resolution

4.5. Handling Uncertain Knowledge, Radom Variables, Prior and Posterior Probability,

Inference using Full Joint Distribution, Bayes' Rule and its use, Bayesian Networks,

Reasoning in Belief Networks

4.6. Fuzzy Logic

Machine Learning

5.1. Introduction to Machine Learning, Concepts of Learning, Supervised, Unsupervised and

Reinforcement Learning

5.2. Statistical-based Learning: Naive Bayes Model

5.3. Learning by Genetic Algorithm

5.4. Learning with Neural Networks: Introduction, Biological Neural Networks Vs. Artificial

Neural Networks (ANN), Mathematical Model of ANN, Types of ANN: Feed-forward,

Recurrent, Single Layered, Multi-Layered, Application of Artificial Neural Networks,

Learning by Training ANN, Supervised vs. Unsupervised Learning, Hebbian Learning,

Perceptron Learning, Back-propagation Learning

Applications of AI

6.1. Expert Systems, Development of Expert Systems

6.2. Natural Language Processing: Natural Language Understanding and Natural Language

Generation, Steps of Natural Language Processing

6.3. Machine Vision Concepts

6.4. Robotics

#### Lab works

**Laboratory Work Manual**

Student should write programs and prepare lab sheet for most of the units in the syllabus. Majorly,

students should practice design and implementation of intelligent agents and expert systems,

searching techniques, knowledge representation systems and machine learning techniques. Students

are also advised to implement Neural Networks for solving practical problems of AI. Students are

advised to use LISP, PROLOG, and any other high level language like C, C++, Java, etc. The

nature of programming can be decided by the instructor and student as per their comfort. The

instructors have to prepare lab sheets for individual units covering the concept of the units as per the

requirement. The sample lab sessions can be as following descriptions;

**Unit II: Intelligent Agents (4 Hrs)**

**-** Write programs for implementing simple intelligent agents.

**Unit III: Problem Solving by Searching (12 Hrs)**

**- **Write programs for illustrating the concepts of

- Uninformed Search like DFS, BFS, etc.
- Informed Search like Greedy Best First, A*, etc.
- Game Search like MiniMax Search

**-** Write programs for constraint satisfaction problems like water jug, n-queen problem,

cryptoarithmatic problem, etc.

**Unit IV: Knowledge Representation (12 Hrs)**

**- **Write programs for illustrating the concepts knowledge representation systems

- rule based (program with if then rules)
- predicate logic (using predicates like in Prolog)
- frames (using concepts of class)
- semantic nets (using concepts of graph)

**Unit V: Machine Learning (10 Hrs)**

**-** Write program for implementing Naive Bayes.

**-** Write program for implementing Neural Networks for realization of AND, OR gates.

**-** Write program for implementing Backpropagation Learning.

**Unit VI: Applications of AI (7 Hrs)**

**-** Write program for implementing expert systems like disease prediction, weather forecasting

etc.

**-** Use library tools like NLTK to illustrate concepts of Natural Language Processing.