Studying at the University of Verona

Here you can find information on the organisational aspects of the Programme, lecture timetables, learning activities and useful contact details for your time at the University, from enrolment to graduation.

A.A. 2016/2017

Academic calendar

The academic calendar shows the deadlines and scheduled events that are relevant to students, teaching and technical-administrative staff of the University. Public holidays and University closures are also indicated. The academic year normally begins on 1 October each year and ends on 30 September of the following year.

Academic calendar

Course calendar

The Academic Calendar sets out the degree programme lecture and exam timetables, as well as the relevant university closure dates..

Definition of lesson periods
Period From To
I sem. Oct 3, 2016 Jan 31, 2017
II sem. Mar 1, 2017 Jun 9, 2017
Exam sessions
Session From To
Sessione invernale Appelli d'esame Feb 1, 2017 Feb 28, 2017
Sessione estiva Appelli d'esame Jun 12, 2017 Jul 31, 2017
Sessione autunnale Appelli d'esame Sep 1, 2017 Sep 29, 2017
Degree sessions
Session From To
Sessione estiva Appelli di Laurea Jul 19, 2017 Jul 19, 2017
Sessione autunnale Appelli di laurea Oct 18, 2017 Oct 18, 2017
Sessione invernale Appelli di laurea Mar 21, 2018 Mar 21, 2018
Period From To
Festa di Ognissanti Nov 1, 2016 Nov 1, 2016
Festa dell'Immacolata Concezione Dec 8, 2016 Dec 8, 2016
Vacanze di Natale Dec 23, 2016 Jan 8, 2017
Vacanze di Pasqua Apr 14, 2017 Apr 18, 2017
Anniversario della Liberazione Apr 25, 2017 Apr 25, 2017
Festa del Lavoro May 1, 2017 May 1, 2017
Festa della Repubblica Jun 2, 2017 Jun 2, 2017
Vacanze estive Aug 8, 2017 Aug 20, 2017

Exam calendar

Exam dates and rounds are managed by the relevant Science and Engineering Teaching and Student Services Unit.
To view all the exam sessions available, please use the Exam dashboard on ESSE3.
If you forgot your login details or have problems logging in, please contact the relevant IT HelpDesk, or check the login details recovery web page.

Exam calendar

Should you have any doubts or questions, please check the Enrolment FAQs

Academic staff


Belussi Alberto +39 045 802 7980

Bombieri Nicola +39 045 802 7094

Bonacina Maria Paola +39 045 802 7046

Carra Damiano +39 045 802 7059

Castellani Umberto +39 045 802 7988

Cicalese Ferdinando +39 045 802 7969

Cristani Matteo 045 802 7983

Cristani Marco +39 045 802 7841

Cubico Serena 045 802 8132

Daducci Alessandro +39 045 8027025

Dalla Preda Mila

Farinelli Alessandro +39 045 802 7842

Favretto Giuseppe +39 045 802 8749 - 8748

Fiorini Paolo 045 802 7963

Franco Giuditta +39 045 802 7045

Fummi Franco 045 802 7994

Giachetti Andrea +39 045 8027998

Giacobazzi Roberto +39 045 802 7995

Manca Vincenzo 045 802 7981

Mastroeni Isabella +39 045 802 7089

Menegaz Gloria +39 045 802 7024

Merro Massimo 045 802 7992

Muradore Riccardo +39 045 802 7835

Oliboni Barbara +39 045 802 7077

Pravadelli Graziano +39 045 802 7081

Quaglia Davide +39 045 802 7811

Rizzi Romeo +39 045 8027088

Romeo Alessandro +39 045 802 7974-7936; Lab: +39 045 802 7808

Schuster Peter Michael +39 045 802 7029

Segala Roberto 045 802 7997

Spoto Nicola Fausto +39 045 8027940

Villa Tiziano +39 045 802 7034

Study Plan

The Study Plan includes all modules, teaching and learning activities that each student will need to undertake during their time at the University. Please select your Study Plan based on your enrolment year.

Other activitites

1° Year


2° Year

Other activitites
Modules Credits TAF SSD
Between the years: 1°- 2°2 courses to be chosen among the following
Between the years: 1°- 2°

Legend | Type of training activity (TTA)

