You are on page 1of 5

Ampliació de Matemàtiques 2 | Examen de Final Quadrimestre 8/i/2020 – 12:30-14:00

∂u(x, t ) ∂u(x, t )
1 (de 5) (2 punts) Considera l’equació d’advecció = −α , 0 ≤ x ≤ 1, 0 ≤ t . (a) (0.75 punt) Utilitza el mètode Lax-Friedrichs
∂t ∂x
1
∂u u(x, t + ∆t ) − 2 (u(x − ∆x, t ) + u(x + ∆x, t )) ∂u u(x + ∆x, t ) − u(x − ∆x, t )
i discretitza les derivades així: ≈ , ≈ . Escriu l’equació discre-
∂t ∆t ∂x 2∆x
titzada a l’espai que s’indica en funció del número de Courant C . Indica també, si amb els valors de l’apartat (b)), es verifica la condició
1
de Courant-Friedrichs-Lewy CFL en aquest cas. (b) (1.25 punts) Resol numericament l’equació d’advecció considerant α = 10 , ∆x = 14 ,
∆t = 21 ; condicions de contorn u(0, t ) = 2, u(1, t ) = 0; condicions inicials u(0.25, 0) = 1, u(0.5, 0) = 0, u(0.75, 0) = 0. Indica sobre la
malla els valors que falten (alguns són donats per les condicions incicials i de contorn i d’altres cal calcular-los).
Solució: (a)
u(x,t +∆t )− 12 (u(x−∆x,t )+u(x+∆x,t ))
L’equació d’advecció discretitzada és: ∆t = −α u(x+∆,t )−u(x−∆x,t
2∆x
)
i per tant

1 α ∆t 1 α ∆t 1 α ∆t
u i , j +1 = (u i −1, j + u i +1, j ) + (u i −1, j − u i +1, j ) = ( + )u i −1, j + ( − )u i −+1, j
2 2∆x 2 2∆x 2 2∆x
α∆t 4 1
Amb els valors donats a l’enunciat també podem escriure C = = = <1 0.25 p i l’equació queda
∆x 2 · 10 5
1 C 1 C 3 2
u i , j +1 = ( + )u i −1, j + ( − )u i +1, j = u i −1, j + u i +1, j 0.5 p
2 2 2 2 5 5

A partir de les condicions de contorn tenim u(0, t ) = 2, u(1, t ) = 0 i de les inicials u 1,0 = 1, u 2,0 = 0 i u 3,0 = 0
D’on:
u 1,1 = 53 u 0,0 + 52 u 2,0 = 53 · 2 + 25 · 0 = 65 = 1.2

u 2,1 = 53 u 1,0 + 52 u 3,0 = 53 · 1 + 25 · 0 = 35 = 0.6

u 3,1 = 53 u 2,0 + 52 u 4,0 = 53 · 0 + 25 · 0 = 0

0.5 p
I a partir d’aquests valors:

u 1,2 = 35 u 0,1 + 52 u 2,1 = 53 · 2 + 25 · 35 = 25


36
= 1.44

u 2,2 = 35 u 1,1 + 52 u 3,1 = 53 · 65 + 25 · 0 = 18


25 = 0.72

u 3,2 = 35 u 2,1 + 52 u 4,1 = 53 · 35 + 25 · 0 = 25


9
= 0.36

0.5 p

36 18 9
u(0, 1)= 2 u(0.25, 1) ≈ = 1.44 u(0.5, 1) ≈ = 0.72 u(0.75, 1) ≈ = 0.36 u(1, 1) = 0
25 25 25

6 3
u(0, 0.5) = 2 u(0.25, 0.5) ≈ = 1.2 u(0.5, 0.5) ≈ = 0.6 u(0.75, 0.5) ≈ 0 u(1, 12 ) = 0
5 5

u(0, 0) = 2 u(0.25, 0) = 1 u(0.5, 0) = 0 u(0.75, 0) = 0 u(1, 0) = 0

0.25 p

