• Nenhum resultado encontrado

1 Cálculo do Determinante

N/A
N/A
Protected

Academic year: 2022

Share "1 Cálculo do Determinante"

Copied!
12
0
0

Texto

(1)

CComp - Programa de P´ os-Gradua¸ c˜ ao em Ciˆ encias Computacionais IME02701 ´ Algebra Linear: Aspectos Te´ oricos e Computacionais Prof.

a

Cristiane Oliveira de Faria e Prof.

a

Diana Sasaki Nobrega

Relat´ orio n

o

2: DETERMINANTE DA MATRIX DE HILBERT ATRAV ´ ES DO TEOREMA DE LAPLACE

PAGERANK, O ALGORITMO DE RANQUEAMENTO DE P ´ AGINAS APLICAC ¸ ˜ AO DA CADEIA DE MARKOV

Aluno: Andr´ es Felipe Giraldo Morales e-mail: andres1@outlook.com

9 de novembro de 2020

1 C´ alculo do Determinante

O primeiro exerc´ıcio proposto neste relat´ orio trata do c´ alculo de determinante da Matriz de Hilbert de ordens n = 3, 12, 25, 50. Utilizando o Teorema de Laplace.

Adicionalmente, ser´ a estimado experimentalmente o custo computacional deste m´ etodo.

1.1 Matriz de Hilbert

A Matriz de Hilbert, ´ e definida pelo autor em [1] como uma matriz nxn onde o termo geral de cada elemento ´ e dado por:

H

ij

= 1 (i + j − 1)

Onde i ´ e o ´ındice da linha e j ´ e o ´ındice da coluna. Podemos, portanto, representar uma Matriz de Hilbert nxn como:

1 1

2

1 3

1

4 ... 1

n

1 2

1 3

1 4

1

5 ... 1

n + 1 1

3 1 4

1 5

1

6 ... 1

n + 2

. . . . ... .

1 n

1 n + 1

1 n + 2

1

n + 3 ... 1 2n − 1

(1)

(2)

1.2 Teorema de Laplace

O Teorema de Laplace ´ e definido em [2] como o c´ alculo do determinante de uma Matriz A = [a

ij

] de dimens˜ ao nxn, onde n ≥ 2, podendo ser computado da seguinte forma:

detA = a

i1

C

i1

+ a

i2

C

i2

+ ... + a

in

C

in

=

n

X

j=1

a

ij

C

ij

Que equivale ` a expans˜ ao do cofator ao longo de uma linha i de A, da mesma forma:

detA = a

1j

C

1j

+ a

2j

C

2j

+ ... + a

nj

C

nj

=

n

X

i=1

a

ij

C

ij

Que equivale ` a expans˜ ao do cofator ao longo de uma coluna j de A.

O cofator pode ser calculado como C

ij

(−1)

i+j

detA

0ij

. O determinante detA

0ij

