Seconda Scuola Italiana RoboCup - dis.uniroma1.itiocchi/ART/scuola/piaggio.pdfMaurizio Piaggio -...
Transcript of Seconda Scuola Italiana RoboCup - dis.uniroma1.itiocchi/ART/scuola/piaggio.pdfMaurizio Piaggio -...
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 1
Seconda Scuola Italiana RoboCupSeconda Scuola Italiana RoboCup
Maurizio Maurizio PiaggioPiaggio
D.I.S.T - University of Genoa, Italy
ETHNOS-IVUn ambiente di programmazione
distribuito per Sistemi Robotici Multipli
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 2
■■ HEIRHEIR
■■ PropriètàPropriètà dell’ambientedell’ambiente didi programmazioneprogrammazione
■■ ETHNOSETHNOS
■■ RisultatiRisultati SperimentaliSperimentali
SommarioSommario
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 3
SD
R
KB
S S
S
SS
D1
D
D2
D3
DD
DD
D
R
R
R
R
R
R
R
R
REAL WORLD
Il Modello Cognitivo HEIRIl Modello Cognitivo HEIR
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 4
GliGli EspertiEsperti
■■ Tipo di attività cognitivaTipo di attività cognitiva
■■ VincoliVincoli TemporaliTemporali
■■ Tipo di dati gestitiTipo di dati gestiti
■■ DurataDurata
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 5
ClassiClassi didi EspertiEsperti
■■ SimboliciSimbolici–– unauna base base didi datidati comunecomune
–– ragionamentoragionamento simbolicosimbolico
–– non-real timenon-real time
■■ DiagrammaticiDiagrammatici–– moltemolte iconeicone, , rappresentazionirappresentazioni diagrammatichediagrammatiche
–– ragionamento analogicoragionamento analogico
–– soft real-time, any-timesoft real-time, any-time
■■ ReattiviReattivi–– pocapoca rappresentazionerappresentazione ( (statistati interniinterni))
–– interazioniinterazioni frequentifrequenti
–– hard real-time (hard real-time (brevebreve duratadurata))
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 6
ETHNOS - ProprietàETHNOS - Proprietà
■■ Integrazione automatica di diversi componentiIntegrazione automatica di diversi componenti
■■ Supporto per l’esecuzione in tempo realeSupporto per l’esecuzione in tempo reale
■■ Supporto per l’analisi per il Supporto per l’analisi per il RealReal-time-time
■■ Supporto per la comunicazione trasparente in rete tra robot eSupporto per la comunicazione trasparente in rete tra robot econ l’ambientecon l’ambiente
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 7
Flessibilità Flessibilità e e RiconfigurabilitàRiconfigurabilità
ETHNOS
PositoningDLPS
Navigator
ETHNOS
PositoningOdometry
Navigator
In ROOM A In ROOM B
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 8
■■ Posix Posix RT (RT (LinuxLinux Red Hat 5.2 o Red Hat 5.2 o equivalenteequivalente))
■■ Object Oriented DesignObject Oriented Design
■■ LinguaggioLinguaggio C++ C++
■■ Interfaccia diInterfaccia di ProgrammazioneProgrammazione ETHNOS ETHNOS–– C++ APIC++ API
–– SottoinsiemeSottoinsieme API in Java API in Java
L’ambiente ETHNOSL’ambiente ETHNOS
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 9
■■ DistribuzioneDistribuzione delladella ComputationaComputationa
■■ ComunicazioneComunicazione
■■ IntegrazioneIntegrazione Software Software
■■ SchedulazioneSchedulazione eded analisianalisi Real-time Real-time
Supporto fornito da ETHNOSSupporto fornito da ETHNOS
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 10
Architettura di Riferimento ETHNOSArchitettura di Riferimento ETHNOS
SM
DMM
S & D
WORLD
•Componenti (Kernel)•Esperti•Rappresentazioni Condivise
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 11
Distribuzione della ComputazioneDistribuzione della Computazione
Comunicazione Client Server (TCP-IP)
S
DR DRDR
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 12
Distribuzione della ComputazioneDistribuzione della Computazione
Comunicazione a Club (EEUDP - Broadcast)
DR
S
DS
R
SD
R
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 13
Distribuzione dellaDistribuzione della ComputazioneComputazione
Comunicazione su Field Bus (Echelon)
S
DR DR
S
D
S
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 14
■■ ComunicazioneComunicazione Inter-Layer Inter-Layer–– ProtocolloProtocollo a a messaggimessaggi Publish/Subscribe Publish/Subscribe
–– ((AddRequestAddRequest,, AddLocalRequest AddLocalRequest, , ShareMsgShareMsg))
Comunicazione (EIE Comunicazione (EIE ProtocolProtocol))
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 15
■■ ComunicazioneComunicazione Intra-Layer Intra-Layer–– Memorie CondiviseMemorie Condivise
–– ((CreatoriCreatori e e UtentiUtenti,Control ,Control sull’accessosull’accesso,,controllocontrollobasato su messaggibasato su messaggi))
–– Expert Service AccessExpert Service Access
–– ((definizionedefinizione didi servizioservizio,,accesso accesso a a servizioservizio,,riconfigurazionericonfigurazione automaticaautomatica))
Comunicazione (EIE Comunicazione (EIE ProtocolProtocol))
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 16
GerarchiaGerarchia didi ClassiClassi didi EspertiEsperti
Expert
SymbolicExpert
DiagrammaticExpert
ReactiveExpert
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 17
Gerarchia di Classi di EspertiGerarchia di Classi di Esperti
Class Localiser: public ETPeriodicExpert
{
Localiser (int frequency, int execution time);
~Localiser();
Init(); //user defined
Close(); //user defined
DoYourDuty(); //user defined
};
ETExpert
ETPeriodicExpert ETAperiodicExpert ETBackgroundExpert
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 18
Real-TimeReal-Time
■ Supporto– integrazione trasparente con Scheduler RT Posix
– Esperti <=> threads
– Rate Monotonic scheduling o non-preemptive EDFscheduling
– Sincronizzazione su Memoria condivisa
– attivazione e sospensione basata su EIEP
– Tesi di Scheduling
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 19
Risultati SperimentaliRisultati Sperimentali
■■ Pentium 100 Pentium 100 MhzMhz
–– CSTE = 17 CSTE = 17 µµs/expert (11 s/expert (11 µµs overhead s overhead susuLinuxLinux))
–– 0.44 % 0.44 % risorse risorse per per lolo scheduling (7 scheduling (7 espertiesperti at at40Hz)40Hz)
– EMDRE (esperti) = 3.32 µs + 13.75 µs *esperti
– EAL (Expert Activation Latency) = 82 µs +EMDRE
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 20
Risultati SperimentaliRisultati Sperimentali
CSTE - Context Switch Time per Expert
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 21
Risultati SperimentaliRisultati Sperimentali
EMDE - EIEP msg distribution per Expert
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 22
Risultati SperimentaliRisultati Sperimentali
EMDRE - msg distribution per Receiving Expert
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 23
■■ LabmateLabmate, Pioneer, Snoopy, Pioneer, Snoopy
Risultati SperimentaliRisultati Sperimentali
Maurizio Piaggio - Seconda Scuola Italiana RoboCup, Roma 1999 24
Risultati SperimentaliRisultati Sperimentali