as complexas redes josé garcia vivas miranda. conteúdo konigsberg...era uma vez, na longínqua...
TRANSCRIPT
As complexas Redes
José Garcia Vivas Miranda
Conteúdo• Era uma vez, na longínqua cidade de
Konigsberg... Konigsberg... • Teoria dos grafos• Redes• Redes complexas• Caracterização• Dinâmica em redes• Prática
– Pajek
R e
d e
s
C o
m p
l e
x a
s
Era uma vez, na longínqua cidade de Konigsberg...
H i
s t
ó r
i c
o
GrafosConceitos matemáticos.
Um grafo G(V,A) é definido pelo par de conjuntos V e A, onde: V - os vértices ou nodos do grafo;A - pares ordenados a=(v,w) V: as arestas do grafo.
Seja, por exemplo, o grafo G(V,A) dado por: V = { p | p é uma pessoa }A = { (v,w) | < v é amigo de w > }
Exemplo: V = { Maria, Pedro, Joana, Luiz } A = { (Maria, Pedro) , (Joana, Maria) , (Pedro, Luiz) , (Joana, Pedro) }
relação simétrica : se <v é amigo de w> então <w é amigo de v>.
As arestas que ligam os vértices não possuem orientação
M a
t e
m á
t i
c a
DígrafosGrafos orientados.
Considere, agora, o grafo definido por: V = { p | p é uma pessoa da família Castro } A = { (v,w) | < v é pai/mãe de w > }
Um exemplo de deste grafo é: V = { Emerson, Isadora, Renata, Antonio, Rosane, Cecília, Alfredo } A = {(Isadora, Emerson), (Antonio, Renata), (Alfredo, Emerson), (Cecília, Antonio), (Alfredo, Antonio)}
A relação não é simétrica pois se <v é pai/mãe de w>, não é o caso de <w é pai/mãe de v>. O grafo acima é dito ser um grafo orientado (ou digrafo). As conexões entre os vértices (ou nós) são chamadas de arcos.
M a
t e
m á
t i
c a
Representações
10 8
7
8
5
3
6
7
C o
n c
e i
t o
s
Ordem de um grafo
A ordem de um grafo G é dada pela cardinalidade do conjunto de nós, ou seja, pelo número de vértices de G. Nos exemplos dados:
Ordem 6Ordem 4
C o
n c
e i
t o
s
Adjacência Dois vértices v e w são adjacentes (ou vizinhos) se há uma aresta a=(v,w). É o caso dos vértices Maria e Pedro em G1. No caso do grafo ser dirigido (G2), a adjacência é especializada em:
Sucessor: w é sucessor de v se há um arco que parte de v e chega em w. Ex.: em G2, Emerson e Antonio são sucessores de Alfredo.
Antecessor: v é antecessor de w se há um arco que parte de v e chega em w. Em G2, Alfredo e Cecília são antecessores de Antonio.
G1G2
C o
n c
e i
t o
s
Grau
O grau de um nó é dado pelo número de arestas que lhe são incidentes. Em G1, por exemplo:
grau(Pedro) = 3 grau(Maria) = 2
Para grafos dirigidos temos:
Grau de emissão: número de arcos que partem de v. grauDeEmissão(Antonio) = 1 grauDeEmissao(Alfredo) = 2 grauDeEmissao(Renata) = 0
Grau de recepção: número de arcos que chegam a v. grauDeRecepção(Antonio) = 2 grauDeRecepção(Alfredo) = 0 grauDeRecepção(Renata) = 1
G1
G2
C o
n c
e i
t o
s
Um nó v é uma fonte se
grauDeRecepção(v) = 0.
É o caso dos vértices Isadora, Alfredo e Cecília em G2.
Fonte
G2
C o
n c
e i
t o
s
Um vértice v é um sumidouro se
grauDeEmissão(v) = 0.
É o caso dos vértices Renata e Emerson em G2.
Sumidouro
G2
C o
n c
e i
t o
s
LaçoUm laço é uma aresta ou arco do tipo a=(v,v), ou seja, que relaciona um vértice a ele próprio. Em G3 há três
ocorrências de laços para um grafo não orientado.
G3
C o
n c
e i
t o
s
Grafo regularUm grafo é dito ser regular quando todos os seus vértices tem o mesmo grau. O grafo G4, por exemplo, é
dito ser um grafo regular-3 pois todos os seus vértices tem grau 3.
G4:
C o
n c
e i
t o
s
Grafo Completo Quando há uma aresta entre cada par de seus vértices. Estes grafos são designados por Kn, onde n é a ordem do
grafo. Um grafo Kn possui o número máximo possível de
arestas para um dados n. Ele é, também regular-(n-1) pois todos os seus vértices tem grau n-1.
C o
n c
e i
t o
s
Grafo Ponderado Um grafo G(V,A) é ponderado quando existe uma funções relacionando V e/ou A com um conjunto de números. Ex.:
V = {v | v é um bairro}
A = {(v,w,t) | <há linha de ônibus ligando v a w, sendo t o tempo esperado de viagem>
Itinga
RibeiraLapa
Pituba
50
60 40
30
120
C o
n c
e i
t o
s
Cadeia É uma seqüência de arestas adjacentes que ligam dois vértices. Para grafos orientados se ignora o sentido dos arcos
A seqüência (x6, x5, x4, x1) é uma cadeia em G5.
elementar se não passa duas vezes pelo mesmo nó. simples se não passa duas vezes pela mesma aresta. comprimento de uma cadeia é o número de arestas (arcos) que a compõe.
G5:
C o
n c
e i
t o
s
Caminho Um caminho é uma cadeia na qual todos os arcos possuem a mesma orientação. Aplica-se, portanto, somente a grafos orientados.
Os nós (x1, x2, x5, x6, x3) é um exemplo de caminho
em G5.
G5:
Grafo Conexo : G é conexo se para todo par x,y de vértices existe um caminho que liga x a y.
C o
n c
e i
t o
s
Matriz de adjacência
A B
CD
AA BB CC DD
AA 00 00 11 00
BB 11 00 11 11
CC 00 11 00 00
DD 00 00 00 00
Como seria uma fonte?
Sumidouro
C o
n c
e i
t o
s
Fechamento de trânsito Considerando um dígrafo não ponderado a expressão lógica:
adj[i][k] && adj[k][j]
será TRUE se e somente se existe um arco entre i e j passando por k.
A B
C D
A expressão
adj[i][0] && adj[0][j] || adj[i][1] && adj[1][j] || ...
será TRUE se e somente se existir um caminho de comprimento 2 do no i ao j passando por 0, ou 1, ou 2, ou 3...
Existe uma matriz ajd2 chamada de matriz de caminhos de comprimento 2. ajd2 é o produto booleano de adj com ela mesma.
C o
n c
e i
t o
s
A B
CD
Fechamento de trânsitoexemplo
A B C D
A 0 0 1 0
B 1 0 1 1
C 0 1 0 0
D 0 0 0 0
A B C D
A 0 1 0 0
B 0 1 0 0
C 1 0 1 1
D 0 0 0 0
Matriz adj Matriz adj2
C o
n c
e i
t o
s
Matriz path é a matriz que assummirá TRUE se e somente se existir um caminho, de qualquer tamanho, entre i e j. Evidentemente:
path[i][j]=adj[i][j] || adj2[i][j] || adj3[i][j] || ... || adjn[i][j]
Onde n é o numero de nós do grafo.
Fechamento de trânsitoMatriz path
A B
CD
A B C D
A 1 1 1 1
B 1 1 1 1
C 1 1 1 1
D 0 0 0 0
Matriz path, ou fechamento de trânsito de adj.
Código no Tenembaum
C o
n c
e i
t o
s
Matriz de vizinhança
A B C D
A 1 1 1 1
B 1 1 1 1
C 1 1 1 1
D 0 0 0 0
A B C D
A 3 2 1 3
B 1 2 1 1
C 2 1 2 2
D 0 0 0 0
A B
CD
C o
n c
e i
t o
s
Fechamento de trânsitoAlgoritmo de WARSHALL
FecTra(int adj[][MAXNO],int path[][MAXNO]){
int i,j,k;for(i=0;i<MAXNO;++i)
for(j=0;j<MAXNO;++j)path[i][j]=adj[i][j];
for(k=0;k<MAXNO;++k)for(i=0;i<MAXNO;++i)
if(path[i][k])for(j=0;j<MAXNO;++j)
path[i][j]=path[i][j] || path[k][j];}
Definir pathk de forma que pathk[i][j] será TRUE se e somente se existir um caminho entre i e j que não passe por nenhum nó com numeração acima de k.
pathk+1 será TRUE se e somente se:
pathk [i][j]=TRUE
pathk[i][k+1]= TRUE e pathk[k+1][j]=TRUE
Redes Complexas
1. Menor caminho médio: L = comprimento médio do menor caminho entre nós
Se A é amigo de B e de C, então existe a probabilidade de B ser amigo de C.
2. Coeficiente agregação: C =# de ligações entre os vizinhos de um nós
# de ligações total possível entre esses vizinhos
3. Conectividade dos nós: k = número de ligações existentes nesse nós (grau)
Alguns Conceitos ImportantesAlguns Conceitos Importantes
C = 0 C = 1
111
1 5
2
3
Í n d
i c
e s
Distribuição de Graus
k = 5
1 2 3 4 ... 270
Í n d
i c
e s
P(k
)
k
Tipos de Redes
Redes Livres de EscalaRedes Aleatórias Redes de Mundo Pequeno (Small World)
Publications Mathematicae, 6 (1959) 290.
Paul Erdös(1913-1996)
Alfréd Rényi(1921-1970)
Grafos aleatórios
Grafos aleatóriosModelo de Erdös e Rényi
Dada uma probabilidade p e N vértices, são adicionadas arestas de forma aleatória.Para cada uma das p(N(N-1))/2 arestas possíveis.....se sorteiam um par de vértices... caso não exista uma aresta entre os vértices... Sorteia-se um número q, caso q<p a aresta é adicionada para este par.Este procedimento é feito para todas as p(N(N-1))/2 arestas do grafo.
Problemas:Para probabilidades altas o algoritmo é bastante lento!Solução: Para p> ½ eliminar arestas.
Rede Erdös-Rényi (1960)
Democrático Aleatório
p = 1/6N = 10 k ~ 1,6L ~ 1,3C~0.15
Distribuição de Poisson
Pál ErdösPál Erdös (1913-1996)
Ligar vértices com probabilidade, p Ligar vértices com probabilidade, p e (N fixo)e (N fixo)
Se N é grande e Se N é grande e pp é pequeno a é pequeno a distribuição é distribuição é binomial. binomial.
Redes aleatórias
• Em uma rede aleatória, a probabilidade de dois vértices vizinho de um vértice arbritário se conectem é a mesma de que dois vértices quaisquer se conectem, ou seja:
Redes aleatóriasAglomeração
médio
• Qual a probabilidade crítica em que todos os nós da rede estão conectados em um único aglomerado gigante?
• O Limite de percolação infinita em redes equivale a N• Resultados de Erdös e Rényi:
Redes aleatóriasPercolação
Ver NETLOGO
160 cartas foram enviadas a pessoas em Omaha (Nebraska), com o pedido de que elas reenviassem a correspondência a conhecidos que pudessem fazê-la chegar mais perto do destinatário alvo: um corretor de valores em Boston (Massachusetts).
Experimento de Stanley MilgramExperimento de Stanley Milgram
Famoso experimento do psicólogo social Stanley Milgram (1967).
Redes de mundo pequeno
O Mundo é Pequeno!!!O Mundo é Pequeno!!!
No fim do experimento, Milgram descobriu que as cartas que chegaram ao destino passaram por seis pessoas (em média).
Rede small-world (Watts-Rede small-world (Watts-Strogatz, 1998)Strogatz, 1998)
Watts & Strogatz, Nature 393, 440(1998)
Diz-se que uma rede apresenta este tipo de comportamento quando a menor distância média entre nós (vértices) variar com o logaritmo do tamanho do sistema (N), e o coeficiente de aglomeração for grande comparado com o caso aleatório.
Zona demundo pequeno
Watts & Strogatz, Nature 393, 440(1998)
Rederegular
Redealeatória
Fenômeno mundo pequenoFenômeno mundo pequeno
Ver NETLOGO
Redes Livre de Escala
R. Albert, H. Jeong, A-L Barabasi, Nature, 401 130 (1999).
Redes Livre de EscalaIniciando com uma rede aleatória de tamanho mo muito menor que N
Cada passo é acrescentado um novo vértice na rede e m (m< mo)arestas que o conectam com o resto da rede.O mecanismo de conexão é dado pelo algoritmo de “preferential attachment” dada pela probabilidade:
Após t passos a rede terá N=t+mo vértices e mt+E(mo) arestas.
Distribuição de graus para diferentes valores de mo.
Ver NETLOGO
Redes Livre de Escala
R. Albert, H. Jeong, A-L Barabasi, Nature, 401 130 (1999).
Muitas redes neturais exibem este comportamento.
Idéia de “The rich get richer”
Este tipo de fenómeno é válido tanto para a Internet, como para reacções metabólicas ou redes de proteínas.
Esquema de uma rede livre de escala. Um ataque aos nodos a vermelho pode ser drástico. O número destes pontos vitais é baixo. Logo, no caso de falhas aleatórias na maior parte dos casos são atacados nodos verdes ou pretos.
RobustezRobustez
FalhaFalha
AtaqueAtaque
• Muitas redes naturais exibem uma topologia do tipo Mundo pequeno ou Livre de Escala.
Fractais e redes complexas
C. Song, S. Havlin, and H. A. Makse, Nature (London) 433, 392 (2005).
• Sendo a rede Fractal, esta exibirá um comportamento em forma de lei de potência.
Fractais e redes complexas
• Invariância na distribuição de graus.
Agentes e redes complexas
Autômatos e redes complexas
Cronologia das RedesCronologia das Redes
Cronologia das RedesCronologia das Redes
Aplicações das redes complexas
Redes de Chuva
Rede de estações meteorológicas.
8.5 9.0 9.5 10.0 10.5 11.0 11.5
3.0
3.2
3.4
3.6
3.8
4.0
4.2
4.4
4.6
4.8
outono verão
primaverainverno
CM
M
D
A p
l i c
a ç
õ e
s
Redes de Chuva (Charles Santana)
8.5 9.0 9.5 10.0 10.5 11.0 11.5
3.0
3.2
3.4
3.6
3.8
4.0
4.2
4.4
4.6
4.8
outono verão
primaverainverno
CM
M
D
A p
l i c
a ç
õ e
s
Redes de migração (Fernanda Regebe)
1 10 100
1
10
100
1000
p(K
)K
SAÍDAS
= -2,5
A p
l i c
a ç
õ e
s
Redes de tuberculose (Alex e Helder Santana)
• Levantamento da rede social de lugares comuns.
• Elaboração de um modelo de agentes autônomos sobre uma rede complexa.
• Matriz de probabilidade de contágio!
A p
l i c
a ç
õ e
s
Rede de acesso a internet (Helder Santana)
• Rede de acesso ao servidor UFBA
0 10 20 30 40
1
10
100#
cam
inho
s m
ais
prov
ávei
s
profundidade dos caminhos
1 10 100 1000
1
10
100
1000
=2.34
P(k
)
k
A p
l i c
a ç
õ e
s
Plasticidade Neural• O modelo
– Utilizando métodos da física estatística se constrói uma rede com propriedades complexas.– Esta rede representa a rede de sinapses, onde o nó da rede é o neurônio e as arestas as
sinapses.– Tarefa difícil é a de fazer com que a rede se estabilize.
• Ver modelo funcionando• Um modelo similar está sendo feito para o aparelho psíquico.
A p
l i c
a ç
õ e
s
Plasticidade Neural
0 40 80 120 160 200
-64.90
-64.95
-65.00
-65.05
-65.10
-65.15
-65.20Neur.Inib.
50% 10%
Energ
ia m
édia
(m
V)
Tempo (ms)
Dec.P.At.=0.1%
0 40 80 120 160 200-55.35
-55.30
-55.25
-55.20
-55.15
-55.10
-55.05
-55.00
-54.95
Dec.P.At.=0.1%
Neur.Inib. 10% 50%
Pote
nci
al A
tivaçã
o M
édio
(m
V)
Tempo (ms)
0 40 80 120 160 200
0
5
10
15
20Neur.Inib.
10% 50%
Dec.P.At.=0.1%
Quant. N
eurô
nio
s A
tivados
Tempo (ms)
A p
l i c
a ç
õ e
s
Redes semânticas• NORMAL INTERNADO
S_11S_12
A p
l i c
a ç
õ e
s
Matrizes de vizinhança
A p
l i c
a ç
õ e
s
Estudos atuais• Esquizofrenia (ISC)• Dengue (ISC, Hugo Saba)• Tuberculose (ISC, Alex e Helder)• Agentes autônomos do mercado financeiro em redes complexas (Marcos, Banco
Central,UCC)• Redes de diferenciação celular (Viviane,UEFS)• Agentes em Células Tronco (Viviane,FioCruz)• Aparelho Psíquico de Freud (Jayme, CPPEV)• Redes de Neuroplasticidade (Nadja, CPPEV)• Redes de Chuva (Charles, UEFS)• Métodos teóricos (Matrizes de ordem superior)• Genoma (UEFS)• ...
A p
l i c
a ç
õ e
s
Referências
1. S. Milgram, The Small World Problem, Psychology Today 1, 60-67 (1967).2. S. N. Dorogovtsev, J. F. F. Mendes, Evolution of Networks,Advances in
Physics 51, 1079 (2002).3. R. Albert, A-L. Barabási, Statistical mechanics of complex networks,
Reviews of Modern Physics 74, 47 (2002).
4. http://ww.if.sc.usp.br/~pac
5. http://sweet.ua.pt/~f2064/net.html
6. http://www.nd.edu/~alb
Ob
ri a
do