´ e tamb´ em calculado atrav´ es da expans˜ ao e ´ e referente ` a Matriz A

0

onde s˜ ao retiradas a linha i e a coluna j da Matriz original A.

Para a implementa¸ c˜ ao do Teorema de Laplace, ser´ a necess´ ario uma abordagem recursiva, j´ a que o valor do detA depende do detA

0

, que por sua vez ´ e calculado atrav´ es do mesmo m´ etodo.

Algoritmo 1: Teorema de Laplace Fun¸ c˜ ao DetLaplace(A

nxn

)

Entrada: Matriz A

nxn 1

det = 0 se n = 2 ent˜ ao

2

retorna (a

00

∗ a

11

) − (a

01

∗ a

10

)

3

fim

4

se a

0i

6= 0 ent˜ ao

5

i

0

= 0

6

j

0

= 0

7

A

0(n−1)x(n−1)

8

para i = 2 at´ e n fa¸ ca

9

para j = 1 at´ e n fa¸ ca

10

se j 6= i ent˜ ao

11

a

0i0j0

= a

ij

12

j

0

= j

0

+ 1

13

fim

14

fim

15

i

0

= i

0

+ 1

16

j

0

= 0

17

fim

18

C = (−1)

i+j

∗ DetLaplace(A

0i0j0

)

19

det = det + C

20

fim

21

retorna det Sa´ ıda: detA

1.3 Resultados

(3)

Ordem (N) Determinante Tempo Execu¸ c˜ ao (ms)

3 4, 62963 ∗ 10

−4

0

4 1, 653439 ∗ 10

−7

0

5 3, 749295 ∗ 10

−12

0

6 5, 3673 ∗ 10

−18

1

7 4, 830853 ∗ 10

−25

1

8 −3, 557142 ∗ 10

−31

5

9 3, 15087 ∗ 10

−36

65

10 3, 499989 ∗ 10

−42

674

11 3, 159691 ∗ 10

−48

5, 935 ∗ 10

3

12 1, 499045 ∗ 10

−55

8, 5782 ∗ 10

4

13 −1, 796723 ∗ 10

−63

1, 276350 ∗ 10

6

25 N/A N/A

50 N/A N/A

Tabela 1: Resultados do c´ alculo do determinante da Matriz de Hilbert atrav´ es do m´ etodo de Laplace

1.4 Complexidade do Algoritmo

Uma forma de estudo experimental da complexidade do algoritmo de Laplace, pode ser dada atrav´ es do estudo do tempo de execu¸ c˜ ao para diversos dimens˜ oes da Matriz de Hilbert. Temos que t = t

0

∗ n, onde t

´

e o tempo total de execu¸c˜ ao do algoritmo, t

0

´ e o tempo de um ´ unico passo computacional, n ´ e n´ umero de passos executados no algoritmo. Logo, o tempo de execu¸ c˜ ao ´ e diretamente proporcional ` a complexidade do algoritmo.

