1 / 11

Sistemi con vincoli

Sistemi con vincoli. Francesca Rossi Aprile-Giugno 2006. Scopo del corso. Dare le nozioni di base della programmazione con vincoli Come rappresentare un problema reale con un insieme di vincoli Tecniche principali per risolverlo

cuyler
Download Presentation

Sistemi con vincoli

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sistemi con vincoli Francesca Rossi Aprile-Giugno 2006

  2. Scopo del corso • Dare le nozioni di base della programmazione con vincoli • Come rappresentare un problema reale con un insieme di vincoli • Tecniche principali per risolverlo • Approccio formale per un tipo di programmzione con molte applicazioni pratiche • Non e’ un corso di programmazione!

  3. Struttura del corso • Lezioni: Martedi’, Mercoledi’, Giovedi’ 9:30-11:10 • Aula TA50B • Lezioni ed esercizi in aula • Materiale: • libro “Principles of Constraint Programming”, K. Apt, Cambridge University Press, 2003 • Libreria Progetto, 48 euro (nel 2005) • Lucidi associati al libro, disponibili sul sito del corso (www.math.unipd.it/~frossi/vincoli2006.html) • Altro materiale sul sito del corso • Anche parti dal libro “Constraint processing”, R. Dechter, Morgan Kauffman, 2003 • Esame: scritto + progetto e sua discussione

  4. Corso integrativo • 10 ore, in piu’ rispetto al corso • Facoltativo • Docente: Toby Walsh, Univ. New South Wales (Sydney, Australia) • Titolo e programma: definiti tra poco • Periodo: inizio Giugno

  5. Programmazione con vincoli • Approccio alternativo alla programmazione • Vincolo su una sequenza di variabili: relazione sui loro domini • Problema di soddisfazione di vincoli (CSP): insieme finito di vincoli • Approccio della programmazione con vincoli: • Formulare un problema come un CSP • Risolvere la rappresentazione scelta con metodi generali o specifici

  6. Risolvere un CSP • Determinare se ha una soluzione (cioe’ se e’ consistente) • Trovare una soluzione • Trovare tutte le soluzioni • Trovare una soluzione ottima • Trovare tutte le soluzioni ottime

  7. Metodi specifici • Algoritmi specifici per certe classi di vincoli (risolutori) • Esempi: • Un programma per risolvere sistemi di equazioni lineari • Un pacchetto software per la programmazione lineare • Un’implementazione dell’algoritmo di unificazione

  8. Metodi generali • Algoritmi per la propagazione di vincoli • Metodi di ricerca nello spazio delle soluzioni

  9. Caratteristiche di base della programmazione con vincoli • Programmazione in due fasi: • Generazione della rappresentazione di un problema come CSP • Sua soluzione • Rappresentazione flessibile: i vincoli possono essere aggiunti, tolti, o modificati

  10. Applicazioni • Sistemi grafici interattivi (per esprimere la coerenza geometrica) • Problemi di ricerca operativa (vari problemi di ottimizzazione) • Biologia molecolare (sequenzializzazione del DNA, costruzione di modelli 3D delle proteine) • Applicazioni finanziarie • Verifica circuiti • Elaborazione del linguaggio naturale (costuzione di pareser efficienti) • Schedulazione di attivita’ di satelliti • Generazione di programmi musicali radiofonici coerenti • ...

  11. Sommario del corso • Esempi di problemi di soddisfazione di vincoli • Nozioni di base della programmazione con vincoli • Alcuni risolutori completi • Nozioni di consistenza locale • Alcuni risolutori incompleti • Algoritmi di propagazione di vincoli • Ricerca nello spazio delle soluzioni

More Related