Multiagent Planning. Presentazione. Andrea Bonisoli. 24 Novembre Università degli studi di Brescia

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Multiagent Planning. Presentazione. Andrea Bonisoli. 24 Novembre Università degli studi di Brescia"

Transcript

1 Multiagent Planning Presentazione Andrea Bonisoli Università degli studi di Brescia 24 Novembre 2014 A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

2 Pianicazione Classica Le azioni sono deterministiche ed hanno eetto istantaneo; Lo stato iniziale è completamente noto; Il goal è raggiungere uno degli stati possibili per cui risulta soddisfatta un insieme proposizioni; Un piano soluzione è una sequenza di azioni che, quando applicata a partire dallo stato iniziale, porta no ad uno stato goal. L'agente pianicatore suppone di trovarsi da solo isolato in un mondo chiuso di cui può controllare l'evoluzione dello stato. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

3 Running example Dominio Logistico A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

4 Multiagent Planning Divide et Impera Alcuni domini presentano una facile e naturale suddivisione dei compiti tra agenti dierenti. Questa struttura potrebbe essere utilizzata per rendere i pianicatori più ecienti e più veloci? Inoltre si vorrebbe rendere esplicita l'interazione tra i vari attuatori che eseguono le azioni nel mondo rispetto all'approccio più astratto di un singolo pianicatore. Si tratta di un campo di ricerca molto vasto, popolare ed in rapida crescita, come si può vedere dai risultati presenti su Google Scholar. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

5 Approcci multiagente Agenti come Astrazioni Si vuole decomporre un dominio per un problema di pianicazione classico in un problema di pianicazione multiagente. Ad esempio il dominio logistico si presta bene ad essere decomposto. Si vuole ottenere un algoritmo di pianicazione più eciente (più veloce) per risolvere il problema multiagente in modo da poter dedurre una soluzione per il problema di partenza. Il contesto è ancora molto simile alla pianicazione classica ma sfrutta tecniche multiprocessore e di programmazione parallela. Poiché risolve con un unico piano il problema viene spesso denito approccio centralizzato. Entro quali ipotesi l'algoritmo potrebbe essere più eciente? Ovvero in quali casi risolvere un insieme di problemi più piccoli è più ecace che risolvere un solo grande problema composto dalla loro unione? A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

6 Approcci multiagente Agenti come Componenti Distribuiti Si vuole risolvere un problema di pianicazione per un sistema di agenti autonomi e distribuiti (in grado di comunicare tra loro). Ad esempio un insieme di robot per la ricerca di sopravvissuti in una zona colpita da disastri ambientali. In generale potrebbero anche ricevere le azioni da eseguire da un cervello centrale che esegue l'algoritmo precedente. In questo caso sacricherebbero la loro autonomia, ma non è detto che sia sempre una strada possibile. Si vuole quindi ottenere un algoritmo di pianicazione distribuito tra diversi agenti pianicatori/attuatori che produca un piano per ogni agente la cui esecuzione contemporanea sia una soluzione per il problema. In entrambi questi due casi gli agenti sono completamente cooperativi. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

7 Approcci multiagente Agenti con Privacy e Goal condivisi Si vuole risolvere un problema in cui un gruppo di agenti deve raggiungere un goal comune, mantenendo però private alcune informazioni. Ad esempio diverse compagnie che stanno collaborando su un progetto comune, oppure diversi dipartimenti di una singola azienda. Se il vincolo sulla privacy è molto forte, potrebbe non essere valido adottare un approccio centralizzato, ma solamente algoritmi distribuiti. Si vuole però che l'algoritmo di pianicazione distribuito sia anche in grado di mantenere private alcune informazioni degli agenti, evitando anche lo scambio di queste informazioni durante l'esecuzione dell'algoritmo di pianicazione. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

8 Approcci multiagente Agenti Egoisti con alcuni Goal Condivisi E se gli agenti non fossero interessati a raggiungere il goal, ma solo al proprio interesse personale? In questo caso ogni agente può avere dei goal dierenti ma soprattutto ha una funzione di utilità in generale diversa (senza essere tuttavia in competizione diretta per il raggiungimento dei goal). Ad esempio un gruppo di appaltatori che deve costruire delle grandi opere. Per questo motivo si voglio degli algoritmi e meccanismi che, oltre a mantenere la privacy, garantiscono particolari proprietà (quali la stabilità) rispetto alla soluzione trovata. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

