PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

Elenco notifiche



Computational intelligence

01URROV, 01URRSM

A.A. 2023/24

Course Language

Inglese

Degree programme(s)

Master of science-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino
Master of science-level of the Bologna process in Data Science And Engineering - Torino

Course structure
Teaching Hours
Lezioni 42
Esercitazioni in laboratorio 18
Lecturers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
Squillero Giovanni Professore Ordinario IINF-05/A 42 0 9 0 4
Co-lectures
Espandi

Context
SSD CFU Activities Area context
ING-INF/05 6 B - Caratterizzanti Ingegneria informatica
2023/24
The course introduces the basic principles of various computational methods of data processing that are commonly grouped under the umbrella term “computational intelligence”. Students will acquire both theoretical and practical knowledge on methods that exploit bottom-up approaches and (meta)heuristics, where solutions are searched or built through trial-and-error. They will understand the principles of local search, evolutionary computation, multi-agent systems, and policy learning. At the same time, the course surveys how the different types of information should be encoded and handled by the different algorithms, allowing students to effectively tackle problems involving highly-structured, uncertain (possible), and imprecise (fuzzy) information.
The course introduces various computational methods and data processing that can be labeled "artificial intelligence". In more details students will: gain expertise on top-down and bottom-up methods where solutions are searched or built through trial-and-error; acquire knowledge on approximate optimization techniques and exploit the relationship between optimization and learning; understand the concepts of path-, local-, and policy-search; learn how to tackle problems involving highly-structured, uncertain (possible), and imprecise (fuzzy) information. The course also encompasses general multi-agent systems and a range of algorithms inspired by natural systems, such as genetic algorithms, genetic programming, and swarm optimization. The lectures will cover theoretical foundations, algorithm design, implementation, and applications to real-world problems.
The knowledge and skills required to design and implement effective and efficient computational-intelligence solutions to problems for which a direct solution is impractical or unknown. • Implement from scratch single-state and simple population-based methods when required • Tweak and exploit existing libraries for evolutionary optimization • Choose/evaluate pros and cons of alternatives knowledge representations • Design multi-agent systems
The knowledge and skills required to design and implement in Python "intelligent", effective, and efficient solutions to problems for which a direct solution is either impractical or unknown. In more details: Knowledge and understanding * Explain basic concepts of CI * Account for the historical development, current situation, and future prospects for some sub-area of CI * Compare advantages and disadvantages of basic CI algorithms * Choose/evaluate pros and cons of alternatives knowledge representations Skills and abilities * Choose appropriate algorithms for solving given problems in a memory- and time-efficient manner * Implement from scratch single-state and simple population-based methods in Python * Tweak and exploit existing libraries * Design multi-agent systems Judgement and approach * Summarize and constructively criticize scientific texts.
• Experience with Python 3 • Suggested: Algorithms and Programming • Not required: mathematics and statistics • Not required: knowledge of specific toolkits (e.g., Jenetics, scikit-learn, Open BEAGLE, PyTorch, Keras/TensorFlow)
* Some programming experience with Python 3 (a crash course on advanced topics is included) * Minimal experience with GitHub (e.g., communicating through issues and pull requests) * Suggested: Algorithms and Programming * Not required: mathematics and statistics * Not required: knowledge of specific toolkits (e.g., Jenetics, scikit-learn, Open BEAGLE, PyTorch, Keras/TensorFlow)
• Introduction • What is "Computational Intelligence"? (and what is “Artificial Intelligence”? Weak AI vs. Strong AI, the Turing Test) • Metaheuristics (exact vs. approximate, ad-hoc heuristics) • Solving problems by searching; trial n’ error vs. learning vs. evolution • Evolutionary Computation (bio-inspired methodologies, natural selection) • Single-State Methods • Hill-climbing, simulated annealing, iterated local search, variable neighborhood search • Simple Evolution Strategies: (1+1), (1+λ) and (1,λ) • Population Methods • Unified approach to Evolutionary Algorithms • Parameter optimization (Evolution Strategies, Differential Evolution) • Symbolic regression (Genetic Programming) • Swarm intelligence (Ant Colony Optimization, Particle Swarm Optimization) • Memetic Algorithms (hybridization) • Model fitting (Estimation of Distribution Algorithm) • Multi-objective optimization • Representation problems; genotype space and operators • Knowledge representation • Trivial (bit strings, integer, real numbers); Permutations; Graphs • Fuzzification • Policy optimization • Evolutionary programming • Reinforcement learning, Q-Learning • Multi agent systems • Artificial Immune System and Learning Classifier Systems • Simple agents • Learning agents • Games (Adversarial Search)
Introduction (10h) * What is "Computational Intelligence"? (included: what is "Artificial Intelligence"? Weak AI vs. Strong AI; the Turing Test; ...) * Symbolic vs. Sub-symbolic intelligence * Solving problems by searching; trial n'error vs. learning vs. evolution * Metaheuristics (exact vs. approximate, ad-hoc heuristics) * Evolutionary Computation (bio-inspired methodologies, natural selection) Single-State Methods (10h) * Hill-climbing, simulated annealing, iterated local search, variable neighborhood search * Simple Evolution Strategies: (1+1), (1+λ) and (1,λ) Population Methods (15h) * Unified approach to Evolutionary Algorithms * Parameter optimization (Evolution Strategies, Differential Evolution) * Symbolic regression (Genetic Programming) * Swarm intelligence (Ant Colony Optimization, Particle Swarm Optimization) * Memetic Algorithms (hybridization) * Model fitting (Estimation of Distribution Algorithm) * Multi-objective optimization Representation problems; genotype space and operators (5h) * Knowledge representation * Trivial (bit strings, integer, real numbers); Permutations; Graphs * Fuzzification Policy optimization (10h) * Reinforcement learning, Q-Learning (not included: Deep Q-Learning) * Rule-based systems and Learning Classifier Systems Multi agent systems (10h) * Artificial Immune System and Learning Classifier System * Simple agents * Learning agents * Games (Adversarial Search)
None
In order to meet coursework deadlines, students that cannot attend in presence are required to partecipate online or to watch the recorded lecture within 24h.
• 42 hours lectures • 18 hours labs
* 42 hours lectures * 18 hours labs
Recommended Books • A. E. Eiben, J. E. Smith; Introduction to Evolutionary Computing (2nd edition) • S. Luke; Essentials of Metaheuristics (2nd edition) • S. Russell, P. Norvig; Artificial Intelligence: A Modern Approach (4th edition) • B. Slatkin; Effective Python: 90 Specific Ways to Write Better Python (2nd edition)
Textbook * None (lectures and on-line material will be sufficient) Recommended Books * A. E. Eiben, J. E. Smith; "Introduction to Evolutionary Computing" (2nd edition) * S. Luke; "Essentials of Metaheuristics" (2nd edition) * M. Mitchell; "Artificial Intelligence: A Guide for Thinking Humans" * S. Russell, P. Norvig; "Artificial Intelligence: A Modern Approach" (4th edition) * B. Slatkin; "Effective Python: 90 Specific Ways to Write Better Python" (2nd edition)
Slides; Esercitazioni di laboratorio; Video lezioni dell’anno corrente;
Lecture slides; Lab exercises; Video lectures (current year);
Modalità di esame: Prova orale obbligatoria; Elaborato progettuale individuale;
Exam: Compulsory oral exam; Individual project;
... Students need to complete a research project tackling a specific problem; they will need to skim the scientific literature and then implement an appropriate methodology or develop a new one. Students are free to propose their own topics and are encouraged to work in teams, but for the exam each one will be individually responsible for the whole assignment. A repository on Github containing code, documentation and report must be available 1 week before the day of the exam. The oral exam consists in a discussion starting from the research project and covering all topics of the course.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Compulsory oral exam; Individual project;
Students need to complete a research project tackling a specific problem; they will need to skim the scientific literature and then implement an appropriate methodology or develop a new one. Students are encouraged to work in teams, but for the sake of the exam each one will be individually responsible for the whole assignment. The oral exam consists in a discussion starting from the research project and then covering all topics of the course (max 30/30). Up to 6 additional points will be granted to students showing an active and timely participation, that is, doing labs, presenting their works in class, and peer-reviewing colleagues' labs. If the total is >31, then the final vote is 30L. Students must produce a final report detailing their activities and share the access of a repository on Github containing the code al least 1 week (168h) before the oral exam.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.
Esporta Word