• Nenhum resultado encontrado

Sistemas Distribuídos

N/A
N/A
Protected

Academic year: 2021

Share "Sistemas Distribuídos"

Copied!
43
0
0

Texto

(1)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Sistemas Distribu´ıdos

Aula 3: Comunica¸

ao, Falhas e Coordena¸

ao

21 de mar¸

co de 2013

(2)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Comunica¸c˜

ao entre Processos

troca de mensagens ´

e sempre a primitiva b´

asica

sobre essa primiitiva podemos construir outras vis˜

oes da

comunica¸

ao

(3)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Mensagens B´

asicas

send (destino, &mensagem)

receive (origem, &mensagem)

quest˜

oes

semˆ

antica de opera¸c˜

oes

especifica¸

ao de origem e destino

formato da mensagem

(4)
(5)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

semˆ

antica — envio s´ıncrono e ass´ıncrono

envio ass´ıncrono: execu¸

ao procede imediatamente

bufferiza¸

ao

envio s´ıncrono: execu¸

ao procede quando destinat´

ario recebe

mensagem

determinismo

(6)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

recebimento s´ıncrono e ass´ıncrono

recebimento s´ıncrono ´

e o convencional

execu¸

ao procede quando h´

a algo a tratar

alternativa de recebimento com timeout

bloqueio!

suspens˜

ao da linha de execu¸

ao corrente at´

e chegada da

mensagem

(7)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

bloqueio e recebimento expl´ıcito

espera por mensagens de tipos espec´ıficos?

podem haver outros tipos de mensagens pendentes

espera por qualquer tipo de mensagem

odigo se torna um enorme emaranhado

(8)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

recebimento ass´ıncrono

orienta¸c˜

ao a eventos: chegada de mensagem ´

e encarada como

evento a ser tratado

recebimento fica impl´ıcito

o recebimento impl´ıcito ´

e considerado um recebimento sem

bloqueio

outras formas de recebimento sem bloqueio ser˜

ao discutidas

mais tarde

(9)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS

Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Envio no TinyOS

interface AMSend {

command error_t send(am_addr_t addr, message_t* msg,

uint8_t len);

command error_t cancel(message_t* msg);

event void sendDone(message_t* msg, error_t error);

command uint8_t maxPayloadLength();

command void* getPayload(message_t* msg, uint8_t len);

}

preserva¸

ao de buffer ´

e responsabilidade do programador!

conceito de ownership

(10)
(11)
(12)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS

Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Recebimento no TinyOS

interface Receive {

event message_t* receive(message_t* msg,

void* payload, uint8_t len);

}

retorna (novo) buffer para camada de comunica¸

ao (buffer

swap)

possibilidades:

retorna msg sem mexer (por ex, “n˜

ao ´

e para mim!”)

copia dados para outro local e retorna

armazena msg em vari´

aveis locais e retorna endere¸

co de outro

message t*

(13)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS

Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

exemplo (prox. lab): Recebimento

...

event void AMControl.startDone(error_t err) { if (err != SUCCESS) {

call AMControl.start(); }

}

event message_t* Receive.receive (message_t* msg, void* payload, uint8_t len) { if (len == sizeof(Msg)) {

Msg* localpkt = (Msg*)payload; if (post setLeds() == SUCCESS) {

data = localpkt->data; } } return msg; } Sistemas Distribu´ıdos

(14)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS

Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Manipula¸c˜

ao de Mensagens

acesso a campos de buffer apenas atrav´

es de interfaces:

interface Packet {

command void clear(message_t* msg);

command uint8_t payloadLength(message_t* msg);

command void setPayLoadLength(message_t* msg, uint8_t len); command uint8_t maxPayloadLength();

command void* getPayload(message_t* msg, uint8_t len); }

(15)

Comunica¸c˜ao – Introdu¸c˜ao

comunica¸c˜ao no TinyOS

Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Modelo de Concorrˆ

encia

o que faz com que programa TinyOS se torne ass´ıncrono