9 Perché suddividere il problema? Un pianicatore classico centrale non è suciente? Per alcuni casi potrebbe essere una buona soluzione, ma presenta alcuni problematiche: È un approccio meno robusto e più soggetto a fallimenti. Potrebbe non adattarsi bene ad agenti complessi che devono essere implementati tramite un simulatore. Richiede la possibilità di comunicare in modo ecace con il pianicatore centrale, di cui tutti gli agenti devono avere piena ducia e di cui devono seguire le indicazioni ricevute. Inoltre non consente di mantenere private alcune informazioni, che devono essere comunicate almeno al pianicatore centrale. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

10 MA-STRIPS Un linguaggio per problemi multiagente Si tratta di una semplice estensione del linguaggio di pianicazione STRIPS per problemi multiagente. L'unico cambiamento prevede di associare ogni azione con un singolo agente. L'insieme della azioni diventa quindi una partizione rispetto agli agenti. Seguono due denizioni: Una variabile del problema si denisce privata se è presente nelle azioni di un solo agente. Una variabile si denisce pubblica altrimenti. Inoltre: Una azione di un agente si denisce privata se coinvolge solamente variabili private. Una azione di un agente si denisce pubblica altrimenti. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

11 MA-STRIPS Modello formale Un problema MA-STRIPS per un insieme di agenti Σ = {α i } n è una tuple P, {A i=1 i} n, I, G dove: i=1 P è un insieme nito di proposizioni atomiche I P è lo stato iniziale del problema G P codica le condizioni dello stato goal Per ogni 1 i n, A i è l'insieme delle azioni che l'agente α i è in grado di eseguire. Ogni azione a A = A i è denita come in STRIPS dalle sue precondizioni e dai suoi eetti. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

12 Grafo interazione Per meglio visualizzare le connessioni tra gli agenti del problema è utile il grafo di interazione. In questo grafo gli agenti del problema sono rappresentati sui nodi del grafo, uno per agente. Nel grafo sarà presente un arco tra due nodi se il primo agente possiede una azione che fornisce oppure consuma una precondizione di una azione del secondo agente. Se il grafo presenta molti archi, gli agenti sono strettamente correlati tra loro perché le loro azioni si inuenzano a vicenda. Se il grafo fosse completamente connesso ogni agente dipende dalle azioni di ogni altro agente. Se il grafo non fosse connesso, il problema è scomponibile in in parti separate che non hanno interazioni. È una misura della correlazione tra gli agenti. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

13 Grafo interazione Esempio di Grafo A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

14 MA-A* Una estensione di A* Ogni agente svolge una ricerca separata e indipendente dagli altri agenti con l'algoritmo A*: Mantiene la sua lista di stati aperti e chiusi. Espande uno stato utilizzando solo le sue azioni. Comunica uno stato di ricerca agli altri agenti quando questi ne hanno bisogno. Calcola una soluzione ottimale rispetto al numero di azioni in modo distribuito. Nello specico, ogni agente comunica uno stato di ricerca quando lo raggiunge tramite una delle sue azioni pubbliche, che per denizione producono uno stato in cui almeno una variabile è interessante per almeno un altro agente. Quando un agente riceve una comunicazione con uno stato potrebbe decidere se inserirlo nella sua lista di stati aperti oppure chiusi. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

15 MA-A* Esempio di esecuzione A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

16 MA-A* Esempio di esecuzione A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

17 MA-A* Esempio di esecuzione A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

18 MA-A* Esempio di esecuzione A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

19 MA-A* Esempio di esecuzione A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

20 MA-A* Esempio di esecuzione A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

21 Privacy nei problemi multiagente La denizione di pubblico e privato non è suciente per la privacy degli agenti. Infatti se almeno una proposizione pubblica deve rimanere condenziale tra un sottoinsieme di agenti, nell'algoritmo MA-A* questa viene comunicata pubblicamente a tutti gli agenti del problema. Inoltre vi sono altre informazioni in un problema di pianicazione che si potrebbe voler mantenere private tra cui: Fatti di altri agenti Azioni eseguite da altri agenti Link causali tra le azioni L'identità o la presenza di alcuni agenti nel problema Si tratta di un campo di ricerca ancora aperto ed in sviluppo. A. Bonisoli (UNIBS) Multiagent Planning 24 Novembre / 21

Il Sistema Operativo Processi e Risorse

Il Sistema Operativo Processi e Risorse ISTITUTO TECNICO SECONDO BIENNIO GIORGIO PORCU www.thegiorgio.it Sommario Processi Evoluzione dei Processi Modello a Processi Interrupt Context Switching Risorse Risorsa, Classe, Istanza, Molteplicità

Dettagli