TAF (Type of Educational Activity) All courses and activities are classified into different types of educational activities, indicated by a letter.

SPlacements in companies, public or private institutions and professional associations

Teaching code



Romeo Rizzi



Scientific Disciplinary Sector (SSD)





II sem. dal Mar 1, 2017 al Jun 9, 2017.

To show the organization of the course that includes this module, follow this link:  Course organization

Learning outcomes

Algorithms form the backbone and are at the very heart of computer science,
but they also candidate as the most ancient precursors of informatics and are transversal and pervasive over all disciplines.
Their design requires the study and comprehension of the structure of the problem at hand, and most of the time it means and results into the crowning of this effort. The study of algorithms requires and offers methodologies and techniques of problem solving, and logical and mathematical competences.

The course aims at stimulating the students and guide them in their path to acquire the competencies and basic methodologies required when facing the analysis of problems and in the design of algorithms for their solution.
A first target is to make the students fully aware that in order to obtain solutions (algorithms) you must first go through a study and comprehension of the problem.
Particular emphasis is given to the methodological aspects:
the study of special cases, the role of conjecturing, proof techniques, building a dialog with the problem, and detection of its structure.
A second target is to build up a good relationship and active knowledge of the inductive approach, and accustom students with the use of recursion in practice.
The students are challenged to slash induction as a queen problem solving tool.
Among the dialects of induction introduced, we insist on memoization and dynamic programming. The student is required to acquire dynamic programming as a technique of problem solving and algorithm design.
Particular emphasis is given to the efficiency of algorithms.
Complexity Theory (of the twin didactic unit) plays a profound methodological role in the analysis of problems.
A main target of the course is to explicit, emphasize and illustrate this role. Last but not least, the path and process comprising the solution of a problem must be complete. Thanks to the several didactic problems made available in the automatic evaluation system used during the laboratory sessions,
the student experiments and learns how to manage all the following phases:
study and comprehension of the problem, conception of an algorithmic solution,
design of an efficient algorithm, planning the implementation, conducting the implementation, testing and debugging.


1. The workflow of problem solving: analysis and comprehension of the problem, conception of an algorithmic solution, design of an efficient algorithm, planning the implementation, conducting the implementation, testing and debugging.

2. Methodology in analyzing a problem:
The study of special cases. Particularization and generalization.
Building a dialog with the problem. Conjectures. Simplicity assumptions.
Solving a problem by reducing it to another. Reductions among problems to organize them into classes. Reducing problems to isolate the most fundamental questions. The role of complexity theory in classifying problems into classes. The role of complexity theory in analyzing problems. Counterexamples and NP-hardness proofs. Good conjectures and good characterizations. The belief can make conjectures true. Decomposing problems and inductive thinking.

3. Algorithm design general techniques.
Recursion. Divide et impera. Recursion with memoization. Dynamic programming (DP). Greedy.
DP on sequences. DP on DAGs. More in depth: good characterization of DAGs and scheduling, composing partial orders into new ones.
DP on trees. More in depth: adoption of the children one by one; advantages of an edge-centric vision over the node-centric one.
The asymptotic eye on worst case performance guides the design of algorithms:
the binary search example; negligible improvements; amortized analysis.
Some data structures: binary heaps; prefix-sums; Fenwick trees; range trees.

4. Algorithms on graphs and digraphs.
Bipartite graphs: recognition algorithms and good characterizations.
Eulerian graphs: recognition algorithms and good characterizations.
Shortest paths. Minimum spanning trees.
Maximum flows and minimum cuts.
Bipartite matchings and node covers.
The kernel of a DAG. Progressively finite games. Sums of games.

5. General hints on implementing, coding, testing and debugging.
Plan your implementation. Anticipate the important decisions, and realize where the obscure points are. Try to go round the most painful issues you foresee. Code step by step. Verify step by step. Use the assert. Testing and debugging techniques. Self-certifying algorithms.


Reference texts
Author Title Publishing house Year ISBN Notes
T. Cormen, C. Leiserson, R. Rivest Introduction to algorithms (Edizione 1) MIT Press 1990 0262031418

Examination Methods

