SlideShare a Scribd company logo
1 of 12
Metoda GreedyMetoda Greedy
Tehnica GreedyTehnica Greedy
Este o optiune ce tine de specificul problemei cu implicatii asupra
complexitatii. Se bazeaza pe statistica datelor de la intrare din care
se extrag caracteristici ale datelor=>alegerea strategiei.
Strategia Greedy=strategia in care optimul local se considera
optim general. Este o strategie constructiva prin adaugarea treptata
de solutii locale care construiesc solutia
finala.Problema=problemele locale care dau solutii ce se
asambleaza in solutia finala. Obs: cand strategia nu duce la o
solutie(in cazul neliniaritatilor)
Se da o multime A si se cere (B inclus in A) care are criteriile
obligatorii si se cer si criteriile de optimalitate
neobligatorii.Solutia este de a alege un elem. din A succesiv care
maximalizeaza optimalitatea in momentul alegerii lui=>se
construieste B prin respectarea criteriilor obligatorii.Solutiile cu
ajutorul alg. Dextra.
Metode de instruire folositeMetode de instruire folosite
•Conversatia euristica
•Observatia participativa
•Expunerea
•Invatarea prin descoperire dirijata
•Metoda orientata pe exemple si pe rezolvarea de exercitii in
laborator
•Modelarea matematica
•Instruirea asistata de calculator
Problemele au urmatoarea structura:
- Se da o multime A={a1 a2, …, an}
- Se cere sa determinam o submultime B a multimii A,
care indeplineste anumite conditii pentru a fi acceptata
in calitate de solutie.
- tehnica Greedy poate fi privită ca un caz particular al
tehnicii Backtracking, în care se renunţă la mecanismul de
întoarcere;
- ambele tehnici oferă soluţii sub formă de vector;
-tehnica Backtracking poate oferi toate soluţiile problemei,
în timp ce tehnica Greedy oferă o singură soluţie;
-tehnica Greedy nu dispune de mecanimul întoarcerii,
specific tehnicii Backtracking.
Greedy - Backtracking
- tehnica Greedy conduce mai repede la o solutie.
- problemele de tip Greedy pot fi rezolvate prin metoda
trierii , generînd consecutiv cele 2n
submulîimi ale mulţimii A;
-Dezavantajul metodei trierii constă în faptul că timpul cerut
pentru executarea algoritmului respectiv este foarte mare.
Greedy – Metoda trierii
·        Pentru a rezolva o problemă cu Greedy, soluţia
se construieşte, după regula:
Pentru fiecare element care urmeză să fie adăugat
soluţiei finale, se efectuează o alegere a sa din elementele
mulţimii A (după un mecanism specific fiecărei probleme
în parte), iar dacă este posibil, aceasta este adăugat.
Algoritmul se termină fie cînd a fost găsită soluţia cerută,
fie cînd s-a constatat inexistenţa acesteia.
Pentru a evita trierea tuturor submultimilor
multimii A în metoda Greedy se utilizează un criteriu (o
regulă) care asigură alegerea directă a elementelor
necesare.
De obicei regulile de selecţie nu sunt indicate în mod explicit în condiţia problemei si
totul depinde de ingeniozitatea programatorului.
Schema generală a unui algoritm bazat pe metoda
Greedy:
While ExistaElemente do
begin
AlegeUnElement(x);
IncludeElementul(x)
end.
Nu tuturor problemelor li se pot aplica algoritmi de
tip Greedy.
Pentru problemele pentru care nu se cunosc
algoritmi care necesită timp polinomial, se caută
soliţii, chiar dacă nu optime, atunci apropiate de
acestea, dar care au fost obţinute în timp util.
Multe din aceste soliţii sunt obţinute cu Greedy.
Astfel de agoritmi se numesc algoritmi euristici.
Metoda Greedy are două componente:
- stabilirea soluţiei de început;
- optimizarea acesteia.
Să luăm un exemplu concret , pe baza căruia vom ilustra cum se
‘’construieşte’’ soluţia.
Fie secvenţa :
8, 7, 8, 4, 9, 7, 5, 5, 4, 8, 7, 5, 9.
Deoarece A (1) este 8, nefiind număr prim se porneşte cu soluţia iniţială
S:=0 (dacă A (1) ar fi fost număr prim, am fi pornit cu soluţia s:=A(1)).
Apoi valorile lui S vor fi:
S:=0
S:=0+7=7
S:=7+5=12
De remarcat caracterul constructiv al soluţiei. Un termen curent (fie acesta
A( i )) contribuie la valoarea lui S dacă îndeplineşte două condiţii :
- este un număr prim;
- n-a mai fost utilizat.
Dacă in prealabil ordonăm crescător secvenţa considerată obţinem:
4, 4, 5, 5, 5, 7, 7, 7, 8, 8, 8, 9, 9
şi astfel se “vede’’ mult mai uşor repetabilitatea unui numar prim( faţă de
situaţia iniţială când pentru a constata dacă un număr prim a fost sau nu
utilizat trebuie să parcurgem întreaga secvenţă de fiecare dată ).
Pe baza afirmaţiilor anterioare rezultă un model de rezolvare pentru problema
propusă, model care dă structura generală a metodei Greedy :
Citire ( n , A);
Ordonare ( n , A );
If A [1] = NumarPrim Then S := A[1]
Else S:=0;
I := 2;
While I ≤ n do
begin
If (A[ I] <> A(I-1) )and (A [I] =Numarprim ) Then S := S +A [I]
I := I+1;
End;
Tehnica Greedy conduce la timp de calcul
polinomial.
Motivul care conduce la acest timp de calcul, tine de
mecanismul tehnicii.
Să presupunem că mulţimea din care se face alegerea are n
elemente si că soluţia are tot n elemente (caz maxim). Se fac n alegeri, la
fiecare alegere se fac n teste, rezulta un algoritm cu timp O(n2
).
De multe ori este necesar ca elementele mulţimii A să fie sortate,
pentru ca apoi să alegem din acestea, iar sortarea necesita un timp minim
O(n * log2n). Insă sortarea se efectuează la început. Prin urmare, acest
timp se adună, deci nu influenţează rezultatul.

