TIPOLOGIE ESERCIZI SUI VINCOLI

Documenti analoghi
TIPOLOGIE ESERCIZI SUI VINCOLI

PROBLEMI DI SODDISFACIMENTO DI VINCOLI

PROBLEMI DI SODDISFACIMENTO DI VINCOLI

Soluzione. Esercizio. Forward Checking. Std backtracking

Problemi di soddisfacimento di vincoli. Colorazione di una mappa. Formulazione di problemi CSP. Altri problemi

Constraint Satisfaction Problems

Problemi CSP: Problemi di. soddisfacimento di vincoli. Colorazione di una mappa. Formulazione di problemi CSP. Formulazione. Tipi di problemi CSP

Problemi di soddisfacimento di vincoli. Maria Simi a.a. 2015/2016

Esercizi d'esame su strategie di ricerca, CSP e Giochi. Compiti d'esame 2017 e 2018

PROBLEMI DI VINCOLI CSP (Constraint satisfaction problems),, X ik. ) che specificano quali valori delle variabili sono compatibili tra loro,

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 13 Gennaio 2010 Tempo a disposizione 2h Risultato 32/32 punti

Constraint Satisfaction Problems (CSPs)

SODDISFACIMENTO DI VINCOLI

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 16 Giugno 2016 Tempo a disposizione: 2 h Risultato: 32/32 punti

SODDISFACIMENTO DI VINCOLI

PROBLEMI DI VINCOLI CSP (Constraint satisfaction problems) trovare una assegnazione di valori alle variabili che soddisfa i vincoli.

Romicapo delle 8 (N) regine

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 11 Gennaio 2018 Tempo a disposizione: 2 h Risultato: 32/32 punti

3 2 foglie, solo alcune sono soluzione (in grassetto)

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)

PROBLEMA DELLE 8 REGINE: MODELLO 2 (quello che adotteremo) Le otto regine vengono rappresentate con le variabili X 1, X 2,..., X 8 Il pedice si riferi

COMPITO DI INTELLIGENZA ARTIFICIALE (v.o.) PARTE I FONDAMENTI DI INTELLIGENZA ARTIFICIALE. 29 Marzo 2007 (Tempo a disposizione 2h; su 32 punti)

Problemi di soddisfacimento di vincoli. Formulazione di problemi CSP. Colorazione di una mappa. Altri problemi

SODDISFACIMENTO DI VINCOLI

Tail,PermTail), delete1(head,permlist. PermList,PermTail).

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)

N-Regine POSSIBILE SOLUZIONE IN PROLOG: GENERATE AND TEST

Intelligenza Artificiale Ing. Tiziano Papini

Tail,PermTail), delete1(head,permlist. PermList,PermTail).

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)

COMPITO DI FONDAMENTI DI INTELLIGENZA ARTIFICIALE INTELLIGENZA ARTIFICIALE (v.o.) PARTE I. 8 Gennaio 2009 (Tempo a disposizione 2h, su 32 punti)

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 12 Gennaio 2017 Tempo a disposizione: 2 h Risultato: 32/32 punti

Y1-Y= Y=\=Xdist, =Xdist,

SODDISFACIMENTO DI VINCOLI

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)

COMPITO DI INTELLIGENZA ARTIFICIALE (v.o.) PARTE I FONDAMENTI DI INTELLIGENZA ARTIFICIALE. 13 Dicembre 2006 (Tempo a disposizione 2h; su 32 punti)

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU) 13 Gennaio 2015 Tempo a disposizione: 2 h Risultato: 32/32 punti

Progetto e analisi di algoritmi

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 8 Settembre 2016 Tempo a disposizione: 2 h Risultato: 32/32 punti

SODDISFACIMENTO DI VINCOLI

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 25 Gennaio 2018 Tempo a disposizione: 2 h Risultato: 32/32 punti

1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44;

Week #9 Assessment. Practice makes perfect... November 23, 2016

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 14 Gennaio 2016 Tempo a disposizione: 2 h Risultato: 32/32 punti

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 26 Gennaio 2017 Tempo a disposizione: 2 h Risultato: 32/32 punti

Tecniche euristiche Ricerca Locale

SODDISFACIMENTO DI VINCOLI

Dopo un anno di duro lavoro il giovane ingegner Piero si appresta a partire per le ferie insieme alla sua dolce metà, con cui si è da poco accasato.

Automa a Stati Finiti (ASF)

SODDISFACIMENTO DI VINCOLI

3 Ricerca per Giochi e CSP

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 1 parte (6 CFU) 12 Luglio 2012 Tempo a disposizione: 2 h Risultato: 32/32 punti

&203,72',,17(//,*(1=$$57,),&,$/( *LXJQR±3URI3DROD0HOOR 7HPSRDGLVSRVL]LRQH