Sommario. Tecniche di Decomposizione dei Problemi. Algoritmi: Costruzione. Tipi di problemi

Sommario. Tecniche di Decomposizione dei Problemi. Algoritmi: Costruzione. Tipi di problemi Sommario Tecniche di Decomposizione dei Problemi Costruzione di algoritmi Approccio alla soluzione di problemi complessi Sequenza; Selezione; Iterazione; Ricorsione Tecniche di Decomposizione dei Problemi

Dettagli

Gli algoritmi. Prof. Pasquale De Michele. Gli algoritmi. Pasquale De Michele

Gli algoritmi. Prof. Pasquale De Michele. Gli algoritmi. Pasquale De Michele Prof. Elaborazione dell informazione Algoritmo (procedura dielaborazione) Prima definizione: successione finita e ordinata di passi (operazioni) che risolve una classe di problemi in un tempo finito. Programma

Dettagli

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Il problema di fondo Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio Algoritmi

Dettagli

Processi non sequenziali e tipi di interazione

Processi non sequenziali e tipi di interazione Processi non sequenziali e tipi di interazione Algoritmo, programma, processo Algoritmo: Procedimento logico che deve essere eseguito per risolvere un determinato problema. Programma: Descrizione di un

Dettagli

Algoritmi per la programmazione lineare: il metodo del simplesso

Algoritmi per la programmazione lineare: il metodo del simplesso Algoritmi per la programmazione lineare: il metodo del simplesso Dipartimento di Informatica, Universita' di Pisa A.A. 2018/2019 Contenuti della lezione Problemi di programmazione lineare, forma standard

Dettagli

Teoria della Complessità Computazionale

Teoria della Complessità Computazionale Teoria della Complessità Computazionale Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 21 Ottobre 2014 Ricerca Operativa 2

Dettagli

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Il problema di fondo Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algoritmi e Programmazione Stefano

Dettagli

3.4 Metodo di Branch and Bound

3.4 Metodo di Branch and Bound 3.4 Metodo di Branch and Bound Consideriamo un generico problema di Ottimizzazione Discreta dove X è la regione ammissibile. (P ) z = max{c(x) : x X} Metodologia generale di enumerazione implicita (Land

Dettagli

L ELABORATORE ELETTRONICO

L ELABORATORE ELETTRONICO L ELABORATORE ELETTRONICO Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati) per produrre altri oggetti

Dettagli

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algoritmi e Programmazione Stefano Cagnoni Il problema

Dettagli

Le aree dell informatica

Le aree dell informatica Fondamenti di Informatica per la Sicurezza a.a. 2006/07 Le aree dell informatica Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università

Dettagli

PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE

PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE 1 Algoritmo, programma, processo Algoritmo Programma Processo Procedimento logico che deve essere eseguito per risolvere un determinato problema. Descrizione

Dettagli

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico Click to edit Algoritmo Master title style algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta in un tempo finito

Dettagli

Complessità computazionale

Complessità computazionale Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Complessità computazionale Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Università degli Studi di Brescia Elementi di Informatica e Programmazione Concetto di Algoritmo Docente: Marco Sechi E mail: marco.sechi@unibs.it Vers. 21/08/2016.A050917* Dipartimento di Ingegneria Meccanica

Dettagli

Università di Bergamo Facoltà di Ingegneria. Intelligenza Artificiale. Paolo Salvaneschi A3_1 V1.3. Agenti

Università di Bergamo Facoltà di Ingegneria. Intelligenza Artificiale. Paolo Salvaneschi A3_1 V1.3. Agenti Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A3_1 V1.3 Agenti Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio personale e per

Dettagli

PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE

PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE 1 ALGORITMO, PROGRAMMA, PROCESSO Algoritmo Procedimento logico che deve essere eseguito per risolvere un determinato problema. Programma Descrizione di un

Dettagli

Introduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente

Introduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente Routing Introduzione Il livello 3 della pila ethernet ha il compito di muovere i pacchetti dalla sorgente attraversando più sistemi Il livello di network deve quindi: Scegliere di volta in volta il cammino

Dettagli

I Diagrammi di Flusso OO

I Diagrammi di Flusso OO Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - I Diagrammi di Flusso OO Generalità I diagrammi di attività vengono usati per modellare processi a

Dettagli

Fondamenti di Informatica. La regola della destra. Il metodo di Tremaux. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a.

Fondamenti di Informatica. La regola della destra. Il metodo di Tremaux. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. Fondamenti di Informatica Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. 2006-2007 La regola della destra Entra nel labirinto. Quando ti trovi a un nodo prendi il ramo più a destra. Se arrivi