Students must face a 5 hours test held in computer room. Here, they are assigned some problems. The students must analyze and comprehend the problem and its structure, think of possible algorithmic solutions, design an algorithm and implement it in c/c++ or Pascal. The most efficient their algorithm is, the more points they will get.
During the exam, the students can submit their source codes to a site organized precisely as the one they have experimented during the exercise sessions in lab and/or at home. In this way they can get an immediate and contextual feedback that can guide them in conducting and managing their exam at their best.
Their solutions are evaluated based on the subtasks of the problem that they can solve correctly within the allotted computation time and memory as fixed by each single problem or subtask of it.
In this way, the efficiency of the solutions and algorithms they have designed and coded determines the final scores.
It is guaranteed that, at every exam session, at least one problem will be chosen among the problems that have been proposed and made available at the site for the home/laboratory exercises.
Often, other problems are taken from the COCI competitions or among problems of the olympiads in informatics or in problem solving.
Even after having achieved a positive vote, the student can participate to later exam sessions and see whether he can improve its current mark without any risk of reducing or tampering it anyhow: our policy is to keep the best mark ever.
To the mark from the exam are summed the points the students may have possibly collected in projects. As possible projects, this year we proposed the students to help us in designing problems and/or help us in the realization of a new system for the compilation of problem packages of new conception.
As such, each student has its own mark wallet. When the students decides he wants his (positive) mark registered, then the final mark is obtained as the average with the mark for the Computational Complexity twin module (which must also be positive in order to proceed) and this average is the mark for the whole course.

The site for the home/laboratory exercises:

and the problems you find there, are your first resource for preparing to your exam. The system you will encounter at the exam is a clone of it.

For more information on the modalities and possibilities at the exam, and for further preparation material, explore the site of the course (and help us improving it):

Here you can find the wallet of your marks for both the "Algorithms" and the "Computationl Complexity" modules comprising the course (if any), plus your extra scores for Algorithms in case you have collected any of them with projects.
You will also find here the problems given at previous exam sessions,
and more detailed instructions on the procedures for the exam and for the composition and registration of your final mark.

Type D and Type F activities

Modules not yet included

Career prospects

Module/Programme news

News for students

There you will find information, resources and services useful during your time at the University (Student’s exam record, your study plan on ESSE3, Distance Learning courses, university email account, office forms, administrative procedures, etc.). You can log into MyUnivr with your GIA login details.

Gestione carriere


List of theses and work experience proposals

theses proposals Research area
Analisi ed identificazione automatica del tono/volume della voce AI, Robotics & Automatic Control - AI, Robotics & Automatic Control
Analisi e percezione dei segnali biometrici per l'interazione con robot AI, Robotics & Automatic Control - AI, Robotics & Automatic Control
Integrazione del simulatore del robot Nao con Oculus Rift AI, Robotics & Automatic Control - AI, Robotics & Automatic Control
BS or MS theses in automated reasoning Computing Methodologies - ARTIFICIAL INTELLIGENCE
Sviluppo sistemi di scansione 3D Computing Methodologies - COMPUTER GRAPHICS
Sviluppo sistemi di scansione 3D Computing Methodologies - IMAGE PROCESSING AND COMPUTER VISION
Dati geografici Information Systems - INFORMATION SYSTEMS APPLICATIONS
Analisi ed identificazione automatica del tono/volume della voce Robotics - Robotics
Analisi e percezione dei segnali biometrici per l'interazione con robot Robotics - Robotics
Integrazione del simulatore del robot Nao con Oculus Rift Robotics - Robotics
BS or MS theses in automated reasoning Theory of computation - Logic
BS or MS theses in automated reasoning Theory of computation - Semantics and reasoning
Proposte di tesi/collaborazione/stage in Intelligenza Artificiale Applicata Various topics
Proposte di Tesi/Stage/Progetto nell'ambito delle basi di dati/sistemi informativi Various topics


As stated in point 25 of the Teaching Regulations for the A.Y. 2021/2022, attendance at the course of study is not mandatory.
Please refer to the Crisis Unit's latest updates for the mode of teaching.

Further services

I servizi e le attività di orientamento sono pensati per fornire alle future matricole gli strumenti e le informazioni che consentano loro di compiere una scelta consapevole del corso di studi universitario.