Problemi di Planning
Ingegneria della Conoscenza e Sistemi
Esperti
Ettore Colombo
Problem-Solving Types
Classification
Construction
Configuration
 Assignment
 Planning

Simulation
PLANNING
Robotica:
ricerca di algoritmi per dire
automaticamente ad un
robot come muoversi
Trajectory
Motion
Planning Planning
Control Theory (approccio
analitico)
Storicamente: Modellazione attraverso
equazioni differenziali e sistemi di
equazioni differenziali; svilupppo di
feedback policies per una risposta
adattiva durante l’esecuzione, mirata
alla stabilità del sistema
Nuovi orizzonti: modellazione
incertezza e ricerca dell’ottimizzazione
Intelligenza
Artificiale
Discrete Planning
• Knowledge Based Planning
• Expet Systems for Planning
Descrizione del Problema
Dati:
uno stato iniziale
 un insieme di azioni
 un obiettivo da raggiungere (Goal)

Risultato:

determinazione di un piano, ossia un
insieme (parzialmente o totalmente
ordinato) di azioni necessarie per
raggiungere il goal
Esempio
 Descrizione del problema:
supponiamo di avere come obiettivo
quello di raggiungere l’università per
seguire le lezioni e di essere a casa e
di avere un automobile a disposizione
 Stato iniziale: sono a casa e ho
un’auto a disposizione
 Obiettivo: raggiungere l’università
Esempio: soluzione
 Una possibile soluzione:
1.
2.
3.
4.
5.
6.
7.
prendere il materiale per le lezioni;
prendere le chiavi dell’auto;
uscire di casa;
prendere l’auto;
raggiungere l’università;
entrare in aula;
...
 Pianificare ci permette di scegliere le azioni giuste da
eseguire nella giusta sequenza: invertendo 2 e 3
arriveremmo ad una soluzione impraticabile
Esempio: soluzioni equivalenti
Un’ altra possibile soluzione (equivalente alla
precedente, ottenuta invertendo 1 e 2):

1.
2.
3.
4.
5.
6.
7.

prendere le chiavi dell’auto;
prendere il materiale per le lezioni;
uscire di casa;
prendere l’auto;
raggiungere l’università;
entrare in aula;
...
Non sempre è necessario definire l’ordine delle
azioni (il piano può avere un ordinamento parziale)
Esempio: estensione della
rappresentazione
 Estendendo la descrizione del problema all’esistenza
dei “mezzi pubblici” si possono ottenere delle
soluzioni diverse
 Consideriamo quindi anche la possibile azione di
“prendere l’autobus” un’altra possibile soluzione
sarebbe:
1.
2.
3.
4.
5.
6.
7.
8.
prendere il materiale per le lezioni;
prendere i biglietti dell’autobus;
uscire di casa;
raggiungere la fermata dell’autobus;
prendere l’autobus;
raggiungere l’università;
entrare in aula;
...
Definizioni a confronto
PLANNING = PROBLEMA
“The task of coming up with a sequnce of action
that will achieve a goal is called planning”
[S.M. LaValle]
PLANNING = PROBLEM SOLVING METHOD
“Problem solving agents decide what to do by
finding sequnces of actions that lead to desirable
states”
[S.M. LaValle]
Caratteristiche delle Attività
Pianificazione  ricerca del Piano
Esecuzione  applicazione del Piano
Problema




Non decomponibile: ci può essere interazione tra
sottoproblemi
Reversibile: le scelte fatte durante la generazione
del piano sono revocabili (backtracking)
Irreversibile: l’esecuzione delle azioni porta ad un
cambiamento di stato irreversibile
Non deterministica: il piano può avere un effetto
diverso quando applicato al mondo reale che
spesso è impredicibile. In questo caso è possibile
rifare il piano solo parzialmente oppure invelidarlo
a seconda del problema
Alcuni Concetti Base
Pianificatore Automatico

Decision maker, Intelligent Agent, Planner
Rappresentazione Stato
Rappresentazione Goal
Rappresentazione Azioni
Rappresentazione Piano
Pianificatore Automatico
Un pianificatore automatico è un agente
intelligente che, date:
una rappresentazione dello stato iniziale
 una rappresentazione del goal
 una descrizione formale delle azioni
