Hledání rybí školy - Fish School Search - Wikipedia
Hledání rybí školy (FSS), kterou v roce 2007 navrhli Bastos Filho a Lima Neto, je v základní verzi[1] unimodální optimalizační algoritmus inspirovaný kolektivním chováním ryb. Mechanismy krmení a koordinovaný pohyb byly použity jako inspirace k vytvoření operátorů vyhledávání. Základní myšlenkou je přimět ryby „plavat“ směrem k pozitivnímu gradientu, aby „jedly“ a „přibraly na váze“. Kolektivně jsou těžší ryby více ovlivňovány v procesu vyhledávání jako celku, což způsobí, že se barycentrum rybářské školy přesune na lepší místa ve vyhledávacím prostoru přes iterace.[2]
FSS používá následující principy:[3]
- Jednoduché výpočty u všech jedinců (tj. Ryb)
- Různé způsoby ukládání informací (tj. Hmotnosti ryb a školního barycentra)
- Místní výpočty (tj. Plavání se skládá z odlišných komponent)
- Nízká komunikace mezi sousedními jednotlivci (tj. Ryby mají myslet na místní úroveň, ale také být společensky uvědomělé)
- Minimální centralizované řízení (hlavně pro vlastní kontrolu poloměru školy)
- Některé odlišné mechanismy rozmanitosti (aby se zabránilo nežádoucímu chování při hromadění)
- Škálovatelnost (z hlediska složitosti optimalizačních / vyhledávacích úkolů)
- Autonomie (tj. Schopnost sebeovládání fungovat)
Algoritmus
FSS je populační vyhledávací algoritmus inspirovaný chováním plaveckých ryb, které se při hledání potravy rozšiřují a smršťují. Každá ryba -dimenzionální umístění představuje možné řešení problému optimalizace. Algoritmus využívá váhy pro všechny ryby, což představuje kumulativní záznam o tom, jak úspěšné bylo hledání každé ryby ve škole. FSS se skládá z operátorů krmení a pohybu, přičemž tyto operátory jsou rozděleny do tří dílčích složek, kterými jsou:[4]
Jednotlivá složka pohybu
Každá ryba ve škole provede místní vyhledávání a hledá ve vyhledávacím prostoru slibné regiony. Provádí se, jak je znázorněno níže:
kde a představují polohu ryby před a po jednotlivých operátorech pohybu. je rovnoměrně rozložené náhodné číslo pohybující se od -1 do 1 a je parametr, který definuje maximální posunutí pro tento pohyb. Nová pozice je akceptováno, pouze pokud se kondice ryb zlepšuje se změnou polohy. Pokud tomu tak není, zůstane ryba ve stejné poloze a .
Kolektivně instinktivní složka hnutí
Průměr jednotlivých pohybů se vypočítá na základě následujícího:
Vektor představuje vážený průměr posunutí každé ryby. To znamená, že ryby, které zaznamenaly vyšší zlepšení, přilákají ryby do své polohy. Po vektoru při výpočtu bude každá ryba povzbuzována k pohybu podle:
Kolektivně-volitivní složka hnutí
Tento operátor se používá k regulaci průzkumné / vykořisťovatelské schopnosti školy během procesu vyhledávání. Za prvé, barycentrum školy se počítá na základě pozice a váha každé ryby:
a pak, pokud je celková hmotnost školy se zvýšil z poslední na aktuální iteraci, ryby jsou přitahovány k barycentru podle rovnice A. Pokud se celková školní hmotnost nezlepší, ryby se rozšíří od barycentra podle rovnice B:
Rov. A:
Rov. B:
kde definuje velikost maximálního posunutí provedeného s použitím tohoto operátoru. je euklidovská vzdálenost mezi rybami pozice a školní barycentrum. je rovnoměrně rozložené náhodné číslo pohybující se od 0 do 1.
Kromě operátorů pohybu byl definován také operátor krmení používaný k aktualizaci hmotnosti každé ryby podle:
kde je hmotnostní parametr pro ryby , je variace kondice mezi poslední a novou pozicí a představuje maximální absolutní hodnotu variace kondice u všech ryb ve škole. se může lišit pouze od 1 do , což je uživatelsky definovaný atribut. Váhy všech ryb se inicializují s hodnotou .
Pseudokód pro FSS
- Inicializujte uživatelské parametry
- Inicializujte pozice ryb náhodně
- pokud není splněna podmínka zastavení
- Vypočítejte kondici pro každou rybu
- Spusťte individuální pohyb operátora
- Vypočítejte kondici pro každou rybu
- Spusťte operátora krmení
- Spusťte operátor kolektivně instinktivního pohybu
- Spusťte operátor kolektivního volitivního pohybu
- skončit chvíli
Parametry a rozpadat se lineárně podle:
a podobně:
kde a jsou uživatelem definované počáteční hodnoty pro a , resp. je maximální počet iterací povolených v procesu vyhledávání.
Varianty FSS
dFSS (Hustota založená na rybí škole)
Tato verze vyniká pro multimodální hyper-dimenzionální funkce. Zahrnuje úpravy u předchozích operátorů: Krmení a Plavání a také nové: Operátory paměti a oddílů. Poslední dva byli představeni, aby vysvětlili rozdělení hlavní školy na podskupiny. Některé změny byly také zahrnuty do podmínek zastavení, které nyní také musí brát v úvahu zahřátí.[5]
wFSS (Weight Based Fish School Search)
wFSS je váhová specializovaná verze FSS určená k výrobě více řešení. Strategie specializace je založena na novém operátoru s názvem link formator. Tento operátor se používá k definování vůdců pro ryby za účelem vytvoření sub-škol.[6]
FSS-SAR (Stagnation Avoidance Routine Fish School Search)
V původní verzi algoritmu je jednotlivé pohybové složce povoleno pohybovat rybou pouze v případě, že zlepšuje kondici. Ve velmi plynulém vyhledávacím prostoru by však bylo mnoho pohyblivých pokusů bez úspěchu a algoritmus by se nemohl sblížit. K vyřešení těchto problémů byl zaveden parametr X, pro který 0 <= X <= 1 v jednotlivé složce pohyb. X se exponenciálně rozpadá spolu s iteracemi a měří pravděpodobnost zhoršení příspěvku pro každou rybu. To znamená, že pokaždé, když se ryba pokusí přesunout do polohy, která nezlepšuje její kondici, je vybráno náhodné číslo a pokud je menší než X, je pohyb povolen.[7]
bFSS (Binary Fish School Search)
Účelem bFSS bylo vyrovnat se s předčasnou konvergencí. Navrhuje použití binárního kódovacího schématu pro vnitřní mechanismy hledání rybí školy. Kombinoval FSS s fuzzy modelováním v obálkovém přístupu pro výběr funkcí.[8]
MOFSS (Multi-Objective Fish School Search)
V MOFSS jsou operátoři přizpůsobeni k řešení víceobjektových problémů. Algoritmus nasadí externí archiv k uložení nejlepších nedominovaných řešení nalezených během procesu vyhledávání. Tento přístup byl široce používán pro různé biologicky inspirované multiobjektivní optimalizátory.[9][10] Kromě toho se řešení v externím archivu používají k vedení pohybů ryb ve verzi návrhu.[11]
Viz také
externí odkazy
Reference
- ^ C. J. A. B Filho., F. B. de Lima Neto, A. J. C. C. Lins, A. I. S. Nascimento. A M. P. Lima, "Nový vyhledávací algoritmus založený na chování rybích škol „Systems, Man and Cybernetics, SMC 2008. IEEE International Conference on, 2008, pp. 2646-2651.
- ^ de Lima Neto, Fernando Buarque a Marcelo Gomes Pereira de Lacerda. "Alimitmy vyhledávání multimodální rybí školy založené na místních informacích pro rozdělení školy "Kongres BRICS 2013 o výpočetní inteligenci a 11. brazilský kongres výpočetní inteligence. IEEE, 2013
- ^ http://www.fbln.pro.br/fss/
- ^ J. B. Monteiro, I. M. C. Albuquerque, F. B. L. Neto a F. V. S. Ferreira, “Optimalizace funkcí více plató s FSS-SAR (rutina vyhýbání se stagnaci), “Odesláno do IEEE Symposium Series on Computational Intelligence, 2016.
- ^ Madeiro, S. S., de Lima-Neto, F. B., Bastos-Filho, C. J. A., & do Nascimento Figueiredo, E. M. (2011, červen). Hustota jako segregační mechanismus ve škole ryb hledá problémy multimodální optimalizace. In International Conference in Swarm Intelligence (str. 563-572). Springer Berlin Heidelberg.
- ^ F. Buarque De Lima Neto a M. Gomes Pereira de Lacerda, “Váha založená na rybí škole, “V Systems, Man and Cybernetics (SMC), 2014 IEEE International Conference on. IEEE, 2014, s. 270–277.
- ^ J. B. Monteiro, I. M. C. Albuquerque, F. B. L. Neto a F. V. S. Ferreira, “Optimalizace funkcí více plató s FSS-SAR (rutina vyhýbání se stagnaci), “Odesláno do IEEE Symposium Series on Computational Intelligence, 2016.
- ^ Sargo, João AG a kol. "Při výběru funkcí bylo použito vyhledávání binárních ryb ve škole: Aplikace na readmisích na JIP „Mezinárodní konference IEEE 2014 o fuzzy systémech (FUZZ-IEEE). IEEE, 2014.
- ^ Deb, K., Thiele, L., Laumanns, M., & Zitzler, E. (2002) Škálovatelné víceúčelové optimalizační testovací problémy „In: IEEE Congress on Evolutionary Computation (str. 825–830).
- ^ Nebro, A. J., Durillo, J. J., Garça-Nieto, J., CoelloCoello, C. A., Luna, F., & Alba, E. (2009) SMPSO: Nová metaheuristika založená na PSO pro optimalizaci více cílů „In: IEEE Symposium on Computational Intelligence in Multicriteria Decision-Making (pp. 66–73). doi: 10,1109 / MCDM.2009.4938830
- ^ Bastos-Filho, Carmelo JA a Augusto CS Guimarães. "Víceúčelové hledání rybí školy. “International Journal of Swarm Intelligence Research (IJSIR) 6.1 (2015): 23-40.