Sunteți pe pagina 1din 35

Calcul Numeric

Cursul 1

2011-2012



Anca Ignat
1
ancai@infoiasi.ro , olariu@info.uaic.ro
cn@fenrir.infoiasi.ro pentru temele de laborator
http://www.infoiasi.ro/~ancai/CN/
Consultaii:
- prin e-mail la adresa de mai sus sau
- la cabinet (C-307), joi, 16-18

2
Regulament - 2011-2012
Laborator
- 8 teme
- cei care prezint temele pn la termenul limit precizat la
fiecare tem, punctajul maxim ce poate fi obinut este
punctajul afiat pentru fiecare tem
- cei care prezint temele dup termenul limit precizat
punctarea se va face din 50% din punctajul temei prezentate

3
Examen
- tez scris de 1 or, cu 3 sau 4 exerciii din materia predat,
cu cursurile pe masa - exclus documentaia pe suport
electronic
- teza scris este notat ntre 1 i 10
- prezena la examen este obligatorie chiar dac s-a obinut
punctaj de promovare doar din punctajul de la laborator
4
Calculul punctajului / notei final(e)

Punctaj final = punctaj laborator + 29*nota examen
Promoveaz disciplina acei studeni care au:
- nota la examen 3
i
- punctaj final 260 pt
Nota final se calculeaz din punctajul final aplicnd curba lui Gauss.

5
Desfurarea semestrului

Sptmnnile 1-7 i 9-15 coal conform orarului
Prima sptmna de evaluare liber
Sptmna 15
- prezentare teme de laborator restante
Sptmna 15 sau 16 - examen
6
Bibliografie
1. Elemente de informatic i calcul numeric, vol. 1 - C.Ignat,
C.Ilioi, T.Jucan - Ed. Univ. Al. I. Cuza Iai, 1987
2. Calcul numeric n C - T. A. Beu - Ed. Albastr, Cluj, 2004
3. Metode numerice - V.Iorga, B.Jora - Ed. Albastr, Cluj, 2004
4. Numerical Recipes in C/C++ (www.nr.com)
5. Matrix Computations - G.H. Golub, C.F. van Loan - John
Hopkins Univ. Press, 1996
6. Numerical Analysis R.L. Burden, J.D. Faires Brooks/Cole,
Thomson Learning, 2001
7. Computing for numerical methods using Visual C++ - S. Salleh,
A.Y. Zomaya, S. Abu Baka John Wiley & Sons, 2008
8. Numerical Optimization J. Nocedal, S.J. Wright Springer,
1999
7


Capitolele cursului

1. Rezolvarea sistemelor liniare (Ax=b)
2. Optimizare numeric ( min { F(x) ; x R
n
} )
3. Valori i vectori proprii (Au = u)
4. Ecuaii neliniare (f(x)=0)
5. Interpolare numeric
8

Exemple

Web search Googles PageRank
- informaii nestructurate, self-organized
- fr standarde, recenzeni, paznici ai coninutului
- informaie volatil, eterogen i foarte divers (coninut,
structur, format, limbi, alfabete, scop)
- 10
13
pagini web (probabil mai multe) ???
9
Cutarea
- roboi web parcurg permanent graful Web pentru informaii
- depozitul de pagini - memoreaz temporar paginile web
(paginile foarte populare sunt stocate perioade mai lungi)
- modulul de indexare se extrage din paginile depozitate
informaia esenial (cuvinte-cheie, fraze-cheie, descriptori)
se obine o versiune comprimat a paginii; n funcie de
popularitatea paginii aceasta este fie tears, fie pstrat n
depozitul de pagini
10


- informaiile eseniale memorate despre orice pagin Web
index de coninut - cuvinte sau fraze cheie, titlu (se
construiete inverted file - similar indexului unei cri)
index de structur hyperlink
index de informaii speciale imagini, pdf


11
- modul de interogare transform cererea din limbaj natural
ntr-un limbaj pentru motorul de cutare (de obicei numere); se
consult informaiile eseniale memorate; se obin paginile
relevante cererii (care conin termeni din interogare).
- modulul de ranking(evaluare a relevanei) prelucreaz
paginile relevante furnizate de modulul de interogare i le
ordoneaz dup anumite criterii (funcie de motorul de
cutare); acest modul trebuie s discearn care pagin Web
rspunde cel mai bine interogaiei i le ordoneaz;

12
PageRank este sistemul de evaluare a paginilor web din punctul
de vedere al importanei, folosit de motorul de cutare Google.
Nota furnizat de PageRank este unul din factorii folosii
pentru a ordona paginile web atunci cand se face o cutare.
PageRank is an important factor. It is one out of 200 signals
but still it is an important one for a large number of queries.
(Matt Cutts head of Googles Webspam team)