Calculados os tempos para diversos valores de n, ´ e poss´ıvel observar a progress˜ ao da complexidade de execu¸c˜ ao com rela¸c˜ ao ` a ordem da Matriz de Hilbert.

3 4 5 6 7 8 9 10 11 12 13

0 150 300 450 600 750 900 1,050 1,200

Ordem da Matriz(N)

T emp o de execu¸ c˜ ao (s)

Tempo de processamento do determinante da Matriz de Hilbert com o m´ etodo de Laplace Tempo de execu¸ c˜ ao

Segundo [3], a complexidade do algoritmo do teorema de Laplace ´ e de O(n!).Para analisar o comporta-

mento da complexidade de O(n!), representamos os valores da fun¸ c˜ ao para n = 3, 4, 5..., 13.

(4)

2 4 6 8 10 12 14 0

1 2 3 4 5

·10

8

n

O ( n !)

Valores de O(n!)

O(n!)

1.5 Conclus˜ oes

Foi poss´ıvel calcular o valor do determinante para a Matriz de Hilbert de ordens 3 e 12, com valores 4, 62963 ∗ 10

−4

e 1, 499045 ∗ 10

−55

. Entretanto, por conta do custo computacional e complexidade do algo- ritmo, n˜ ao foi poss´ıvel calcular o valor do determinante para as ordens de 25 e 50.

Ap´ os a compara¸c˜ ao do gr´ afico de tempo de execu¸ c˜ ao da implementa¸ c˜ ao do m´ etodo de Laplace, apresen- tado na se¸c˜ ao 1.4 e o gr´ afico da fun¸ c˜ ao f(n) = n! da Complexidade do algoritmo sugerida por [3], ´ e poss´ıvel verificar que o comportamento de ambas as fun¸ c˜ oes ´ e semelhante, e que o tempo de execu¸ c˜ ao obtido na Tabela 1 se encontra de acordo com o tempo esperado para uma fun¸ c˜ ao de complexidade θ(N !).

2 PageRank

Figura 1: P´ aginas a serem ranqueadas no Exerc´ıcio 2

O segundo exerc´ıcio trata sobre o ranqueamento das p´ aginas na Figura 2, utilizando o algoritmo Page-

(5)

Rank.

Segundo [4], PageRank ´ e um algoritmo desenvolvido pelos fundadores da Google, para o aprimoramento da prioridade dos resultados na busca de p´ aginas da ferramenta. O conceito por tr´ as do algoritmo ´ e que uma p´ agina ´ e mais relevante se ela ´ e referenciada por outras p´ aginas. Outro fator a ser levado em considera¸ c˜ ao,

´

e que entre menos referˆ encias uma p´ agina fa¸ ca, maior peso elas possuem.

Para simular a probabilidade de um usu´ ario aleat´ oriamente navegando atrav´ es das p´ aginas um n´ umero grande de vezes, o algoritmo se baseia nas cadeias de Markov.

2.1 A Matriz de Hiperlink

As rela¸ c˜ oes de referˆ encias entre as p´ aginas representadas na Figura 2 s˜ ao mapeadas conforme a tabela T abaixo:

A B C D E F G H I J K

A 0 0 0 0 0 0 0 0 0 0 0

B 0 0 1 0 0 0 0 0 0 0 0

C 0 1 0 0 0 0 0 0 0 0 0

D 1 1 0 0 1 0 0 0 0 0 0

E 0 1 0 0 0 1 0 0 0 0 0

F 0 1 0 0 1 0 0 0 0 0 0

G 0 1 0 0 1 0 0 0 0 0 0

H 0 1 0 0 1 0 0 0 0 0 0

I 0 1 0 0 1 0 0 0 0 0 0

J 0 0 0 0 1 0 0 0 0 0 0

K 0 0 0 0 1 0 0 0 0 0 0

Tabela 2: Rela¸c˜ ao de Referˆ encias feitas por um site a outro

Onde o elemento T

ij

representa a referˆ encia feita pelo site i a um site j.

Posteriormente calculamos a Matriz de Hiperlink H = [H

ij

], que ´ e necess´ aria para podermos dar as probabilidades necess´ arias de acordo com a quantidade de p´ aginas que uma mesma referencia, entre menos referˆ encias, maior a probabilidade de acessar uma delas. Para isso seguimos as seguintes regras, de acordo com [4]:

ˆ Cada referˆ encia dada por um site a outro ´ e contabilizada apenas uma vez. Desta forma, o n´ umero de referˆ encias que um site faz a outro n˜ ao s˜ ao cumulativa, conforme a Tabela 2.

ˆ Para obter a probabilidade associada a cada referˆ encia, somamos os elementos das filas da tabela T

ij

, onde S

i

= T

i1

+ T

i2

+ ... + T

ij

e o elemento da Matriz de Hiperlink H

ij

= 1/S

i

, se T

ij

> 0, ou H

ij

= 0, se T

ij

= 0.

No exemplo da Figura 2 a Matriz de Hiperlink seria da seguinte forma:

(Observa¸ c˜ ao: Por um erro de espa¸ co pacote bmatrix do Latex, n˜ ao ´ e poss´ıvel visualizar matrizes com mais

(6)

de dez colunas, portanto s´ o ser˜ ao mostradas N − 1 colunas)

H =

0 0 0 0 0 0 0 0 0 0

0 0 1 0 0 0 0 0 0 0

0 1 0 0 0 0 0 0 0 0

0.3333 0.3333 0 0 0.3333 0 0 0 0 0

0 0.5 0 0 0 0.5 0 0 0 0

0 0.5 0 0 0.5 0 0 0 0 0

0 0.5 0 0 0.5 0 0 0 0 0

0 0.5 0 0 0.5 0 0 0 0 0

0 0.5 0 0 0.5 0 0 0 0 0

0 0 0 0 1 0 0 0 0 0

0 0 0 0 1 0 0 0 0 0

2.2 Matriz de Transi¸ c˜ ao

Segundo [4], para simular o processo de acessos aleat´ orios atrav´ es das p´ aginas que referenciam umas

`

