CODICE 106838 ANNO ACCADEMICO 2026/2027 CFU 6 cfu anno 1 ECONOMICS AND DATA SCIENCE 11937 (LM-56 R) - GENOVA 6 cfu anno 2 MANAGEMENT FOR ENERGY AND ENVIRONMENTAL TRANSITION (MEET) 11939 (LM-77 R) - GENOVA SETTORE SCIENTIFICO DISCIPLINARE MATH-06/A LINGUA Inglese SEDE GENOVA PERIODO 1° Semestre MATERIALE DIDATTICO AULAWEB PRESENTAZIONE L’ottimizzazione è una disciplina inclusa nella scienza delle decisioni. Il corso introduce i fondamenti della disciplina e il ruolo del linguaggio di programmazione Python nell’ambito dell’ottimizzazione, con particolare attenzione alla gestione e all’elaborazione di dati strutturati e non strutturati, come ad esempio basi di dati, file e altre sorgenti informative utili alla costruzione e alla risoluzione di modelli decisionali. OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI L’insegnamento si propone di fornire capacità di comprendere e utilizzare i principali strumenti, concettuali e computazionali, per l'interpretazione di grandi quantità di dati e per il loro utilizzo a fini predittivi, e avranno competenze relative all'analisi big data con particolare riferimento alle applicazioni riguardanti l'economia e altre scienze applicate. Gli studenti svilupperanno conoscenze base di programmazione grazie allo studio del linguaggio di programmazione Python e saranno in grado di progettare modelli matematici lineari PL/PLI per la risoluzione di problemi decisionali continui e discreti. - applicazioni riguardanti l'economia e altre scienze applicate. Gli studenti svilupperanno conoscenze base di programmazione grazie allo studio del linguaggio di programmazione Python e saranno in grado di progettare modelli matematici lineari PL/PLI per la risoluzione di problemi decisionali continui e discreti. OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO Al termine del corso, lo studente sarà in grado di: Applicare i principali metodi di ottimizzazione a problemi decisionali reali, selezionando la tecnica più appropriata in base al contesto; Sviluppare semplici algoritmi di ottimizzazione in Python per la risoluzione di problemi strutturati, verificando la correttezza dei risultati ottenuti; Gestire dati strutturati e non strutturati provenienti da basi di dati, file e sistemi informativi, organizzandoli in modo coerente rispetto agli obiettivi dell’analisi e dell’ottimizzazione; Analizzare e confrontare soluzioni ottenute tramite metodi esatti, euristici e meta-euristici su casi di studio proposti, valutando l’efficacia e l’efficienza delle soluzioni. PREREQUISITI Consigliati: Algebra, Geometria Analitica, Ricerca Operativa, Programmazione. MODALITA' DIDATTICHE Il corso prevede lezioni frontali svolte in aula informatica, per dare l'opportunità agli studenti di formulare, risolvere e analizzare insieme ai docenti i problemi proposti. Qualora non fosse possibile svolgere attività in presenza, verranno adottate le modalità didattiche decise dall'Ateneo. Per eventuali aggiornamenti fare riferimento ad Aulaweb. La frequenza non è obbligatoria. Per studenti con DSA o disabilità, sono previste modalità personalizzate secondo le disposizioni di Ateneo. Gli studenti in possesso di certificazione di disabilità, DSA o bisogni educativi speciali devono contattare, all'inizio delle lezioni, sia il docente, sia il referente per la disabilità del Dipartimento, Prof.ssa Elena Lagomarsino elena.lagomarsino@unige.it , per concordare modalità didattiche e d'esame che, nel rispetto degli obiettivi dell'insegnamento, tengano conto delle modalità di apprendimento individuali e consentano l'uso di eventuali strumenti compensativi PROGRAMMA/CONTENUTO Coerentemente con gli obiettivi precedentemente illustrati, vengono trattati i seguenti argomenti Introduzione alla programmazione.. Logic programming. Programming languages. Python concetti base: Getting Started, first program "hello world". Variables and Input. Conditional statements. Iteration statements. Functions Modules and Classes Strings, Lists, Dictionaries Risolutori di LP and ILP: Introduction to PL and PLI, Define decision variables, Create the objective function, Add constraints to the model, Analysis of the solutions. Strutture dati: Graph data structure Data manipulation and storage. Develop a parser. Test cases creation. Binary variables with Python. Algoritmi e concetti di complessità: Exact, heuristic, meta-heuristic. Constructive Algorithms, Greedy Algorithms, selection function. Enhanced Greedy. Implementation of the proposed algorithms. Gestione di dati e basi di dati: Dati strutturati e non strutturati. Introduzione alle basi di dati, ai sistemi informativi e al linguaggio SQL. Organizzazione, acquisizione e pulizia dei dati. Accesso, interrogazione ed estrazione di dati da basi di dati tramite SQL e Python. Preparazione dei dati per l’analisi e per l’applicazione di metodi di ottimizzazione. TESTI/BIBLIOGRAFIA Si suggeriscono i seguenti testi e materiali: Hillier, Lieberman, “Introduction to Operations Research”, McGraw Hill, 2016. Downey, A., et al. "Thinking Python. 2.0". Green Tea Press Supplemental Material, 2012. https://coin-or.github.io/pulp/index.html DOCENTI E COMMISSIONI CARMINE CERRONE Ricevimento: Ricevimento su appuntamento, in presenza o via Teams, da concordare tramite email con il docente. LEZIONI INIZIO LEZIONI Primo Semestre https://easyacademy.unige.it/portalestudenti/index.php?view=easycourse&_lang=it&include=attivita Orari delle lezioni L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy ESAMI MODALITA' D'ESAME Gli studenti dovranno sostenere una prova scritta che può contenere domande a scelta multipla, domande aperte ed esercizi. Supera l'esame chi ottiene almeno 18/30. MODALITA' DI ACCERTAMENTO Le conoscenze e competenze saranno verificate tramite test online ed esercitazioni durante le lezioni, valutando la capacità di applicare i metodi di ottimizzazione a problemi proposti, la correttezza delle soluzioni implementate in Python e la chiarezza espositiva. I criteri di valutazione includono: correttezza delle risposte, uso appropriato della terminologia, capacità di analisi e sintesi. ALTRE INFORMAZIONI Rivolgersi al docente per ulteriori informazioni non comprese nella scheda insegnamento. Agenda 2030 Imprese, innovazione e infrastrutture Consumo e produzione responsabili Lotta contro il cambiamento climatico OpenBadge SOFT SKILLS - Alfabetica avanzato 1 - A SOFT SKILLS - Personale avanzato 1 - A SOFT SKILLS - Imparare a imparare base 1 - A SOFT SKILLS - Creazione progettuale avanzato 1 - A