1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il...
-
Upload
fino-cipriani -
Category
Documents
-
view
213 -
download
0
Transcript of 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il...
![Page 1: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/1.jpg)
1
Esempi di consistenza sui Esempi di consistenza sui limitilimiti
X Y Z
D X D Y D Z
3 5
2 7 0 2 1 2( ) [ .. ], ( ) [ .. ], ( ) [ .. ]
Non consistente sui limiti, considera Z=2, poi X-3Y=10
Ma il dominio qui sotto e’ consistente sui limiti:
D X D Y D Z( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 2 7 0 2 0 1
Confrontare con il dominio consistente sugli iper-archi:
D X D Y D Z( ) { , , }, ( ) { , , }, ( ) { , } 3 5 6 0 1 2 0 1
![Page 2: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/2.jpg)
2
Ottenere la consistenza sui Ottenere la consistenza sui limitilimiti
Dato un dominio D, vogliamo modificare i limiti dei domini in modod che sia consistente sui limiti
Si usano delle regole di propagazione
![Page 3: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/3.jpg)
3
Ottenere la consistenza sui Ottenere la consistenza sui limitilimiti
Consideriamo il vincolo primitivo X = Y + Z che e’ equivalente alle tre forme:
X Y Z Y X Z Z X Y
Ragionando sui valori minimi e massimi:X D Y D Z X D Y D Z
Y D X D Z Y D X D Z
Z D X D Y Z D X D Y
min( , ) min( , ) max( , ) max( , )
min( , ) max( , ) max( , ) min( , )
min( , ) max( , ) max( , ) min( , )
Regole di propagazione per il vincolo X = Y + Z
![Page 4: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/4.jpg)
4
Ottenere la consistenza sui Ottenere la consistenza sui limitilimiti
X Y Z
D X D Y D Z
( ) [ .. ], ( ) [ .. ], ( ) [ .. ]4 8 0 3 2 2
Le regole di propagazione determinano che:
( ) ( )
( ) ( )
( ) ( )
0 2 2 5 3 2
4 2 2 6 8 2
4 3 1 8 8 0
X
Y
Z
Quindi i domini possono essere ridotti a:
D X D Y D Z( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 4 5 2 3 2 2
![Page 5: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/5.jpg)
5
Altre regole di propagazioneAltre regole di propagazione4 3 2 9
9
4
3
4
2
49
3
4
3
2
39
2
4
2
3
2
W P C
W D P D C
P D W D C
C D W D P
min( , ) min( , )
min( , ) min( , )
min( , ) min( , )
Dato il dominio iniziale:D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 9 0 9 0 9
Determiniamo che:
Nuovo dominio:
W P C 9
4
9
3
9
2, ,
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 2 0 3 0 4
![Page 6: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/6.jpg)
6
Disequazioni Disequazioni
Le disequazioni generano delle regole di propagazioni deboli: c’e’ propagazione solo quando una variabile ha un valore fisso che e’ uguale al minimo o massimo dell’altra variabile
Y Z
D Y D Z
D Y D Z
D Y D Z D Y D Z
( ) [ .. ], ( ) [ .. ]
( ) [ .. ], ( ) [ .. ]
( ) [ .. ], ( ) [ .. ] ( ) [ .. ], ( ) [ .. ]
2 4 2 3
2 4 3 3
2 4 2 2 3 4 2 2
no propagation
no propagation
prop
![Page 7: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/7.jpg)
7
MoltiplicazioneMoltiplicazione X Y Z
Se tutte le variabili sono positive, e’ semplice:X D Y D Z X D Y D Z
Y D X D Z Y D X D Z
Z D X D Y Z D X D Y
min( , ) min( , ) max( , ) max( , )
min( , ) / max( , ) max( , ) / min( , )
min( , ) / max( , ) max( , ) / min( , )
Ma se le variabili possono essere 0 o negative?
Esempio:
Diventa:
D X D Y D Z( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 4 8 1 2 1 3
D X D Y D Z( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 4 6 2 2 2 3
![Page 8: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/8.jpg)
8
MoltiplicazioneMoltiplicazione X Y Z Calcolare i limiti di X esaminando i valori estremi:
X D Y D Z D Y D Z
D Y D Z D Y D Z
minimum{min( , ) min( , ), min( , ) max( , )
max( , ) min( , ), max( , ) max( , )}
Simile per limite superiore usando il massimo.
Ma questo non funziona per Y e Z? Se min(D,Z) <0 e max(D,Z)>0 non c’e’ nessuna restrizione per Y
X Y Z X Y d Z d { , , / } 4 4
Stiamo usando numeri reali (es. 4/d)
![Page 9: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/9.jpg)
9
MoltiplicazioneMoltiplicazione ZYX Possiamo aspettare finche’ il range di Z e’ non negativo o non positivo e poi usare le regole
Y D X D Z D X D Z
D X D Z D X D Z
minimum{min( , ) / min( , ), min( , ) / max( , )
max( , ) / min( , ), max( , ) / max( , )}
Divisione per 0:
ve ve
0 0
0
0
![Page 10: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/10.jpg)
10
Algoritmo per la consistenza Algoritmo per la consistenza sui limitisui limiti
Applica ripetutamente le regole di propagazione ad ogni vincolo primitivo finche’ non viene modificato nessun dominio
Non dobbiamo ri-esaminare un vincolo primitivo se i domini delle sue variabili non sono modificati
![Page 11: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/11.jpg)
11
Esempio di consistenza sui Esempio di consistenza sui limitilimiti
Problema dello zaino del ladro (senza whisky)
capacity profit
W P C W P C4 3 2 9 15 10 7 30
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 0 9 0 9
W P C 102 15 12 10 60 7/ / /W P C 9 4 9 3 9 2/ / /
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 0 3 0 4
7/010/215/28 CPW
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 1 3 0 4
Non c’e piu’ nessuna modifica.
Notare che abbiamo dovuto riesaminare il vincolo di profitto.
![Page 12: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/12.jpg)
12
Risolutore per la consistenza Risolutore per la consistenza sui limitisui limiti
D := bounds_consistentbounds_consistent(C,D) if D e’ un dominio falso
return false if D e’ un dominio valutazione
return satisfiable(C,D) return unknown
![Page 13: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/13.jpg)
13
Ricerca con backtracking Ricerca con backtracking combinata con la consistenza combinata con la consistenza sui limitisui limiti
Applicare la consistenza sui limiti prima di iniziare la ricerca con backtracking e dopo ogni assegnamento di un valore ad una variabile
![Page 14: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/14.jpg)
14
EsempioEsempio
Problema del ladrocapacity profit
W P C W P C4 3 2 9 15 10 7 30
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 9 0 9 0 9Dominio corrente:
Consistenza sui limiti iniziale:
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 2 0 3 0 4
W = 0
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 1 3 0 4
P = 1
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 1 1 3 3
(0,1,3)
Trovata una soluzione: return true
![Page 15: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/15.jpg)
15
EsempioEsempio
Problema del ladrocapacity profit
W P C W P C4 3 2 9 15 10 7 30 Dominio corrente:
Consistenza sui limiti iniziale:Backtrack
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 1 3 0 4
P = 2
D W D P D C( ) , ( ) , ( )
false
Backtrack
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 1 3 0 4
P = 3
D W D P D C( ) { }, ( ) { }, ( ) { } 0 3 0
W = 0
P = 1
(0,1,3) (0,3,0)
W = 1
(1,1,1)
W = 2
(2,0,0)
Non ci sono altre soluzioni
![Page 16: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/16.jpg)
16
Consistenza generalizzataConsistenza generalizzata
Possiamo usare qualunque metodi di consistenza diversi su vincoli diversi, e comunicheranno attraverso I dimini delle variabili node consistency : per vincoli primitivi con 1 arc consistency: per vinoli primitivi con 2 var bounds consistency: altri vincoli primitivi
A volte possiamo eliminare piu’ valori usando vincoli ‘’complessi’’ e metodi di consistenza specializzati
![Page 17: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/17.jpg)
17
AlldifferentAlldifferent
alldifferent({V1,...,Vn}) e’ soddisfatto quando ogni variabile V1,..,Vn ha un valore diverso alldifferent({X, Y, Z}) e’ equivalente a
E’ consistente sugli archi con il dominio
Ma non c’e’ soluzione! la consistenza specializzata per alldifferent puo’ scoprirlo
X Y X Z Y Z
}2,1{)(},2,1{)(},2,1{)( ZDYDXD
![Page 18: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/18.jpg)
18
Alldifferent ConsistencyAlldifferent Consistency
Sia c della forma alldifferent(V) while esiste v in V dove D(v) = {d}
V := V - {v} for ogni v’ in V
D(v’) := D(v’) - {d} DV := unione di tutti i D(v) per v in V if |DV| < |V| then return false domain return D
![Page 19: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/19.jpg)
19
Alldifferent ExamplesAlldifferent Examplesalldifferent X Y Z
D X D Y D Z
({ , , })
( ) { , }, ( ) { , }, ( ) { , } 1 2 1 2 1 2
DV = {1,2}, V={X,Y,Z} quindi scopre la non soddisfacibilita’
alldifferent X Y Z T
D X D Y D Z D T
({ , , , })
( ) { , }, ( ) { , }, ( ) { , }, ( ) { , , , } 1 2 1 2 1 2 2 3 4 5
DV = {1,2,3,4,5}, V={X,Y,Z,T} non la scopre
Algoritmi basti su matching massimo potrebbero scoprirla:X Y Z T
1 2 3 4 5
![Page 20: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/20.jpg)
20
Altri vincoli complessiAltri vincoli complessi
schedulare n lavori con tempi iniziali Si e durate Di che usano risorse Ri in cui L risorse sono disponibili in ogni momento
Accesso all’array: se I = i, allora X = Vi e se X != Vi allora I != i
cumulative S S D D R R Ln n n([ , , ],[ , , ],[ , , ], )1 1 1
element I V V Xn( ,[ , , ], )1
![Page 21: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/21.jpg)
21
Ottimizzazione per CSPsOttimizzazione per CSPs
Dato che i domini sono finiti, possiamo usare un risolutore per costruire un ottimizzatore banale
retry_int_optretry_int_opt(C, D, f, best) D2 := int_solvint_solv(C,D) if D2 e’ un dominio falso then return best sia sol la soluzione corrispondente a D2 return retry_int_optretry_int_opt(C /\ f < sol(f), D, f, sol)
![Page 22: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/22.jpg)
22
EsempioEsempio
Problema del ladro (ottimizzare il profitto)minimize subject to
15 10 7
4 3 2 9 15 10 7 30
0 9 0 9 0 9
W P Ccapacity profit
W P C W P C
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ]
First solution found: D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 1 1 3 3
Corresponding solution sol W P C{ , , } 0 1 3
sol f( ) 31
minimize subject to
15 10 7
4 3 2 9 15 10 7 30
15 10 7 31
0 9 0 9 0 9
W P Ccapacity profit
W P C W P C
W P C
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ]
Next solution found: D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 1 1 1 1 1 1
sol W P C{ , , } 1 1 1
sol f( ) 32
minimize subject to
15 10 7
4 3 2 9 15 10 7 30
15 10 7 31 15 10 7 32
0 9 0 9 0 9
W P Ccapacity profit
W P C W P C
W P C W P C
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ]
Nessuna altra soluzione!
Return la sol. migliore
![Page 23: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/23.jpg)
23
Backtracking + OttimizzazioneBacktracking + Ottimizzazione
Dato che il risolutore puo’ usare la ricerca con backtracking, e’ meglio combinarla con l’ottimizzazione
Ad ogni passo della ricerca con backtracking, se best e’ la soluzione ottima vista finora, aggiungi il vincolo f < best(f)
![Page 24: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/24.jpg)
24
EsempioEsempio
Smugglers knapsack problem (whiskey available)capacity profit
W P C W P C4 3 2 9 15 10 7 30
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 9 0 9 0 9Dominio corrente:
Consistenza sui limiti iniziale:
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 2 0 3 0 4
W = 0
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 1 3 0 4
P = 1
D W D P D C( ) [ .. ], ( ) [ .. ], ( ) [ .. ] 0 0 1 1 3 3
(0,1,3)
Soluzione trovata aggiungi il vincolo
Problema del ladrocapacity profit
W P C W P C
W P C
4 3 2 9 15 10 7 30
15 10 7 31
![Page 25: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/25.jpg)
25
EsempioEsempio
Consistenza sui limiti iniziale:
capacity profit
W P C W P C
W P C
4 3 2 9 15 10 7 30
15 10 7 31
P = 2
false
P = 3
false
W = 1
(1,1,1)
Modify constraint
capacity profit
W P C W P C
W P C
4 3 2 9 15 10 7 30
15 10 7 32
W = 0
P = 1
(0,1,3)
Problema del ladro
W = 2
false
Return l’ultima sol (1,1,1)
![Page 26: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/26.jpg)
26
Ottimizzazione con Branch Ottimizzazione con Branch and Boundand Bound
Il metodo precedente, a differenza del simplesso, non usa la funzione obbiettivo per dirigere la ricerca
Ottimizzazione branch and bound per (C,f) Usare il simplesso per trovare una soluzione reale Se la soluzione e’ intera, stop Altrimenti scegliere una var x con valore non intero d e
esaminare I problemi
Usare la soluzione ottima corrente per vincolare I problemi
( , ) ( , )C x d f C x d f
![Page 27: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/27.jpg)
27
EsempioEsempioProblema del ladro
{ / , , }W P C 11 4 0 0W 2 W 3
{ , / , }W P C 2 1 3 0P 0 P 1
{ , , / }W P C 2 0 1 2C 0 C 1
{ , , }W P C 2 0 0Soluzione (2,0,0) = 30
{ / , , }W P C 7 4 0 1W 1 W 2
{ , , / }W P C 1 0 5 2C 2 C 3
false { / , , }W P C 3 4 0 3W 0 W 1
false false
false
{ / , , }W P C 6 4 1 0W 1 W 2
{ , / , }W P C 1 5 3 0P 1 P 2
{ , , }W P C 1 1 1Soluzione (1,1,1) = 32
Peggio della sol ottima
false
false
![Page 28: 1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.](https://reader035.fdocument.pub/reader035/viewer/2022062701/5542eb4f497959361e8bf2d3/html5/thumbnails/28.jpg)
28
Finite Constraint Domains Finite Constraint Domains SummarySummary
CSPs form an important class of problems Solving of CSPs is essentially based on
backtracking search Reduce the search using consistency methods
node, arc, bound, generalized Optimization is based on repeated solving or
using a real optimizer to guide the search