(codi python a https://trinket.io/python3/7e5ab9b285)


c
2 (de 5) (3 punts) Considera el graf de la figura i determina els invariants i propietats que
s’indiquen (3 decimals):
g
(a) (0.25 punts) Ordre i mida del graf. Distribució de graus i matriu d’adjacència del graf d
(sols valors diferents de 0). a b i
(b) (0.5 punts) Excentricitat de cada vèrtex del graf i diàmetre del graf. e
h
(c) (1.25 punt) Distància mitjana del graf.
(d) (1 punt) Clustering de cada vèrtex del graf i clustering del graf. f

Solució:
(a) Ordre, mida, graus, matriu d’adjacència.  
. 1 . . . . . . .

 1 . 1 1 1 1 . . . 

 . 1 . 1 . . 1 . . 
Ordre: 9 
 . 1 1 . 1 . 1 . .


Mida. = 15
 
A= . 1 . 1 . 1 . 1 . 
Grau màxim = 5
 

 . 1 . . 1 . . 1 . 

Grau mínim = 1 
 . . 1 1 . . . 1 1 

Distrib. graus. = [[0, 1, 1, 2, 4, 1]  . . . . 1 1 1 . 1 
. . . . . . 1 1 .
0.25 p
...............................................................................................................................................
(b) Excentricitat de cada vèrtex i diàmetre del graf.
a b c d e f g h i mitjana
excentricitat 4 3 2 2 2 2 3 3 4 2.77778
Diàmetre del graf: 4 Justificació: L’excentricitat d’un vèrtex és la distància al vèrtex més llunyà.
El diàmetre del graf és la màxima de les excentricitats de tots els vèrtexs
0.5 p
...............................................................................................................................................

a b c d e f g h i mitjana
(c)
19 3 13 3 3 13 13 13 17 31
dist. mitjana 8 2 8 2 2 8 8 8 8 18 = 1.722
Distància mitjana del graf: 31
18 = 1.7222222 Justificació:
Per a cada vèrtex detallem la distància dels altres a ell (nombre de vèrtexs a cada distàcia )

a -> 1 a d=1, 4 a d=2, 2 a d=3, 1 a d=4 -> avg: (1*1+ 4*2 +2*3 + 1*4 )/8 = 19/8 = 2.375
b -> 5 a d=1, 2 a d=2, 1 a d=3 -> avg: (5*1+ 2*2 +1*3 )/8 = 12/8 = 1.5
c, f -> 3 a d=1, 5 a d=2 -> avg: (3*1 + 5*2 )/8 = 13/8 = 1.625
d, e -> 4 a d=1, 4 a d=2 -> avg: (4*1+ 4*2 )/8 = 12/8 = 1.5
g, h -> 4 a d=1, 3 a d=2, 1 a d=3 -> avg: (4*1 + 3*2+1*3 )/8 = 13/8 = 1.625
i -> 2 a d=1, 4 a d=2, 1 a d=3, , 1 a d=4 -> avg: (2*1+ 4*2 + 1*3 + 1*4 )/8 = 17/8 = 2.125

d¯ = (1 ∗ 19/8 + 4 ∗ 13/8 + 3 ∗ 12/8 + 17/8)/9 = 31/18 = 1.722222


1.25 p
...............................................................................................................................................

(d) Clustering de cada vèrtex. Justificació: Per a cada vèrtex comptem les branques que tenen entre ells
els seus veïns i dividim pel total possible de branques que podien tenir.

1, 2, 3 -> 1/3
4, 6, 8 -> 2/6 = 1/3
5, 7, 9 -> 2/3
10 -> 2/5
C= ((6*(1/3) + 3*(2/3) +2/5) / 10 = 11/25 = 0.44

a b c d e f g h i
3 2 1 1 2 1 1
clustering 0 10 3 2 2 3 3 3 1

Clustering del graf: 43/90 = 0.477778 Justificació:

c̄ = ((2 ∗ (1/3) + 2 ∗ (2/3) + 2 ∗ (1/2) + (3/10) + 1)/9 = 43/90 = 0.4777777


1p
(codi python a https://trinket.io/python3/ff8bb65d03)
3 (de 5) (1 punt) Considerant la versió simplificada de PageRank (sense damping), determina el pagerank de les pàgines A, B i C i també
els valors dels enllaços que surten d’elles. Explica breument l’algorisme.
Solució:

0.5 p
El PageRank P R(A) d’una pàgina A ve donat per

P R(T1 ) P R(T2 ) P R(Tk )


P R(A) = (1 − d ) + d ( + +···+ )
C (T1 ) C (T2 ) C (Tk )

On

• P R(Ti ) és el PageRank de les pàgines Ti que apunten a la pàgina A

• C (Ti ) és el nombre d’enllaços que surten de la pàgina Ti

• d és el factor de damping, un valor entre 0 i 1 que les versions primeres de Google prenen 0.85. En la versió simplificada del
PageRank, d val 1.
P R(Ti
• C (Ti ) és, per tant, la part del PageRank que la pàgina Ti “transpassa” a la pàgina A

Aquest procès de "transpàs"es realitza simultaniament amb tots el vèrtexs fins que s’arriba a una distribució estable.
Equival a trobar l’autovector corresponent a l’autovalor de mòdul màxim de la matriu estocàstica normalitzada dels enllaços associada
al graf. Aquesta matriu té totes les seves entrades positives (o zero) i la suma de cada columna val 1. Aquest autovector pot calcular-se
de manera senzilla mitjançant el mètode la potència, i el valor de cada component correspon a la rellevància (o pagerank) de la pàgina
associada.
0.5 p
4 (de 5) (2 punts) Per al graf amb pesos a les branques de la figura (i considerant ordre lexicogràfic -com a les ADs -.):
(a) (0.5 punts) Troba un arbre generador de pes mínim (minimum spanning tree, MST) mitjançant l’algorisme de Prim començant a g.
Explica concisament el procés que s’ha seguit i remarca sobre el dibuix del graf les branques de l’arbre tot indicant l’ordre amb
que l’algorisme les ha afegit. Llista les branques en aquest ordre i indica el cost de l’arbre.
(b) (1.5 punts) Troba el camí més curt des de g a tots els altres vèrtexs amb l’algorisme de Dijkstra. Fes servir una taula o explica
detalladament el procés que s’ha seguit (incloent l’ordre en que s’han considerat els vèrtexs actius). Indica per a tots els vèrtexs
el valor de la seva distància a
g . Indica el cost total de l’arbre de camins curts generat.
Solució:
Prim Lexicogràfic.
1 1 4
Comencem amb la branca incident a (g) de pes més baix i anem afegint a l’arbre parcial a b c d
i a cada pas la branca de pes més baix de totes les incidents a vèrtexs d’aquest arbre de 5
3 1
manera que no es formi cap cicle. En cas de tria: ordre lexicogràfic. 3 7 4
3
0.15 p 2
e f
7
g 5
h
1 2 3 4 5 6 7 8 9 10 2 2
2
6 5
(c,g ) (b,c) (a,b) (g,j) (j,k) (g,i) (h,i) (a,e) (e,f) (d,g) 3
5 1
1 1 1 1 1 2 2 3 2 3 i j k
el seu cost és 17
0.35 p
...............................................................................................................................................
Dijkstra lexicogràfic.
Assignem ∞ a tots el vèrtexs (no visitats) i 0 a (g). Marquem com ’actiu’
(g). A partir del vèrtex ’actiu’ on ens trobem, examinem els seus veïns i els
assignem la distància més petita que resulti de la que tenen o la suma de la
que té el vèrtex ’actiu’ i la branca que l’uneix. Després d’haver fet això mateix
per tots els veïns, marquem com visitat el vèrtex ’actiu’ i ja no es visitarà
1 1 4
més. Seleccionem el veí amb etiqueta més baixa i el fem "actiu". Repetim a b c d
el procés (cerca en amplada, amb ordre lexicogràfic) per a tots els vèrtexs 5
3
3 7 1 4
fins que no quedin vèrtexs per visitar. Observem que la consideració d’ordre 3
lexicogràfic ha fet canviar l’origen al pas 4 del camí a (h) que era (j) i ha
e 2
f
7
g 5 h
passat a (i) i el mateix al pas 6 en el cas de (f ) que ha canviat de (c) a 2 2
(a). 6
2
5
3
Aquest arbre no té necessariament cost minim, i en aquest cas el seu cost és
5 1
18 . i j k

it. actiu a b c d e f g h i j k
0 g ∞ ∞ 1g 3g ∞ 7g 0g 5g 2g 1g ∞

1 c ∞ 2c 1g 3g ∞ 6c . 5g 2g 1g ∞

2 j ∞ 2c . 3g ∞ 6c . 4j 2g 1g 2j

3 b 3b 2c . 3g ∞ 6c . 4j 2g . 2j

4 i 3b . . 3g ∞ 6c . ∗4i 2g . 2j

5 k 3b . . 3g ∞ 6c . 4i . . 2j

6 a 3b . . 3g 6a ∗6a . 4i . . .

7 d . . . 3g 6a 6a . 4i . . .

8 h . . . . 6a 6a . 4i . . .

9 e . . . . 6a 6a . . . . .

10 f . . . . . 6a . . . . .

1.25 p

...............................................................................................................................................

iteració 0 1 2 3 4 5 6 7 8 9 10
vèrtex actiu g c j b i k a d h e f

dist. del g 0 1 1 2 2 2 3 3 4 6 6
0.25 p
5 (de 5) (2 punts) Donat el graf de la figura aplica l’algorisme de Christofides per trobar un cicle hamiltonià amb pes total baix. Indica
clarament tots els passos que has seguit.
Utilitza les còpies per indicar els passos intermitjos, amb una breu descripció al costat. A la còpia “cicle hamiltonià” de sota remarca el resultat trobat.

Solució:
1 1 4
a b c d
(a) MST (arbre generador de cost mínim) 2
Mitjançant l’algorisme de Kruskal o de Prim trobem un arbre genera- 3
3 7 1 4
dor de cost mínim (considerant ordre lexicogràfic). Aquest arbre serà 5 3
la base del cicle hamiltonià que busquem. MSP cost 20. 0.2 p 2 7 3 4
e f g h i
3 2
2 5
6 1 1
4
5 5 1
j k l m

(b) MPM (emparellament perfecte de cost mínim)


1 1 4
Se seleccionen els vèrtexs de l’arbre anterior de grau imparell – n’hi a b c d
ha sempre un nombre parell, perquè ?1 – i s’uneixen mitjançant un 2
3
emparellament de cost mínim -fent servir branques existents al graf 3 7 1 4
5 3
original, encara que se superposin a les del MST-. Per a aquest graf és
possible trobar un emparellament perfecte únic (i per tant de cost 2 7 3 4
e f g h i
mínim). L’aparellament és (a)-(f), (c)-(d), (g)-(j), (h)-(l). 3 2
MPM cost 14. 0.5 p 5
6 1 1
2 4
5 5 1
j k l m

(c) Cicle eulerià


1 1 4
S’uneix el MST amb el MPM resultant un multigraf on tots els vèrtexs a b c d
tenen grau parell. Ara és possible trobar un cicle eulerià. Per exemple: 2
(a)-(b)-(c)-(g)-(d)-(h)-(k)-(i)-(m)-(l)-(k)-(g)-(j)-(f)-(e)---(a),
3
3 1 4
2 5 3
de cost 34. 0.5 p 7
2 7 3 4
e f g h i
2
3 5
6 1 1
2 4
5 5 1
j k l m

(d) Dreceres (shortcuts)


Si el cicle eulerià “repeteix” vèrtexs i cal evitar-ho, a poder ser pel camí
més curt possible. En aquest cas hi ha dues opcions clares:
podem substituir el camí (d)-(g)-(h) de cost 6 per la bran-
ca (d,h) de cost 4 i el camí (j)-(g)-(c)-(e)-(f)-(a) de cost
10 pel (j)-(f)-(e)-(a) de cost 11. Encara que el pes del ci- a 1 1 4
b c d
cle hamiltonià sigui superior al de l’eulerià, cal fer-ho per aca- 2
bar tenint un ciclce hamiltonià (que passa una sola vegada 3
3 1 4
per cadascun dels vèrtexs). El resultat és el cicle hamiltonià 7 5 3
(a)-(b)-(c)-(d)-(g)-(h)-(l)-(m)-(i)-(k)-(j)-(f)-(e)---(a) 7 3 4
e f g h i
de cost 33. 0.8 p 2 2
2 3
5
6 1 1
4
5 5 1
j k l m

1 The sum of all the degrees of any graph is equal to twice the number of edges. Since the sum of the degrees is even and the sum of the degrees of vertices with even
degree is even, the sum of the degrees of vertices with odd degree must be even. If the sum of the degrees of vertices with odd degree is even, there must be an even
number of those vertices.

You might also like