as outras, e de acordo com a probabilidade associada a cada caso, a automatiza¸ c˜ ao desse processo ´ e dado atrav´ es da Cadeia de Markov, e para isso, definimos uma Matriz de Transi¸ c˜ ao ou Matriz de Markov ` a direita, no qual todas as filas devem somar 1 e todos os valores s˜ ao reais n˜ ao negativos.

Para atender ` a propiedade da Matriz de Transi¸ c˜ ao, devemos realizar um pequeno ajuste na nossa Matriz de Hiperlink. Notamos que a primeira fileira ´ e composta de apenas zeros, isto se d´ a porque na Figura 2 a p´ agina A, apesar de ser referenciada pela p´ agina D, A n˜ ao referencia nenhuma outra p´ agina.

Portanto, realizamos o seguinte ajuste na regra de cria¸ c˜ ao da Matriz de Hiperlink:

ˆ Se S

i

= 0, ou seja, a soma das probabilidades de a partir da linha i for nula, todos os elementos da fila i de H ser˜ ao H

ij

= 1/N onde N ´ e a dimens˜ ao da Matriz, para todo j.

2.2.1 Problema da Subrede

O segundo ajuste que precisa ser realizado na nossa matriz de transi¸ c˜ ao acontece porque, no caminho pelas p´ aginas de forma aleat´ oria, pode acontecer de nos encontrarmos em uma subrede que n˜ ao possui um

”caminho de volta”para o restante da rede. Este problema ´ e melhor ilustrado por [4] na Figura a seguir:

Enquanto caminhamos pelo grafo de forma autom´ atica pelo processo das Cadeias de Markov, se ca´ırmos Figura 2: Uma Subrede dentro de uma rede de p´ aginas

em um nodo como 5 ou 6 as navega¸ c˜ oes posteriores ser˜ ao apenas nesta subrede, trazendo uma estimativa irreal de que as p´ aginas de fora da subrede teriam relevˆ ancia nula.

Este problema se d´ a quando a Matriz de Transi¸ c˜ ao ´ e redut´ıvel, isto ´ e, uma matriz A

ij

que seus ´ındices

podem ser divididos em dois conjuntos de i

1

e i

2

e j

1

e j

2

de A tais que os elementos de a

i1j1

e a

i2j2

sejam

0 [5].

(7)

2.2.2 Matriz de Google

Para solucionarmos este problema, segundo [4], a Google sugeriu a transforma¸c˜ ao linear da Matriz descrita por H

a

= 0.85H + 0.15/N onde H ´ e a Matriz de Transi¸c˜ ao e N ´ e a dimens˜ ao da Matriz. e o resultado ´ e a Matriz de Transi¸c˜ ao ajustada ou Matriz de Google.

A Matriz de Google, ap´ os o ajuste sugerido na se¸ c˜ ao 2.2.1 e o sugerido nesta:

(Conforme explicado na se¸ c˜ ao 2.1, n˜ ao foi poss´ıvel mostrar todas as colunas da matriz de Google).

H

a

=

0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0136 0.0136 0.8636 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.8636 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.2970 0.2970 0.0136 0.0136 0.2970 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.8636 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.8636 0.0136 0.0136 0.0136 0.0136 0.0136

2.3 Autovetor dominante

Para encontrarmos a relevˆ ancia das p´ aginas, precisamos encontrar o vetor estacion´ ario ou autovetor dominante da Cadeia de Markov, o que pode ser feito, segundo [4] atrav´ es do m´ etodo das potˆ encias.

(Conforme explicado na se¸ c˜ ao 2.1, n˜ ao foi poss´ıvel mostrar todas as colunas da matriz de Google).

π = H

ap

π ou

0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0909 0.0136 0.0136 0.8636 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.8636 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.2970 0.2970 0.0136 0.0136 0.2970 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.4386 0.0136 0.0136 0.4386 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.8636 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.0136 0.8636 0.0136 0.0136 0.0136 0.0136 0.0136

