Príklad metódy roja častíc. Metóda roja častíc

„Roj častíc“ ako najjednoduchšia metóda evolučného programovania, založená na myšlienke možnosti riešenia optimalizačných problémov modelovaním správania skupín zvierat. Schéma algoritmu, zostavenie programového kódu a vývojového diagramu.

Odoslanie dobrej práce do databázy znalostí je jednoduché. Použite nižšie uvedený formulár

Študenti, postgraduálni študenti, mladí vedci, ktorí využívajú vedomostnú základňu pri štúdiu a práci, vám budú veľmi vďační.

Hostené na http://www.allbest.ru/

Úvod

Od čias Lamarcka sa rozvoj živého sveta považuje za proces neustáleho zdokonaľovania (prispôsobovania) jedincov pod vplyvom prostredia. Modelovaním výberu najlepších plánov ako procesu evolúcie v populácii jednotlivcov je možné získať riešenie optimalizačného problému nastavením počiatočných podmienok pre evolučný proces, osídlením virtuálneho vesmíru tvormi - nosičmi informácií a špecifikovaním cieľa. evolučného procesu.

Kopírovaním akcií prírody človek vytvára stále dokonalejšie optimalizačné algoritmy. Na ich tvorbu sa najčastejšie využívajú príklady z prírody, napr.: genetický kód alebo správanie vtákov, simulácia migrácií rýb či ochladzovania kovu a pod.

V súčasnosti sú optimalizačné algoritmy široko používané vo výrobe a obchode, pretože umožňujú nielen šetriť hotovosť, ale aj čas, ktorého je neustále nedostatok.

Vo výrobe sa vďaka optimalizácii rieši veľa problémov spojených s takými vecami ako odstávka strojov, preplnenie skladu, či presmerovanie náhradných dielov na iné stroje v prípade poruchy.

Pre túto prácu bola zvolená metóda optimalizácie „roj častíc“. Algoritmus metódy je vďaka svojej jednoduchosti a rýchlosti považovaný za veľmi sľubný pre problémy plánovania.

1 . Formulácia problému

1.1 Matematický model

Metóda „roja častíc“ je najjednoduchšia metóda evolučného programovania, ktorá sa objavila v polovici 90. rokov, založená na myšlienke, že optimalizačné problémy je možné riešiť modelovaním správania skupín živočíchov. Metóda je založená na skutočnosti, že pri vytváraní kŕdľa majú vtáky tendenciu k určitému „ťažisku“, pričom postupne spomaľujú rýchlosť letu.

Keď svorka hľadá potravu, členovia svorky skontrolujú okolie a samostatne sa pohybujú po svorke. Každý zástupca má určitý stupeň voľnosti alebo náhodnosti v pohybe, čo mu dáva možnosť nájsť nahromadenie potravy. Takže skôr či neskôr jeden z nich nájde niečo jedlé a keďže je súčasťou balenia, informuje ostatných. Zvyšok sa potom môže priblížiť aj k zdroju potravy a už každý zástupca si vďaka miere voľnosti a náhodnosti svojho pohybu môže nájsť novú akumuláciu potravy.

Pri implementácii tohto algoritmu je viacrozmerný vyhľadávací priestor zaplnený rojom častíc (elementárnych riešení). Súradnice častíc v priestore jednoznačne určujú riešenie optimalizačného problému. Každá z častíc je okrem súradníc opísaná aj rýchlosťou pohybu a zrýchlením. V procese pohybu častice „prečesávajú“ priestor roztoku a tým nachádzajú aktuálne optimum, ku ktorému sa v ďalšom kroku ponáhľajú ostatné častice. Každá častica si pamätá svoju najlepšiu polohu, o ktorej sa údaje prenášajú susedným časticiam, ktoré majú tendenciu k tejto hodnote.

Na zavedenie náhodnej zložky do procesu vyhľadávania je možné zahrnúť „bláznivé“ častice, ktorých zákon pohybu sa líši od zákona pohybu zvyšku.

2 . Implementácia algoritmu

2.1Schéma algoritmu

Schéma algoritmu je nasledovná:

1. Vytvorí sa počiatočná „náhodná“ populácia častíc.

2. Pre každú časticu sa vypočíta účelová funkcia.

3. Najlepšia častica z hľadiska účelovej funkcie je vyhlásená za "ťažisko".

4. Do tohto „centra“ sa ponáhľajú vektory rýchlosti všetkých častíc, pričom čím ďalej je od neho častica, tým väčšie zrýchlenie má.

5. Vykoná sa výpočet nových súradníc častíc v priestore roztoku.

6. Kroky 2-5 sa opakujú stanovený počet krát alebo kým nie je splnená podmienka zastavenia.

7. Posledné „ťažisko“ je vyhlásené za nájdené optimálne riešenie.

2. 2 Kódprogramy

#include

#include

#include

#include

const int n=200;

const int m=200;