eseguibili

definisce il piano di azioni necessario per
raggiungere il goal
Rappresentazione dello stato
Occorre fornire al Planner un modello
del dominio del problema
Scelta di un adeguato linguaggio di
rappresentazione
Limiti nella rappresentazione
dello stato
Lo stato di un sistema spesso può essere osservato
solo in modo parziale, per diversi motivi:
 Limiti sensoriali:


alcuni aspetti non sono osservabili
il dominio è troppo dinamico per consentire un
aggiornamento continuo della rappresentazione
 Frame Problem: il dominio è troppo vasto per essere
rappresentato nella sua interezza
 Incertezza: le osservazioni sono soggette a rumore e
quindi si hanno delle osservazioni parziali o
imperfette
Rappresentazione del goal
Per rappresentare il Goal si utilizza lo
stesso linguaggio usato per la
rappresentazione dello stato iniziale.
Il Goal è spesso rappresentato con una
descrizione parziale dello stato finale:
descrive le condizioni che devono
essere verificate affinché il goal sia
soddisfatto
Rappresentazioni delle azioni
 Il planner deve essere costruito secondo una Teoria
del Dominio in cui sono descritte in modo formale le
azioni eseguibili
 Una generica azione sarà descritta da:



Nome: identificativo
Precondizione: condizioni che devono essere verificate
affinché l’azione possa essere eseguita
Postcondizione: gli effetti che l’azione porta sul mondo
 Si possono avere:


Azioni atomiche
Necessità di rappresentare del tempo
Rappresentazione del Piano
Azioni atomiche:

Successione di azioni
Rappresentazione del tempo

Successione di coppie [Azione, Intervallo
di tempo]
Rappresentazione di condizioni
Tecniche Intelligenza Artificiale
 Pianificazione Classica


Tipo di pianificazione off-line che produce l’intero piano prima di eseguirlo
lavorando su una rappresentazione istantanea dello stato corrente
Assunzioni:
•
•
•
•
Tempo Atomico
Determinismo degli effetti
Stato iniziale completamente noto
Non esistono altri eventi oltre alle azioni consentite che modificano lo stato
 Pianificazione Reattiva




Metodo on-line
Ambiente deterministico e dinamico
Osservazioni del mondo durante pianificazione e esecuzione
Spesso si alterna la pianificazione con l’esecuzione “reagendo” ai
cambiamenti di stato
 Pianificazione Condizionale

Piano costituito da:
• azioni
• verifica di condizioni
• comportamento condizionale a seconda dei risultati delle verifiche
Pianificazione Classica
 Planning Deduttivo


Uso di linguaggi logic based
Situation Calculus (fine anni 60)
 Planning Mediante Ricerca



Uso di linguaggi specializzati
Planning Lineare  STRIPS (primi anni 70)
Planning Non Lineare  Partial Order Planning (POP)
 Planning Gerarchico



definire operatori a diversi livelli di astrazione
pianificare ad livello alto
sostitituire macro azioni con loro espansione (magari già
precompilata)
Problem-Solving Types
Classification
Construction
Configuration
 Assignment
 Planning

Simulation
Expert Systems for Configuration
 Oggetti Elementari: oggetti base con attributi e
relazioni tra essi
 Problema: Selezione, parametrizzazione e
aggregazione di oggetti base in oggetti soluzione
 Soluzione: unione di oggetti base che costituiscono
una soluzione (ottima) che soddisfa le richieste
 Spazio Soluzioni: le configurazioni diverse sono m^n
dove n=#medio di attributi dell’oggetto richiesti
ognuno con m valori
 Esempi: Configurazione di ascensori, di computer
Expert Systems for Assignment
 Oggetti Elementari: almeno due insiemi disgiunti di
oggetti
 Problema: fornire un piano di ordinamento che
considera previsioni, risorse e altre restrizioni
 Soluzione: piano di assegnamento (ottimo) che
mappa un oggetto ad un altro
 Spazio Soluzioni: con due insiemi di n elementi ci
