You are on page 1of 3

Activitat 1

0 1 1/2 1/3 1/5


⎛1/2 0 0 1/3 1/5⎞
𝑺=⎜ 0 0 0 1/3 1/5⎟
1/2 0 0 0 1/5
⎝ 0 0 1/2 0 1/5⎠

pàgina 1 pàgina 2 pàgina 3 pàgina 4 pàgina 5


rellevància S 0,3922 0,2745 0,0784 0,2059 0,049

Activitat 2

1
𝑮 = 𝛼𝑺 + (1 − 𝛼) 𝑱
𝑛

0 1 1/2 1/3 1/5 1 1 1 1 1


⎛1/2 0 0 1/3 1/5⎞
1 ⎛1 1 1 1 1⎞
𝑮 = 0,85 ⎜ 0 0 0 1/3 1/5⎟ + (1 − 0,85) ⎜1 1 1 1 1⎟
5
1/2 0 0 0 1/5 1 1 1 1 1
⎝ 0 0 1/2 0 1/5⎠ ⎝1 1 1 1 1⎠

0 0,85 0,85/2 0,85/3 0,85/5 0,03 0,03 0,03 0,03 0,03


⎛0,85/2 0 0 0,85/3 0,85/5⎞ ⎛0,03 0,03 0,03 0,03 0,03⎞
𝑮=⎜ 0 0 0 0,85/3 0,85/5⎟ + ⎜0,03 0,03 0,03 0,03 0,03⎟
0,85/2 0 0 0 0,85/5 0,03 0,03 0,03 0,03 0,03
⎝ 0 0 0,85/2 0 0,85/5⎠ ⎝0,03 0,03 0,03 0,03 0,03⎠

0,03 0,88 0,91/2 0,94/3 1/5


⎛0,91/2 0,03 0,03 0,94/3 1/5⎞
𝑮 = ⎜ 0,03 0,03 0,03 0,94/3 1/5⎟
0,91/2 0,03 0,03 0,03 1/5
⎝ 0,03 0,03 0,91/2 0,03 1/5⎠

pàgina 1 pàgina 2 pàgina 3 pàgina 4 pàgina 5


rellevància S 0,3922 0,2745 0,0784 0,2059 0,049
rellevància G 0,3596 0,2538 0,101 0,1978 0,0878

Activitat 3

0 0 0 0 0 0 1/3 0
1/2 0 1/2 1/3 0 0 0 0
⎛ ⎞
⎜1/2 0 0 0 0 0 0 0 ⎟
0 1 0 0 0 0 0 0 ⎟
𝑺=⎜
⎜ 0 0 1/2 1/3 0 0 1/3 0 ⎟
⎜ 0 0 0 1/3 1/3 0 0 1/2⎟
0 0 0 0 1/3 0 0 1/2
⎝ 0 0 0 0 1/3 1 1/3 0 ⎠

1
𝑮 = 𝛼𝑺 + (1 − 𝛼) 𝑱
𝑛

0 0 0 0 0 0 1/3 0 1 1 1 1 1 1 1 1
1/2 0 1/2 1/3 0 0 0 0 1 1 1 1 1 1 1 1
⎛ ⎞ ⎛ ⎞
⎜1/2 0 0 0 0 0 0 0 ⎟

1 1 1 1 1 1 1 1

0 1 0 0 0 0 0 0 ⎟ 1 1 1 1 1 1 1 1 1⎟
𝑮 = 0,85 ⎜ + (1 − 0,85) ⎜
⎜ 0 0 1/2 1/3 0 0 1/3 0 ⎟ 8 ⎜1 1 1 1 1 1 1 1⎟
⎜ 0 0 0 1/3 1/3 0 0 1/2⎟ ⎜1 1 1 1 1 1 1 1⎟
0 0 0 0 1/3 0 0 1/2 1 1 1 1 1 1 1 1
⎝ 0 0 0 0 1/3 1 1/3 0 ⎠ ⎝1 1 1 1 1 1 1 1⎠

0 0 0 0 0 0 0,85/3 0 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8


0,85/2 0 0,85/2 0,85/3 0 0 0 0 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8
⎛ ⎞ ⎛ ⎞
⎜0,85/2 0 0 0 0 0 0 0 ⎟ ⎜0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8⎟
⎜ 0 0,85 0 0 0 0 0 0 ⎟ ⎜0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8⎟
𝑮=⎜ +
0 0 0,85/2 0,85/3 0 0 0,85/3 0 ⎟ ⎜0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8⎟
⎜ ⎟ ⎜ ⎟
⎜ 0 0 0 0,85/3 0,85/3 0 0 0,85/2⎟ ⎜0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8⎟
0 0 0 0 0,85/3 0 0 0,85/2 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8
⎝ 0 0 0 0 0,85/3 0,85 0,85/3 0 ⎠ ⎝0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8⎠