int i, j, k, t = 200;

dvojité F (dvojité x)

return pow(pow(x, 3) - 125,2);

(dvojité V[n] [m];

double bottom_limit=1, upper_limit=300;

double best_pos[n] [m];

dvojitá bunka[n][m]; // pole genotypov

double best_cel=1000; // najlepšia globálna hodnota

const double C1=0,7, C2=1,2, w=0,93;

double **X=new double*[n];

pre (i=0; i

X[i]=nový double[m];

srand(čas(NULL));

// inicializácia polohy a rýchlostí častíc

pre (i=0; i

pre (j=0; j

X[i] [j]=dolný_limit + (horný_limit - dolný_limit)*rand()/RAND_MAX;

// Inicializácia s najhorším genotypom častice

best_pos[i][j]=1000;

pre (k=0; k

// vyplnenie poľa genotypov

pre (i=0; i

pre (j=0; j

// určenie aktuálneho genotypu

cel[i][j]=F(X[i][j]);

// uložiť hodnotu najlepšieho genotypu pre každú časticu

ak (cel[i][j]

best_pos[i][j]=cel[i][j];

if (najlepší_pos[i][j]

best_cel=best_pos[i][j];

printf("%f\n",x);

// Aktualizácia rýchlosti a polohy častíc

pre (i=0; i

pre (j=0; j

R1 = 1.*rand()/RAND_MAX;

R2 = 1.*rand()/RAND_MAX;

V[i] [j] = w*V[i] [j] + C1*R1*(najlepšia_celka - X[i] [j]) + C2*R2*(najlepšia_pozícia[i] [j] - X[i ][j]);

X[i] [j] = X[i] [j] + V[i] [j];

2.3 Bloková schéma algoritmu

Hostené na http://www.allbest.ru/

Hostené na http://www.allbest.ru/

3 . Teoretický odhad zložitosti optimalizačného algoritmu

Pre teoretické posúdenie zložitosti algoritmu je potrebné určiť počet elementárnych operácií, ktoré je potrebné vykonať na vyriešenie problému pomocou tohto algoritmu.

Pod elementárnymi operáciami rozumieme operácie, ktoré môžu byť reprezentované ako elementárne konštrukcie daného jazyka (ale nie nevyhnutne vo forme jedinej strojovej inštrukcie), konkrétne za jednu elementárnu operáciu budeme považovať nasledovné:

1) operácia priradenia ab;

2) operácia indexovania poľa a[i];

3) aritmetické operácie *,/,-,+;

4) porovnávacie operácie a< b;

5) logické operácie alebo, a nie.

Cyklus for nie je elementárnou operáciou, pretože môže byť reprezentovaný ako;

Konštrukcia slučky teda vyžaduje 2*N základných operácií:

F "cyklus" = 2* N+ N* f telo cyklu.

Pre náš program teda dostaneme:

F=9+ // konštanty

2*200+200*(2*200+(8+6)*200)+ // inicializácia polohy a rýchlosti

2*200+200*(2*200+200*(2*200+200*(6+20))+ // vyplnenie poľa genotypu a najlepších hodnôt

2*200+200*(2*200+200*(4+4+10+2+16)) // rýchlosť aktualizácie a polohy

Výsledkom teoretického výpočtu bola zložitosť tohto programu F= 528800809 základných operácií.

Záver

modelovanie programového algoritmu

V poslednej dobe sa začalo objavovať veľa nových algoritmov, ktoré sú založené na napodobňovaní prírody, ale nie každý algoritmus sa môže pochváliť takou jednoduchou implementáciou a originalitou nápadu. Vzhľadom na náhodné rozloženie častíc a ich náhodnosť v pohybe je veľmi vysoká pravdepodobnosť nájdenia optimálneho riešenia v niekoľkých iteráciách, pričom sa vyhneme lokálnym optimám.

Ďalší vývoj takýchto algoritmov je kľúčom k novým technológiám pre optimalizáciu a vývoj vo všeobecnosti.

Zoznam použitých zdrojov

1. Uljanov M.V., Šeptunov M.V. Matematická logika a teória algoritmov, časť 2: Teória algoritmov. - M.: MGAPI, 2003. - 80 s.

2. Abstrakt prednášok z disciplíny "Matematická logika a teória algoritmov".

3. Globálne optimalizačné algoritmy – teória a aplikácia.

4. http://ru.wikipedia.org

Hostené na Allbest.ru

Podobné dokumenty

    Vlastnosti úloh lineárneho programovania. Simplexná metóda riešenia úloh lineárneho programovania. Odôvodnenie výberu jazyka, programovacích nástrojov, zoznamu identifikátorov a vývojového diagramu algoritmu. Logická schéma programu.

    práca, pridané 13.08.2011

    Vývoj knižnice, ktorá vám umožní simulovať dynamiku častíc v trojrozmernej grafike. Výber prostriedkov a metód rozvoja. Možnosti modelovania časticových systémov. Modelovanie na vertex shader. Diagramy triedy Particle System a PSBehavior.

    ročníková práca, pridaná 02.07.2016

    Základné analytické vzťahy. Bloková schéma a algoritmus riešenia problému. Manuálna kontrola výkonu algoritmu. Variabilná identifikačná tabuľka. Formy vstupnej a výstupnej tlače. Vývoj a ladenie programu. Návod na prácu s programom.

    ročníková práca, pridaná 13.02.2012

    Koncept lineárneho programovania a optimalizácie. Základy práce v systéme MathCAD. Používateľské rozhranie, vstupný jazyk a typ údajov. Etapy počítačového matematického modelovania. Príklad riešenia optimalizačného problému pomocou programu MathCAD.

    ročníková práca, pridaná 16.10.2011

    Vytvorenie programu v programovacom prostredí MatLab na riešenie úlohy jednorozmernej optimalizácie (hľadanie minima a maxima daných funkcií) metódou zlatého rezu, zostrojenie vývojového diagramu algoritmu a grafické znázornenie študovaných funkcií.

    abstrakt, pridaný 14.06.2010

    Programovací systém Delphi, jeho vlastnosti. Základné požiadavky na tréningový program. Zostavenie blokového diagramu algoritmu programu "Matematika. Stupeň 1". Typy úloh, ktoré sa majú riešiť v tréningovom programe. Popis činnosti systému, pokyny k nemu.

    semestrálna práca, pridaná 17.06.2015

    Optimalizácia riešenia problému pomocou algoritmu žíhania. Analýza teórie optimalizácie ako objektívnej funkcie. Gradientná metóda zostupu. Premenné a popis žíhacieho algoritmu. Znázornenie problému obchodného cestujúceho prostredníctvom grafu. Redukcia problému na premenné a riešenie.

    ročníková práca, pridaná 21.05.2015

    Zostrojenie matematického modelu pohybu nabitých častíc, implementácia v algoritmickom jazyku pomocou počítača. Popis predmetnej oblasti. Simulácia interakcie dvoch opačne nabitých častíc. Výsledky programu, používateľská príručka.

    ročníková práca, pridaná 26.02.2015

    Maticová transformácia sústavy lineárnych algebraických rovníc (SLAE) pomocou Gaussovho algoritmu. Riešenie úlohy metódou jednoduchej iterácie. Vytvorenie blokovej schémy a textu programu na riešenie SLAE, realizovaného v programovacom jazyku Turbo Pascal.

    ročníková práca, pridaná 15.06.2013

    Pascal ako profesionálny programovací jazyk, ktorý je pomenovaný po francúzskom matematikovi a filozofovi Blaise Pascalovi, histórii jeho vývoja a funkčných vlastnostiach. Problém s použitím dvojrozmerného poľa, zostavenie vývojového diagramu riešenia.

Algoritmus

Nechaj f: ℝ n→ ℝ - objektívna funkcia, ktorá sa má minimalizovať, S- počet častíc v roji, z ktorých každá je spojená so súradnicou X i ∈ ℝ n v priestore a rýchlosti riešenia v i ∈ ℝ n. Nechajte tiež p i je najznámejšia poloha častice i, a g je najznámejším stavom roja ako celku. Potom je všeobecná forma metódy roja častíc nasledovná.

  • Pre každú časticu i = 1, …, S urobiť:
    • Vygenerujte počiatočnú polohu častice pomocou náhodného vektora X i ~ U(b lo, b hore) s viacrozmerným rovnomerným rozložením . b lo a b hore sú dolné a horné hranice priestoru riešenia.
    • Priraďte najznámejšiu polohu častice jej počiatočnej hodnote: p ja ← X ja
    • Ak ( f(p i)< f(g)), potom aktualizujte najznámejší stav roja: gp ja
    • Priraďte hodnotu rýchlosti častíc: v i ~ U(-(b hore-b lo), (b hore-b lo)).
  • Kým nie je splnené kritérium zastavenia (napríklad dosiahnutie daného počtu iterácií alebo požadovanej hodnoty cieľovej funkcie), opakujte:
    • Pre každú časticu i = 1, …, S urobiť:
      • Vytvorte náhodné vektory r p , r g~ U(0,1).
      • Aktualizácia rýchlosti častíc: v i ← w v i + φp r p×( p ja- X i) + φ g r g×( g-X i), kde operácia × znamená zložkové násobenie.
      • Aktualizujte polohu častice pomocou prekladu X i na vektor rýchlosti: X ja ← X ja + v ja Všimnite si, že tento krok sa vykonáva bez ohľadu na zlepšenie hodnoty cieľovej funkcie.
      • Ak ( f(X i)< f(p i)), potom urobte:
        • Aktualizujte najznámejšiu polohu častíc: p ja ← X ja
        • Ak ( f(p i)< f(g)), potom aktualizujte najznámejší stav roja ako celku: gp ja
  • Teraz g obsahuje najlepšie z nájdených riešení.

Parametre ω, φ p a φ g sú zvolené kalkulačkou a určujú správanie a účinnosť metódy ako celku. Tieto parametre sú predmetom mnohých štúdií. (Pozri nižšie).

Výber parametrov

Výber optimálnych parametrov pre metódu roja častíc je predmetom značného počtu výskumných prác, pozri napríklad Shi a Eberhart, Carlisle a Dozer, van den Berg, Clerk a Kennedy, Trelea, Bratton a Blackwell a Evers.

Pedersen a ďalší autori navrhli jednoduchý a efektívny spôsob výberu parametrov metódy. Uskutočnili tiež numerické experimenty s rôznymi optimalizačnými problémami a parametrami. Technika výberu týchto parametrov sa nazýva meta-optimalizácia, pretože na „ladenie“ parametrov MFR sa používa ďalší optimalizačný algoritmus. Vstupné parametre MFM s najlepším výkonom sa ukázali byť v rozpore s hlavnými princípmi opísanými v literatúre a často poskytujú uspokojivé výsledky optimalizácie pre jednoduché prípady MFM. Ich implementáciu nájdete v open source knižnici SwarmOps.

Možnosti algoritmu

Neustále sa navrhujú nové varianty algoritmu roja častíc na zlepšenie výkonu metódy. V týchto štúdiách je viacero trendov, z ktorých jeden navrhuje vytvoriť hybridnú optimalizačnú metódu využívajúcu MFR v kombinácii s inými algoritmami, viď napr. Ďalším trendom je nejakým spôsobom zrýchliť metódu, napríklad krokom späť alebo zmenou poradia pohybu častíc (pozri o tom). Existujú aj pokusy prispôsobiť parametre správania MFR počas procesu optimalizácie.

pozri tiež

  • Včelí algoritmus
  • Gravitačný vyhľadávací algoritmus

Poznámky

  1. (1995) "Particle Swarm Optimization". Zborník z medzinárodnej konferencie IEEE o neurónových sieťach IV: 1942-1948.
  2. (1998) "Upravený generátor roja častíc". Zborník IEEE International Conference on Evolutionary Computation: 69-73.
  3. Swarm Intelligence. - Morgan Kaufmann, 2001.
  4. Poli, R. (2007). "Analýza publikácií o aplikáciách na optimalizáciu roja častíc". Technická správa CSM-469(Department of Computer Science, University of Essex, UK).
  5. Poli, R. (2008). "Analýza publikácií o aplikáciách optimalizácie roja častíc". : 1-10. DOI:10.1155/2008/685175.
  6. (1998) "Výber parametrov pri optimalizácii roja častíc". Proceedings of Evolutionary Programming VII (EP98): 591-600.
  7. (2000) "Porovnanie zotrvačných váh a faktorov zúženia pri optimalizácii roja častíc". Zborník z Kongresu o evolučnom výpočte 1 : 84-88.
  8. (2001) "Off-The-Shelf PSO". Zborník z workshopu Particle Swarm Optimization Workshop: 1-6.
  9. van den Bergh F. Analýza optimalizátorov roja častíc. - Univerzita v Pretórii, Fakulta prírodných a poľnohospodárskych vied, 2001.
  10. (2002) "Roj častíc - explózia, stabilita a konvergencia vo viacrozmernom komplexnom priestore". IEEE transakcie na evolučnom výpočte 6 (1): 58-73.
  11. Trelea, I.C. (2003). "Algoritmus optimalizácie roja častíc: analýza konvergencie a výber parametrov". Listy na spracovanie informácií 85 : 317-325.
  12. (2008) "Zjednodušený rekombinantný PSO". Journal of Artificial Evolution and Applications.
  13. Evers G. Mechanizmus automatického preskupovania na riešenie stagnácie pri optimalizácii roja častíc. - The University of Texas – Pan American, Katedra elektrotechniky, 2009.
  14. Pedersen M.E.H. Vyladenie a zjednodušenie heuristickej optimalizácie. - University of Southampton, School of Engineering Sciences, Computational Engineering and Design Group, 2010.
  15. Pedersen, M.E.H.; Chipperfield, A.J. (2010). Zjednodušenie optimalizácie roja častíc. Applied Soft Computing 10 : 618-628.
  16. (2002) "Model životného cyklu: kombinovanie optimalizácie roja častíc, genetických algoritmov a horolezcov". Proceedings of Parallel Problem Solving from Nature VII (PPSN): 621-630.
  17. (2010) "Efektívny hybridný prístup založený na PSO, ACO a k-priemeroch pre klastrovú analýzu". Applied Soft Computing 10 (1): 183-197.
  18. (2002) "Rozšírenie optimalizátorov roja častíc so samoorganizovanou kritickosťou". Zborník zo štvrtého kongresu o evolučných výpočtoch (CEC) 2 : 1588-1593.
  19. Xinchao, Z. (2010). "Algoritmus roja narušených častíc pre numerickú optimalizáciu". Applied Soft Computing 10 (1): 119-124.
  20. (2009) Adaptive Particle Swarm Optimization. IEEE transakcie o systémoch, človeku a kybernetike 39 (6): 1362-1381.

Odkazy

  • Particle Swarm Central . Správy, ľudia, miesta, programy, články atď. Pozrite si najmä aktuálny štandard MFR. (Angličtina)
  • SwarmOps. Výber parametrov / kalibrácia MFR a iné metódy metaoptimalizácie. Softvérová knižnica v C a C#.
  • EvA2 je komplexný open source evolučný optimalizačný a MFM nástroj napísaný v jazyku Java.
  • ParadisEO je výkonný rámec C++ navrhnutý na vytváranie rôznych metaheuristiek vrátane algoritmov PFM. Algoritmy pripravené na použitie, množstvo návodov, ktoré vám pomôžu rýchlo vytvoriť vlastný MFR.
  • MRCH kód na FORTRAN Meranie výkonu na testovacích funkciách.
  • - Prostredie pre simuláciu a výskum výpočtovej inteligencie GPLed napísané v jazyku Java, zahŕňa rôzne implementácie PSO
  • Použitie implementácie MFR v jazyku Python na vyriešenie hádanky prechodu schodiska.
  • ECF - Evolutionary Computation Framework rôzne algoritmy, genotypy, paralelizácia, tutoriály.

MFR optimalizuje funkciu udržiavaním populácie možných riešení nazývaných častice a pohybom týchto častíc v priestore roztoku podľa jednoduchého vzorca. Pohyby podliehajú princípu najlepšej polohy nájdenej v tomto priestore, ktorá sa neustále mení, keď častice nájdu priaznivejšie polohy.

Algoritmus

Nechaj f: ℝ n→ ℝ - objektívna funkcia, ktorá sa má minimalizovať, S- počet častíc v roji, z ktorých každá je spojená so súradnicou X i ∈ ℝ n v priestore a rýchlosti riešenia v i ∈ ℝ n. Nechajte tiež p i je najznámejšia poloha častice i, a g je najznámejším stavom roja ako celku. Potom je všeobecná forma metódy roja častíc nasledovná.

  • Pre každú časticu i = 1, …, S urobiť:
    • Vygenerujte počiatočnú polohu častice pomocou náhodného vektora X i ~ U(b lo, b hore) s viacrozmerným rovnomerným rozložením . b lo a b hore sú dolné a horné hranice priestoru riešenia.
    • Priraďte najznámejšiu polohu častice jej počiatočnej hodnote: p ja ← X ja
    • Ak ( f(p i)< f(g)), potom aktualizujte najznámejší stav roja: gp ja
    • Priraďte hodnotu rýchlosti častíc: v i ~ U(-(b hore-b lo), (b hore-b lo)).
  • Kým nie je splnené kritérium zastavenia (napríklad dosiahnutie daného počtu iterácií alebo požadovanej hodnoty cieľovej funkcie), opakujte:
    • Pre každú časticu i = 1, …, S urobiť:
      • Vytvorte náhodné vektory r p , r g~ U(0,1).
      • Aktualizácia rýchlosti častíc: v i ← w v i + φp r p×( p ja- X i) + φ g r g×( g-X i), kde operácia × znamená zložkové násobenie.
      • Aktualizujte polohu častice pomocou prekladu X i na vektor rýchlosti: X ja ← X ja + v ja Všimnite si, že tento krok sa vykonáva bez ohľadu na zlepšenie hodnoty cieľovej funkcie.
      • Ak ( f(X i)< f(p i)), potom urobte:
        • Aktualizujte najznámejšiu polohu častíc: p ja ← X ja
        • Ak ( f(p i)< f(g)), potom aktualizujte najznámejší stav roja ako celku: gp ja
  • Teraz g obsahuje najlepšie z nájdených riešení.

Parametre ω, φ p a φ g sú zvolené kalkulačkou a určujú správanie a účinnosť metódy ako celku. Tieto parametre sú predmetom mnohých štúdií. (Pozri nižšie).

Výber parametrov

Výber optimálnych parametrov pre metódu roja častíc je predmetom značného počtu výskumných prác, pozri napríklad Shi a Eberhart, Carlisle a Dozer, van den Berg, Clerk a Kennedy, Trelea, Bratton a Blackwell a Evers.

Pedersen a ďalší autori navrhli jednoduchý a efektívny spôsob výberu parametrov metódy. Uskutočnili tiež numerické experimenty s rôznymi optimalizačnými problémami a parametrami. Technika výberu týchto parametrov sa nazýva meta-optimalizácia, pretože na "ladenie" parametrov MFR sa používa iný optimalizačný algoritmus. Vstupné parametre MFM s najlepším výkonom sa ukázali byť v rozpore s hlavnými princípmi opísanými v literatúre a často poskytujú uspokojivé výsledky optimalizácie pre jednoduché prípady MFM. Ich implementáciu nájdete v open source knižnici SwarmOps.

Možnosti algoritmu

Neustále sa navrhujú nové varianty algoritmu roja častíc na zlepšenie výkonu metódy. V týchto štúdiách je viacero trendov, z ktorých jeden navrhuje vytvoriť hybridnú optimalizačnú metódu využívajúcu MFR v kombinácii s inými algoritmami, viď napr. Ďalším trendom je nejakým spôsobom zrýchliť metódu, napríklad krokom späť alebo zmenou poradia pohybu častíc (pozri o tom). Existujú aj pokusy prispôsobiť parametre správania MFR počas procesu optimalizácie.

Napíšte recenziu na článok "Metóda roja častíc"

Poznámky

  1. (1995) "Particle Swarm Optimization". Zborník z medzinárodnej konferencie IEEE o neurónových sieťach IV: 1942-1948.
  2. (1998) "Upravený generátor roja častíc". Zborník IEEE International Conference on Evolutionary Computation: 69-73.
  3. Swarm Intelligence. - Morgan Kaufmann, 2001.
  4. Poli, R. (2007). "". Technická správa CSM-469(Department of Computer Science, University of Essex, UK).
  5. Poli, R. (2008). "". : 1-10. DOI:10.1155/2008/685175.
  6. (1998) "Výber parametrov pri optimalizácii roja častíc". Proceedings of Evolutionary Programming VII (EP98): 591-600.
  7. (2000) "Porovnanie zotrvačných váh a faktorov zúženia pri optimalizácii roja častíc". Zborník z Kongresu o evolučnom výpočte 1 : 84-88.
  8. (2001) "Off-The-Shelf PSO". Zborník z workshopu Particle Swarm Optimization Workshop: 1-6.
  9. van den Bergh F. Analýza optimalizátorov roja častíc. - Univerzita v Pretórii, Fakulta prírodných a poľnohospodárskych vied, 2001.
  10. (2002) "Roj častíc - explózia, stabilita a konvergencia vo viacrozmernom komplexnom priestore". IEEE transakcie na evolučnom výpočte 6 (1): 58-73.
  11. Trelea, I.C. (2003). "Algoritmus optimalizácie roja častíc: analýza konvergencie a výber parametrov". Listy na spracovanie informácií 85 : 317-325.
  12. (2008) "Zjednodušený rekombinantný PSO". Journal of Artificial Evolution and Applications.
  13. Evers G.. - The University of Texas – Pan American, Katedra elektrotechniky, 2009.
  14. Pedersen M.E.H.. - University of Southampton, School of Engineering Sciences, Computational Engineering and Design Group, 2010.
  15. Pedersen, M.E.H.; Chipperfield, A.J. (2010). "". Applied Soft Computing 10 : 618-628.
  16. (2002) "Model životného cyklu: kombinovanie optimalizácie roja častíc, genetických algoritmov a horolezcov". Proceedings of Parallel Problem Solving from Nature VII (PPSN): 621-630.
  17. (2010) "Efektívny hybridný prístup založený na PSO, ACO a k-priemeroch pre klastrovú analýzu". Applied Soft Computing 10 (1): 183-197.
  18. (2002) "Rozšírenie optimalizátorov roja častíc so samoorganizovanou kritickosťou". Zborník zo štvrtého kongresu o evolučných výpočtoch (CEC) 2 : 1588-1593.
  19. Xinchao, Z. (2010). "Algoritmus roja narušených častíc pre numerickú optimalizáciu". Applied Soft Computing 10 (1): 119-124.
  20. (2009) Adaptive Particle Swarm Optimization. IEEE transakcie o systémoch, človeku a kybernetike 39 (6): 1362-1381.

Odkazy

  • . Správy, ľudia, miesta, programy, články atď. Pozrite si najmä aktuálny štandard MFR. (Angličtina)

Výňatok charakterizujúci Particle Swarm Method

- Áno, - povedal Rostov, ako keby to vysloviť toto slovo vyžadovalo veľa úsilia, a sadol si k vedľajšiemu stolu.
Obaja mlčali; v miestnosti sedeli dvaja Nemci a jeden ruský dôstojník. Všetci mlčali a bolo počuť zvuky nožov na tanieroch a poručíkovo champovanie. Keď Telyanin dojedol raňajky, vytiahol z vrecka dvojitú kabelku, roztiahol prstene s malými bielymi prstami ohnutými nahor, vytiahol zlatý a zdvihol obočie a dal peniaze sluhovi.
"Prosím, ponáhľaj sa," povedal.
Zlato bolo nové. Rostov vstal a prešiel k Telyaninovi.
„Ukáž mi kabelku,“ povedal tichým, sotva počuteľným hlasom.
Telyanin s premenlivými očami, no stále zdvihnutým obočím, podal kabelku.
„Áno, pekná kabelka... Áno... áno...“ povedal a zrazu zbledol. "Pozri, mladý muž," dodal.
Rostov vzal peňaženku do rúk a pozrel sa na ňu, na peniaze, ktoré v nej boli, a na Telyanina. Poručík sa poobzeral okolo seba, ako bolo jeho zvykom, a zdalo sa, že je zrazu veľmi veselý.
„Ak budeme vo Viedni, všetko tam nechám a v týchto mizerných mestečkách už nie je kam ísť,“ povedal. - Poď, mladý muž, pôjdem.
Rostov mlčal.
- A čo ty? aj raňajky? Sú slušne kŕmené,“ pokračoval Telyanin. - Poď.
Natiahol ruku a chytil peňaženku. Rostov ho prepustil. Telyanin vzal kabelku a začal si ju vkladať do vrecka nohavíc, obočie mu ležérne nadvihlo a ústa sa mu mierne otvorili, akoby hovoril: „Áno, áno, strčil som si kabelku do vrecka a je to veľmi jednoduché a nikoho to nezaujíma“.
- No čo, mladý muž? povedal, povzdychol si a spod jeho zdvihnutého obočia pozrel do Rostovových očí. Akési svetlo z očí rýchlosťou elektrickej iskry prešlo z Telyaninových očí do Rostovových očí a späť, späť a späť, všetko v okamihu.
"Poď sem," povedal Rostov a chytil Telyanina za ruku. Takmer ho odtiahol k oknu. - Toto sú Denisovove peniaze, zobral si ich... - zašepkal mu do ucha.
"Čo?... Čo?... Ako sa opovažuješ?" Čo? ... - povedal Telyanin.
Ale tieto slová zneli ako žalostný, zúfalý výkrik a prosba o odpustenie. Len čo Rostov začul tento zvuk hlasu, z jeho duše spadol obrovský kameň pochybností. Pocítil radosť a zároveň mu bolo ľúto nešťastníka, ktorý stál pred ním; ale bolo potrebné dokončiť začaté práce.
"Tu ľudia, boh vie, čo si môžu myslieť," zamrmlal Telyanin, schmatol čiapku a zamieril do malej prázdnej miestnosti, "musíme si to vysvetliť...
"Viem to a dokážem to," povedal Rostov.
- Ja…
Telyaninova vystrašená bledá tvár sa začala triasť všetkými svalmi; jeho oči stále behali, ale niekde nižšie, nestúpajúc k Rostovovej tvári, a bolo počuť vzlyky.
- Gróf! ... nezruinujte mladého muža ... tu sú tieto nešťastné peniaze, vezmite si ich ... - hodil ich na stôl. - Môj otec je starý muž, moja matka! ...
Rostov vzal peniaze, vyhýbal sa Telyaninovmu pohľadu a bez slova odišiel z miestnosti. Ale pri dverách sa zastavil a otočil sa späť. „Bože môj,“ povedal so slzami v očiach, „ako si to mohol urobiť?
"Počítaj," povedal Telyanin a pristúpil ku kadetovi.
"Nedotýkaj sa ma," povedal Rostov a odtiahol sa. Ak to potrebujete, vezmite si tieto peniaze. Hodil po ňom peňaženku a vybehol z hostinca.

Večer toho istého dňa prebiehal v Denisovovom byte medzi dôstojníkmi letky živý rozhovor.
"A ja ti hovorím, Rostov, že sa musíš ospravedlniť veliteľovi pluku," povedal vysoký štábny kapitán so šedivými vlasmi, obrovskými fúzmi a veľkými črtami vrásčitej tváre na adresu karmínovo červeného rozrušeného Rostova.
Štábna kapitánka Kirsten bola za čestné skutky dvakrát degradovaná na vojakov a dvakrát vyliečená.
"Nedovolím, aby ti niekto povedal, že klamem!" zvolal Rostov. Povedal mi, že klamem a ja som mu povedal, že klame. A tak to aj zostane. Môžu ma dať do služby aj každý deň a zatknúť ma, ale nikto ma neprinúti ospravedlniť sa, pretože ak sa ako veliteľ pluku považuje za nehodného poskytnúť mi zadosťučinenie, potom ...
- Áno, počkaj, otec; ty ma počúvaj, - prerušil kapitán basovým hlasom personál a pokojne si uhladil dlhé fúzy. - Pred ostatnými dôstojníkmi poviete veliteľovi pluku, že dôstojník ukradol ...
- Nie je moja chyba, že sa rozhovor začal pred inými dôstojníkmi. Možno som pred nimi nemal hovoriť, ale nie som diplomat. Potom som sa pridal k husárom a išiel som, mysliac si, že tu nie sú potrebné jemnosti, ale on mi povedal, že klamem ... tak nech mi dá zadosťučinenie ...
- To je v poriadku, nikto si nemyslí, že si zbabelec, ale o to nejde. Opýtajte sa Denisova, vyzerá to ako niečo, čo by kadet požadoval zadosťučinenie od veliteľa pluku?
Denisov, hrýzol si fúzy, počúval rozhovor s pochmúrnym pohľadom, zrejme do neho nechcel zasahovať. Na otázku kapitánskeho štábu negatívne pokrútil hlavou.
"Hovoríte s veliteľom pluku o tomto špinavom triku pred dôstojníkmi," pokračoval kapitán veliteľstva. - Bogdanich (Bogdanich bol nazývaný veliteľom pluku) vás obkľúčil.
- Neobliehal, ale povedal, že klamem.
- Áno, povedal si mu nejakú hlúposť a musíš sa ospravedlniť.
- Nikdy! zakričal Rostov.
„Nemyslel som si, že to bolo od vás,“ povedal kapitán veliteľstva vážne a stroho. - Nechceš sa ospravedlniť a ty, otec, nielen pred ním, ale pred celým plukom, pred nami všetkými, si na vine dookola. A takto: keby ste len rozmýšľali a radili sa, ako sa s touto vecou vysporiadať, inak by ste priamo, ale pred dôstojníkmi a búchali. Čo má teraz robiť veliteľ pluku? Máme postaviť toho dôstojníka pred súd a pokaziť celý pluk? Hanba celému pluku kvôli jednému zloduchovi? Tak čo si myslíte? Ale podľa nášho názoru nie je. A dobre, Bogdanich, povedal ti, že nehovoríš pravdu. Je to nepríjemné, ale čo robiť, otec, sami sa s tým stretli. A teraz, keď chcú vec umlčať, tak sa ty kvôli nejakej fanabérii nechceš ospravedlniť, ale chceš všetko povedať. Ste urazení, že ste v službe, ale prečo by ste sa mali ospravedlňovať starému a čestnému dôstojníkovi! Nech je Bogdanich akýkoľvek, ale všetci čestní a statoční, starý plukovník, ste taký urazený; a pokazit regiment ti ide v pohode? - začal sa triasť hlas kapitánskej palice. - Ty, otec, si v pluku týždeň bez roka; dnes tu, zajtra sa niekam presťahovali k adjutantom; je vám fuk, čo povedia: "Medzi pavlogradskými dôstojníkmi sú zlodeji!" A je nám to jedno. Tak čo, Denisov? Nie všetky rovnaké?
Denisov zostal ticho a ani sa nepohol, občas hľadel svojimi žiarivými čiernymi očami na Rostova.
„Vaša fanabéria je vám drahá, nechcete sa ospravedlniť,“ pokračoval kapitán veliteľstva, „ale my starí ľudia, ako sme vyrástli, a ak Boh dá, zomrieme v pluku, takže česť pluku je je nám drahý a Bogdanich to vie. Ó, aký drahý, otec! A to nie je dobré, nie dobré! Urazte sa tam alebo nie, ale ja vždy poviem pravdu do maternice. Nie dobré!
A kapitánsky štáb vstal a odvrátil sa od Rostova.
- Pg "avda, chog" ber to! zakričal Denisov a vyskočil. - No, G "kostra! No!
Rostov, začervenaný a zblednutý, pozrel najprv na jedného dôstojníka, potom na druhého.
- Nie, páni, nie ... nemyslite si ... veľmi dobre rozumiem, nemali by ste si to o mne myslieť ... ja ... pre mňa ... som za česť pluku. ale čo? Ukážem to v praxi a pre mňa česť transparentu ... no, je to úplne rovnaké, naozaj, je to moja chyba! .. - V očiach sa mu objavili slzy. - Môžem za to ja, všetko okolo! ... No, čo ešte chceš? ...
„To je ono, počítaj,“ zakričal kapitán, otočil sa a udrel ho veľkou rukou po pleci.
„Hovorím ti,“ zakričal Denisov, „je to pekné dieťa.
"Takto je to lepšie, počítaj," zopakoval kapitán, akoby ho pre uznanie začínal nazývať titulom. - Choďte a ospravedlnte sa, Vaša Excelencia, áno s.
"Páni, urobím všetko, nikto odo mňa nebude počuť ani slovo," povedal Rostov prosebným hlasom, "ale nemôžem sa ospravedlniť, preboha, nemôžem, ako si želáte!" Ako sa ospravedlním, ako malý, aby som požiadal o odpustenie?
Denisov sa zasmial.
- Pre teba je to horšie. Bogdanych je pomstychtivý, zaplať za svoju tvrdohlavosť, - povedala Kirsten.
- Preboha, nie tvrdohlavosť! Neviem vám opísať ten pocit, nedokážem...

zdieľam