13
Google d cel puin 2 note/scoruri fiecrei pagini Web:
a. popularitate
b. coninut modul de calcul este secret termenii din
interogare sunt n titlu sau n interiorul paginii, de cte
ori termenii apar n pagin, ct de aproape unii de alii
sunt termenii din interogaiile cu cuvinte multiple, cum
apar termenii de interogare (bold, subtitluri),
coninutul paginilor vecine
Nota/scorul final cu care se face ordonarea este o medie ponderat
ntre notele de mai sus, componenta principal fiind popularitatea.
14

PageRank (Google) S. Brin, L. Page (popularitate)
Sergey Brin, Lawrence Page, R. Motwami, Terry Winograd The
PageRank citation ranking: bringing order to the Web
Technical Report 1999-0120, Computer Science Department,
Stanford University, 1999
Ideea: O pagin este important dac este referit (citat) de alte
pagini importante.
15
Importana unei pagini (PageRank-ul ei) este calculat sumnd
PageRank-urile tuturor paginilor care citeaz pagina respectiv.
Dac o pagin important citeaz mai multe pagini, atunci
importana ei se mparte egal paginilor pe care le citeaz.
Graful Web cu n noduri.
daca pagina citeaza pagina
altfel
1
0
ij
j i
I

=


c
j
= numarul de citari ale paginii j (outlink-urile paginii j)
r
i
= PageRank-ul paginii i
16
?
1
(1 ) , 0 , 0.85
n
ij
i j
j
j
I
r d d r d d
c
=
= + > =

(1)
Constanta d asigur faptul c fiecare pagina Web are un Pagerank
de cel puin (1-d).
Relaia (1) poate fi scris matricial astfel:
1
(1 )
T
r d e d e I C r

= + (2)
17
( )
( )
diag
1 2
1
1
, , , , ,
1
n n n n n
ij n
e I I C c c c

| |
|
|
= e = e = e
|
|
\ .


Deoarece suma tututror Pagerank-urilor este 1 putem scrie:
1
1
n
T
i
i
r e r
=
= =

.
1
1
T n n
d
A ee d I C
n

= + e
18

Relaia (2) se poate scrie:
r Ar =
Aceast relaie ne spune c matricea A (matrice de dimensiuni
foarte mari i rar) are valoarea proprie 1 iar vectorul de Pagerank-
uri este vectorul propriu asociat. Se poate folosi metoda puterii
pentru determinarea lui r.