72 Execution model H/WTimer TimerMilliC Application RandomLfsrP command,event task interrupt handler task execution(sync) interrupt execution(async)

Figure 5.1 TinyOS execution model: both tasks (full lines) and interrupt handlers (dotted lines) cross component boundaries.

5.2

Tasks

A task is a simple deferred computation mechanism provided by nesC. Tasks have a

return value of void, take no parameters (this keeps the task scheduler very simple) and

are declared with the task keyword:

task void s e t u p T a s k () { // task code }

Using the post keyword schedules a task for later execution:

event void Boot . booted () {

call Timer . s t a r t P e r i o d i c (1024); post s e t u p T a s k ();

}

In the above example, once TinyOS completes the boot sequence (signals Boot.

booted to all components), it will run setupTask.

Tasks are like any other module code. They can access variables, call commands,

signal events, and invoke internal or global C functions. The post operator is like calling

a function: it has a return value of error_t. Posting a task always returns SUCCESS

unless the task is already pending. Put another way, a component cannot post multiple

copies of the same task to run; however, once a task has started executing it may

repost itself.

This is the core TinyOS scheduler loop that runs after the system boots. This

function never returns. It executes tasks until the task queue is empty, then puts the

microcontroller to sleep:

(16)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS

Comunica¸c˜ao – caracter´ısticas

Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Variantes s´ıncronas e ass´ıncronas

algumas bibliotecas oferecem primitivas com v´

arias diferentes

semˆ

anticas de garantia de envio

(17)
(18)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS

Comunica¸c˜ao – caracter´ısticas

Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Especifica¸c˜

ao de destino

endere¸camento direto (acoplamento)

endere¸

cos e volatilidade

servi¸

cos de nomes

caixas de correios e canais (desacoplamento)

endere¸

cos bem conhecidos

comunica¸

ao com par “qualquer”

(19)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS

Comunica¸c˜ao – caracter´ısticas

Falhas modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Formato de mensagens

no n´ıvel mais baixo: sequˆ

encias de bytes

interpreta¸

ao por conta do programa

valores com tipos

canais ou mailboxes com tipo declarado

chamadas remotas

(20)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas

Falhas

modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Falhas parciais

A no¸

ao de “falha parcial” ´

e fundamental nos SDs: a coopera¸

ao

entre processos deve ser tolerante a falhas individuais

Sistemas Distribu´ıdos

(21)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas

Falhas

modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Falhas – Nomenclatura

problemas inevit´

aveis: falhas (faults)

aquinas quebradas, desconex˜

oes, erros no software

erros (failures): consequˆ

encias dessas falhas

nomenclaturas variam mas temos que manter consistente a id´

eia

de evitar que falhas se transformem em erros

(22)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas

Falhas

modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Falhas – Nomenclatura

omiss˜

ao

temporiza¸c˜

ao

falhas arbitr´

arias ou bizantinas

(23)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas

Falhas

modelo de aplica¸c˜oes distribu´ıdas Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Dependabilidade

termo cl´

assico “tolerˆ

ancia a falhas” por vezes considerado

enganador

dependabilidade: id´

eia de que se pode confiar no sistema

(apesar de poss´ıveis erros)

dependabilidade

reliability

availability

safety

security

Sistemas Distribu´ıdos

(24)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Processos e enlaces

Usaremos duas abstra¸

oes principais para representar o sistema

f´ısico: processos e enlaces

Processos: abstraem entidades ativas e executam

processamento (pode representar um computador, um

processador, uma thread, etc.)

Enlace: abstraem a rede de comunica¸

ao f´ısica l´

ogica que

permite a troca de mensagens entre processos

(25)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Coordena¸c˜

ao

processos em aplica¸

ao distribu´ıda devem se coordenar para

que aplica¸c˜

ao progrida

(26)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Coordena¸c˜

ao e Padr˜

oes

utiliza¸c˜

ao de padr˜

oes recorrentes de intera¸c˜

ao

muitos problemas recaem em vers˜

oes diversas do problema de

acordo distribu´ıdo: ex., processos concordam sobre a ordem de

tratamento de mensagens, se um evento ocorreu ou n˜

ao, etc.

...assunto espec´ıfico do curso de algoritmos distribu´ıdos

(27)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Coordena¸c˜

ao: acordo sobre hora

hora certa ´

e conceito extremamente ´

util para sincronizar

atividades no “mundo real”

em sistemas computacionais:

ordena¸

ao

depura¸

ao

escalonamento de atividades

medidas

...

necessidade de uma hora certa global

(28)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Rel´

ogios f´ısicos

cada m´

aquina tipicamente tem um rel´

ogio f´ısico

circuito que gera interrup¸

oes a cada n oscila¸

oes

rel´

ogios f´ısicos exibem uma taxa de varia¸c˜

ao em rela¸

ao a

hora real

tempo

hora

relógio

hora certa

drift máximo

Sistemas Distribu´ıdos

(29)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Sincroniza¸c˜

ao de rel´

ogios f´ısicos

interna

diferen¸ca m´

axima entre horas de dois rel´

ogios do sistema

externa

diferen¸

ca m´

axima entre horas de qualquer rel´

ogio do sistema e

uma fonte externa

(30)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Algoritmos de sincroniza¸c˜

ao de rel´

ogio

trocas de mensagens repetidas para obten¸c˜

ao de diversas

amostras

protocolo NTP atualmente o mais difundido

hora = T

hora corrente?

p

q

(31)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Representa¸c˜

ao de algoritmos distribu´ıdos

Modelo de computa¸

ao reativa

Adotaremos um modelo de computa¸

ao reativa onde componentes

do mesmo processo se comunicam trocando eventos: modelo de

composi¸

ao baseado em eventos ass´ıncronos

Um algoritmo ser´

a descrito como um conjunto de tratadores de

eventos (tratados pode por sua vez disparar novos eventos)

(32)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Aplica¸c˜

oes como cole¸c˜

oes de componentes

Cada processo cont´

emm

um conjunto de m´

odulos

de software, chamados

componentes

Cada componente ´

e

identificado por um nome,

provˆ

e uma interface na

forma de eventos que ele

aceita ou produz e possui

um conjunto de

propriedades

(33)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Combina¸c˜

ao de componentes para construir pilhas de

software

Internamente, cada

componente ´

e constru´ıdo

como uma m´

aquina de

estados cujas transi¸

oes

ao disparadas por

eventos

Eventos podem

“carregar” informa¸

ao,

como dados lidos ou IDs

de processos

(34)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Intera¸c˜

ao entre pilhas de software

(35)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Eventos – nota¸c˜

ao

Eventos ser˜

ao denotados por < EventType|att1, att2, ...| >

Eventos do mesmo componente s˜

ao processados na ordem em

que foram disparados (ordem FIFO)

Cada tratador de evento ´

e processado at´

e o fim antes do

pr´

oximo tratador ser iniciado

Mensagens trocadas entre processos distintos podem precisar ser

ordenadas de acordo com algum crit´

erio usando mecanismos

ortogonais (tratados adiante...)

(36)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Exemplo de c´

odigo nos componentes

upon event <Event1 | att1, att2, ...> do

...faz algo...

trigger <Event2 | att1, att2, ...>;//

envia evento

upon event <Event3 | att1, att2, ...> do

...faz algo...

trigger <Event4 | att1, att2, ...>; //envia evento

(37)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Desacoplamento e intera¸c˜

ao ass´ıncrona

as mensagens recebidas de outros processos s˜

ao transformadas

em eventos

desacoplamento entre origem e destino

novos processos podem se “juntar” ou “deixar” o sistema

distribu´ıdo em qualquer momento

um processo deve estar pronto para tratar a altera¸

ao de

participantes

A ordem de execu¸

ao dos eventos n˜

ao pode ser definida a priori:

ao determinismo

(38)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Interface de programa¸c˜

ao

request: usado por um

componente para

requisitar um servi¸

co de

outro componente

confirmation: usado por

um componente para

confirmar a conclus˜

ao de

uma requisi¸

ao

indication: usado por um

componente para entregar

(deliver) informa¸

oes para

outro componente

(39)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Exemplo de m´

odulo de impress˜

ao

odulo

Module:

Name: Print

Events:

Request: <PrintRequest | rqid, str>

Confirmation: <PrintConfirm | rqid>

Algoritmo

Implements:

Print

upon event <PrintRequest | rqid, str> do

print(str);

trigger <PrintConfirm | rqid>;

(40)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Exemplo de servi¸co de impress˜

ao com n

o

de requisi¸c˜

oes

limitado

odulo

Module:

Name: BoundedPrint

Events:

Request: <BoundedPrintRequest | rqid, str>

Confirmation:<PrintStatus | rqid,status>: Ok/Nok

Indication: <PrintAlarm>: indica o limite

(41)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Exemplo... impress˜

ao com n

o

de requisi¸c˜

oes limitado

Algoritmo

Implements: BoundedPrint

Uses: Print

upon event <Init> do

bound := Threshold;

upon event <BoundedPrintRequest | rqid, str> do

if bound > 0 then

bound := bound - 1;

trigger <PrintRequest | rqid, str>;

if bound = 0 then trigger <PrintAlarm>;

else

trigger <PrintStatus | rqid, Nok>;

upon event <PrintConfirm | rqid> do

trigger <PrintStatus | rqid, Ok>;

(42)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Inicializa¸c˜

ao

Init

evento gerado automaticamente pelo sistema de execu¸

ao

quando um componente ´

e criado

pode ser usado para inicializar o componente

(43)

Comunica¸c˜ao – Introdu¸c˜ao comunica¸c˜ao no TinyOS Comunica¸c˜ao – caracter´ısticas Falhas modelo de aplica¸c˜oes distribu´ıdas

Descri¸c˜ao de aplica¸c˜oes distribu´ıdas

Bibliografia

1

Introduction to Reliable Distributed Programming, R.

Guerraoui and L. Rodrigues, Springer, 2006

2

e... material baseado em slides de Silvana Rossetto (curso

DCC/UFRJ)

Referências

Documentos relacionados

As entradas de referˆ encia do arquivo .bib s´ o aparecer˜ ao na p´ agina de referˆ encias se forem citadas no texto. No fim do

I Complexidade temporal: O(|E |log|V |) com uma fila de prioridade Algoritmo de Bellman-Ford - Distˆ ancia de um n´ o para todos os outros (funciona em grafos com pesos negativos).

A partir do ingresso dos sorotipos DEN-3 e DEN-4 na cidade de Piura na regi˜ ao norte do Litoral come¸ ca a primeira epidemia da dengue hemorr´ agica na mesma regi˜ ao, a

Este trabalho visa estudar o efeito da aplica¸ c˜ ao de inseticidas e/ou larvicidas durante o ver˜ ao, considerando um modelo de otimiza¸ c˜ ao multiobjetivo que leva em conta a

Esse trabalho teve como objetivo identificar o conjunto de parˆ ametros ´ otimos do algo- ritmo NSGA-II acoplado ao operador SBX para cada problema de otimiza¸ c˜ ao

Verificamos que este modelo encapsula uma riqueza de comportamentos dinˆ amicos complexos que permite estudar v´ arios regimes tais como os ciclos econˆ omicos ou cen´ arios

Este trabalho apresenta um Algoritmo Gen´ etico de dois n´ıveis que utiliza um coarse model global definido com base em um modelo de rede neural artificial, o qual ´ e criado a

Este artigo estuda o modelo de controle preditivo dos sistemas de controle em rede sem fio, onde podem ocorrer atrasos e perdas indesej´ aveis induzidas arbitrariamente pelo