Dettagli

Parte III: Algoritmo di Branch-and-Bound

Parte III: Algoritmo di Branch-and-Bound Parte III: Algoritmo di Branch-and-Bound Divide et Impera Sia z * max {c T x : x S} (1) un problema di ottimizzazione combinatoria difficile da risolvere. Domanda: E possibile decomporre il problema (1)

Dettagli

METODI DELLA RICERCA OPERATIVA

METODI DELLA RICERCA OPERATIVA Università degli Studi di Cagliari FACOLTA' DI INGEGNERIA CORSO DI METODI DELLA RICERCA OPERATIVA Dott.ing. Massimo Di Francesco (mdifrance@unica.it) i i Dott.ing. Maria Ilaria Lunesu (ilaria.lunesu@unica.it)

Dettagli

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.) Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale l informazione è rappresentata in forma numerica

Dettagli

Modelli di interazione tra processi

Modelli di interazione tra processi Modelli di interazione tra processi Modello a memoria comune (ambiente globale, global environment) Modello a scambio di messaggi (ambiente locale, message passing) 1 Modello a memoria comune Il sistema

Dettagli

I Appello Ricerca Operativa 2 bis Compito A

I Appello Ricerca Operativa 2 bis Compito A I Appello Ricerca Operativa 2 bis Compito A Cognome e nome:. Esercizio 1. Si consideri il problema del matching di cardinalità massima in un grafo G ed il suo problema di decisione associato: esiste un

Dettagli

Introduzione alla Programmazione Concorrente

Introduzione alla Programmazione Concorrente Introduzione alla Programmazione Concorrente 1 Algoritmo, programma, processo Algoritmo: Procedimento logico che deve essere eseguito per risolvere un determinato problema. Programma: Descrizione di un

Dettagli

Homework 2. 1 Il problema. Corso di Fondamenti di Informatica II. 26 Novembre L'Albero dei divisori

Homework 2. 1 Il problema. Corso di Fondamenti di Informatica II. 26 Novembre L'Albero dei divisori Homework 2 Corso di Fondamenti di Informatica II BIAR2 (Ing. Informatica e Automatica) e BSIR2 (Ing. dei Sistemi) A.A. 2010/2011 26 Novembre 2010 Sommario Questo documento fornisce informazioni relative

Dettagli

Il Sistema Operativo Concorrenza e Grafi di precedenza

Il Sistema Operativo Concorrenza e Grafi di precedenza ISTITUTO TECNICO SECONDO BIENNIO GIORGIO PORCU www.thegiorgio.it Sommario Elaborazione concorrente Elaborazione sequenziale Elaborazione concorrente Elaborazione parallela Grafi di Precedenza Grafi di

Dettagli

Architetture data-flow

Architetture data-flow Architetture data-flow Le architetture che abbiamo visto finora sono dette architetture control flow. Ciò sta ad indicare che il flusso dell elaborazione è dettato dall ordine con cui le varie istruzioni

Dettagli

L ELABORATORE ELETTRONICO!

L ELABORATORE ELETTRONICO! L ELABORATORE ELETTRONICO! Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati) per produrre altri oggetti

Dettagli

Pianificazione basata su ricerca euristica state-space forward: Fast Forward (FF)

Pianificazione basata su ricerca euristica state-space forward: Fast Forward (FF) Pianificazione basata su ricerca euristica state-space forward: Fast Forward (FF) Alfonso Gerevini, Alessandro Saetti Intelligenza Artificiale B, Università degli Studi Brescia Bibliografia Per chi vuole

Dettagli

Modelli di interazione tra processi

Modelli di interazione tra processi Modelli di interazione tra processi Modello a memoria comune (ambiente globale, global environment) Modello a scambio di messaggi (ambiente locale, message passing) 1 Modello a memoria comune Il sistema

Dettagli

Modello a scambio di messaggi

Modello a scambio di messaggi Modello a scambio di messaggi Aspetti caratterizzanti il modello Canali di comunicazione Primitive di comunicazione 1 Aspetti caratterizzanti il modello modello architetturale di macchina (virtuale) concorrente

Dettagli

Programmazione. Dipartimento di Matematica. Ing. Cristiano Gregnanin. 29 febbraio Corso di laurea in Matematica

Programmazione. Dipartimento di Matematica. Ing. Cristiano Gregnanin. 29 febbraio Corso di laurea in Matematica Programmazione Dipartimento di Matematica Ing. Cristiano Gregnanin Corso di laurea in Matematica 29 febbraio 2016 1 / 33 INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, bisogna conoscere