p

.

 π

A

π

B

π

C

π

D

π

E

π

F

π

G

π

H

π

I

π

J

π

K

=

 π

A

π

B

π

C

π

D

π

E

π

F

π

G

π

H

π

I

π

J

π

K

Onde H

a

´ e a Matriz de Google elevada ` a potˆ encia p e p ´ e o n´ umero de itera¸c˜ oes do m´ etodo das potˆ encias da cadeia de Markov. Google diz que com a Matriz de Google este m´ etodo apenas precisa de 50 a 100 itera¸c˜ oes para atingir o vetor estacion´ ario [4].

Finalmente, ordenamos os valores do autovetor dominante π de forma decrescente para obter o ranque- amento das p´ aginas.

2.4 Algoritmo

A seguir, o algoritmo que implementa a solu¸ c˜ ao discutida at´ e agora, como entrada, ele recebe a Matriz

representada pela Tabela 2, e como sa´ıda, ele retorna o autovetor dominante π ordenado de forma decrescente

para a relevˆ ancia das p´ aginas.

(8)

Algoritmo 2: PageRank

Entrada: Matriz T

nxn

, Crit´ erio de parada p, Vetor Posi¸c˜ ao das P´ aginas V

pos

= [A, B, ..., K]

1

para i = 1 at´ e n fa¸ ca

2

S

i

= 1

3

para j = 0 at´ e n fa¸ ca

4

S

i

= S

i

+ t

ij

5

fim

6

se S

i

> 0 ent˜ ao

7

para j = 0 at´ e n fa¸ ca

8

h

ij

= t

ij

/S

i

9

fim

10

fim

11

sen˜ ao

12

para j = 0 at´ e n fa¸ ca

13

1/n

14

fim

15

fim

16

fim

17

para i = 1 at´ e n fa¸ ca

18

para j = 1 at´ e n fa¸ ca

19

h

aij

= h

ij

∗ 0.85 + 0.15/n

20

fim

21

fim

22

H

Aux

= I

nxn

, H

P ow

23

para p

i

= 1 at´ e p fa¸ ca

24

para i = 1 at´ e n fa¸ ca

25

para j = 1 at´ e n fa¸ ca

26

S

aux

= 0

27

para k = 1 at´ e n fa¸ ca

28

S

aux

= S

aux

+ h

Auxij

∗ h

aij

29

fim

30

h

P owij

= S

aux

31

fim

32

fim

33

H

Aux

= H

P ow

34

fim

35

para j = 1 at´ e n fa¸ ca

36

π

j

= h

Aux1j

37

fim

38

i = 1, j = 2,i

pos

=, j

pos

=

39

temp

i

= 0, temp

j

= 0

40

enquanto j < n fa¸ ca

41

se π

i

< π

j

ent˜ ao

42

temp

i

= π

i

,temp

j

= π

j

43

π

i

= temp

j

j

= temp

i 44

i

p

os = v

posi

,j

p

os = v

posj

45

v

posi

= j

pos

,v

posj

= i

pos

46

i = 1,j = 2

47

fim

48

sen˜ ao

49

i = i + 1,j = j + 1

50

fim

51

fim

52

retorna π

Sa´ ıda: Autovetor ordenado π

(9)

A explica¸c˜ ao do algoritmo se d´ a a seguir:

ˆ Das linhas 1 at´ e 16 do algoritmo, ´ e montada a Matriz de Transi¸ c˜ ao

ˆ Das linhas 17 at´ e 21 a Matriz de Transi¸ c˜ ao ´ e ajustada e convertida na Matriz de Google da se¸ c˜ ao 2.2.2.

ˆ Das linhas 22 at´ e 34 ´ e calculado a potˆ encia de H

a

at´ e o n´ umero de passos p indicado pelo crit´ erio de parada.

ˆ Das linhas 35 a 37 ´ e encontrado o autovetor dominante ou vetor estacion´ ario a partir da Matriz resultante. Para encontrar π quando π ´ e o vetor estacion´ ario em H

a

π = π, temos que π

i

= H

1i

.

ˆ Das linhas 38 a 51 o autovetor dominante ´ e ordenado de forma decrescente pela relevˆ ancia, utilizando o m´ etodo de ordena¸ c˜ ao Bubble Sort.

ˆ Atrav´ es do Vetor V

pos

´ e poss´ıvel identificar qual valor se refere a qual p´ agina.

2.5 Resultados

Na Tabela 3 a seguir ´ e poss´ıvel verificar os resultados encontrados pela implementa¸ c˜ ao do algoritmo 2, com dados de entrada a Matriz representada pela Tabela 2, crit´ erio de parada p = 100 e Vetor de posi¸ c˜ oes V

pos

= [A, B, C, D, E, F, G, H, I, J, K ].

V

pos

0.3979 0.3534 0.0865 0.0519 0.0194 0.0151 0.0151 0.0151 0.0151 0.0151 0.0151 V

pos

(%) (38%) (34%) (8%) (5%) (3%) (2%) (2%) (2%) (2%) (2%) (2%)

π B C E F A D G H I J K

Tabela 3: Resultados do Algoritmo PageRank

Em compara¸ c˜ ao aos resultados fornecidos originalmente pela Figura 2, encontramos resultados seme- lhantes. A ´ unica diferen¸ca se daria pelo m´ etodo de arredondamento, j´ a que todos os n´ umeros precisam somar no total 1 (Ou 100%), o crit´ erio de arredondamento pode variar.

A ´ unica discrepˆ ancia relevante que podemos encontrar na compara¸ c˜ ao dos resultados com a Figura 2 ´ e que no resultado da mesma, D possui uma relevˆ ancia maior a A, o que ´ e mostrado ser ao contr´ ario no nosso resultado.

3 Cadeia de Markov

O Enunciado do exerc´ıcio 3 ´ e o seguinte: Numa cidade as pessoas tem quatro op¸ c˜ oes de jantar: um restaurante japonˆ es, uma churrascaria, uma pizzaria e em casa. Suponha que:

ˆ 20% dos que comeram no restaurante japonˆ es v˜ ao a churrascaria, 20% ficam em casa e 30% v˜ ao ` a pizzaria no pr´ oximo jantar.

