Bikolonialgoritmen ( kunstig bikolonioptimering , ABC ) er en af de polynomielle heuristiske algoritmer til løsning af optimeringsproblemer inden for datalogi og operationsforskning . Tilhører kategorien af stokastiske bioniske algoritmer , baseret på simulering af adfærden hos en koloni af honningbier, når de indsamler nektar i naturen. Foreslået af D. Karaboga i 2005 [1] .
Hovedformålet med arbejdet i en bikoloni i naturen er at udforske rummet omkring bikuben for at søge efter nektar og derefter samle den. For at gøre dette er der forskellige typer bier i kolonien: spejderbier og arbejdsbier-foderere (udover dem er der droner og en dronning i kolonien , der ikke deltager i processen med at indsamle nektar). Spejderne er i gang med en undersøgelse af rummet omkring bikuben og rapporterer oplysninger om lovende steder, hvor den største mængde nektar blev fundet (der er en særlig mekanisme til at udveksle information i bikuben, kaldet bisedans ).
Bikolonialgoritmen kan bruges til at løse diskrete ( kombinatoriske ) og kontinuerligeglobale optimeringsproblemer [ 2] [3] og har en tilstrækkelig grad af lighed med multistartalgoritmer . Det omfatter normalt den indledende spejder og efterfølgende arbejde af bikubebierne. Under initialisering (indledende rekognoscering) rekognosceres funktionsrummet for at bestemme dets mest lovende punkter med de bedste objektive funktionsværdier (i det enkleste tilfælde ved hjælp af den tilfældige opregningsmetode som er gemt i bikuben Derefter udføres lokal rekognoscering i nærheden af de udvalgte punkter inden for en given rekognosceringsradius for at forsøge at forfine løsningen (forbedre rekorden), mens når forbedringen er opnået i bikuben, den opdaterede værdi af posten og den tilsvarende objektivfunktionsparametervektor . Ved at kombinere spejderbiers og arbejderbiers arbejde over et givet antal iterationer giver algoritmen en gradvis forbedring af den huskede prøve af løsninger. Efter afslutningen af sit arbejde vælges den bedste fra det specificerede sæt af løsninger, som er resultatet af algoritmen.
Optimeringsmetoder _ | |
---|---|
Endimensionel |
|
Nul orden | |
Første ordre | |
anden orden | |
Stokastisk | |
Lineære programmeringsmetoder _ | |
Ikke-lineære programmeringsmetoder |