0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 7,25/24 0,15/8


3,55/8 0,15/8 3,55/8 7,25/24 0,15/8 0,15/8 0,15/8 0,15/8
⎛ ⎞
⎜3,55/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8⎟
⎜0,15/8 6,95/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8 0,15/8⎟
𝑮=⎜
0,15/8 0,15/8 3,55/8 7,25/24 0,15/8 0,15/8 7,25/24 0,15/8⎟
⎜ ⎟
⎜0,15/8 0,15/8 0,15/8 7,25/24 7,25/24 0,15/8 0,15/8 3,55/8⎟
0,15/8 0,15/8 0,15/8 0,15/8 7,25/24 0,15/8 0,15/8 3,55/8
⎝0,15/8 0,15/8 0,15/8 0,15/8 7,25/24 6,95/8 7,25/24 0,15/8⎠

Pàgina més rellevant: H rellevància (4 decimals.): 0,2508


Pàgina menys rellevant: C rellevància (4 decimals.): 0,0456
Codi de python empleat:

import numpy

#Ens fa Iterations iteracions del mètode de la potència amb la matriu Matrix, començant pel vector

StartingVector

#i ens retorna una aproximació del vector propi que conté el valor propi més gran

def PowerMethod(Matrix, StartingVector, Iterations):

CurrentVector = StartingVector

for i in range(Iterations):

CurrentVector = numpy.dot(Matrix, CurrentVector)

# result = result/numpy.linalg.norm(result)

print("Vector propi a l'iteració ", Iterations,": ", CurrentVector)

#Ens executa el mètode de la potència per a la matriu S de l'apartat 1

def MainActivity1():

print("Activity 1\n_________________")

S = numpy.array([[0 ,1 ,1/2 ,1/3 ,1/5 ],

[1/2 ,0 ,0 ,1/3 ,1/5 ],

[0 ,0 ,0 ,1/3 ,1/5 ],

[1/2 ,0 ,0 ,0 ,1/5 ],

[0 ,0 ,1/2 ,0 ,1/5 ]])

StartingVector = numpy.array([1/5,1/5,1/5,1/5,1/5])

PowerMethod(S, StartingVector, 20)

def MainActivity2():

print("Activity 2\n_________________")

G = numpy.array([[0.03 ,0.88 ,0.91/2 ,0.94/3 ,1/5 ],

[0.91/2 ,0.03 ,0.03 ,0.94/3 ,1/5 ],

[0.03 ,0.03 ,0.03 ,0.94/3 ,1/5 ],

[0.91/2 ,0.03 ,0.03 ,0.03 ,1/5 ],

[0.03 ,0.03 ,0.91/2 ,0.03 ,1/5 ]])

StartingVector = numpy.array([1/5,1/5,1/5,1/5,1/5])

PowerMethod(G, StartingVector, 20)

def MainActivity3():

print("Activity 3\n_________________")

G = numpy.array([[0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,7.25/24 ,0.15/8 ],

[3.55/8 ,0.15/8 ,3.55/8 ,7.25/24 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ],

[3.55/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ],

[0.15/8 ,6.95/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ],

[0.15/8 ,0.15/8 ,3.55/8 ,7.25/24 ,0.15/8 ,0.15/8 ,7.25/24 ,0.15/8 ],

[0.15/8 ,0.15/8 ,0.15/8 ,7.25/24 ,7.25/24 ,0.15/8 ,0.15/8 ,3.55/8 ],

[0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,7.25/24 ,0.15/8 ,0.15/8 ,3.55/8 ],

[0.15/8 ,0.15/8 ,0.15/8 ,0.15/8 ,7.25/24 ,6.95/8 ,7.25/24 ,0.15/8 ]])

StartingVector = numpy.array([1/8,1/8,1/8,1/8,1/8,1/8,1/8,1/8])

PowerMethod(G, StartingVector, 20)

MainActivity1()

print("\n\n")

MainActivity2()

print("\n\n")

MainActivity3()
Output:

Activity 1

_________________

Vector propi a l'iteració 20 : [0.39215625 0.27451002 0.07843095 0.20588293 0.04901986]

Activity 2

_________________

Vector propi a l'iteració 20 : [0.35961319 0.25380395 0.10096831 0.19776932 0.08784524]

Activity 3

_________________

Vector propi a l'iteració 20 : [0.06309152 0.09252589 0.04556554 0.0973956 0.11005187 0.18410546 0.15650951

0.25075461]

You might also like