ˆ 10% dos que comeram ` a churrascaria v˜ ao ` a pizzaria, 25% ficam em casa e 25% v˜ ao ao japonˆ es no pr´ oximo jantar.

ˆ 20% dos que comeram em casa v˜ ao ao restaurante japonˆ es, 25% v˜ ao a churrascaria e 30% v˜ ao ` a pizzaria

no pr´ oximo jantar.

(10)

ˆ 30% dos que comeram na pizzaria jantam em casa, 30% v˜ ao ao japonˆ es e 10% v˜ ao a churrascaria.

Se numa noite a clientela ´ e igualmente dividida, qual a propor¸ c˜ ao de clientes em cada restaurante depois de trˆ es noites? E depois de 2 semanas?

3.1 Abordagem

[6] cita um exemplo muito semelhante a este e sugere que a solu¸ c˜ ao ´ e dada atrav´ es da Cadeia de Markov.

Esta seria mais uma das utiliza¸ c˜ oes das Cadeias de Markov, al´ em da vista na se¸ c˜ ao 2, do PageRank.

Da mesma forma como visto na se¸ c˜ ao anterior, nosso primeiro objetivo para resolver o problema ´ e en- contrar a Matriz de Transi¸ c˜ ao, ou Matriz de Markov. Desta vez, utilizaremos a Matriz de Transi¸ c˜ ao ` a esquerda, devido a que no exemplo dado em [6], ´ e este o tipo de matriz de transi¸ c˜ ao utilizada, e para efeitos de compara¸ c˜ ao com os exemplos dados no artigo, ficaria mais fiel aos resultados. Para isto, utilizamos as informa¸ c˜ oes de probabilidade que j´ a foram fornecidas pelo problema:

Japonˆ es Churrascaria Pizzaria Casa

Japonˆ es 0 0.25 0.3 0.2

Churrascaria 0.2 0 0.1 0.25

Pizzaria 0.3 0.1 0 0.3

Casa 0.2 0.25 0.3 0

Tabela 4: Rela¸ c˜ oes de probabilidades entre os restaurantes

Conforme especificado na se¸ c˜ ao 2.2, tem um problema com a Tabela 4, n˜ ao s´ o a Matriz de Transi¸ c˜ ao precisa ser irredut´ıvel, como tamb´ em todas as colunas precisam somar 1. Para isso, vamos somar as colunas da Matriz e substituir os zeros pelo valor faltante para ser 1, assim:

Se i 6= j ent˜ ao H

ij

= T

ij

, caso contr´ ario, seja S

j

a soma dos valores da coluna j, H

ij

= 1 − S

j

. Tendo assim, a matriz de Transi¸c˜ ao H = [H

ij

]:

H =

0.30 0.25 0.30 0.20 0.20 0.40 0.10 0.25 0.30 0.10 0.30 0.30 0.20 0.25 0.30 0.25

Tendo encontrado a Matriz de Transi¸ c˜ ao, para encontrar o resultado do exerc´ıcio, precisamos calcular o vetor estacion´ ario ou autovetor dominante atrav´ es do m´ etodo das potˆ encias:

π =

0.30 0.25 0.30 0.20 0.20 0.40 0.10 0.25 0.30 0.10 0.30 0.30 0.20 0.25 0.30 0.25

p

.

 0.25 0.25 0.25 0.25

Onde p ´ e o n´ umero de itera¸ c˜ oes do m´ etodo das potˆ encias da Cadeia de Markov.