Laboratorio di Algoritmi e Strutture Dati

Possibile applicazione

COMPITO DI FONDAMENTI DI INTELLIGENZA ARTIFICIALE INTELLIGENZA ARTIFICIALE (v.o.) PARTE I

Corso di Intelligenza Artificiale

3.1 Progetto di rete con capacità

csp & backtracking informatica e laboratorio di programmazione Alberto Ferrari Informatica e Laboratorio di Programmazione

RICERCA OPERATIVA (a.a. 2018/19) Nome: Cognome: Matricola:

Ricerca Operativa A.A. 2017/2018

RICERCA OPERATIVA (a.a. 2017/18) Nome: Cognome: Matricola:

COMPITO DI FONDAMENTI DI INTELLIGENZA ARTIFICIALE INTELLIGENZA ARTIFICIALE - parte I (tempo 2,30 h; punti 32) 12 Gennaio 2006

Una breve introduzione all implementazione in C di algoritmi su grafo

FONDAMENTI DI INTELLIGENZA ARTIFICIALE M 9 Settembre 2010 Tempo a disposizione 3h Risultato 32/32 punti

Prova in itinere di Metodi di Ottimizzazione AA 2007/2008: compito A

RICERCA OPERATIVA (a.a. 2015/16) Nome: Cognome: Matricola:

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 1 parte (6 CFU)

COMPITO DI FONDAMENTI DI INTELLIGENZA ARTIFICIALE INTELLIGENZA ARTIFICIALE (v.o.) PARTE I. 11 Settembre 2008 (Tempo a disposizione 2h ; su 32 punti)

Sistemi con vincoli. Docente: Francesca Rossi.

Tecniche euristiche greedy

FONDAMENTI DI INTELLIGENZA ARTIFICIALE M (9 CFU) 19 Gennaio 2011 Tempo a disposizione 3h Risultato 32/32 punti

Problema del Job Shop

RICERCA OPERATIVA (a.a. 2018/19)

Laboratorio di Algoritmi

RICERCA OPERATIVA (a.a. 2017/18) Nome: Cognome: Matricola:

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)

K 4 è planare? E K 3,3 e K 5 sono planari? Sì! No! (Teorema di Kuratowski) K 5. Camil Demetrescu, Irene Finocchi, Giuseppe F.

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 9 Febbraio 2018 Tempo a disposizione: 2 h Risultato: 32/32 punti

RICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:

Macchine sequenziali. Automa a Stati Finiti (ASF)

RICERCA OPERATIVA (a.a. 2014/15) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2017/18) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2014/15) Nome: Cognome: Matricola:

Intelligenza Artificiale. Lezione 6bis. Sommario. Problemi di soddisfacimento di vincoli: CSP. Vincoli CSP RN 3.8, 4.3, 4.5.

Alma Mater Studiorum - Università di Bologna

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 12 Febbraio 2016 Tempo a disposizione: 2 h Risultato: 32/32 punti

Seconda prova in itinere. Logica e Algebra. 10 luglio Esercizio 1 Si considerino le seguenti formule della logica del primo ordine:

RICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:

Definizione 1.3 (Arco accoppiato) Un arco è accoppiato se è appartenente al matching M.

FONDAMENTI DI INTELLIGENZA ARTIFICIALE PRIMA PARTE (6 CFU) 9 Dicembre 2010 Tempo a disposizione 2h Risultato 32/32 punti

Esercizio , (+61,81) CA2: , = , (-61,81)

RICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:

Problemi di Soddisfacimento di Vincoli

Transcript:

TIPOLOGIE ESERCIZI SUI VINCOLI Si hanno due categorie di esercizi: Modellazione + risoluzione Risoluzione data la modellazione sotto forma di variaili e vincoli oppure di grafo Per la risoluzione: Tecniche di consistenza sul prolema originale Algoritmi di propagazione + ricerca Tecniche di consistenza + ricerca 1

ESERCIZIO 1 Si hanno 4 insegnanti a,, c e d che devono tenere complessivamente 10 lezioni. Ogni lezione può essere tenuta da un solo insegnante. Delle 10 lezioni si conoscono l'inizio Si e la durata Di =2 ore. Inoltre, si sa che nessun insegnante può tenere due lezioni consecutive e nemmeno lezioni sovrapposte temporalmente. Si rappresenti il prolema come prolema di soddisfacimento di vincoli definendo le variaili, i domini delle variaili e i vincoli tra queste. Si supponga inoltre che le lezioni aiano i seguenti inizi: S1 = 7 S2 = 8 S3 = 9 S4 = 10 S5 = 11 S6 = 12 S7 = 13 S8 = 14 S9 = 15 S10 = 16 e durata di due ore. Si imposti la soluzione del prolema utilizzando come tecnica il forward checking. 2

