2 dalis - techmat.vgtu.lt
2 dalis - techmat.vgtu.lt
2 dalis - techmat.vgtu.lt
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Algoritmų sudarymo principai ir metodai<br />
Variantų perrinkimas ir rekursijos metodas<br />
Skaldyk ir valdyk metodas<br />
Šakų ir rėžių metodas<br />
Dinaminio programavimo metodas<br />
Euristikos ir godieji algorimai<br />
2. Rėžių apskaičiavimo (angl. bounding) žingsnis.<br />
Algoritme turime apibrėžti, kaip efektyviai apskaičiuoti<br />
funkcijos f (X) minimumo srityje D i apatinį LB(f , D i ) ir<br />
viršutinį UB(f , D i ) rėžius:<br />
LB(f , D i ) ≤ min<br />
X∈D i<br />
f (X) ≤ UB(f , D i ).<br />
Tada, žinodami UB(f , D i ), galime apskaičiuoti minimalios<br />
reikšmės f (X 0 ) viršutinį rėžį UB(f , D) visoje aibėje D:<br />
UB(f , D) = min<br />
1≤i≤m UB(f , D i).<br />
Žinodami šiuos rėžius, dažnai galime gerokai sumažinti<br />
nagrinėjamų sričių skaičių. Jeigu srityje D i apatinis f (X)<br />
reikšmių rėžis LB(f , D i ) yra didesnis už UB(f , D):<br />
LB(f , D i ) > UB(f , D), tai tokios srities toliau nebetiriame, nes<br />
joje tikrai nėra optimalaus sprendinio.<br />
doc. dr. Vadimas Starikovičius<br />
Algoritmų analizės specialieji skyriai