19
Alte tehnici de CN folosite pentru PageRank: rezolvarea sistemelor
liniare, SVD (Singular Value Decomposition)
- An Arnoldi-type Algortihm for Computing Page Rank, G.H. Golub, C.
Greif, BIT Numerical Mathematics, Springer, 2006
- Fast Parallel PageRank: A Linear System Approach, D. Gleich, L.
Zhukov, P. Berkhin, WWW2005, May 1014, 2005, Chiba, Japan
- The Use of the Linear Algebra by Web Search Engines, A.N.Langville,
C.D. Meyer, 2004
(http://www.infoiasi.ro/~ancai/CN/bibliografie/)

20
Compresia imaginilor digitale si descompunerea dup valori singulare
o imagine digital matrice de pixeli A cu m linii i n coloane
( )
sau
3
1,...,
1,...,
,
ij ij i m
j n
A a a
=
=
= e
(
{ } { }
sau
3
0,1, ..., 255 0,1, ..., 255
ij ij
a a e e )
Pentru memorarea lui A e nevoie de mnmem(int) = 2 m n bytes
Descompunerea dupa valori singulare (SVD) a unei matrici
, , ,
T m m m n n n
A U SV U S V

= e e e
matrici ortogonale
1 2 1 2
, , ..., , , , ...,
m n
U u u u V v v v = = ( (


21
( ) ( )
daca
daca
1
, , , ,
0
m n i j ij i j ij
i j
u u v v i j
i j
o o
=

= = =



1
2
0 0 0
0 0 0
0 0 0
0 0 0 0
m n
r
S
o
o
o

| |
|
|
|
= e
|
|
|
|
\ .


- valorile singulare ale matricii
1 2
0 , min{ , }
r
r m n A o o o > > > > s

22

1 1 1 2 2 2
T T T
r r r
A u v u v u v o o o = + + +
1 1 1 2 2 2
T T T
k k k k
A A u v u v u v o o o ~ = + + +
memorarea lui A
k
necesit k(m+n+1)mem(double)
m=2448 , n=3264 ,
( 1)
c
mn
r
k m n
=
+ +
, r=2448
k=50 r
c
= 27.9722 ; k=100 r
c
= 13.9861 ; k=150 r
c
= 9.3241
k=200 r
c
= 6.9931 ; k=250 r
c
=5.5944 ; k=300 r
c
= 4.662


23
Vectori i matrici
Fie x
i ,
y
i ,
e . Se definesc vectorii ,
n
x ye

i operaiile
de adunare i nmulire cu scalari astfel:

1 1 1 1 1
2 2 2 2 2
, , ,
n n n n n
x y x y x
x y x y x
x y x y x
x y x y x

+
| | | | | | | |
| | | |
+
| | | |
= = + = =
| | | |
| | | |
+
\ . \ . \ . \ .

.



24


Fie vectorul
n
z e :

cu
1
2
1 2
, , ..., .
n
n
z
z
z z z z
z
| |
|
|
= e
|
|
\ .



Pentru z e utilizm notaiile:

z = a + ib , Re z = a, Im z = b ,
2 2
, z a ib z a b = = +
25


Notm cu
m n
/
m n
spaiul matricilor cu elemente reale /
complexe cu m linii i n coloane

,
11 1
1
, / 1, 2, ..., , 1, 2, ...,
n
ij
m mn
a a
A a i m j n
a a
| |
|
= e = =
|
|
\ .








26
Definiie
X se numete spaiu vectorial (spaiu liniar)
+ : X X X i : K X X,
astfel nct ( X , + ) este un grup comutativ :
a + b = b + a , a,b e X comutativitate,
(a + b) + c = a + (b + c) , a,b,c e X asociativitate ,
- 0 e X a. . a + 0 = 0 + a = a , a e X - element neutru ,
a e X, - -a e X a.. a + (-a) = (-a) + a = 0 element opus.


27

iar pentru operaia de nmulire cu scalari au loc relaiile:

(a+b) = a + b , e K , a,b e X ,
( + ) a = a + a , , e K , a e X,
( a ) = ( )a , , e K , a e X,
- 1 e K astfel nct 1 a = a , a e X.




28
Definiie

Fie X un spaiu liniar. Spunem c vectorii x
1
, x
2
, , x
p
e X
sunt liniar independeni dac:
1 1 2 2 1 2
.. 0 ... 0
p p p i
x x x K o o o o o o o + + + = = = = e ,
Spaiul vectorial X este finit dimensional dac exist p
vectori liniar independeni n X, x
1
, x
2
, ,x
p
e X, i orice
mulime de q elemente din X cu q > p este liniar dependent.
n acest caz dimensiunea spaiului X este p (dim X = p).
29
Fie spaiul vectorial X finit dimensional cu dim X = p. Orice
sistem de p vectori liniar independeni din X se numete baz
a spaiului X.
Fie x
1
, x
2
, ,x
p
e X o baz pentru spaiul X . Atunci pentru
x e X , - unice constantele o
1
, o
2
,, o
p
e K astfel nct
1 1 2 2
1
..
p
p p i i
i
x x x x x o o o o
=
= + + +

= .
n
este un spaiu vectorial finit dimensional, dim
n
= n cu
baza canonic:
30


poziia -
1 2
0
1 0 0 0
0 1 0
, , , , ,
1
0 0 1
0
k n
k
e e e e
| |
|
| | | | | |
|
| | |
|
| | |
= = = =
|
| | |
|
| | |
|
\ . \ . \ .
|
\ .











31
Calcul matricial

Fie matricea
m n
A

e :

( )
11 1
1 , 1
1
,
n
ij
i m j n
m mn
a a
A A a
a a
= =
| |
|
= =
|
|
\ .


Se definete matricea transpus:
( )
11 1
1 , 1
1
,
m
T T n m
ji
i m j n
n mn
a a
A A a
a a

= =
| |
|
= = e
|
|
\ .


32

Pentru matricea:
( )
1
1
,
m n
i m
ij
j n
A A a

=
=
e =


se definete matricea adjunct A
H
:
( )
1
1
11 1 11 1
1 1
,
H T
j n
ji
i m
n m
H
m mn n mn
A A a
a a a a
A A
a a a a
=
=
= =
| |
| |
|
|
= =
|
|
|
|
\ .
\ .








33
Pentru
m n
A

e matricea adjunct coincide cu transpusa,
A
H
= A
T
.
Fie vectorul
n
xe , acesta este considerat vector coloan,
1 n
x

e :
( )
1
2
1 2
T
n
n
x
x
x x x x x
x
| |
|
|
= =
|
|
\ .




34
Dac facem nmulirea matricial Ae
j
obinem coloana j a
matricii A:
poziia
1
11 1
2
1
0
1
0
j
n
j
j j
m mn
mj
a
a a
a
Ae
a a
a
| |
| |
|
| | |
|
| |
|
= =
| |
|
|
|
\ .
|
|
\ . |
\ .




Ae
j
este coloana j a matricii A, j=1,...,n ;

e
i
T
A este linia i a matricii A, i=1,...,m.