sono n! possibili soluzioni
 Esempi: generazione di orari/calendari, utilizzo di
macchine
Expert Systems for Planning
 Oggetti Elementari: oggetti con attributi e operatori
(generici) con precondizioni e azioni
 Problema: trasformazione di uno stato iniziale dato in
uno stato finale desiderato
 Soluzione: sequenza (ottima) di operatori applicabili
che trasformano stati iniziali in stati finali
 Spazio Soluzioni: i piani differenti sono m^n dove
m=#medio di operatori applicabili in ogni stato
intermedio e n=#medio di operatori per soluzione
Planning 1 - Esperimenti in
genetica molecolare
 Problema: sostanze disponibili, organismi,
azioni e scopo dell’esperimento
 Soluzione: sequenza di azioni per
raggiungere lo scopo dell’esperimento e
l’indicazione delle sostanze e degli organismi
necessari all’esperimento
 Spazio Soluzioni: tutti i piani disponibili
 Sistema: MOLGEN [Friedland 79, 85]
Planning 2 – Produzione di
semilavorati
 Problema: “blank”, forma, proprietà e le
possibili azioni di lavoro (bucare, macinare,
dipingere, etc...)
 Soluzione: sequenza, processo manifatturiero
per trasformare lo stato “blank” nello stato
finale
 Spazio Soluzione: tutti i possibili piani di
lavoro
 Sistema: ExAP [Dyckhoff 89]
Planning: Altri Esempi di sistemi
Uso efficace delle capacità di una
macchina  ISIS [Fox 83, Smith 86]
Mondo dei Blocchi, composizione di
blocchi  [Sacerdoti 77]
Individuazione di terapie per il
trattamento del cancro:
ONCOCIN/OPAL [Hickman 85, Musen
87]
PSM adottati per il problema di
Planning
Planning è un particolare problema di
Costruzione
PSM adottati sono PSM tipici dei
problemi di Costruzione
(configurazione, planning,
assegnamento)
Construction: Problem Solving
Methods
Heuristic construction
Skeletal construction
 Propose-revise strategy
 Propose-exchange strategy
 Least-commitment strategy

Model based construction
Case based construction
P Truck Compounding
Dominio
Divisione Materiali della Business Unit
Truck di Pirelli Pneumatici
Esperti con una profonda conoscenza
della materia
Istruzione personale (chimici)
 Scuola Pirelli (esperienza secolare)

Terminologia (1)
Mescola: composto chimico ottenuto
principalmente utilizzando gomma
Descrizione:
Caratteristiche Mescola CM
 Ricetta  elenco di coppie [ingrediente,
quantità]

Terminologia (2)
 Famiglie di ingredienti

Attributi descrittivi degli ingredienti di una famiglia
 Combinazioni: aggregati omogenei (per famiglia)
 Sistemi: aggregati eterogenei
 Interventi di modifica della ricetta




