Download - Algoritmica Grafurilor
![Page 2: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/2.jpg)
OUTLINE
1 Descrierea cursului
2 Interesul penru grafuri ın Informatica
3 Elemente introductive de complexitate
4 Problemele pentru seminarul 1
2 / 47
![Page 3: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/3.jpg)
DESCRIEREA CURSULUI
Pagina cursului
http://thor.info.uaic.ro/˜ croitoru/ag/
Obiective
Studentii vor fi familiarizati cu notiunile si rezultatele de baza ale Teoriei
Algoritmice a Grafurilor, care vor fi aplicate ın proiectarea de algoritmi
eficienti pentru diverse probleme de optimizare combinatorica.
Tematica Generala
Clase de Complexitate, Vocabular al Teoriei Grafurilor, Probleme de
drum(parcurgeri, drumuri minime, conexiune), Arbori partiali de cost
minim (union-find, complexitate amortizata), Cuplaje, Fluxuri, Reduceri
polinomiale pentru probleme de decizie pe grafuri, Abordari ale
problemelor NP-dificile, Grafuri Planare.
3 / 47
![Page 4: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/4.jpg)
DESCRIEREA CURSULUI
Pagina cursului
http://thor.info.uaic.ro/˜ croitoru/ag/
Obiective
Studentii vor fi familiarizati cu notiunile si rezultatele de baza ale Teoriei
Algoritmice a Grafurilor, care vor fi aplicate ın proiectarea de algoritmi
eficienti pentru diverse probleme de optimizare combinatorica.
Tematica Generala
Clase de Complexitate, Vocabular al Teoriei Grafurilor, Probleme de
drum(parcurgeri, drumuri minime, conexiune), Arbori partiali de cost
minim (union-find, complexitate amortizata), Cuplaje, Fluxuri, Reduceri
polinomiale pentru probleme de decizie pe grafuri, Abordari ale
problemelor NP-dificile, Grafuri Planare.
4 / 47
![Page 5: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/5.jpg)
DESCRIEREA CURSULUI
Pagina cursului
http://thor.info.uaic.ro/˜ croitoru/ag/
Obiective
Studentii vor fi familiarizati cu notiunile si rezultatele de baza ale Teoriei
Algoritmice a Grafurilor, care vor fi aplicate ın proiectarea de algoritmi
eficienti pentru diverse probleme de optimizare combinatorica.
Tematica Generala
Clase de Complexitate, Vocabular al Teoriei Grafurilor, Probleme de
drum(parcurgeri, drumuri minime, conexiune), Arbori partiali de cost
minim (union-find, complexitate amortizata), Cuplaje, Fluxuri, Reduceri
polinomiale pentru probleme de decizie pe grafuri, Abordari ale
problemelor NP-dificile, Grafuri Planare.
5 / 47
![Page 6: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/6.jpg)
DESCRIEREA CURSULUI
Competente acumulate
Utilizarea grafurilor ca limbaj de modelare formala. Cunoastereaalgoritmilor de baza pentru problemele clasice pe grafuri.Recunoasterea complexitatii de calcul pentru probleme deoptimizare.
Metode de predare
Prezentari video ale slide-urilor (continand notele de curs) disponibile in
format pdf la inceputul semestrului.
http://thor.info.uaic.ro/˜ croitoru/ag/ag 13-14 allinone.pdf
Tematica seminariilor
Fiecare seminar dezbate cateva probleme (unele dintre ele dificile !)
pentru a aprofunda subiectele introduse la curs. Toate problemele sunt
postate la ınceputul semestrului astfel ıncat studentii interesati sa caute
solutii originale sau sa studieze probleme similare ın bibliografia ınrudita.
6 / 47
![Page 7: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/7.jpg)
DESCRIEREA CURSULUI
Competente acumulate
Utilizarea grafurilor ca limbaj de modelare formala. Cunoastereaalgoritmilor de baza pentru problemele clasice pe grafuri.Recunoasterea complexitatii de calcul pentru probleme deoptimizare.
Metode de predare
Prezentari video ale slide-urilor (continand notele de curs) disponibile in
format pdf la inceputul semestrului.
http://thor.info.uaic.ro/˜ croitoru/ag/ag 13-14 allinone.pdf
Tematica seminariilor
Fiecare seminar dezbate cateva probleme (unele dintre ele dificile !)
pentru a aprofunda subiectele introduse la curs. Toate problemele sunt
postate la ınceputul semestrului astfel ıncat studentii interesati sa caute
solutii originale sau sa studieze probleme similare ın bibliografia ınrudita.
7 / 47
![Page 8: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/8.jpg)
DESCRIEREA CURSULUI
Competente acumulate
Utilizarea grafurilor ca limbaj de modelare formala. Cunoastereaalgoritmilor de baza pentru problemele clasice pe grafuri.Recunoasterea complexitatii de calcul pentru probleme deoptimizare.
Metode de predare
Prezentari video ale slide-urilor (continand notele de curs) disponibile in
format pdf la inceputul semestrului.
http://thor.info.uaic.ro/˜ croitoru/ag/ag 13-14 allinone.pdf
Tematica seminariilor
Fiecare seminar dezbate cateva probleme (unele dintre ele dificile !)
pentru a aprofunda subiectele introduse la curs. Toate problemele sunt
postate la ınceputul semestrului astfel ıncat studentii interesati sa caute
solutii originale sau sa studieze probleme similare ın bibliografia ınrudita.
8 / 47
![Page 9: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/9.jpg)
DESCRIEREA CURSULUI
Bibliografie
CROITORU C., Tehnici de baza ın optimizarea combinatorie,Editura Univ. Al. I. Cuza Iasi, Iasi,1992.
CROITORU C., Introducere in proiectarea algoritmilorparaleli, Editura Matrix Rom, Bucuresti, 2002.
TOMESCU I., Probleme de combinatorica si teoria grafurilor,Editura did. si ped., Bucuresti,1981.
DIESTEL R., Graph Theory, Electronic Edition.
CORMEN T.H., Leiserson C.E., Rivest R.L., Stein C.,Introduction to Algorithms,MIT Press 2001.
Suplimentar
http://thor.info.uaic.ro/˜ croitoru/ag/resurse bibliografice (optionale)
9 / 47
![Page 10: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/10.jpg)
DESCRIEREA CURSULUI
Bibliografie
CROITORU C., Tehnici de baza ın optimizarea combinatorie,Editura Univ. Al. I. Cuza Iasi, Iasi,1992.
CROITORU C., Introducere in proiectarea algoritmilorparaleli, Editura Matrix Rom, Bucuresti, 2002.
TOMESCU I., Probleme de combinatorica si teoria grafurilor,Editura did. si ped., Bucuresti,1981.
DIESTEL R., Graph Theory, Electronic Edition.
CORMEN T.H., Leiserson C.E., Rivest R.L., Stein C.,Introduction to Algorithms,MIT Press 2001.
Suplimentar
http://thor.info.uaic.ro/˜ croitoru/ag/resurse bibliografice (optionale)
10 / 47
![Page 11: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/11.jpg)
DESCRIEREA CURSULUI
EVALUARE
Punctajul minim de promovare: 50 puncte.
FORME:
Activitatea de la seminar (prezenta, participare la dezbateri):0-18 puncte.
Teme pentru acasa (3 teme, ın saptamanile 5, 9,13), maxim 14puncte fiecare: 0-42 puncte.
Testul final scris (open books): 0-60 puncte.
Nota finala
Studentii care au obtinut minim 50 puncte, sunt sortati descrescatordupa punctajul final si clasificati dupa regulile ETCS cu adaptarileprecizate de FII.
Bonus: Seminar Special.
11 / 47
![Page 12: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/12.jpg)
DESCRIEREA CURSULUI
EVALUARE
Punctajul minim de promovare: 50 puncte.
FORME:
Activitatea de la seminar (prezenta, participare la dezbateri):0-18 puncte.
Teme pentru acasa (3 teme, ın saptamanile 5, 9,13), maxim 14puncte fiecare: 0-42 puncte.
Testul final scris (open books): 0-60 puncte.
Nota finala
Studentii care au obtinut minim 50 puncte, sunt sortati descrescatordupa punctajul final si clasificati dupa regulile ETCS cu adaptarileprecizate de FII.
Bonus: Seminar Special.
12 / 47
![Page 13: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/13.jpg)
DESCRIEREA CURSULUI
EVALUARE
Punctajul minim de promovare: 50 puncte.
FORME:
Activitatea de la seminar (prezenta, participare la dezbateri):0-18 puncte.
Teme pentru acasa (3 teme, ın saptamanile 5, 9,13), maxim 14puncte fiecare: 0-42 puncte.
Testul final scris (open books): 0-60 puncte.
Nota finala
Studentii care au obtinut minim 50 puncte, sunt sortati descrescatordupa punctajul final si clasificati dupa regulile ETCS cu adaptarileprecizate de FII.
Bonus: Seminar Special.
13 / 47
![Page 14: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/14.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
A nice visualization by Akshay Java of network analysis of Twitter.14 / 47
![Page 15: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/15.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Interest in scale-free networks started in 1999 with work byAlbert-Laszlo Barabasi and colleagues at the University of NotreDame. 15 / 47
![Page 16: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/16.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
World.png
A small-world network is a type of mathematical graph in whichmost nodes are not neighbors of one another, but most nodes canbe reached from every other by a small number of hops or steps.
16 / 47
![Page 17: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/17.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Konfidi – Trust Networks with PGP and RDF.17 / 47
![Page 18: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/18.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Graph-based knowledge representation formalisms: BayesianNetworks (BNs), Semantic Networks (SNs), Conceptual Graphs(CGs), Formal Concept Analysis (FCA), CP-nets, GAI-nets, etc.
18 / 47
![Page 19: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/19.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Argumentation Frameworks.
19 / 47
![Page 20: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/20.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Environmental Sensor Networks (ESN), Object Sensor Networks(OSN) or Body Sensor Network (BSN) operate a variety ofdifferent protocols for the specific application environment.
20 / 47
![Page 21: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/21.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Shot.png
Graph-based Data Basis.21 / 47
![Page 22: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/22.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Visualization systems.22 / 47
![Page 23: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/23.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Madrid-Metro.23 / 47
![Page 24: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/24.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
A set of such triples is called an RDF graph.
24 / 47
![Page 25: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/25.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Utilizing ASP for Generating and Visualizing ArgumentationFrameworks.
25 / 47
![Page 26: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/26.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
b
26 / 47
![Page 27: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/27.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
?
b
27 / 47
![Page 28: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/28.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
NO
b
28 / 47
![Page 29: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/29.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
b
29 / 47
![Page 30: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/30.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
b
?
30 / 47
![Page 31: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/31.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
b
YES
31 / 47
![Page 32: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/32.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
b
c
d
e
f
32 / 47
![Page 33: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/33.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
?
b
c
d
e
f
33 / 47
![Page 34: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/34.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
a
YESb
c
d
e
fEXTENSION
34 / 47
![Page 35: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/35.jpg)
INTERESUL PENTRU GRAFURI IN INFORMATICA
Visualizing a FCA lattice.35 / 47
![Page 36: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/36.jpg)
ELEMENTE INTRODUCTIVE DE COMPLEXITATE
(ag 13-14 allinone.pdf, primul capitol)
P:Clasa problemelor (de decizie) pentru care exista algoritmideterministi cu timp polinomial de rezolvare.
NP:Clasa problemelor (de decizie) pentru care exista algoritminedeterministi cu timp polinomial de rezolvare.
P⊆NP (Incluziune stricta ?)
36 / 47
![Page 37: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/37.jpg)
ELEMENTE INTRODUCTIVE DE COMPLEXITATE
Problema P se reduce polinomial la problema Q, daca orice intrarea problemei P se poate transforma ın timp polinomial ıntr-o intrarea problemei Q, astfel ıncat rezolvand Q pe aceasta intrare se obtineraspunsul (corect) pentru P.
Definitie
Problema de decizie P se numeste NP-dificila (NP-hard) daca oriceproblema din NP se reduce polinomial la P.
Definitie
Problema de decizie P se numeste NP-completa daca esteNP-dificila si ın plus apartine la NP.
37 / 47
![Page 38: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/38.jpg)
ELEMENTE INTRODUCTIVE DE COMPLEXITATE
Garey and Johnson, Computers and Intractability, 1979.
38 / 47
![Page 39: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/39.jpg)
ELEMENTE INTRODUCTIVE DE COMPLEXITATE
Garey and Johnson, Computers and Intractability, 1979.
39 / 47
![Page 40: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/40.jpg)
ELEMENTE INTRODUCTIVE DE COMPLEXITATE
Garey and Johnson, Computers and Intractability, 1979.
40 / 47
![Page 41: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/41.jpg)
PROBLEMELE PENTRU SEMINARUL 1
1
Fie a, b ∈ N. Demonstrati ca na = O(nb) daca si numai dacaa ≤ b. Demonstrati ca na = O(en) si ca nu are loc en = O(na)(e este baza logaritmului natural).
2
Argumentati o evaluare de tipul T (n) = Θ(.) pentru timpul deexecutie a algoritmului:
Suma Tripla (n)s ← 0for i = 1, n do
for j = i , n dofor k = j , n do
s ← s + 1
41 / 47
![Page 42: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/42.jpg)
PROBLEMELE PENTRU SEMINARUL 1
3
Consideram urmatoarele doua functii:
F(n)if (n = 1) return true
else return G (n − 1)
G(n)if (n = 1) return false
else return F (n − 1)
Stabiliti si argumentati valorile F (2012) si G (2013).
42 / 47
![Page 43: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/43.jpg)
PROBLEMELE PENTRU SEMINARUL 1
3’
Se dispune de un fisier de intrare cu n ınregistrari. Primaınregistrare contine numarul n, celelalte n − 1 contin fiecare unnumar din multimea {1, 2, . . . , n}. Daca aceste ultime n − 1ınregistrari contin numere distincte, rezulta ca exact unul dintrenumerele 1, 2, . . . , n lipseste.
Descrieti un algoritm eficient care sa determine numarul lipsa. (npoate fi foarte mare!)
Aveti o solutie si pentru cazul ın care lipsesc exact doua numere?
43 / 47
![Page 44: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/44.jpg)
PROBLEMELE PENTRU SEMINARUL 1
4
Pentru ınmultirea a doua numere ıntregi se poate folosi algoritmul descrismai jos prin doua exemple. Se observa ca operatiile efectuate sunt doarınmultirea cu doi, ımpartirea ıntreaga la doi si adunarea numerelor ıntregi.
48 × 17 29 × 13548 17 29 13524 34 14 27012 68 7 5406 136 3 10803 272 1 21601 544 ==========
============== 3915816
(se aduna numerele de pe coloana 2 care au pe coloana 1 numere impare)
Scrieti o functie recursiva pentru produsul a doua numere ıntregi care sacorespunda acestui algoritm si demonstrati-i corectitudinea. Stabiliticomplexitatea timp T (n) pentru aceasta functie (n este numarul bitilornecesari reprezentarii binare a fiecaruia dintre cei doi factori).
44 / 47
![Page 45: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/45.jpg)
PROBLEMELE PENTRU SEMINARUL 1
5
a) Infasuratoarea convexa a n puncte Pi (xi , yi ), i = 1, n din plan,este cel mai mic poligon convex (ın raport cu incluziunea) carecontine toate cele n puncte. Demonstrati ca daca dispunem de unalgoritm care sa determine varfurile ınfasuratoarei convexe a npuncte date cu complexitatea timp T (n) atunci putem sorta unvector ıntreg n-dimensional ın timpul T (n).
b) Dati doua exemple de algoritmi de sortare. Ce complexitate au ?
45 / 47
![Page 46: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/46.jpg)
PROBLEMELE PENTRU SEMINARUL 1
6
Numim pin un arbore cu macar trei noduri cu proprietatea caunicul vecin al oricarei frunze (nod cu un singur vecin) are exactdoi vecini. Pentru un arbore T cu cel putin trei noduri, notam cupin(T ) subarborele lui T care este pin si are numar maxim denoduri.Descrieti un algoritm care, pentru T dat, construieste pin(T ).
Un pin
Arborele T
Pin(T)
Arborele T
Pin(T)
46 / 47
![Page 47: Algoritmica Grafurilor](https://reader034.vdocuments.pub/reader034/viewer/2022050623/55cf99a5550346d0339e750f/html5/thumbnails/47.jpg)
INTREBARI ?
Multumesc!
47 / 47