SOLUZIONE: MODELLAZIONE Variaili: ore di lezione X1...X10 Domini: insegnanti [a,,c,d] Le ore di lezione sono caratterizzate da un inizio Si e da una durata Di nota. Vincoli: Unari: appartenenza delle variaili ai domini Binari: Ogni ora di lezione può essere tenuta da un solo insegnante: ogni variaile viene istanziata con un solo valore. Ogni insegnante non può tenere due ore consecutive di lezione: Si + Di = Sj -> Xi Xj Ogni insegnante non può tenere due ore sovrapposte di lezione: Si + Di (fine di i) > Sj and Si + Di Sj + Dj (fine di j) -> Xi Xj. 3

SOLUZIONE: RICERCA Inizialmente X1...X10 :: [a,,c,d] Istanzio X1= a Propago: X2 X3:: [,c,d], X4...X10:: [a,,c,d] Istanzio X2= Propago: X3:: [c,d], X4 :: [a,c,d], X5...X10:: [a,,c,d] Istanzio X3= c Propago: X4 :: [a,d], X5:: [a,,d], X6...X10:: [a,,c,d] Istanzio X4 = a Propago: X5:: [,d], X6 :: [,c,d], X7...X10:: [a,,c,d] Istanzio X5= Propago X6 :: [c,d], X7:: [a,c,d], X8...X10:: [a,,c,d] Istanzio X6=c Propago X7 :: [a,d], X8:: [a,,d], X9...X10:: [a,,c,d] Istanzio X7 = a Propago X8:: [,d], X9:: [,c,d], X10:: [a,,c,d] Istanzio X8 = Propago X9:: [c,d], X10:: [a,c,d] Istanzio X9 = c Propago X10:: [a,d] Istanzio X10 = a soluzione 4

OSSERVAZIONE Si noti che esiste un altra possiile rappresentazione del prolema che associa agli insegnanti una variaile il cui dominio contiene inizialmente tutte le lezioni. I vincoli potreero eliminare dai domini quelle lezioni che sono incompatiili con i vincoli sull insegnante. Tuttavia, questa rappresentazione non rientra nell ottica dei prolemi di soddisfacimento di vincoli in quanto in una soluzione deve essere assegnato UNO E UN SOLO valore a ogni variaile e non un insieme di valori come nel caso di questa seconda rappresentazione. Infatti, in quest ultimo caso una possiile soluzione avree Xa::[1,4,7] che dovree significare che il maestro a può tenere le lezioni 1, 4 e 7 mentre i vincoli unari hanno come semantica l or. Si potree pensare ad un dominio diinsiemi ma complica molto la trattazione. 5

ESERCIZIO 2 Data una scacchiera 4 x 4 e 4 colori [,g,], si deve collocare un colore in ciascuna cella della scacchiera in modo che ogni riga, ogni colonna e le due diagonali principali della scacchiera contengano colori diversi. Si formalizzi il prolema come CSP, e lo si risolva fino alla prima soluzione tramite la tecnica del forward checking con euristica first-fail (anche detta Minimum Remaining Values MRV) SOLUZIONE Si considera una scacchiera 4 x 4. Ogni cella della scacchiera rappresenta una variaile da X 11 a X 44. I domini iniziali delle variaili sono composti dai quattro colori a disposizione. I vincoli sono per ogni i Xij Xik per j k per ogni i Xji Xki per j k per ogni i e j Xii Xjj con i j per ogni i e j Xi,4-i+1 Xj,4-j+1 con i j Rappresentiamo i domini all interno delle celle della scacchiera. Con il forward checking si arriva ad una soluzione senza mai fallire. 6

ESERCIZIO 2 X11=r r X12= r r r X13= r g g r g r g X14=g r g r g r g X22= r g g r g r g g X32=r r g r g r g g r g g g X23= g r r g g r g X24=r g r r g g rg X21=g 7

ESERCIZIO 2 r g r g r g g r r g g r g X33=g g r r g g r X41= g r r g g r X31= r g g r r g g r Più quattro stati identici all'ultimo relativi alle istanziazioni di X34 a, X42 a g, X43 a r e X44 a. SOLUZIONE CONSISTENTE 8

ESERCIZIO 3 Si supponga di avere a disposizione i seguenti vincoli: X < Y, X K, Y + 5 K, Y + 7 > Z, X Z definiti sulle variaili X, Y, Z, K il cui dominio di definizione è [1..20]. Si risolva il prolema applicando la strategia di full look ahead. IL MODELLO E DATO X < Y, X K, Y + 5 K, Y + 7 > Z, X Z X, Y, Z, K ::[1..20] 9

SOLUZIONE Istanzio X=1 Propagazione full look ahead: Y::[2..15], K::[7..20], Z::[1..20] Istanzio: Y=2 K::[7..20], Z::[1..8] Istanzio: K=7 Z::[1..8] Istanzio: Z = 1 soluzione 10