More Related Content

What's hot

Formule matematice cls. v viii
Formule matematice cls. v viiiFormule matematice cls. v viii
Formule matematice cls. v viiiGherghescu Gabriel
 
Willie wiggle worm_worksheet
Willie wiggle worm_worksheetWillie wiggle worm_worksheet
Willie wiggle worm_worksheetnavajomath
 
Разбор задач по дискретной вероятности
Разбор задач по дискретной вероятностиРазбор задач по дискретной вероятности
Разбор задач по дискретной вероятностиDEVTYPE
 
Diabolic Str8ts #6, #7, and #9
Diabolic Str8ts #6, #7, and #9Diabolic Str8ts #6, #7, and #9
Diabolic Str8ts #6, #7, and #9SlowThinker
 
Diabolic Str8ts #3 and Weekly Extreme #63 - Solution
Diabolic Str8ts #3 and Weekly Extreme #63 - SolutionDiabolic Str8ts #3 and Weekly Extreme #63 - Solution
Diabolic Str8ts #3 and Weekly Extreme #63 - SolutionSlowThinker
 
Chuyên đề phương trình chứa căn thức bookbooming
Chuyên đề phương trình chứa căn thức   bookboomingChuyên đề phương trình chứa căn thức   bookbooming
Chuyên đề phương trình chứa căn thức bookboomingThế Giới Tinh Hoa
 
Str8ts Weekly Extreme #67 - Solution
Str8ts Weekly Extreme #67 - Solution Str8ts Weekly Extreme #67 - Solution
Str8ts Weekly Extreme #67 - Solution SlowThinker
 
9 phương pháp giải pt nghiệm nguyên
9 phương pháp giải pt nghiệm nguyên9 phương pháp giải pt nghiệm nguyên
9 phương pháp giải pt nghiệm nguyênCảnh
 
Lec 5 asymptotic notations and recurrences
Lec 5 asymptotic notations and recurrencesLec 5 asymptotic notations and recurrences
Lec 5 asymptotic notations and recurrencesAnkita Karia
 