Dettagli

Un esempio di applicazione della programmazione lineare intera al progetto di una rete stradale con vincoli di network survivability

Un esempio di applicazione della programmazione lineare intera al progetto di una rete stradale con vincoli di network survivability Un esempio di applicazione della programmazione lineare intera al progetto di una rete stradale con vincoli di network survivability Corso di Ricerca Operativa per il Corso di Laurea Magistrale in Ingegneria

Dettagli

Il Modello a scambio di messaggi

Il Modello a scambio di messaggi Il Modello a scambio di messaggi 1 Interazione nel modello a scambio di messaggi Se la macchina concorrente e` organizzata secondo il modello a scambio di messaggi: PROCESSO=PROCESSO PESANTE non vi è memoria

Dettagli

Automi e Linguaggi Formali

Automi e Linguaggi Formali Automi e Linguaggi Formali Problemi intrattabili, classi P e NP A.A. 2014-2015 Alessandro Sperduti sperduti@math.unipd.it Problemi intrattabili Ci occuperemo solo di problemi decidibili, cioè ricorsivi.

Dettagli

Università degli Studi di Brescia INFORMATICA. Dipartimento di Ingegneria Meccanica e Industriale

Università degli Studi di Brescia INFORMATICA. Dipartimento di Ingegneria Meccanica e Industriale Università degli Studi di Brescia INFORMATICA Concetto di Algoritmo Docente: Marco Sechi E mail: marco.sechi@unibs.it Vers. 21/08/2016.A050917* Dipartimento di Ingegneria Meccanica e Industriale DIPARTIMENTO

Dettagli

Elaboratore Elettronico

Elaboratore Elettronico L ELABORATORE ELETTRONICO Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati)) per produrre rre altri oggetti

Dettagli

PIANIFICAZIONE BASATA SU GRAFI

PIANIFICAZIONE BASATA SU GRAFI PIANIFICAZIONE BASATA SU GRAFI Nel 1995 viene proposto da Blum e Furst CMU un nuovo pianificatore GRAPHPLAN basato sui grafi Durante la pianificazione viene creato un particolare grafo detto Planning Graph

Dettagli

Corso Programmazione

Corso Programmazione Corso Programmazione 2008-2009 (docente) Fabio Aiolli E-mail: aiolli@math.unipd.it Web: www.math.unipd.it/~aiolli (docenti laboratorio) A. Ceccato, F. Di Palma, M. Gelain Dipartimento di Matematica Pura

Dettagli

Corso di Programmazione Problem Solving. Tipi di Problemi. Problemi Complessi Soluzione. Dott. Pasquale Lops. Primitivi. Complessi

Corso di Programmazione Problem Solving. Tipi di Problemi. Problemi Complessi Soluzione. Dott. Pasquale Lops. Primitivi. Complessi Materiale didattico preparato dal dott. Stefano Ferilli Corso di Programmazione Problem Solving Dott. Pasquale Lops lops@di.uniba.it Corso di Programmazione - DIB 1/30 Tipi di Problemi Primitivi Risolubili

Dettagli

Ricerca non informata

Ricerca non informata Ricerca non informata Corso di Intelligenza Artificiale, a.a. 2017-2018 Prof. Francesco Trovò 05/03/2018 Ricerca non informata Definizione del problema della ricerca Architettura necessaria Blind search

Dettagli

Problemi, algoritmi, calcolatore

Problemi, algoritmi, calcolatore Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione

Dettagli

Coverage. Visto che il coverage si basa su aree dell ambiente che vengono monitorate non è

Coverage. Visto che il coverage si basa su aree dell ambiente che vengono monitorate non è L. Pallottino, Sistemi Robotici Distribuiti - Versione del 10 Dicembre 2015 393 Coverage Si consideri ora il problema di coordinare una squadra di robot con dei sensori omnidirezionali in modo da garantire

Dettagli

Corso di Perfezionamento

Corso di Perfezionamento Programmazione Dinamica 1 1 Dipartimento di Matematica e Informatica Università di Camerino 15 febbraio 2009 Tecniche di Programmazione Tecniche di progettazione di algoritmi: 1 Divide et Impera 2 Programmazione

Dettagli

Hypermedia Design Model

Hypermedia Design Model Hypermedia Design Model Monica Maritati Dipartimento di Elettronica e Informazione maritati@elet.polimi.it tel. 02-23993494 23/04/2002 HDM - Progettazione Applicazioni Web 1 Ricevimento studenti Mercoledì

Dettagli

«Sciente e Tecnologie dei Beni Culturali»

«Sciente e Tecnologie dei Beni Culturali» 5 Informatica CdS in «Sciente e Tecnologie dei Beni Culturali» AA 2014-2015 Mini-sito dell insegnamento: http://www.unife.it/scienze/beni.culturali/insegnamenti/informatica Prof. Giorgio Poletti giorgio.poletti@unife.it

Dettagli

Scaletta. Cenni di computabilità. Cosa fa un programma? Definizioni (1/2) Definizioni (2/2) Problemi e domande. Stefano Mizzaro 1

Scaletta. Cenni di computabilità. Cosa fa un programma? Definizioni (1/2) Definizioni (2/2) Problemi e domande. Stefano Mizzaro 1 Scaletta Cenni di computabilità Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 23 27 novembre 2013

Dettagli

! Problemi, domande, risposte. ! Algoritmi che calcolano funzioni. ! Funzioni computabili e non. ! Problema = insieme di domande omogenee. !

! Problemi, domande, risposte. ! Algoritmi che calcolano funzioni. ! Funzioni computabili e non. ! Problema = insieme di domande omogenee. ! Scaletta Cenni di computabilità Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 24 26 maggio 2015!

Dettagli

CORSO DI INFORMATICA Maria Grazia Celentano

CORSO DI INFORMATICA Maria Grazia Celentano CORSO DI INFORMATICA Maria Grazia Celentano INFORMATICA E PROGRAMMAZIONE L Informatica è definita come la Scienza della Rappresentazione e dell Elaborazione dell informazione o, in altri termini, lo studio

Dettagli

Problemi intrattabili e quantum computing

Problemi intrattabili e quantum computing Problemi intrattabili e quantum computing Il problema del commesso viaggiatore Noto anche come Travelling Salesman Problem (TSP) Il commesso viaggiatore deve visitare n città in automobile Se viaggiasse

Dettagli

Le aree dell informatica

Le aree dell informatica Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Le aree dell informatica Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università

Dettagli

Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi

Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore

Dettagli

Progettazione di Algoritmi

Progettazione di Algoritmi Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 29/01/2016 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via

Dettagli

Economia dell'organizzazione. Capitolo 2 Organizzazione Economica ed Ecienza. Ennio Bilancini.

Economia dell'organizzazione. Capitolo 2 Organizzazione Economica ed Ecienza. Ennio Bilancini. Economia dell'organizzazione Capitolo 2 Organizzazione Economica ed Ecienza Ennio Bilancini email: bilancini@unisi.it Sommario Che cos'e' un'organizzazione Denizione di Pareto Ecienza L'analisi economica

Dettagli

GARA SECONDARIA DI PRIMO GRADO INDIVIDUALE

GARA SECONDARIA DI PRIMO GRADO INDIVIDUALE GARA2 2019 SECONDARIA DI PRIMO GRADO INDIVIDUALE ESERCIZIO 1 Premessa La tabella che segue descrive le attività di un progetto (indicate rispettivamente con le sigle A1, A2,...), riportando per ciascuna

Dettagli

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013 A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa Seconda prova intermedia 7 giugno 0 Nome: Cognome: Matricola: Orale /06/0 ore aula N Orale 0/07/0 ore aula N

Dettagli

Principles of Concurrent Programming

Principles of Concurrent Programming Principles of Giuseppe Anastasi g.anastasi@iet.unipi.it Pervasive Computing & Networking Lab. () Dept. of Information Engineering, University of Pisa Overview Concetti preliminari Interazione fra processi

Dettagli

Esecuzione concorrente

Esecuzione concorrente Esecuzione concorrente Un SO consiste in un gran numero di processi che vengono eseguiti più o meno contemporaneamente dal processore L esecuzione concorrente introduce un insieme di problematiche che

Dettagli

Coding con Scratch. Coding unplugged e con il PC nella scuola primaria

Coding con Scratch. Coding unplugged e con il PC nella scuola primaria Coding con Scratch Coding unplugged e con il PC nella scuola primaria Per riuscire a completare un compito, un robot ha bisogno di avere una precisa sequenza di istruzioni (PROGRAMMA) da poter eseguire

Dettagli

T4T-aggiornamento insegnanti Secondo incontro febbraio 2017

T4T-aggiornamento insegnanti Secondo incontro febbraio 2017 T4T-aggiornamento insegnanti Secondo incontro febbraio G. Barbara Demo Dipartimento di Informatica Università di Torino barbara@di.unito.it 2/9/ 1 Cosa è T4T? Perchè questo progetto? T4T sta per Teachers

Dettagli

L INFORMATICA c1. Informatica è qualcosa che ha a che fare con l uso del computer

L INFORMATICA c1. Informatica è qualcosa che ha a che fare con l uso del computer L INFORMATICA c1 Negli incontri precedenti ci siamo occupati di cercare la soluzione di alcuni problemi. Ora cerchiamo di definire cosa si intende per informatica. Informatica è qualcosa che ha a che fare

Dettagli

MODELLO A MEMORIA COMUNE. Aspetti caratterizzanti

MODELLO A MEMORIA COMUNE. Aspetti caratterizzanti MODELLO A MEMORIA COMUNE Aspetti caratterizzanti 1 Ogni applicazione viene strutturata come un insieme di componenti, suddiviso in due sottoinsiemi disgiunti: processi (componenti attivi) e risorse (componenti

Dettagli

MCTS e videogiochi: un'applicazione per le Gare Pokémon

MCTS e videogiochi: un'applicazione per le Gare Pokémon e videogiochi: un'applicazione per le Gare Pokémon Live 10 ottobre 2015 1 Applicazione alle Gare Pokémon Live L'algoritmo Tipo di retropropagazione 2 Multi-armed bandit problem UCB1 e convergenza al minimax

Dettagli

L ELABORATORE ELETTRONICO

L ELABORATORE ELETTRONICO L ELABORATORE ELETTRONICO Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su dati in ingresso (input) per produrre uno

Dettagli

Algoritmi. Pagina 1 di 5

Algoritmi. Pagina 1 di 5 Algoritmi Il termine algoritmo proviene dalla matematica e deriva dal nome di in algebrista arabo del IX secolo di nome Al-Khuwarizmi e sta ad indicare un procedimento basato su un numero finito operazioni

Dettagli

A lezione sono stati presentati i seguenti passi per risolvere un problema:

A lezione sono stati presentati i seguenti passi per risolvere un problema: Calcolo delle radici di un polinomio Problema: Dati i coefficienti a,b,c di un polinomio di 2 grado della forma: ax^2 + bx + c = 0, calcolare le radici. A lezione sono stati presentati i seguenti passi

Dettagli

Introduzione alla ricerca operativa Problemi e modelli

Introduzione alla ricerca operativa Problemi e modelli Problemi e modelli TFA Anno Accademico 2012-13 La metodologia della matematica applicata Problema reale Denizione del modello matematico Algoritmo risolutivo Analisi dei risultati Il problema reale Reperimento

Dettagli

Fondamenti di Informatica. Definizione di Algoritmo. Algoritmo Euclideo. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a.

Fondamenti di Informatica. Definizione di Algoritmo. Algoritmo Euclideo. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. Fondamenti di Informatica Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. 006-007 Definizione di Algoritmo Def.: Per Algoritmo si intende un elenco di istruzioni che specificano una serie

Dettagli

Programmazione = decomposizione basata su astrazioni

Programmazione = decomposizione basata su astrazioni Programmazione = decomposizione basata su astrazioni 1 Decomposizione in moduli necessaria quando si devono sviluppare programmi abbastanza grandi decomporre il problema in sotto-problemi i moduli che

Dettagli

Parte II - Reti di Calcolatori ed Internet IL LIVELLO RETE

Parte II - Reti di Calcolatori ed Internet IL LIVELLO RETE Parte II - Reti di Calcolatori ed Internet IL LIVELLO RETE 3-1 Il Livello RETE Servizi del livello Rete Organizzazione interna Livello Rete basato su Circuito Virtuale Livello Rete basato su Datagram Algoritmi

Dettagli

PLANNING LINEARE FORWARD. Esercizio in Prolog

PLANNING LINEARE FORWARD. Esercizio in Prolog PLANNING LINEARE FORWARD Esercizio in Prolog 1 Prendiamo l esempio noto come anomalia di Sussman: Stato iniziale: Planning lineare in Prolog c" b a " Stato finale: a " b" c " 2 Stato Per rappresentare

Dettagli

Certificati dei problemi in NP

Certificati dei problemi in NP Certificati dei problemi in NP La stringa y viene in genere denominata un certificato Un Certificato è una informazione ausiliaria che può essere utilizzata per verificare in tempo polinomiale nella dimensione

Dettagli

LABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica. Algoritmi ricorsivi

LABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica. Algoritmi ricorsivi LABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna Partiamo da un

Dettagli

FONDAMENTI DI INTELLIGENZA ARTIFICIALE Prof. Paola Mello- 12 Luglio 2018 Tempo a disposizione: 2 h Risultato: 32/32 punti

FONDAMENTI DI INTELLIGENZA ARTIFICIALE Prof. Paola Mello- 12 Luglio 2018 Tempo a disposizione: 2 h Risultato: 32/32 punti FONDAMENTI DI INTELLIGENZA ARTIFICIALE Prof. Paola Mello- 12 Luglio 2018 Tempo a disposizione: 2 h Risultato: 32/32 punti Esercizio 1 (punti 6) Modellare in logica del I ordine le seguenti frasi in linguaggio

Dettagli

I SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore.

I SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore. I SISTEMI OPERATIVI Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore. Le funzioni di un S.O. non sono definibili in modo esaustivo e puntuale così come non

Dettagli

Analisi interazione domanda/offerta: modelli di assegnazione

Analisi interazione domanda/offerta: modelli di assegnazione Corso di Laurea Ingegneria Civile e Ambientale - AA Corso di: Fondamenti di Trasporti Lezione: Analisi interazione domanda/offerta: modelli di assegnazione Giuseppe Inturri Università di Catania Dipartimento

Dettagli

Teoria dell Informazione

Teoria dell Informazione Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Teoria dell Informazione Cosa è l informazione L informazione è qualcosa che si possiede e si può dare ad un altro

Dettagli

Agenti che risolvono problemi attraverso la ricerca in uno spazio di stati

Agenti che risolvono problemi attraverso la ricerca in uno spazio di stati Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A5_1 V1.4 Agenti che risolvono problemi attraverso la ricerca in uno spazio di stati Il contenuto del documento è

Dettagli

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Corso di Intelligenza Artificiale, a.a. 2017-2018 Prof. Francesco Trovò 19/03/2018 Constraint Satisfaction problem Fino ad ora ogni stato è stato modellizzato come una

Dettagli

Algoritmi. Andrea Passerini Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile

Algoritmi. Andrea Passerini Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile Algoritmi Andrea Passerini passerini@dsi.unifi.it Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile Elaboratore Un elaboratore o computer è una macchina digitale, elettronica,

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T5 1 I thread 1 Prerequisiti Concetto di processo Interazione diretta Interazione indiretta Mutua esclusione Produttore-consumatore Schedulatore 2 1 Introduzione Generalmente,

Dettagli

Lo sviluppo del progetto informatico

Lo sviluppo del progetto informatico Lo sviluppo del progetto informatico Il progetto Il controllo di qualità Le qualità per i prodotti di software Le figure professionali La metodologia La conoscenza degli obiettivi L analisi La progettazione

Dettagli

i completi l'esecuzione dell'algoritmo di programmazione dinamica per questo problema restituendo il valore ottimo e una soluzione ottima del problema

i completi l'esecuzione dell'algoritmo di programmazione dinamica per questo problema restituendo il valore ottimo e una soluzione ottima del problema Compito di Ricerca Operativa II Esercizio ( punti). ia dato il problema di flusso massimo sulla rete in figura (le capacit a degli archi sono riportate sopra di essi). 0 8 i consideri il seguente flusso

Dettagli

Il concetto di calcolatore e di algoritmo

Il concetto di calcolatore e di algoritmo Il concetto di calcolatore e di algoritmo Elementi di Informatica e Programmazione Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Informatica

Dettagli

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015 1 Lunedí 20 Aprile 2015 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Rilassamento di un problema Rilassare un problema di Programmazione Matematica vuol dire trascurare alcuni (tutti i)

Dettagli

Algoritmo. Calcolabilità

Algoritmo. Calcolabilità Algoritmo In altri termini, l algoritmo può essere definito come la descrizione di un procedimento che ha le seguenti proprietà: deve essere esplicita e non ambigua per l interlocutore cui è destinata

Dettagli

Il vettore e la lista concatenate (o catena) sono due esempi di strutture interne.

Il vettore e la lista concatenate (o catena) sono due esempi di strutture interne. Strutture dati PILA e CODA Le strutture dati si dividono in interne e astratte. Quelle astratte sono rappresentazioni dei dati di un problema che rispecchiano le proprietà dei dati e le relazioni usate

Dettagli

Appunti di Sistemi Operativi. Enzo Mumolo address web address :

Appunti di Sistemi Operativi. Enzo Mumolo  address web address : Appunti di Sistemi Operativi Enzo Mumolo e-mail address :mumolo@units.it web address :www.units.it/mumolo Indice 1 Determinatezza 1 1.1 Una formulazione analitica dei processi concorrenti...................

Dettagli