TXJA Reti logiche fuzzy distribuite Reti di Calcolatori
TXJA --- Reti logiche fuzzy distribuite --Reti di Calcolatori LS Davide Sottara
Introduzione : Concetti e Strumenti Neu. Lo. Net Reti che supportano la logica (fuzzy) dei predicati Motore inferenziale parallelo e distribuibile Logica Razionale Estensione della logica fuzzy Particolarmente adatta alla distribuzione JXTA Middleware P 2 P Adatto ad ambienti dinamici Tu. Cs. ON Infrastruttura di comunicazione basata su centri di tuple reattivi Integra un motore Prolog 28/09/06
Logica : dai programmi alle reti C · c(X) : - q(X) r(X). · c(X) : - p(X) r(X). → P → R Q “Or parallelismo” w// Tutti i rami vanno esplorati SWA In caso di fallimento, si assume “unknown” 3/11/2021 3
Controllo fuzzy distribuito C → → P 28/09/06 R Q
Predicati : Valutazione Tre livelli di definizione: Pred Ø Semantica (JXTA Class) Pred 1 Imp 1 28/09/06 Imp 3 Imp 2 Pred. N Imp 1 Ø Criterio (JXTA Spec) Ø Metodo (JXTA Impl)
Predicati <-> Nodi P Quattro classi di Spec : 1. Memoria 2. Valutazione diretta 3. Consulenza esterna 4. Combinazione (operandi) P Ev Consult Mem Op R S Q 28/09/06
Deployment : Gruppi Peer JXTA ospitano i Nodi in base agli Adv. locali JXTA Discovery TXJA P JXTA P Q Layer Group P JXTA Layer Network Layer 28/09/06
Fault tolerance : best effort Ambiente dinamico : i peer non danno garanzie Replicazione SWA C P ? =P P 1 û û P 2 û P P 28/09/06 Q Ma anche cambi di programma voluti…
Protocolli di comunicazione Scambi frequenti : protocolli elementari ® basso overhead Risoluzione “backward” Client / Server (default) JXTA Msg : Risoluzione “feed-forward” Publish / Subscribe <Id> <Sender> Ask <Type> {Req, Ans} JXTA Tell P P Pipes <Args> <Essence> Q {t, j} <Urgency> [0, 1] 0 ® Subscribe 28/09/06
Flusso continuo w// : Query non bloccanti Massimo parallelismo Ordine non garantito Ordinamento a carico del cliente Query logiche : no stato 2: Ask 21 1: Ask 11 4: Tell 22 3: Tell 21 P P 28/09/06 Q a// : Query sequenziali Alternative più costose. . .
Replicazione a copie attive Il client interroga un solo server (…) Il modulo di Consult, se presente, propaga entro il gruppo Il server unisce le risposte e ritorna 1: Ask 5: Merge 6: Tell Consult non propaga ulteriormente P P 2: Consult 4: Advise 28/09/06 3: Recall Advise basate solo sul contenuto della memoria
Qo. S Più servitori alternativi Ogni richiesta diretta ad uno solo Eventualmente consulto inter-gruppo… ? ? P P Selezione casuale pesata: Servitore efficiente se risponde entro i timeout. Servitore efficace se fornisce risposte certe. Servitore fidato se efficiente ed efficace. Maggiore fiducia ® Maggiore probabilità di essere scelto 28/09/06
Velocità Risposte attese entro un tempo massimo T Query ordinate per urgenza U T = (1 -U)×Tmax Ad ogni passo U aumenta TTL previene loop Ogni modulo ha una velocità S Interrogato solo se S ³ U Consult : U = 1 Ask 2 Ask’ 2 28/09/06 Ask’ 1 SMem = 1 Sempre interrogato ! SConsult < 1 SOp < 1
Memoria Memorie cache ottimali se sincronizzate Troppo costoso ! Copie (quasi) fredde 1: Ask 6: Tell Affermazioni “nuove” ed “utili” vengono memorizzate Successivamente diffuse Con probabilità pari alla certezza 8: Remind P P 7: Remember? 28/09/06
- Slides: 14