Artificial Intelligence
Keywords |
Classification |
Keyword |
OFICIAL |
Artificial Intelligence |
Instance: 2014/2015 - 2S ![Requerida a integração com o Moodle Ícone do Moodle](/feup/pt/imagens/MoodleIcon)
Cycles of Study/Courses
Acronym |
No. of Students |
Study Plan |
Curricular Years |
Credits UCN |
Credits ECTS |
Contact hours |
Total Time |
MIEIC |
158 |
Syllabus since 2009/2010 |
3 |
- |
6 |
56 |
162 |
Teaching language
Portuguese
Objectives
This course provides a set of subjects (topics) that are the core for the Intelligent System area.
Aims:
- To know what characterizes and distinguishes AI and how to apply it.
- To know how to automatically represent, acquire, manipulate and apply knowledge using Computational Systems.
- To develop a small project using AI techniques.
Percentual Distribution: Scientific component: 60%; Technological component: 40%
Learning outcomes and competences
At the end of the course, the student is expected to know how to automatically represent, acquire, manipulate and apply knowledge. Namely, the student should be able to:
- Know how to represent inexact knowledge.
- Compare heuristic and systematic methods in the search for solutions.
- Develop interfaces in Natural Language and inference engines for Expert Systems.
- Get acquainted with inductive and deductive learning algorithms.
Working method
Presencial
Pre-requirements (prior knowledge) and co-requirements (common knowledge)
Knowledge of object-oriented and logic-based programming.
Program
I INTRODUCTION
- Objectives
- Methodology (teaching and evaluation)
- Artificial Intelligence evolution
- Documentation
II BASIC NOTIONS
- Definitions: what is AI?
- Applications: in what domains?
- Basic notions of Agent
- Agent architectures: from Reactive to Cognitive Agents
III PROBLEM SOLVING METHODS
- Production Systems
- Control Strategies of Systematic Search
- Backward and Forward chaining
- Depth-first and Breadth-first
- Hill climbing
- Search by trying: backtracking
- Graph search
- “Branch and Bound” algorithm
- Heuristic search: "Best-first"
- A* algorithm and graceful decay of admissibility
- Means-Ends Analysis
- Constraint satisfaction methods: relaxation principles
- Game-playing as Search Problems: Minmax, Alpha-Beta pruning
- Examples in Prolog of basic strategies: depth-first and breath-first
- Evolutionary algorithms
IV INTRODUCTION TO KNOWLEDGE REPRESENTATION
- Definition of a Knowledge Representation System
- Knowledge representation structures: Production rules; Associative Networks - Frames; Scripts
- Predicate Logic and other logics
- Uncertain reasoning: Probabilistic Model; Certainty Factors; Dempster-Schafer model; Fuzzy logic
V KNOWLEDGE ENGINEERING
- Knowledge-Based Systems
- Expert Systems: Definition; Structure; Knowledge Representation and Meta-Knowledge; Inference engine and Explanation building; Expert System cases example: ORBI; SMYCIN; ARCA
- Demonstrations
- Generic Systems: "Shells"
VI INTRODUCTION TO NATURAL LANGUAGE PROCESSING
- Objectives and difficulties
- Syntactic and Semantic Analysis
- ATN; Semantic Grammars; Case Grammars
- Classical approach and the use of Logics
- Definite Clause Grammar; some examples in portuguese
- Extraposition Grammars
VII AUTOMATIC LEARNING
- Types of Learning
- Learning concepts; learning by example; learning by analogy; Explanation-Based Learning: Algorithms for EBG, mEBG e IOL; Examples.
- Inductive Learning: ID3 and C4.5, advantages and drawbacks
- Application examples
VIII INTRODUCTION TO NEURAL NETWORKS
- Basic principles (processing element; network structure; learning laws)
- Fundamental Algorithms (perceptron, back-propagation)
- Application example
Mandatory literature
Stuart Russell, Peter Norvig;
Artificial intelligence. ISBN: 978-0-13-207148-2
Complementary Bibliography
Bratko, Ivan;
Prolog programming for artificial intelligence, N. ISBN: 0-201-40375-7
J. Ross Quinlan; Programs for Machine Learning, Morgan Kaufmann Publishers, 1998
Ernesto Costa e Anabela Simões;
Inteligência artificial. ISBN: 972-722-269-2
Elaine Rich, Kevin Knight;
Artificial intelligence. ISBN: 0-07-100894-2
Teaching methods and learning activities
Theoretical classes: exposition with interaction. Theoretical-practical classes: programming exercises in Prolog and project development.
Software
Java, C/C++
Prolog: SWI, Sicstus, LPA
keywords
Technological sciences > Engineering > Knowledge engineering
Evaluation Type
Distributed evaluation with final exam
Assessment Components
Designation |
Weight (%) |
Exame |
50,00 |
Teste |
15,00 |
Trabalho escrito |
15,00 |
Trabalho laboratorial |
20,00 |
Total: |
100,00 |
Amount of time allocated to each course unit
Designation |
Time (hours) |
Estudo autónomo |
50,00 |
Frequência das aulas |
56,00 |
Trabalho laboratorial |
56,00 |
Total: |
162,00 |
Eligibility for exams
Not exceed the absence limit allowed and have a minimum of 37,5% in the distributed classification (DC)
Calculation formula of final grade
Distributed Classification (DC): weight=50%, including (% related to the distributed classification):
- Interim Report + Intercim work (15%);
- Assignment’s quality and presentation performance (40%);
- Final Report (15%);
- Evaluation during classes: mini-exams (30%)
Test/Exam (EC): weight=50% (2h30m test with consultation).
To pass, the student must have a minimum of 37.5% in each of the two evaluation components, distributed (DC) and exam (EC).
Examinations or Special Assignments
One practical assignment and the respective report (weight=50%) and an exam (weight=50%).
To get approved, the student must have a grade equal or higher to 37,5% in each of the evaluation items.
Special assessment (TE, DA, ...)
One practical assignment and the respective report (weight=50%) and an exam (weight=50%).
To be approved, the student must have a grade equal or higher to 37,5% in each of the evaluation items.
Classification improvement
Assignment, exam or both.
Mini-exams' grades are not taken into account for this purpose. Its valuation will be added to the Exam component.