Relatorio Page Rank

3
Relatório Trabalho Prático Pg. 1 Patrícia Salomé Rocha Gomes P03 N.º mec. 50141 Linguagem utilizada: MATLAB Composição do programa: main (principal) mgen (função) Pagerank (função) Descrição do programa: O programa inicia-se com a chamada da função main. Aí é pedido ao utilizador que digite o número de páginas Web que pretende analisar (n). Seguidamente, o programa chama a função mgen que irá gerar uma matriz aleatória (x) contendo as ligações entre as n páginas Web. A matriz gerada é composta unicamente pelos números 1 e 0 (1 para quando há ligação e 0 para quando não há ligação). Cada linha da matriz representa uma página e as colunas representam os seus outlinks. Após gerada a matriz, a main apresenta-a na janela de comandos do MATLAB. Depois disto, chama a função Pagerank a fim de calcular a ordem de importância das páginas. A função PageRank começa por calcular a condição inicial (r o ) que irá ser usado posteriormente. De seguida, cria um vector (out) com tamanho n. Esse vector vai ter os zeros substituídos pela soma dos índices da matriz x, ou seja, vai ser o vector contendo o número de outlinks das diferentes páginas. Para ser mais fácil calcular o pagerank, efectuei a seguinte simplificação: Após a simplificação, calcula-se então através de dois ciclos for intercalados e um ciclo if a divisão entre 1 e O(P i ). Esta divisão irá substituir os zeros do vector in (que irá ser mais tarde utilizado) pelo valor obtido. Criamos outro vector preenchido a zeros chamado rk. Os zeros serão substituídos pelo valor obtido da operação entre 1/n multiplicado pelo valor da matriz in com o mesmo índice de rk. Obtemos desta forma um vector com os valores finais do pagerank.

description

Relatório final do trabalho opcional da disciplina de Métodos Probabilísticos para Engenharia Informática sobre PageRank. Os ficheiros do trabalho podem ser baixados no seguinte endereço: http://www.mediafire.com/?8yy2vbgjfqrmm

Transcript of Relatorio Page Rank

Page 1: Relatorio Page Rank

Relatório Trabalho Prático Pg. 1

Patrícia Salomé Rocha Gomes P03 N.º mec. 50141

Linguagem utilizada: MATLAB

Composição do programa:

main (principal)

mgen (função)

Pagerank (função)

Descrição do programa:

O programa inicia-se com a chamada da função main. Aí é pedido ao utilizador que digite o

número de páginas Web que pretende analisar (n).

Seguidamente, o programa chama a função mgen que irá gerar uma matriz aleatória (x) contendo

as ligações entre as n páginas Web. A matriz gerada é composta unicamente pelos números 1 e 0

(1 para quando há ligação e 0 para quando não há ligação). Cada linha da matriz representa uma

página e as colunas representam os seus outlinks.

Após gerada a matriz, a main apresenta-a na janela de comandos do MATLAB. Depois disto,

chama a função Pagerank a fim de calcular a ordem de importância das páginas.

A função PageRank começa por calcular a condição inicial (ro) que irá ser usado posteriormente.

De seguida, cria um vector (out) com tamanho n. Esse vector vai ter os zeros substituídos pela

soma dos índices da matriz x, ou seja, vai ser o vector contendo o número de outlinks das

diferentes páginas.

Para ser mais fácil calcular o pagerank, efectuei a seguinte simplificação:

Após a simplificação, calcula-se então através de dois ciclos for intercalados e um ciclo if a divisão

entre 1 e O(Pi). Esta divisão irá substituir os zeros do vector in (que irá ser mais tarde utilizado)

pelo valor obtido.

Criamos outro vector preenchido a zeros chamado rk. Os zeros serão substituídos pelo valor

obtido da operação entre 1/n multiplicado pelo valor da matriz in com o mesmo índice de rk.

Obtemos desta forma um vector com os valores finais do pagerank.

Page 2: Relatorio Page Rank

Relatório Trabalho Prático Pg. 2

Patrícia Salomé Rocha Gomes P03 N.º mec. 50141

Desta maneira, a função main mostra o vector determinado com a função Pagerank.

Seguidamente, procura nesse mesmo vector o seu maior valor e o índice respectivo (com a

função do MATLAB max) . Faz o mesmo para o menor valor (com a função do MATLAB min). São

apresentadas duas mensagens com a página de maior Pagerank e a página de menor Pagerank.

Teste do Programa e análise de resultados:

(Obs.: “»»” significa que as instruções apresentadas são as mesmas do programa)

»» Introduza o número de páginas web: 4

»» Matriz aleatória gerada:

Esquema das ligações entre as páginas:

Cálculo manual do Pagerank:

r0 = 1/4 = 0.25

r1(P1) = r0(P1)/ϑ(P1) + r0(P2)/ϑ(P2) + r0(P3)/ϑ(P3) + r0(P4)/ϑ(P4) = 0.25/2 + 0.25/2 + 0.25/1

+ 0.25/2 = 0.625

r1(P2) = r0(P1)/ϑ(P1) + r0(P2)/ϑ(P2) = 0.25/2 + 0.25/2 = 0.25

r1(P3) = r0(P4)/ϑ(P4) = 0.25/2 = 0.125

r1(P4) = 0

Após os cálculos, a ordem dos Pageranks (do maior para o menor) é: P1, P2, P3, P4.

Page 3: Relatorio Page Rank

Relatório Trabalho Prático Pg. 3

Patrícia Salomé Rocha Gomes P03 N.º mec. 50141

»» Página com maior PageRank: 1

»» Página com menor PageRank: 4

Conclusão do teste: O programa gera com sucesso a matriz aleatória e faz o cálculo correcto

dos Pageranks.

Bibliografia:

http://www.mathworks.com/help/index.html

http://www.mathkb.com/