ESERCIZIO 4 Si devono visitare 6 clienti A, B, C, D, E, F nell arco della giornata lavorativa (dalle 9 alle 19). (durata implicita 1 ora) Due clienti non possono essere visitati contemporaneamente. Si sa che i clienti C ed F devono essere visitati prima del cliente D. A è un cliente fuori città, mentre B, C, D, E ed F sono tutti in centro. Quindi, per spostarsi da A a ogni altro cliente si impiega 1 ora, mentre qualunque spostamento in centro città viene effettuato a tempo trascuraile (=0). Il cliente C può essere visitato solo dalle 15 alle 17. Si modelli il prolema in termini di variaili e vincoli. Si mostri l alero di ricerca fino alla prima soluzione relativo alla strategia standard acktracking e quello relativo al forward checking e si commentino i risultati. 11

SOLUZIONE Variaili: clienti Domini: possiili orari di visita A, B, C, D, E, F::[9..18] Vincoli: Due clienti non possono essere visitati contemporaneamente: per X, Y X Y I clienti C ed F devono essere visitati prima del cliente D: C < D F < D A è un cliente fuori città, mentre B, C, D, E e F sono tutti in centro. Quindi, per spostarsi da A ad ogni altro cliente si impiegano due ore, mentre qualunque spostamento in centro città viene effettuato a tempo trascuraile (=0). X [B, C, D, E, F] A X + 2 OR X A + 2 Il cliente C può essere visitato solo dalle 15 alle 17. Vincolo unario su C che riduce il suo dominio C 15 e C 17 12

STANDARD BACKTRACKING Hp: si suppone di poter partire da qualunque cliente. Se invece l hp e di partire dalla citta A=9 non e ammissiile e il dominio di A si riduce a A:[11..18] A=9 B=9 B=10 B=11 Fail Fail C=15 D=9 D=10 D=11 D=12 D=13 D=14 D=15 D=16 Fail Fail Fail Fail Fail Fail Fail E=9 E=10 E=11 E=12 Fail Fail Fail F=9 F=10 F=11 F=12 F=13 Fail Fail Fail Fail O K 13

FORWARD CHECKING A = 9 B..F::[11..18] C::[15..17] B = 11 C::[15..17] D..F:: [12..18] C = 15 D::[16..18] E, F::[12..14, 16..18] D = 16 E::[12..14, 17..18] F::[12..14] SI NOTI che non ci sono rami di fallimento e conseguenti acktracking contro i 16 fallimenti dello std. ack. E = 12 F::[13..14] F = 13 Soluzione 14

ESERCIZIO 5 Si consideri la seguente rete di vincoli [3,6,10..15] [7..12] X Y > = K [4..15] > Z [5..10] X::[3,6,10..15], Y::[7..12], K::[4..15], Z::[5..10], Y =Z, Z < K, K >Y, X Y E si applichi l arc-consistenza. Si discuta inoltre cosa accade applicando l arc-consistenza alla stessa rete se si introduce un vincolo ulteriore X = K. 15

SOLUZIONE X::[3,6,10..15], Y::[7..12], K::[4..15], Z::[5..10], Y =Z, Z < K, K >Y, X Y Risultato dell arc-consistenc (Si applichi l argoritmo AC considerando gli archi) X = [3, 6, 10] Z = [7..10] K = [8..15] Y = [7..10] Introducendo il nuovo vincolo si riporta fallimento. Si noti la computazione incrementale 16

ESERCIZIO 6 Dati i seguenti vincoli: A::[1..4], B::[1..4], C::[2,4,6], D::[1,7,9],E::[2..5], A > D, A B, B < C, C > D, E = A Si disegni il grafo corrispondente al prolema di soddisfacimento di vincoli e si applichi l arc-consistenza. Si disegni l alero per arrivare alla prima soluzione usando come euristica di assegnamento di valori alle variaili il first-fail (MRV) e ad ogni istanziazione si riapplichi l arc-consistenza alla rete residua. 17

SOLUZIONE Grafo corrispondente al prolema [2..5] E = [1..4] A [1..4] B > < D < C [1,7,9] [2,4,6] 18

SOLUZIONE Grafo corrispondente al prolema [2..5] E = [1..4] A [1..4] B > < D < C [1,7,9] [2,4,6] Dopo l applicazione dell arc-consistenza al prolema originale si ottiene A::[2..4] B::[1..4] C::[2, 4, 6] D = 1 E::[2..4] 19

RICERCA domini non camiano E=2 B=1 A=2 D=1 B::[1,3,4] C::[2,4,6] E=2 B::[1,3,4] C::[2,4,6] C::[2,4,6] SOLUZIONE A = 2, B = 1, C = 2, D = 1, E = 2 C=2 SOLUZIONE 20