Visible learning- principii si tehnici promovate, aplicabile la nivel prescolar
Visible learning- principii si tehnici promovate, aplicabile la nivel prescolarVisible learning- principii si tehnici promovate, aplicabile la nivel prescolar
Visible learning- principii si tehnici promovate, aplicabile la nivel prescolarGradinita Dumbrava minunata
 
Bellmanford . montaser hamza.iraq
Bellmanford . montaser hamza.iraqBellmanford . montaser hamza.iraq
Bellmanford . montaser hamza.iraqmontaser185
 

What's hot (20)

Graph
GraphGraph
Graph
 
Formule matematice cls. v viii
Formule matematice cls. v viiiFormule matematice cls. v viii
Formule matematice cls. v viii
 
Willie wiggle worm_worksheet
Willie wiggle worm_worksheetWillie wiggle worm_worksheet
Willie wiggle worm_worksheet
 
Разбор задач по дискретной вероятности
Разбор задач по дискретной вероятностиРазбор задач по дискретной вероятности
Разбор задач по дискретной вероятности
 
Diabolic Str8ts #6, #7, and #9
Diabolic Str8ts #6, #7, and #9Diabolic Str8ts #6, #7, and #9
Diabolic Str8ts #6, #7, and #9
 
Diabolic Str8ts #3 and Weekly Extreme #63 - Solution
Diabolic Str8ts #3 and Weekly Extreme #63 - SolutionDiabolic Str8ts #3 and Weekly Extreme #63 - Solution
Diabolic Str8ts #3 and Weekly Extreme #63 - Solution
 
Identidades trigonometricas
Identidades trigonometricasIdentidades trigonometricas
Identidades trigonometricas
 
Chuyên đề phương trình chứa căn thức bookbooming
Chuyên đề phương trình chứa căn thức   bookboomingChuyên đề phương trình chứa căn thức   bookbooming
Chuyên đề phương trình chứa căn thức bookbooming
 
Str8ts Weekly Extreme #67 - Solution
Str8ts Weekly Extreme #67 - Solution Str8ts Weekly Extreme #67 - Solution
Str8ts Weekly Extreme #67 - Solution
 
9 phương pháp giải pt nghiệm nguyên
9 phương pháp giải pt nghiệm nguyên9 phương pháp giải pt nghiệm nguyên
9 phương pháp giải pt nghiệm nguyên
 
Logarithm exercise
Logarithm exerciseLogarithm exercise
Logarithm exercise
 
Greedy algorithms
Greedy algorithmsGreedy algorithms
Greedy algorithms
 
Prova matematica 8º e 9º ano 2012
Prova matematica 8º e 9º ano 2012Prova matematica 8º e 9º ano 2012
Prova matematica 8º e 9º ano 2012
 
Lec 5 asymptotic notations and recurrences
Lec 5 asymptotic notations and recurrencesLec 5 asymptotic notations and recurrences
Lec 5 asymptotic notations and recurrences
 
L ista de exercícios operacoes com monômios
L ista de exercícios   operacoes com monômiosL ista de exercícios   operacoes com monômios
L ista de exercícios operacoes com monômios
 
Graph coloring
Graph coloringGraph coloring
Graph coloring
 
Visible learning- principii si tehnici promovate, aplicabile la nivel prescolar
Visible learning- principii si tehnici promovate, aplicabile la nivel prescolarVisible learning- principii si tehnici promovate, aplicabile la nivel prescolar
Visible learning- principii si tehnici promovate, aplicabile la nivel prescolar
 
Bellmanford . montaser hamza.iraq
Bellmanford . montaser hamza.iraqBellmanford . montaser hamza.iraq
Bellmanford . montaser hamza.iraq
 
Euler graph
Euler graphEuler graph
Euler graph
 
matematica
matematica matematica
matematica
 

Viewers also liked (14)

Tehnici de programare_triere_1522
Tehnici de programare_triere_1522Tehnici de programare_triere_1522
Tehnici de programare_triere_1522
 
Metoda greedy
Metoda greedyMetoda greedy
Metoda greedy
 
Informatica metoda trierii
Informatica metoda trieriiInformatica metoda trierii
Informatica metoda trierii
 
