˝ Global fejlodése Újítások Összegzés
GlobalJ bemutatása Bánhelyi Balázs, Lévai Balázs, Zombori Dániel, Pál László és Csendes Tibor SZTE-TTIK Számítógépes Optimalizálás Tanszék
Cegléd, 2017. június 15.
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Motiváció Moduláris Global
Vázlat 1
˝ Global fejlodése Motiváció Moduláris Global
2
Újítások Klaszterezo˝ modul Párhuzamosítás
3
Összegzés Az elkészült moduklok Publikációk
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Motiváció Moduláris Global
Motiváció A Global egy sztochasztikus klaszterezésen alapuló optimalizáló eljárás. Korábban elérheto˝ volt Fortan, C illetve Matlab-os változata is. ˝ a Matlab a legkezesebb, de Felhasználói szemszögbol ˝ egyik változat sem könnyen fejlesztheto. A Java-ra való átírás indokai: ˝ ˝ A hatékonyabb optimalizálás és bovíthet oség érdekében egy objektumorientált megvalósítás kívánkozott már. A párhuzamosítási terveinket is jól támogatja ez a nyelv, mind a több gépes, mind a több magos változatoknál ˝ (a CUDA-s technológiát elvetettük egyenlore). A jelenlegi feladatainkhoz is kiválóan illeszkedik. Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Motiváció Moduláris Global
Eredeti Global algoritmus ˝ a Az eredeti algoritmusban is már jól felismerhetoek modulok. A Global 2 nagyobb modulja a Klaszterezo˝ és a Lokális ˝ kereso. Ezek szoros együttmuködése ˝ teszi hatékonnyá. Global Clustered sample points
Clustering optimum and starting point
Yes
Local search
Unclustered sample points
Start Sample point generation
Clustering samples points
Unclustered sample points
Met termination conditions?
No
No
Bánhelyi Balázs
End
Unclustered points remained?
GlobalJ bemutatása
Yes
˝ Global fejlodése Újítások Összegzés
Motiváció Moduláris Global
Eredeti és az új Global algoritmus Global Clustered sample points
Clustering optimum and starting point
Yes
Local search
Unclustered sample points
Start Sample point generation
Clustering samples points
End
Unclustered points remained?
Unclustered sample points
Met termination conditions?
No
Yes
No
Global
Clustering module
Local search module
Clustered sample points Local search
Local optima
Store sample points
Yes Start
Clustering samples points
Sample point generation
End
Remained unclustered sample points?
No
Met termination conditions? Yes
Unclustered sample points
No
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
Vázlat 1
˝ Global fejlodése Motiváció Moduláris Global
2
Újítások Klaszterezo˝ modul Párhuzamosítás
3
Összegzés Az elkészült moduklok Publikációk
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
A régi klaszterezo˝ modul Az eredeti verzióban a klaszterezo˝ szerves része volt a Globalnak. Modulba kiszervezve sokkal hatékonyabban hívhatóvá vált. Továbbá az elemek nyilvántartása is függetlenné vált a Global mintapontjaitól. Yes
Start
Clustering
Unclustered points remained?
No
Local search
Clustering optimum and start point
Yes
Had success?
Create new cluster
End
Bánhelyi Balázs
GlobalJ bemutatása
No
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
Az eredeti és az új klaszterezo˝ modul Yes
Start
Clustering
Local search
Clustering optimum and start point
Yes
Had success?
Unclustered points remained?
No
Create new cluster
No
End
Yes
Start
Clustering
Local search
Unclustered points remained?
No
Clustering optimum and start point
Had success?
End No Yes
Create new cluster
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
Az új klaszterezo˝ modul
Yes
Start
Clustering
Local search
Unclustered points remained?
No
Clustering optimum and start point
Had success?
End No Yes
Create new cluster
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
˝ Az új klaszterezo˝ modul elonye 2. Cluster
1. Local search from A
v
[
A
A
[
[ B
3. Local search from B
B
4. Cluster
v
[
A
A
[ [
[ [
B
Bánhelyi Balázs
GlobalJ bemutatása
B
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
˝ Az új klaszterezo˝ elonye számokban Teszt függvény bra cam eas gpr hm3 hm6 ros10 ros2 ros5 sh10 sh5 sh7 shu zakh5
MATLAB kiért. 642 574 1429 618 2187 12045 1550561 3952 272051 1665 1228 1429 1184 4100
Klaszt. paraméter 0.000001 0.00001 0.0001 0.000001 0.000001 0.000001 0.000001 0.000001 0.000001 0.0001 0.000001 0.0001 0.000001 0.000001
Bánhelyi Balázs
Melyik a jobb > < > > < > > > > < < < > >
JAVA kiért. 547 586 1281 574 2418 11544 949114 1483 106765 1925 1258 1655 1168 1100
GlobalJ bemutatása
Klaszt. paraméter 0,01 0,001 0,7 0,001 0,001 0,001 0,001 0,01 0,001 0,8 0,5 0,7 0,001 0,001
Százalékosan 85% 102% 90% 93% 111% 96% 61% 38% 39% 116% 102% 116% 99% 27%
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
˝ A Global párhuzamosítás lehetoségei ˝ A Global egy erosen szekvenciális algoritmus. Ennek ellenére látszik, hogy milyen állapotban mit kell csinálni. Így egy feladat prioritásos rendszert vezettünk be: A legnagyobb prioritás a lokális keresés, ha van lokális keresésre választott indulási minta. Sajnos általában a ˝ még erosebben ˝ lokális keresok szekvenciális algoritmusok, mint a Global. Párhuzamosításuk nehézkes. Nem hasznos. ˝ Klaszterezés, melynek megvan a lehetosége hatékonyan párhuzamosítani. Itt az eredeti klaszter-minta bejárást megváltoztattuk minta-klaszter bejárásra. Így kevesebb ütközés volt. De az újonnan létrejövo˝ klaszter minták miatt ˝ egy mutatóval is bovíteni kellett az eljárást. Minta generálás. Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
A PGlobal muködése ˝ SerializedGlobal parallel worker module Serialized clustering module Local search origins
Yes
Clusters
Unclustered points remained?
Start
Clusterize optimum
Local search
Clustered samples
Clusterization cleanup End
Yes
Clusterize samples
Maximum number of iterations exceeded?
Yes
No Clusterization is active?
Prepare for clusterization
Clusterization is allowed?
No Enough samples for clusterization?
Select samples for clusterization
Sample point generation No
New samples can be generated?
Generated samples
Bánhelyi Balázs
GlobalJ bemutatása
Unclustered samples
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
A SerializedClasterizer muködése ˝ Load resources and init variables while clusterizer is inactive
Start clusterizing local optimum
Start clusterizing samples
Compare optimum
Find cluster for sample
No
Yes Yes
Found cluster?
Found cluster?
No
Compare optimum
Put sample into cluster
Release sample
Meet stop criteria?
Meet stop criteria?
Yes No
Put sample into cluster
Found cluster?
No
No
Yes
Yes Create new cluster
Stop clusterizer
Stop clusterizer
Thread exits clusterizer
Thread exits clusterizer Mutex
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Klaszterezo˝ modul Párhuzamosítás
˝ Az párhuzamos algoritmus elonye számokban
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Az elkészült moduklok Publikációk
Vázlat 1
˝ Global fejlodése Motiváció Moduláris Global
2
Újítások Klaszterezo˝ modul Párhuzamosítás
3
Összegzés Az elkészült moduklok Publikációk
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Az elkészült moduklok Publikációk
Az elkészült moduklok Gloabal Global (Lévai Balázs) PGlobal (Zombori Dániel)
˝ Klaszterezok Clusterizer (Lévai Balázs) SerializedClusterizer (Zombori Dániel)
˝ Lokális Keresok Unirandi (Lévai Balázs) BFGS (Zombori Dániel) NUnirandi (Mester Abigél) UnirandiCLS, Rosenbrock, NUnirandiCLS, (Mester Abigél)
Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Az elkészült moduklok Publikációk
Publikációk Csendes, T.: Nonlinear parameter estimation by global optimizationefficiency and reliability. Acta Cybernetica, 8, 361-370, (1988) Tibor Csendes, László Pál, J. Oscar H. Sendín, Julio R. Banga: The GLOBAL Optimization Method Revisited. Optimization Letters 2(2008) 445-454. Pál, L., Csendes, T., Markót, M., Neumaier, A.: Black-box optimization benchmarking of the GLOBAL method. Evolutionary Computation, 20, 609-639, (2012) Pál, L.: Empirical study of the improved UNIRANDI local search method. Cent. Eur. J. Oper. Res., doi:10.1007/s10100-017-0470-2, (2017) Csendes, T., Garay, B.M., Banhelyi, B.: A verified optimization technique to locate chaotic regions of Hénon systems. J. of Global Optimization, 35, 145–160, (2006) Bánhelyi Balázs
GlobalJ bemutatása
˝ Global fejlodése Újítások Összegzés
Az elkészült moduklok Publikációk
Publikációk A. Szenes, B. Banhelyi, L. Zs. Szabo, G. Szabo, T.Csendes, M. Csete. Improved emission of SiV diamond color centers embedded into concave plasmonic core-shell nanoresonators, Scientific Reports (Nature Research journals’), Közlésre Beküldve 2017 A. Szalai, E. Tóth, A. Somogyi, A. Szenes, B. Bánhelyi, E. Csapó, I. Dékány, T. Csendes, M. Csete. Detection of biomolecules and bioconjugates by monitoring rotated grating-coupled surface plasmon resonance BIOMEDICAL OPTICS EXPRES, Közlésre beküldve.2017 András Szenes, Balázs Bánhelyi, Lóránt Zsolt Szabó, Gábor Szabó, Tibor Csendes, Mária Csete Enhancing diamond color center fluorescence via optimized plasmonic nanorod configuration PLASMONICS (IF2016: 2.146) Közlésre elfogadva, 2016 Bánhelyi Balázs GlobalJ bemutatása M Csete, A Szenes, D Maráczi, B Bánhelyi, T Csendes, G