
Knowledge, Reasoning and Uncertainty
Code: 102786Credits: 6
| Degree programme | Type | Course |
|---|---|---|
| Computer Engineering | OB | 3 |
| Computer Engineering | OP | 4 |
Contact lecturer
- Name :
- Lluis Gomez Bigorda
- Email :
- luis.gomez@uab.cat
Teaching staff
- Lluis Gomez Bigorda
Group languages
You can consult this information at the end of the document.
Prerequisites
There are no prerequisites. However, it is recommended, to take this subject, that the minimum competences have been reached in the subjects of "Fonamaments d'Informàtica" and "Metodologia de la Programació" (first year), as well as "Intel·ligència Artificial" and "Laboratori de Programació" (second year). The baisc concepts on calculs and lineal algebra are a must.
Objectives
The subject of Coneixment, Raonament i Inertesa, is framed within the mention of "Computing", along with the subjects of " Aprenentatje Computacional ", " Visió per Computador " and " Robòtica, Llenguatje i Planificació ". Due to its subject matter, this subject is closely related to the subject of "Artificial Intelligence" of the second year and " Aprenentatje Computacional " of the third year. Likewise, the developed knowledge serves in part of the content of the subject of " Robòtica, Llenguatje i Planificació ".
The subject aims, both expand some of the topics developed during "Artificial Intelligence", and introduce new problems associated with artificial intelligence, mainly the reasoning with partial or 'non exact' knowledge.
The first part will deal with the expansion of the search mechanisms developed in the second year, introducing generic algorithms to solve constraint satisfaction problems as a reasoning mechanism (i.e. production planning, maximizing efficiency in logistics decisions, etc.) . In a second part the bases for representation of knowledge associated with problems are given to be able to make decisions for their resolution. The last part will introduce the basic techniques to be able to extract information, and therefore solutions, when the information that is available or not is completely reliable or is not perfectly defined (Ex: weather forecasts, voice recognition, when a production is can consider good or not and to what extent, etc). In these last two sections we focus on algorithms and representations that are driven by data, from which the modeling of the world they represent is extracted.
One of the objectives of the subject is that the student knows how to face the solution to problems in different contexts of thetreaties, from identifying the needs of knowledge representation and, according to this, applying the most appropriate techniques.
Learning outcomes
- Communicate efficiently, orally or in writing, knowledge, results and skills, both in the professional environment and before non-expert audiences.
- Use effIciently ICT communication and transmission of ideas and results.
- Develop a mode of thought and critical reasoning.
- Implement heuristics to speed up searches for optimum solutions in case studies.
- Develop mechanisms to search for state space through the representation and classification of knowledge.
- Know and understand techniques for the representation of human knowledge.
- Accept and respect the role of the various team members, and its different levels of dependence.
Contents
The course content is structured in three main parts, increasing in complexity throughout the semester.
1) REASONING BASED ON SEARCH ALGORITHMS:
- Constraint Satisfaction Problems (CSP)
- Local search algorithms
- Simulation-based search: introduction to Monte Carlo Tree Search (MCTS)
2) KNOWLEDGE REPRESENTATION AND DECISION-MAKING:
- Model evaluation: cross-validation, bootstrap, overfitting, bias/variance
- Decision trees
- Ensembles: Random Forests and other model aggregation techniques
3) REASONING UNDER UNCERTAINTY:
- Bayesian reasoning
- Naive Bayes classifier
- Bayesian networks and Hidden Markov Models (HMMs)
- Uncertainty in modern learning systems: Deep Ensembles and Monte Carlo Dropout
Learning activities and methodology
| Title | Hours | ECTS | Learning outcomes |
|---|---|---|---|
| Setup an ddevelopment of practical projects | 52 | 2.08 | 1, 2, 3, 4, 5, 6, 7 |
| Individual study | 30 | 1.2 | 3, 4, 5, 6 |
| Lectures | 22 | 0.88 | 3, 4, 5, 6 |
| Problem seminars | 12 | 0.48 | 1, 2, 3, 4, 5 |
| Lab practicums | 12 | 0.48 | 3, 4, 5, 6 |
All the information of the subject and the related documents that the students need will be found in the page Caronte (http://caronte.uab.cat/), the menu of the subject Knowledge, reasoning and uncertainty. The different activities that will be carried out in the subject are organized as follows:
Lectures
The main concepts and algorithms of each theory topic will be presented. These subjects suppose the starting point in the work of the subject.
Problem seminars
They will be classes with small groups of students, which facilitate the interaction, or of individual character, according to the cases. In these classes, practical cases will be considered that require the design of a solution in which the methods seen in the theory classes are used. It is impossible to follow the kinds of problems if the contents of the theory classes are not followed. The result of these sessions is the resolution of the problems that must be delivered on a weekly basis. The specific mechanism for the delivery, and the evaluation process, will be indicated on the web page of the subject (Charon space).
Laboratory practicum
The working groups will be formed by groups of 3-4 students and should form the second week of the course. These working groups must be maintained until the end of the course and they must self-manage: role distribution, work planning, assignment of tasks, management of available resources, conflicts, etc. Although the teacher will guide the learning process, his intervention in the management of the groups will be minimal.
One of the project in this lab sessions will be individual.
At the beginning of every 2 sessions of lab, the problems to be solved will be presented and the students will define their own project. Throughout the semester, students will work in cooperative groups and should analyze the chosen problem, design and implement solutions based on different computational learning algorithms seen in class, analyze the results obtained in eachof themethods and defend their project inpublic.
To develop the project, the groups will work autonomously and the practice sessions will be devoted mainly to answer questions with the teacher who will monitor the status of the project, indicate errors to be corrected, propose improvements, etc.
Some of the sessions will be marked as control sessions in which some part of the project must be delivered. In these sessions the groups must explain the work done and the teacher will ask questions to all group members to assess the work done. Attendance at these sessions is mandatory.
In the last session of the last practicum project, the groups will make a presentation of the project where they will explain the project developed, the solution adopted and the results obtained. In this presentation each member of the group must make a part of the presentation.
Assessment
Continuous assessment activities
| Title | Weight | Hours | ECTS | Learning outcomes |
|---|---|---|---|---|
| Individual evaluation test | 40% | 7 | 0.28 | 3, 5, 6 |
| Problem portfolio | 5% | 5 | 0.2 | 3, 6 |
| Practicum defense (report + code + presentation + follow-up) | 55% | 10 | 0.4 | 1, 2, 3, 4, 5, 6, 7 |
Evaluation Activities and Instruments
To assess the achievement of the knowledge and competencies associated with this course, an evaluation mechanism is established that combines the assimilation of knowledge, problem-solving ability, and, significantly, the ability to generate computational solutions to complex problems, both in groups and individually.
With this objective, the evaluation is divided into three parts:
Evaluation of theoretical-practical content
The final content grade will be calculated from several partial tests:
Content Grade = 1/N * Test_i
The number of tests may vary and there will be at least 2. To obtain a content grade, the grade for each of the tests must be higher than 4.
The partial tests will take place during the course and may be practical in nature (proposing an algorithm to solve a problem statement, solving specific problems), or conceptual in content, answering various questions about the material covered in the "theory" sessions.
These tests are intended to be an individualized assessment of the student's ability to solve problems using the techniques explained in class, as well as to evaluate the level of conceptualization the student has developed of the techniques covered.
Make-up (resit) tests: If the content grade does not reach the adequate level in any of the tests, in order to obtain a final grade sufficient to demonstrate achievement of the knowledge, students may sit the make-up tests of the course's examination period to be assessed on the content covered in the part(s) not passed. If a student sits a resit to improve their grade, the higher grade prevails.
There are no exemptions (validations) if the theory part was passed in previous years.
Evaluation of the practical projects
The evaluation of each project will include:
- Joint evaluation of the project: a single grade for all members of the working group, assessing the overall result of the project, the quality of the code, the general structure of the final presentation, and the documents delivered throughout the project.
- Individual evaluation of each group member: individual work will be assessed based on the answers to questions in the monitoring sessions and in the final project presentation.
- Peer evaluation: a brief confidential questionnaire rating each group member's contribution to the final result.
The project grade will take into account the quality of the computational solution (code), the experimentation, the documentation, and the defense.
The final practical grade will be the average of the project grades, with a minimum of 3.5 required in each of them. If this minimum is not achieved in any of the projects, the final practical grade will be capped at 3.5.
If any of the practical projects is not passed, resubmission of the code and the report of the failed projects will be allowed, but not the oral presentation, if the failed project includes one.
Repeating students who passed the practical part (minimum 6) in the previous year exclusively may resubmit the previous year's practical work, adding functionality or modifying the data in agreement with the practical sessions instructor, provided the project content is the same as or similar to the previous year's. Under no circumstances may these students form groups with first-year students.
There may be group projects and individual projects. Obviously, in the latter case, all group grades will become individual grades.
Evaluation of work in the problem-solving seminars
The problems are intended to get students continuously engaged with the course content through small problems that familiarize them directly with the application of the theory. As evidence of this work, students are asked to submit a portfolio in which they will have kept the problems they have completed. This portfolio will have a weekly digital submission on the virtual campus. Students can continuously self-assess, as the solutions to each set of problems will be available once the submission period has ended. Together with the tutoring hours, in case doubts arise, this is sufficient for each student to identify their weak points.
Problems Grade = Portfolio evaluation
Final grade
The final course grade is obtained by combining the evaluation of these 3 activities as follows:
Final Grade = (0.35 × Content) + (0.55 × Project) + (0.1 × Portfolio)
Conditions for passing the course:
- The final grade of the individual assessment tests must be greater than or equal to 4 in order to pass the course.
- The project grade must be greater than or equal to 6 in order to pass the course.
If the grade obtained by applying the formula in the previous section ("final course grade") were above 5 but the required minimum had not been met in any of the parts, the final grade in the academic record will be 4.5.
As many distinctions (matrícules d'honor) will be awarded as current regulations allow, provided the grade is above 9.0. Distinctions will be assigned in order of grades. If there are multiple candidates with the same evaluation eligible for a distinction, supplementary activities will be proposed to determine the best records.
A student will be graded as "Not Assessable" if they have no assessed part of either the theoretical or the practical content.
Important notices
- The continuous assessment and assignment submission dates, as well as all teaching materials, will be published on the course site (http://cv.uab.cat/), in this course's space, and may be subject to scheduling changes for reasons of adaptation to possible incidents. Any such changes will always be announced on cv.uab.cat, as the Virtual Campus is understood to be the usual mechanism for exchanging information between instructor and students.
- This course does not offer the single (one-off) assessment system.
- For each evaluation activity, a place, date, and time for review will be indicated, at which the student can review the activity with the instructor. In this context, complaints about the activity grade may be made, which will be evaluated by the teaching staff responsible for the course. If the student does not attend this review, the activity will not be reviewed later.
Without prejudice to other disciplinary measures deemed appropriate, and in accordance with current academic regulations, irregularities committed by a student that could lead to a change in the grade of an assessable activity will be graded with a zero (0). Evaluation activities graded in this way and by this procedure will not be recoverable. If passing any of these evaluation activities is necessary to pass the course, the course will be failed directly, with no opportunity to recover it in the same academic year. These irregularities include, among others:
- total or partial copying of a practical assignment, report, or any other evaluation activity;
- allowing others to copy;
- submitting group work not done entirely by the group members (applied to all members, not only those who did not work);
- presenting materials produced by third parties as one's own, even if they are translations or adaptations, and in general work with elements that are not original and exclusive to the student;
- having digital and/or communication devices (such as mobile phones, smartwatches, camera pens, etc.) accessible during individual theoretical-practical assessment tests (exams);
- talking to classmates during individual theoretical-practical assessment tests (exams);
- looking at other classmates' assessment tests (exams) during the exam, even if no copying took place;
- looking at writings related to the subject on the desk, sheets, wall, etc., during the theoretical-practical assessment tests (exams), even if no copying took place.
The numerical grade in the academic record will be the lower value between 3.0 and the weighted average of the grades if the student has committed irregularities in an assessment act (and therefore passing by compensation will not be possible). In short: copying, allowing copying, or plagiarizing (or attempting to) in any of the evaluation activities is equivalent to a FAIL with a grade below 3.5.
Use of Generative AI
In this course, the use of Artificial Intelligence (AI) technologies is permitted as an integral part of the development of the work, provided that the final result reflects a significant contribution by the student in terms of analysis and personal reflection. The student must clearly identify which parts were generated with this technology, specify the tools used, and include a critical reflection on how these have influenced the process and the final result of the activity. Lack of transparency in the use of AI will be considered a breach of academic honesty and may result in a penalty on the activity grade, or greater sanctions in serious cases.
Bibliography
Web links
- Subject web page - UAB Virtual Campus: http://cv.uab.cat
- Artificial Intelligence: A Modern Approach. http://aima.cs.berkeley.edu/
Basic Bibliography
- S. Russell, P. Norvig. Artificial Intelligence: A Modern Approach. Ed. Prentice Hall, Second Edition, 2003. (Existeix traducció al castellà: Inteligencia artificial: Un Enfoque Moderno)
- T. Mitchell. Machine Learning. McGraw Hill. 1997.
Additional Bibliography
- C. Bishop. Pattern Recognition and Machine Learning. Springer-Verlag New York, Inc. 2006
- The digital references used are provided in the material of each topic.
Software
The practices must be solved in the Python programming language. If support code is provided it will be in this same language.
Course groups and languages
The information provided is provisional until November 30. After this date, you will be able to consult the language of each group through this link. To access the information, you will need to enter the course CODE
| Type of teaching | Group | Language | Semester | Shift |
|---|---|---|---|---|
| (TE) Theory | 440 | Catalan | first semester | morning-mixed |
| (PAUL) Classroom practices | 441 | Catalan | first semester | morning-mixed |
| (PLAB) Practical laboratories | 441 | Catalan | first semester | morning-mixed |
| (PAUL) Classroom practices | 442 | Catalan | first semester | morning-mixed |
| (PLAB) Practical laboratories | 442 | Catalan | first semester | morning-mixed |
| (PLAB) Practical laboratories | 443 | Catalan | first semester | morning-mixed |