Marandici constantin ( tehnica greedy)
Marandici constantin ( tehnica greedy)Marandici constantin ( tehnica greedy)
Marandici constantin ( tehnica greedy)
 
Greedy
GreedyGreedy
Greedy
 
Informat
InformatInformat
Informat
 
Hurmuzachii vlad
Hurmuzachii vladHurmuzachii vlad
Hurmuzachii vlad
 
!Inofrmatica
!Inofrmatica!Inofrmatica
!Inofrmatica
 
Tehnica greedy
Tehnica greedyTehnica greedy
Tehnica greedy
 
Metoda trieii..alina
Metoda trieii..alinaMetoda trieii..alina
Metoda trieii..alina
 
Metoda
Metoda Metoda
Metoda
 
MT
MTMT
MT
 
Daria
DariaDaria
Daria
 
Metoda trierii(1)
Metoda trierii(1)Metoda trierii(1)
Metoda trierii(1)
 

Similar to Metoda Greedy (14)

Tehnica greedy(1)
Tehnica greedy(1)Tehnica greedy(1)
Tehnica greedy(1)
 
Metoda greedy (1)
Metoda greedy (1)Metoda greedy (1)
Metoda greedy (1)
 
Informatica
InformaticaInformatica
Informatica
 
Metoda greedy
Metoda greedyMetoda greedy
Metoda greedy
 
Metoda programarii dinamice
Metoda programarii dinamiceMetoda programarii dinamice
Metoda programarii dinamice
 
Metoda greedy informatica
Metoda greedy informaticaMetoda greedy informatica
Metoda greedy informatica
 
Metoda greedy223
Metoda greedy223Metoda greedy223
Metoda greedy223
 
Dinu(2)
Dinu(2)Dinu(2)
Dinu(2)
 
Metoda backtracking
Metoda backtrackingMetoda backtracking
Metoda backtracking
 
Tema
TemaTema
Tema
 
Metoda greedy(1)
Metoda greedy(1)Metoda greedy(1)
Metoda greedy(1)
 
Inform
InformInform
Inform
 
Catalina metgreedy
Catalina metgreedyCatalina metgreedy
Catalina metgreedy
 
Tema2 algoritmi
Tema2 algoritmiTema2 algoritmi
Tema2 algoritmi
 