Aumento/Diminuzione
Sostituzione
Shift
Due livelli di descrizione (livello ingredienti, livello delle
famiglie e dei sistemi)
Gli ingredienti
Ingredienti a disposizione per la produzione delle mescole
CB CRX 1345
CB CRX 1380
Carbon Black
CB N115
CB N121
CB N220
CB N326
Cariche Chiare SILICA
Oli
AROMATIC OIL
Resine Styrene-Indene Resin
Silano
TESPT50%
Derivati di Acidi
Fatty Acid Zinc Salt
Grassi
Stearic Acid
Acidi
ZnO
ZnO
???
TBBS
???
CBS
???
CTP
SULFUR
Vulcanizzanti
SMR 20
STR 20 NR - Gomme Naturali
RSS 3
BR Ni
BR - Gomme Polibutadieniche
BR Co
BR Li
BR Ti
SBR 1500
SBR - Gomme Stirene Butadiene
SBR 1502
SBR 1712
???
6PPD
???
TMQ
DTPD ???
Cera
Wax
Ogni ingrediente appartiene ad una famiglia di ingredienti
Le ricette
SMR 20
SBR 1502
CB CRX 1345
CB N115
SILICA
TESPT50%
Styrene-Indene Resin
AROMATIC OIL
Fatty Acid Zinc Salt
Stearic Acid
ZnO
6PPD
TMQ
DTPD
Wax
TBBS
CTP
SULFUR
q1
q2
q3
q4
q5
q6
q7
q8
q9
q10
q11
q12
q13
q14
q15
q16
q17
q18
STR 20
BR Ni
CB CRX 1345
SILICA
Styrene-Indene Resin
TESPT50%
Fatty Acid Zinc Salt
Stearic Acid
ZnO
6PPD
TMQ
DTPD
Wax
TBBS
CTP
SULFUR
q1
q2
q3
q4
q5
q6
q7
q8
q9
q10
q11
q12
q13
q14
q15
q16
Le combinazioni
SMR 20
SBR 1502
CB CRX 1345
CB N115
SILICA
TESPT50%
Styrene-Indene Resin
AROMATIC OIL
Fatty Acid Zinc Salt
Stearic Acid
ZnO
6PPD
TMQ
DTPD
Wax
TBBS
CTP
SULFUR
q1
q2
q3
q4
q5
q6
q7
q8
q9
q10
q11
q12
q13
q14
q15
q16
q17
q18
NR
SBR
Carbon Black
Silici
Silani
Resine
Oli
Der. Acidi Grassi
Acidi
ZnO
???
???
???
Cere
???
???
Zolfo
I sistemi
SMR 20
SBR 1502
CB CRX 1345
CB N115
SILICA
TESPT50%
Styrene-Indene Resin
AROMATIC OIL
Fatty Acid Zinc Salt
Stearic Acid
ZnO
6PPD
TMQ
DTPD
Wax
TBBS
CTP
SULFUR
q1
q2
q3
q4
q5
q6
q7
q8
q9
q10
q11
q12
q13
q14
q15
q16
q17
q18
NR
Sistema Matrice Polimerica
SBR
Carbon Black
Silici
Silani
Resine
Oli
Der. Acidi Grassi
Acidi
ZnO
???
???
???
Cere
???
???
Zolfo
Sistema Rinforzante
Sistema Plastificante
Sistema Ausiliari di
Processo
Sistema Attivanti della
Vulcanizzazione
Sistema Protettivo
Sistema Acceleranti della
Vulcanizzazione
Sistema Agenti Vulcanizzanti
Il problema della formulazione
 IN:


Mescola
Richieste di modifica delle CM
 OUT:

Sequenza di IR (interventi di modifica della ricetta)
Dov’è la conoscenza?
Regole di Formulazione

Relazioni esistenti tra CM e IR
Vincoli di Formulazione
Sulle quantità di ingredienti
 Sui valori degli attributi

T-Matrix
 Strumento di rappresentazione
 Strumento di supporto alla KA
 Regole di formulazione:

(IR, CM, corr, prop)
No Correlation (NC)
P-Truck Compounding
 IN:


Ricetta associata ad una mescola
Richieste di modifica delle CM
 Dati:


IR Possibili
Conoscenza: T-Matrix e Vincoli di Formulazione
 OUT:

Sequnza di IR (interventi di modifica della ricetta)
PTruck Compounding
Stato Iniziale: Ricetta
Goal: Raggiungere la variazione delle
Caratteristiche desiderata
Azioni: Interventi sulla Ricetta
Conoscenza a disposizione: il
Knowledge Artifact (T-Matrix) e vincoli
Quale PSM abbiamo scelto?
Perchè non è un problema di
configurazione?
Mondo dei blocchi
 Problema: data una configurazione di quattro blocchi (ad es [2])
si desidera trovare l’insieme di operazioni per ottenere la
configurazione finale di blocchi desiderata [1]
 Stato Iniziale: [2]
 Obiettivo: [1]
 Azioni Eseguibili: spostare un blocco libero per volta o sul
tavolo o su un altro blocco

Esempi di trasformazioni di stato
• Da 2 a 3
• Da 3 a 4 o 5
A
B
C
D
1
A
D
B
C
2
D
C
B
A
3
B
C
D
A
4
C
B
A D
5
Scarica

Problemi di Planning