O autovetor correspondente ` a primeira noite ´ e composto por a

ij

= 1/n e n = 4 j´ a que o enunciado

informa que na primeira noite a clientela foi dividida igualmente. Para calcular o autovetor correspondente

ap´ os trˆ es noites e ap´ os duas semanas precisamos calcular π quando T = 4 e T = 15, respectivamente.

(11)

3.2 Algoritmo

Algoritmo 3: Cadeia Markov

Entrada: Matriz T

nxn

, Crit´ erio de parada p, Vetor Probabilidade Inicial V

ini

1

para j = 1 at´ e n fa¸ ca

2

S

j

= 0

3

para i = 1 at´ e n fa¸ ca

4

S

j

= S

j

+ T

ij

5

fim

6

para i = 1 at´ e n fa¸ ca

7

se i = j ent˜ ao

8

H

ij

= 1 − S

j

9

fim

10

sen˜ ao

11

H

ij

= T

ij

12

fim

13

fim

14

fim

15

H

Aux

= I

nxn

, H

P ow 16

para p

i

= 1 at´ e p fa¸ ca

17

para i = 1 at´ e n fa¸ ca

18

para j = 1 at´ e n fa¸ ca

19

S

aux

= 0

20

para k = 1 at´ e n fa¸ ca

21

S

aux

= S

aux

+ H

Auxij

∗ H

aij

22

fim

23

H

P owij

= S

aux

24

fim

25

fim

26

H

Aux

= H

P ow 27

fim

28

para i = 1 at´ e n fa¸ ca

29

soma = 0

30

para j = 1 at´ e n fa¸ ca

31

soma = soma + H

Auxij

∗ V

inij

32

fim

33

π

i

= soma

34

fim

35

retorna π

Sa´ ıda: Autovetor π

A explica¸c˜ ao do algoritmo se d´ a a seguir:

ˆ Das linhas 1 at´ e 14 do algoritmo, ´ e montada a Matriz de Transi¸ c˜ ao

ˆ Das linhas 15 at´ e 27 ´ e calculado a potˆ encia de H at´ e o n´ umero de passos p indicado pelo crit´ erio de parada.

ˆ Das linhas 28 a 34 ´ e encontrado o autovetor, solucionando a Equa¸ c˜ ao HV

ini

= π.

(12)

3.3 Resultados

Na Tabela 5 abaixo podemos verificar a solu¸ c˜ ao do exerc´ıcio atrav´ es dos resultados obtidos pela imple- menta¸c˜ ao do algoritmo 3.

p Japonˆ es Churrascaria Pizzaria Casa 4 0.2633 (27%) 0.2340 (23%) 0.2532 (26%) 0.2495(24%) 15 0.2634 (27%) 0.2339 (23%) 0.2532 (26%) 0.2495(24%)

Tabela 5: Propor¸ c˜ ao de clientes em cada restaurante

4 Configura¸ c˜ ao do Ambiente de Implementa¸ c˜ ao

O experimento foi implementado e executado no ambiente com as configura¸ c˜ oes:

ˆ Notebook modelo: Lenovo Thinkpad X1 Carbon

ˆ Mem´ oria RAM: 8 GB

ˆ Processador: Intel i7-4600U

ˆ Sistema Operacional: Windows 10 Pro 64 bits

ˆ IDE: Microsoft Visual Studio 2017 Community

ˆ Versionamento: GitHub

ˆ Linguagem: C++

Referˆ encias

[1] David Hilbert. Ein beitrag zur theorie des legendre’schen polynoms. Acta mathematica, 1894.

[2] David Poole. Linear algebra: A modern introduction. Cengage Learning, 2014.

[3] Sami Almalki, Saeed Alzahrani, and Abdullatif Alabdullatif. New parallel algorithms for finding deter- minants of n× n matrices. In 2013 World Congress on Computer and Information Technology (WCCIT), pages 1–6. IEEE, 2013.

[4] Renato Jos´ e Policani Borseti. Pagerank: Uma aplica¸ c˜ ao pr´ atica para as cadeias de markov. 2013.

[5] Pedro Cavalcante. A abordagem de ponto fixo para o teorema de perron-frobenius parte ii: Demonstra¸c˜ ao e verifica¸ c˜ ao computacional, Aug 2019.

[6] Mylena Roehrs, Larissa Melchiors Furlan, and Glauber Rodrigues de Quadros. Eigenvalues and eigen-

vectors: use on classification of relevance. Ciˆ encia e Natura, 40:255–266, 2018.

Referências

Documentos relacionados

Por isso, quando a quantidade de Oxigênio Dissolvido na água diminui, os peixes não conseguem compensar esta.. Diminuição, ficando prejudicados e,

Foi apresentada, pelo Ademar, a documentação encaminhada pelo APL ao INMETRO, o qual argumentar sobre a PORTARIA Nº 398, DE 31 DE JULHO DE 2012 E SEU REGULAMENTO TÉCNICO

Neste trabalho avaliamos as respostas de duas espécies de aranhas errantes do gênero Ctenus às pistas químicas de presas e predadores e ao tipo de solo (arenoso ou

Definidos os dois eixos do domínio analisado, foram escolhidas três, das onze abordagens mencionadas por Hjørland (2002), a saber: 1) Estudos bibliométricos, no que se

O enfermeiro, como integrante da equipe multidisciplinar em saúde, possui respaldo ético legal e técnico cientifico para atuar junto ao paciente portador de feridas, da avaliação

Apesar do glicerol ter, também, efeito tóxico sobre a célula, ele tem sido o crioprotetor mais utilizado em protocolos de congelação do sêmen suíno (TONIOLLI

Το αν αυτό είναι αποτέλεσμα περσικής χοντροκεφαλιάς και της έπαρσης του Μιθραδάτη, που επεχείρησε να το πράξει με ένα γεωγραφικό εμπόδιο (γέφυρα σε φαράγγι) πίσω

Como já destacado anteriormente, o campus Viamão (campus da última fase de expansão da instituição), possui o mesmo número de grupos de pesquisa que alguns dos campi