Metoda Greedy

  • 2. Tehnica GreedyTehnica Greedy Este o optiune ce tine de specificul problemei cu implicatii asupra complexitatii. Se bazeaza pe statistica datelor de la intrare din care se extrag caracteristici ale datelor=>alegerea strategiei. Strategia Greedy=strategia in care optimul local se considera optim general. Este o strategie constructiva prin adaugarea treptata de solutii locale care construiesc solutia finala.Problema=problemele locale care dau solutii ce se asambleaza in solutia finala. Obs: cand strategia nu duce la o solutie(in cazul neliniaritatilor) Se da o multime A si se cere (B inclus in A) care are criteriile obligatorii si se cer si criteriile de optimalitate neobligatorii.Solutia este de a alege un elem. din A succesiv care maximalizeaza optimalitatea in momentul alegerii lui=>se construieste B prin respectarea criteriilor obligatorii.Solutiile cu ajutorul alg. Dextra.
  • 3. Metode de instruire folositeMetode de instruire folosite •Conversatia euristica •Observatia participativa •Expunerea •Invatarea prin descoperire dirijata •Metoda orientata pe exemple si pe rezolvarea de exercitii in laborator •Modelarea matematica •Instruirea asistata de calculator
  • 4. Problemele au urmatoarea structura: - Se da o multime A={a1 a2, …, an} - Se cere sa determinam o submultime B a multimii A, care indeplineste anumite conditii pentru a fi acceptata in calitate de solutie.
  • 5. - tehnica Greedy poate fi privită ca un caz particular al tehnicii Backtracking, în care se renunţă la mecanismul de întoarcere; - ambele tehnici oferă soluţii sub formă de vector; -tehnica Backtracking poate oferi toate soluţiile problemei, în timp ce tehnica Greedy oferă o singură soluţie; -tehnica Greedy nu dispune de mecanimul întoarcerii, specific tehnicii Backtracking. Greedy - Backtracking
  • 6. - tehnica Greedy conduce mai repede la o solutie. - problemele de tip Greedy pot fi rezolvate prin metoda trierii , generînd consecutiv cele 2n submulîimi ale mulţimii A; -Dezavantajul metodei trierii constă în faptul că timpul cerut pentru executarea algoritmului respectiv este foarte mare. Greedy – Metoda trierii
  • 7. ·        Pentru a rezolva o problemă cu Greedy, soluţia se construieşte, după regula: Pentru fiecare element care urmeză să fie adăugat soluţiei finale, se efectuează o alegere a sa din elementele mulţimii A (după un mecanism specific fiecărei probleme în parte), iar dacă este posibil, aceasta este adăugat. Algoritmul se termină fie cînd a fost găsită soluţia cerută, fie cînd s-a constatat inexistenţa acesteia. Pentru a evita trierea tuturor submultimilor multimii A în metoda Greedy se utilizează un criteriu (o regulă) care asigură alegerea directă a elementelor necesare. De obicei regulile de selecţie nu sunt indicate în mod explicit în condiţia problemei si totul depinde de ingeniozitatea programatorului.
  • 8. Schema generală a unui algoritm bazat pe metoda Greedy: While ExistaElemente do begin AlegeUnElement(x); IncludeElementul(x) end.
  • 9. Nu tuturor problemelor li se pot aplica algoritmi de tip Greedy. Pentru problemele pentru care nu se cunosc algoritmi care necesită timp polinomial, se caută soliţii, chiar dacă nu optime, atunci apropiate de acestea, dar care au fost obţinute în timp util. Multe din aceste soliţii sunt obţinute cu Greedy. Astfel de agoritmi se numesc algoritmi euristici.
  • 10. Metoda Greedy are două componente: - stabilirea soluţiei de început; - optimizarea acesteia. Să luăm un exemplu concret , pe baza căruia vom ilustra cum se ‘’construieşte’’ soluţia. Fie secvenţa : 8, 7, 8, 4, 9, 7, 5, 5, 4, 8, 7, 5, 9. Deoarece A (1) este 8, nefiind număr prim se porneşte cu soluţia iniţială S:=0 (dacă A (1) ar fi fost număr prim, am fi pornit cu soluţia s:=A(1)). Apoi valorile lui S vor fi: S:=0 S:=0+7=7 S:=7+5=12 De remarcat caracterul constructiv al soluţiei. Un termen curent (fie acesta A( i )) contribuie la valoarea lui S dacă îndeplineşte două condiţii : - este un număr prim; - n-a mai fost utilizat. Dacă in prealabil ordonăm crescător secvenţa considerată obţinem: 4, 4, 5, 5, 5, 7, 7, 7, 8, 8, 8, 9, 9 şi astfel se “vede’’ mult mai uşor repetabilitatea unui numar prim( faţă de situaţia iniţială când pentru a constata dacă un număr prim a fost sau nu utilizat trebuie să parcurgem întreaga secvenţă de fiecare dată ).
  • 11. Pe baza afirmaţiilor anterioare rezultă un model de rezolvare pentru problema propusă, model care dă structura generală a metodei Greedy : Citire ( n , A); Ordonare ( n , A ); If A [1] = NumarPrim Then S := A[1] Else S:=0; I := 2; While I ≤ n do begin If (A[ I] <> A(I-1) )and (A [I] =Numarprim ) Then S := S +A [I] I := I+1; End;
  • 12. Tehnica Greedy conduce la timp de calcul polinomial. Motivul care conduce la acest timp de calcul, tine de mecanismul tehnicii. Să presupunem că mulţimea din care se face alegerea are n elemente si că soluţia are tot n elemente (caz maxim). Se fac n alegeri, la fiecare alegere se fac n teste, rezulta un algoritm cu timp O(n2 ). De multe ori este necesar ca elementele mulţimii A să fie sortate, pentru ca apoi să alegem din acestea, iar sortarea necesita un timp minim O(n * log2n). Insă sortarea se efectuează la început. Prin urmare, acest timp se adună, deci nu influenţează rezultatul.