Seminario Metaheuristicas Parte 1 - Pso
-
Upload
ing-jose-david-bolanos-de-garcia -
Category
Documents
-
view
19 -
download
0
description
Transcript of Seminario Metaheuristicas Parte 1 - Pso
FUNDACIFUNDACIÓÓN BARILOCHEN BARILOCHEINSTITUTO DE ECONOMINSTITUTO DE ECONOMÍÍA ENERGA ENERGÉÉTICATICA
CONICETCONICET
TTíítulo:tulo:
AnAnáálisis de las lisis de las MetaheurMetaheuríísticassticas PSO, PSO, EPSO y su ExtensiEPSO y su Extensióón FPSO, FEPSOn FPSO, FEPSO
Buenos AiresBuenos Aires, , OctubreOctubre
de 200de 20099
DisertanteDisertante::
Dr. Dr. Gustavo Gustavo SchweickardtSchweickardt
Seminario sobre METAHEURSeminario sobre METAHEURÍÍSTICASSTICASENDIO XXII ENDIO XXII –– EPIO XXEPIO XX
1.1.
HeurHeuríísticas y Metasticas y Meta--HeurHeuríísticas.sticas.2.2.
La MetaLa Meta--HeurHeuríística PSO (stica PSO (ParticleParticle
SwarmSwarm
OptimizationOptimization/Optimizaci/Optimizacióón por Enjambre n por Enjambre deedee
PartPartíículas).culas).
1.1.
IntroducciIntroduccióón.n.2.2.
FormulaciFormulacióón.n.
3.3.
Ajuste de ParAjuste de Paráámetros.metros.4.4.
LLíímites Dinmites Dináámicos en el Espacio de micos en el Espacio de BBúúsqueda.squeda.
5.5.
Esquemas mEsquemas máás importantes del PSO.s importantes del PSO.6.6.
Diagramas de Flujo del PSO.Diagramas de Flujo del PSO.
3.3.
La MetaLa Meta--HeurHeuríística EPSO (stica EPSO (EvolutionaryEvolutionary ParticleParticle
SwarmSwarm
OptimizationOptimization).).
1.1.
AnalogAnalogíías y Diferencias entre los GA as y Diferencias entre los GA ((GeneticsGenetics
AlgorithmsAlgorithms) y el PSO.) y el PSO.
2.2.
ConcepciConcepcióón del EPSO.n del EPSO.3.3.
FormulaciFormulacióón.n.
4.4.
TopologTopologíía de Estrella Estoca de Estrella Estocáástica y Factor de stica y Factor de ComunicaciComunicacióón.n.
5.5.
Diagrama de Flujo del EPSO.Diagrama de Flujo del EPSO.4.4.
La Extensiones FPSO (La Extensiones FPSO (FuzzyFuzzy
ParticleParticle
SwarmSwarm
OptimizationOptimization) y FEPSO () y FEPSO (FuzzyFuzzy EvolutionaryEvolutionary
ParticleParticle
SwarmSwarm
OptimizationOptimization).).
HeurHeuríísticas y Metasticas y Meta-- HeurHeuríísticassticas
Reglas de la Experiencia o Reglas de la Experiencia o ““de Buena Prde Buena Práácticactica””
•• Constituye una serie de Constituye una serie de procedimientosprocedimientos
o o estrategiasestrategias
de las de las
que que se suponese supone
conducen a un conducen a un Destino/Objetivo deseado. Destino/Objetivo deseado.
•• Se trata de Se trata de alcanzar el Objetivoalcanzar el Objetivo, , sin sin garantgarantííasas. .
QuQuéé
es una HEURes una HEURÍÍSTICA?STICA?
EtimologEtimologíía del Ta del Téérminormino
•• Proviene de la palabra griega Proviene de la palabra griega heuriskeinheuriskein
que se traduce como que se traduce como encontrarencontrar
..
•• Se lo relaciona con la supuesta Se lo relaciona con la supuesta exclamaciexclamacióón n ¡¡eureka!eureka!
de de ArquArquíímedes al encontrar la medes al encontrar la solucisolucióón del principio hidrostn del principio hidrostáático tico que lleva su nombre. que lleva su nombre.
QuQuéé
es una HEURes una HEURÍÍSTICA?STICA?
EtimologEtimologíía del Ta del Téérminormino
•• Deriva del Complemento entre la Deriva del Complemento entre la palabra palabra heuriskeinheuriskein
y el prefijo y el prefijo metameta
que se traduce como que se traduce como mmáás s allaalla
dede
oo
en un nivel superior deen un nivel superior de..
•• Su introducciSu introduccióón en IO se le n en IO se le atribuye a atribuye a FredFred
GloverGlover, al , al
presentar su mpresentar su méétodo de todo de BBúúsqueda squeda TabTabúú (ref. 1988, 1997).(ref. 1988, 1997).
QuQuéé
es una METAes una META--HEURHEURÍÍSTICA?STICA?
DictionayDictionay
OfOf
AlgorithmsAlgorithms
andand
Data Data StructuresStructures, , Editado por Editado por thethe
NationalNational
InstituteInstitute
ofof
StandarsStandars
andand
TechnologyTechnology
––
PeterPeter
BlackBlack
(actualizado (actualizado en Marzo 2009)en Marzo 2009)
1.1.
Un Marco de Referencia Un Marco de Referencia AlgorAlgoríítmico cuyo Enfoque puede tmico cuyo Enfoque puede ser especializado para Resolver ser especializado para Resolver Problemas de OptimizaciProblemas de Optimizacióón. n.
2.2.
Una Estrategia de Alto Nivel que Una Estrategia de Alto Nivel que GuGuíía/Conduce Heura/Conduce Heuríísticas en la sticas en la BBúúsqueda de Soluciones Factibles. squeda de Soluciones Factibles.
QuQuéé
es una METAes una META--HEURHEURÍÍSTICA?STICA?
Controversia y DiscusiControversia y Discusióón relativa la los n relativa la los TTéérminos Heurrminos Heuríística y Metastica y Meta--HeurHeuríísticastica
Una Una MetaheurMetaheuríísticastica se define como se define como un un proceso iterativoproceso iterativo que guque guíía a una una heurheuríísticastica subordinadasubordinada, ,
combinando diferentes conceptos combinando diferentes conceptos para explorar y explotar las para explorar y explotar las
caractercaracteríísticas que pueda exhibir sticas que pueda exhibir el el espacio de bespacio de búúsqueda.squeda.
((OsmanOsman andand
LaporteLaporte, ref. 1996), ref. 1996)
METAMETA--HEURHEURÍÍSTICASSTICAS
La DefiniciLa Definicióón Adoptadan Adoptada::
1.1. Algoritmos GenAlgoritmos Genééticos (GA)ticos (GA)2.2. Recocido Simulado (SA)Recocido Simulado (SA)3.3. BBúúsqueda Tabsqueda Tabúú (TS)(TS)4.4. OptimizaciOptimizacióón por Colonia de n por Colonia de
Hormigas (ACO)Hormigas (ACO)5.5. OptimizaciOptimizacióón por Enjambre de n por Enjambre de
PartPartíículas (PSO)culas (PSO)
METAMETA--HEURHEURÍÍSTICASSTICAS
Algunas de las Algunas de las MetaheurMetaheuríísticassticas
mmáás s Importantes/EmpleadasImportantes/Empleadas::
i.i. OptimizaciOptimizacióón por Enjambre de n por Enjambre de PartPartíículas (PSO)culas (PSO)
i.i.
ExtensiExtensióón n MultiObjetivoMultiObjetivo: Optimizaci: Optimizacióón n Difusa por Enjambre de PartDifusa por Enjambre de Partíículas culas (FPSO)(FPSO)
ii.ii. OptimizaciOptimizacióón n EvolucionariaEvolucionaria
por por Enjambre de PartEnjambre de Partíículas (EPSO)culas (EPSO)
i.i.
ExtensiExtensióón n MultiObjetivoMultiObjetivo: Optimizaci: Optimizacióón n EvolucionariaEvolucionaria
Difusa por Enjambre de Difusa por Enjambre de
PartPartíículas (FEPSO)culas (FEPSO)
METAMETA--HEURHEURÍÍSTICAS A DesarrollarSTICAS A Desarrollar
Se presentarSe presentaráán las n las MetaheurMetaheuríísticassticas::
La MetaLa Meta--HeurHeuríística stica PSO (PSO (ParticleParticle
SwarmSwarm OptimizationOptimization))
IntroducciIntroduccióónn
1) Se origina en un intento por imitar y mimetizar el comportamiento de procesos naturales.
2) El PSOPSO
y el Ant Colony Optimization (ACOACO) constituyen los dos métodos más utilizados en el área de la inteligencia computacional.
3) Esencia: comportamientos sociales de un colectivo →→
interacción entre individuos y
con el entorno.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónnOptimizaciOptimizacióón por Enjambre de Partn por Enjambre de Partíículas culas
Se remontan a los estudios iniciados por Kennedy y Eberhart (ref. 1995).
Objetivo Inicial: Simular el movimiento sincronizado e impredecible de grupos tales como los Bancos de Peces o Bandadas de Aves.
Aspecto: la capacidad de estos grupos para separarse, reagruparse y encontrar alimento.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSO genes del PSO
El El ComportamientoComportamiento, , InteligenciaInteligencia y y MovimientoMovimiento de estas agrupaciones de estas agrupaciones
((SwarmSwarm), ), estestáá relacionado relacionado directamentedirectamente con la capacidad de
los individuos para compartir información
aprovechando la
experiencia acumulada por sus congéneres.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSO genes del PSO
I. En la terminología utilizada en PSO, Kennedy y Eberhart introducen el término general partpartíículacula
o agenteagente
para representar a los
individuos que exhiban un comportamiento.II. El movimientomovimiento
de estas partpartíículasculas
está
condicionado por dos factores bdos factores báásicossicos:a. la Memoria Autobiográfica
de la partpartíículacula.
b. la Influencia Social
de todo el enjambre.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSO genes del PSO
ppii vvii
aavvggInfluencia SocialInfluencia Social MemoriaMemoriavvii
Existe un Factor de Inercia
o velocidad que la partícula traía en el instante anterior al cambio (aspecto físico): El movimientomovimiento
depende, así:
a. la Memoria AutobiogrMemoria Autobiográáficafica
de la partpartíículacula.b. la Influencia SocialInfluencia Social
de todo el enjambre.
c. la IInercia o velocidad previaercia o velocidad previa
al cambio.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSO genes del PSO
ppii vvii
aavvggInfluencia SocialInfluencia Social MemoriaMemoriavvii
vvii
pp InerciaInercia
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
El áámbito de la vida artificialmbito de la vida artificial
requiere de cinco principios bcinco principios báásicossicos
para lo que se
entiende como IInteligencianteligencia
de de GGruporupo
o
SSwarmwarm IIntelligencentelligence:
1.1. PProximidadroximidad2.2. CalidadCalidad3.3. Diversidad de RespuestaDiversidad de Respuesta4.4. EstabilidadEstabilidad5.5. AdaptabilidadAdaptabilidad
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
ProximidadProximidad posibilidad de posibilidad de
realizar crealizar cáálculos sencillos de lculos sencillos de espacio y tiempo sobre la espacio y tiempo sobre la poblacipoblacióón.n.
CalidadCalidad capacidad de la capacidad de la
poblacipoblacióón para responder a factores n para responder a factores incidentes en la calidad dentro el incidentes en la calidad dentro el espacio de soluciones.espacio de soluciones.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
Diversidad de RespuestaDiversidad de Respuestaposibilidad de respuestas diferentes posibilidad de respuestas diferentes de los individuos de la poblacide los individuos de la poblacióón.n.Estabilidad y AdaptabilidadEstabilidad y Adaptabilidad
aspectos aspectos conplementariosconplementarios:: la la poblacipoblacióón debe mantenersen debe mantenerse
estableestable pero debepero debe
adaptarseadaptarse ante todo ante todo
cambio que propicie una mejora.cambio que propicie una mejora.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
ProximidadProximidad LosLos movimientosmovimientos de la poblacide la poblacióónn son son llevados a cabo durante una llevados a cabo durante una serie deserie de intervalos de tiempointervalos de tiempo a a una determinadauna determinada velocidadvelocidad..
PSOPSO
Satisface los Principios del SISatisface los Principios del SI
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
CalidadCalidad se consigue a se consigue a travtravéés de las de la memoria de la memoria de la partpartíículacula y dely del conocimiento conocimiento socialsocial que comparten entre sque comparten entre síí todos los congtodos los congééneres.neres.
PSOPSO
Satisface los Principios del SISatisface los Principios del SI
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
Diversidad de RespuestaDiversidad de Respuesta se se garantiza mediante lasgarantiza mediante las diferentes diferentes tendenciastendencias marcadas por lamarcadas por la memoria de cada partmemoria de cada partíículacula y lay la historia de la mejor posicihistoria de la mejor posicióón n visitadavisitada por todo el conjunto.por todo el conjunto.
PSOPSO
Satisface los Principios del SISatisface los Principios del SI
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
EstabilidadEstabilidad lala poblacipoblacióónn ssóólo cambia sulo cambia su comportamiento comportamiento grupalgrupal cuando se actualiza lacuando se actualiza la mejor posicimejor posicióónn histhistóóricamente ricamente visitada por alguno de sus visitada por alguno de sus miembros.miembros.
PSOPSO
Satisface los Principios del SISatisface los Principios del SI
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
––
SwarmSwarm
IntelligenceIntelligence
AdaptabilidadAdaptabilidad lala poblacipoblacióónn adapta suadapta su comportamiento comportamiento grupalgrupal yy movimientomovimiento segsegúún las n las seseññales deales de mejora en la mejora en la precisiprecisióón.n.
PSOPSO
Satisface los Principios del SISatisface los Principios del SI
El problema se reduce a establecer la ecuaciestablecer la ecuacióónn
que dicte cómo
debe moverse cada
partpartíículacula
de la población en el espacio N-Dimensional
para
mimetizar la IInteligencianteligencia de de
GrupoGrupo
y evitar a su vez caer en soluciones localessoluciones locales.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
IntroducciIntroduccióónn
OrOríígenes del PSOgenes del PSO
--
DiseDiseññoo
FormulaciFormulacióónn
Como Como MMéétodo de Optimizacitodo de Optimizacióónn
en un espacio en un espacio NN--DimensionalDimensional::
La La posiciposicióón instantn instantááneanea
de cada de cada partpartíículacula
de de
la la poblacipoblacióónn
representa una representa una solucisolucióón n potencialpotencial..
NN
eses
el el nnúúmero de incmero de incóógnitasgnitas
del problema.del problema.
El El proceso de bproceso de búúsquedasqueda
se reduce a mover se reduce a mover
cada partcada partíícula con una velocidad cula con una velocidad f(velocidad f(velocidad actual, memoria de la partactual, memoria de la partíícula, informacicula, informacióón n global que comparte el resto del enjambre)global que comparte el resto del enjambre)
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
FormulaFormulacicióónn
OrOríígenes del PSOgenes del PSO
--
AnalogAnalogííasas
I.I.
LaLa
velocidad de la partvelocidad de la partíículacula
constituyeconstituye elel
úúnico operadornico operador
para controlar lapara controlar la
evolucievolucióón de la optimizacin de la optimizacióónn.
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
FormulaFormulacicióónn
El Operador Velocidad enEl Operador Velocidad en
PSO PSO
ppii vvii
aavvggInfluencia SocialInfluencia Social MemoriaMemoriavvii
vvii
pp InerciaInercia
VVii
=(v=(vi1i1
,v,vi2i2
, ...,, ...,vviNiN
)) XXii
=(x=(xi1i1
,x,xi2i2
, ...,, ...,xxiNiN
))Vector VelocidadVector Velocidad Vector PosiciVector Posicióónn
En un Espacio NEn un Espacio N--Dimensional y para cada partDimensional y para cada partíículacula
i I
,, gpa
i i iV = V V Vf i iX = Vf
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
FormulaFormulacicióónn
CanCanóónicanicaLa EcuaciLa Ecuacióón del Movimiento enn del Movimiento en
PSO PSO
PPii
=(=(ppi1i1
,,ppi2i2
, ...,, ...,ppiNiN
))
GG=(=(gg11
,,gg22
, ...,, ...,ggNN
))Vector PosiciVector Posicióón Mejor Individualn Mejor Individual
Vector PosiciVector Posicióón Mejor Globaln Mejor Global
VViinn
((kk)) wwII
x x VViinn
((kk))
xxiinn
((kk+1+1) ) ==
xxiinn
((kk) ) ++
vviinn
((kk+1+1) ) xx
ΔΔttEcuaciEcuacióón del Movimienton del Movimiento
wwII
Constante de InerciaConstante de Inercia
wwcc
Constante CognitivaConstante Cognitiva
wwss
Constante SocialConstante Social
vviinn
((kk+1+1) ) ==
vviinn
((kk) ) ++
wwCC
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
wwSS
xx
rr22
xx
[[ggnn
((kk) ) --
xxiinn
((kk)] )] EcuaciEcuacióón del Cambio de Velocidadn del Cambio de Velocidad
rr11
, r, r2 2 nnúúmeros aleatorios meros aleatorios U[0,1]U[0,1]
K K iteraciiteracióónn, n , n dimensidimensióónnΔΔtt
==
11
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
FormulaFormulacicióónn
CanCanóónicanica
La EcuaciLa Ecuacióón del Movimiento enn del Movimiento en
PSO PSO
xxinin Cotas EspacialesCotas Espaciales {{xxnn
MinMin
, , xxnn
MaxMax
}}
El Espacio de BEl Espacio de Búúsqueda debe estar acotadosqueda debe estar acotado::
TambiTambiéén las Velocidades deben acotarsen las Velocidades deben acotarse::
Para ello se limita la mPara ello se limita la mááxima velocidad que puede xima velocidad que puede adoptar una partadoptar una partíículacula::
vvii Cotas de VelocidadCotas de Velocidad {{--vvMaxMax
, , vvMaxMax
}}
Si Si vvMaxMax
es muy grandees muy grande Divergencia en OGDivergencia en OGSi Si vvMaxMax
es muy pequees muy pequeññoo OscilaciOscilacióón en OGn en OG
OG = OG = ÓÓptimo Globalptimo Global
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
FormulaciFormulacióón n CanCanóónicanicaPo
sici
Posi
cióó n
xn x
PSOPSO
––
Influencia de Influencia de vvmaxmax
Posi
ciPo
sici
óó n xn x
Posi
ciPo
sici
óó n xn x
k k ==220000
xx(0)=0.0, (0)=0.0, vv(0)=0.1,(0)=0.1,wwCC
==wwSS
=2.0, y =2.0, y pp((kk)=)=gg((kk)=0.0)=0.0
b.b. VVmaxmax
= 4= 4a.a.
Sin Sin VVmaxmax
IteracionesIteraciones IteracionesIteraciones
ExplosiExplosióón PSOn PSO
Posi
ciPo
sici
óó n xn x
Posi
ciPo
sici
óó n xn x
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
Modelo con Peso InercialModelo con Peso Inercial
Alteraciones en la Forma CanAlteraciones en la Forma Canóónica delnica del
PSO PSO
Ajuste o SintonizaciAjuste o Sintonizacióón de la velocidadn de la velocidad::
vviinn
((kk+1+1) ) ==
{{wwII
xx
vviinn
((kk))}}
++
wwCC
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
wwSS
xx
rr22
xx
[[ggnn
((kk) ) -- BBBxxiinn
((kk)] )]
EcuaciEcuacióón del Cambio de Velocidad con Peso n del Cambio de Velocidad con Peso Inercial Inercial wwII
Constante de InerciaConstante de InerciawwII [0,1][0,1]
CControlaontrola
la tendencia de la partla tendencia de la partíícula a continuar en cula a continuar en
la direccila direccióón en la que se estaba moviendo. n en la que se estaba moviendo.
Regula la relaciRegula la relacióón entre n entre capacidad de exploracicapacidad de exploracióón n y y tendencia tendencia hacia las hacia las soluciones localessoluciones locales..
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
Modelo con Peso InercialModelo con Peso Inercial
PSOPSO
––
Influencia del Peso Inercial Sin Influencia del Peso Inercial Sin vvMaxMax
Posi
ciPo
sici
óó n xn x
Posi
ciPo
sici
óó n xn x
xx(0)=0.0, (0)=0.0, vv(0)=0.1,(0)=0.1,wwCC
==wwSS
=2.0, y =2.0, y pp((kk)=)=gg((kk)=0.0)=0.0
b)b)k = 1000k = 1000a)a)k = 500k = 500
IteracionesIteraciones IteracionesIteracioneswwII
==
00..88
Posi
ciPo
sici
óó n xn x
Posi
ciPo
sici
óó n xn x
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
Modelo con Decaimiento Modelo con Decaimiento InercialInercial
Alteraciones en la Forma CanAlteraciones en la Forma Canóónica delnica del
PSO PSO
Ajuste o SintonizaciAjuste o Sintonizacióón n VariableVariable
de la velocidadde la velocidad::
vviinn
((kk+1+1) ) ==
{{DDII
((kk))
xx
vviinn
((kk))}}
++
wwCC
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
wwSS
xx
rr22
x x bbbb[g[gnn
((kk) ) --
xxiinn
((kk)] )]
EcuaciEcuacióón del Cambio de Velocidad con n del Cambio de Velocidad con Decaimiento Inercial Decaimiento Inercial DDII((kk))
FunciFuncióón de Inercian de InerciaDDII
(k(k)) [0,1][0,1]
Empleando la Empleando la ConstanteConstante
o o FunciFuncióón de Decaimienton de Decaimiento
de Inercia igual de Inercia igual vMaxvMax
debedebe
limitarselimitarse..
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
Modelo con Factor de Modelo con Factor de ConstricciConstriccióónn::
Modelo de CLERCModelo de CLERC
Alteraciones en la Forma CanAlteraciones en la Forma Canóónica delnica del
PSO PSO
vviinn
((kk+1+1) ) ==
χχ
x x {{vviinn
((kk) ) ++
φφCC
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
φφSS
xx
rr22
x x
bbbb[g[gnn
((kk) ) --
xxiinn
((kk)] )] }}
EcuaciEcuacióón del Cambio de Velocidad con Factor n del Cambio de Velocidad con Factor de Constriccide Constriccióón n χχ
Ajuste o SintonizaciAjuste o Sintonizacióón de la n de la velocidad totalvelocidad total::
κχ =φ φ φ2
2
2 4
[0,1][0,1]κφ = φ φC S
φ > 4
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ComparaciComparacióónn
PSOPSO
PI y PI y PSO FCPSO FC
––
ComparaciComparacióón Sin n Sin vvMaxMax
a)a)
PIPI
IteracionesIteraciones
Posi
ciPo
sici
óó n xn x
wwII
==
00..88
xx(0)=0.0, (0)=0.0, vv(0)=0.1,(0)=0.1,wwCC
==wwSS
=2.0, y =2.0, y pp((kk)=)=gg((kk)=0.0)=0.0
IteracionesIteraciones
Posi
ciPo
sici
óó n xn x
b)b)
FCFC
κ = 1φ = φ = 2.05C S
φ = 4.1
χ = 0.729
MpMpii
MGMG
vvGkGk
d1d1
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
Movimiento VectorialMovimiento VectorialEn dos DimensionesEn dos Dimensiones
papaii
xxkk
vvpp
vvkk
XXkk+1+1
papajj
xxkk
vvpp
vvGkGk
vvkk
XXkk+1+1
MpMpjjMpMphh
papahh
xxkkvvpp
vvkk
XXkk+1+1
d2d2
Ajuste de Ajuste de ParParáámetrosmetros
En PSO los ParEn PSO los Paráámetros Bmetros Báásicos que deben sicos que deben ajustarse resultan serajustarse resultan ser::
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetrosForma CanForma Canóónica, PI y FC del PSOnica, PI y FC del PSO
Las Constantes Cognitiva y Social Las Constantes Cognitiva y Social
El TamaEl Tamañño de la Poblacio de la Poblacióón n
El LEl Líímite Superior de la Velocidad mite Superior de la Velocidad vvmaxmax
El Peso El Peso ––
FunciFuncióón de Decaimiento n de Decaimiento InercialInercial
El Factor de ConstricciEl Factor de Constriccióónn
PI PI elevadoelevado
propicia la exploracipropicia la exploracióónn
PI PI bajobajo
propicia la convergencia segpropicia la convergencia segúún los n los ajustes de las influencias MP y MGajustes de las influencias MP y MG
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetrosEl Peso Inercial El Peso Inercial --
PIPI
→→ Su selecciSu seleccióón es un compromison es un compromiso
1)1)
Valor ConstanteValor Constante
→→
[[0.40.4, , 0.8]0.8]
vviinn
((kk+1+1) ) ==
{{wwII
xx
vviinn
((kk))}}
++
wwcc
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
wwSS
xx
rr22
xx
[[ggnn
((kk) ) -- BBBxxiinn
((kk)] )]
EcuaciEcuacióón del Cambio de Velocidad con Peso n del Cambio de Velocidad con Peso Inercial Inercial wwII
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetros
2)2)
FunciFuncióón Decreciente n Decreciente ––
Decaimiento LinealDecaimiento Lineal
Max MinILin Max
w - ww k = w - × k
nK
vviinn
((kk+1+1) ) ==
{{wwILinILin
(k)(k)
xx
vviinn
((kk))}}
++
wwcc
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
wwSS
xx
rr22
xx
B B B [[ggnn
((kk) ) --
xxiinn
((kk)] )]
EcuaciEcuacióón del Cambio de Velocidad con Peso n del Cambio de Velocidad con Peso Inercial Decreciente Lineal Inercial Decreciente Lineal wwILinILin
(k(k))
((wwMinMin
,,
wwMaxMax
))
→→
(0.4(0.4, , 0.9)0.9)kk
= iteraci= iteracióón; n; nKnK= N= Núúmero Lmero Líímite de Iteracionesmite de Iteraciones
El Peso Inercial El Peso Inercial --
PIPI
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetros
3)3)
FunciFuncióón Decreciente n Decreciente ––
Decaimiento NODecaimiento NO--LinealLineal
PE
Max MinILin Max
w - ww k = w - × k
nK
vviinn
((kk+1+1) ) ==
{{wwILinPEILinPE
(k)(k)
xx
vviinn
((kk))}}
++
wwcc
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
wwSS
xx
rr22
xx B B [[ggnn
((kk) ) --
xxiinn
((kk)] )]
EcuaciEcuacióón del Cambio de Velocidad con Peso n del Cambio de Velocidad con Peso Inercial Decreciente NOInercial Decreciente NO--Lineal Lineal wwILinPEILinPE
(k(k))
((wwIMinIMin
,,
wwIMaxIMax
))
→→
(0(0, , 1)1)kk
= iteraci= iteracióón; n; nKnK= N= Núúmero Lmero Líímite de Iteracionesmite de Iteraciones
El Peso Inercial El Peso Inercial --
PIPI
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetros
3)3)
FunciFuncióón Decreciente n Decreciente ––
Decaimiento Lineal y Decaimiento Lineal y NONO--Lineal Lineal
kk
w(kw(k))
nKnK
PE =1PE =1
PE <1PE <1
PE >1PE >1
PE
depende de:a)
Tipo de Problema
b)
Espacio de Búsquedac)
Métrica de la Función de Aptitud
d)
nK
El Peso Inercial El Peso Inercial --
PIPI
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetros
4)4)
Peso Inercial Variable de Componente AleatoriaPeso Inercial Variable de Componente Aleatoria
IAlerndw = 0.5+2
vviinn
((kk+1+1) ) ==
{{wwIAleIAle
xx
vviinn
((kk))}}
++
wwcc
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
wwSS
xx
rr22
xx
B B B B
[[ggnn
((kk) ) --
xxiinn
((kk)] )]
EcuaciEcuacióón del Cambio de Velocidad con Peso n del Cambio de Velocidad con Peso Inercial de Componente Aleatoria Inercial de Componente Aleatoria wwIAleIAle
[[wwIMinIMin
,,
wwIMaxIMax
]]→→[0.5,[0.5,
1]1]
Para cada iteraciPara cada iteracióón k, se ejecuta n k, se ejecuta rndrnd modificando modificando wwIAleIAle
enen
[[wwIMinIMin
, , wwIMaxIMax
]]
rndrnd
→→ UU[0, 1][0, 1]
El Peso Inercial El Peso Inercial --
PIPI
La elecciLa eleccióón de n de wwCC
yy
wwSS
no estno estáá
disociada de disociada de la eleccila eleccióón de n de PIPI..
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetrosLas Constantes Cognitiva y Social Las Constantes Cognitiva y Social wwCC
y y wwSS
La versiLa versióón original del PSO proponen original del PSO propone:: wwCC
==
wwSS
==
2 (con ello, el 2 (con ello, el valor esperadovalor esperado
de de wwCC
xx
rr1 1 = = wwSS
xx
rr22
==
1:1:
las partlas partíículas culas sobrevuelan el Objetivo sobrevuelan el Objetivo ΔΔtt/2/2
).).
La misma versiLa misma versióón suele combinarse con el n suele combinarse con el Modelo con PI DecrecienteModelo con PI Decreciente..
Como Alternativa, se emplea el Como Alternativa, se emplea el Modelo con Modelo con PI AleatorioPI Aleatorio
y y wwCC
==
wwSS
==
1.49445.1.49445.
La elecciLa eleccióón de los Parn de los Paráámetros metros PIPI,,
wwCC
yy
wwSS
se se traduce en los Partraduce en los Paráámetros metros χχ, , φφCC
y y φφSS
..
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetrosModelo de CLERC Modelo de CLERC --
Factor de ConstricciFactor de Constriccióónn
κχ =φ φ φ2
2
2 4
[0,1][0,1]κφ = φ φC S
φ > 4
Es Clara la InterrelaciEs Clara la Interrelacióón entre Parn entre Paráámetrosmetros::
1.1.
φφC C == φφS S = 2.05; = 2.05; φφ
==
4.14.1→→ χχ = 0.729= 0.729
2.2.
φφC C = 2.8;= 2.8;
φφS S = 1.3; = 1.3; φφ
==
4.14.1→→ χχ = 0.729= 0.729
ConfiguraciConfiguracióón de Valores con: n de Valores con: κκ
= 1= 1
ClercClerc
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetrosTamaTamañño de la Poblacio de la Poblacióón n [TP][TP]
Un Un nnúúmero muy grande de partmero muy grande de partíículasculas propicia la propicia la exhaustividadexhaustividad
en la ben la búúsquedasqueda, ,
pero supone pero supone un enorme costo computacionalun enorme costo computacional..
Un Un nnúúmero muy pequemero muy pequeñño de parto de partíículasculas
atenta contra la atenta contra la diversidad de respuesta de diversidad de respuesta de SwarmSwarm
y, frecuentemente, produce y, frecuentemente, produce
convergencias prematurasconvergencias prematuras..
OptimizaciOptimizacióón de n de f(x,yf(x,y): ): [10[10--30]30];;
UbicaciUbicacióón n
ÓÓptima de ET y Alimentadores: ptima de ET y Alimentadores: [100[100--200]200]..
La ElecciLa Eleccióón del n del [TP][TP]
debe ser cuidadosa y es debe ser cuidadosa y es altamente dependiente del Problemaaltamente dependiente del Problema::
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
ParParáámetrosmetrosLa Velocidad MLa Velocidad Mááxima xima vvMaxMax
1.1.
Se asigna como Se asigna como vvMaxMax
el Rango de Variaciel Rango de Variacióón n de la Variable asociada a cada de la Variable asociada a cada dimensidimensióónn: :
Asumiendo algAsumiendo algúúnn
tipo de Control tipo de Control mediante elmediante el Modelo de Peso Inercial Modelo de Peso Inercial o el deo el de
Factor de Factor de
ContricciContriccióónn, su ajuste responde a tres enfoques, su ajuste responde a tres enfoques::
3.3.
La La vvMaxMax
es es AdaptativaAdaptativa, , AleatoriaAleatoria
y y Decreciente con el NDecreciente con el Núúmero de Iteracionesmero de Iteraciones. .
vvnMaxnMax
≤≤ |x|xnMaxnMax
--xxnMinnMin
||→→ n Dimensin Dimensióón en Nn en N
2.2.
La La vvMaxMax
se establece como en 1. y Decrece se establece como en 1. y Decrece con el Ncon el Núúmero de Iteracionesmero de Iteraciones. .
LLíímites Dinmites Dináámicos micos en el Espacio Nen el Espacio N-- Dimensional de Dimensional de
BBúúsquedasqueda
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
LLíímites en el Espacio mites en el Espacio NN--Dimensional de BDimensional de Búúsquedasqueda
papaii
xxii
((kk+1+1))
dd11
dd22 xxii
((kk+1+1))vvii
((kk+1+1))
xxii
((kk))
vvii
((kk+1+1))
Pared AbsorbentePared Absorbente
xxi[d1i[d1]]
((k+1k+1)= )= xx[d1[d1]]MaxMax
vvi[d1i[d1]]
((k+1k+1)= 0)= 0
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
LLíímites en el Espacio mites en el Espacio NN--Dimensional de BDimensional de Búúsquedasqueda
papaii
xxii
((kk+1+1))
dd11
dd22
xxii
((kk+1+1))vvii
((kk+1+1))
xxii
((kk))
vvii
((kk+1+1))
Pared ReflectantePared Reflectante
vvi[d1i[d1]](k+1) (k+1) = = --
vvi[d1i[d1]]
((k+1k+1))xxi[d1i[d1]](k+1)(k+1)
= 2 = 2 xx
xx[d1[d1]]MaxMax
--
xxi[d1i[d1]]
(k+1)(k+1)
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
LLíímites en el Espacio mites en el Espacio NN--Dimensional de BDimensional de Búúsquedasqueda
papaii
xxii
((kk+1+1))
dd11
dd22
xxii
((kk))
vvii
((kk+1+1))
Pared InvisiblePared Invisible
No se Calcula el No se Calcula el FitnessFitness
o o AptitudAptitud
de la de la partpartíícula i en (k+1)cula i en (k+1)
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
LLíímites en el Espacio mites en el Espacio NN--Dimensional de BDimensional de Búúsquedasqueda
papaii
xxii
((kk+1+1))
dd11
dd22 xxii
((kk+1+1))vvii
((kk+1+1))
xxii
((kk))
vvii
((kk+1+1))
Pared FronteraPared Frontera
xxi[d1i[d1]]
((k+1k+1) = ) = xx[d1[d1]]MaxMax
vvii
((kk+1+1) = ) = vvii
((kk+1+1))
Esquemas del PSOEsquemas del PSO
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
TopologTopologííasasTopologTopologíía Globala Global
Todas las Todas las PartPartíículas estculas estáán n
Interrelacionadas Interrelacionadas y Reciben y Reciben
InformaciInformacióón de n de sus Congsus Congééneresneres
Se ralentiza la transmisiSe ralentiza la transmisióón de informacin de informacióón n pero es completapero es completa
GG=(=(gg11
,,gg22
, ...,, ...,ggNN
)) Vector PosiciVector Posicióón Mejor Globaln Mejor Global
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
TopologTopologííasasTopologTopologíía Local con a Local con nnvv
= = 44
Todas las PartTodas las Partíículas se culas se Relacionan (y Reciben Relacionan (y Reciben
informaciinformacióón) n) úúnicamente con sus nicamente con sus nnvv
vecinasvecinas
Se acelera la Se acelera la transmisitransmisióón de n de
informaciinformacióón pero n pero por grupo de por grupo de nnvv
LL=(=(ll11
,,ll22
, ...,, ...,llNGrNGr
))Vector PosiciVector Posicióón Mejor Local n Mejor Local
por Grupo de Vecinospor Grupo de Vecinos
Diagramas de Flujo Diagramas de Flujo para el PSOpara el PSO
Para cada partPara cada partíícula i = 1..TPcula i = 1..TP
Ajustar ParAjustar Paráámetrosmetros
APAPii
=0=0
L=GL=G
k=1k=1
TopologTopologíía a LL??
InicializarInicializar
EnjambreEnjambreInicializar Rangos Inicializar Rangos NN--DimensionesDimensiones
Actualizar VelocidadActualizar Velocidad
Actualizar PosiciActualizar Posicióónn
Limitar Limitar vvii
(k(k+1) a +1) a vvMaxMax
Limitar Limitar XXii
(k(k+1); +1); APAPii
=1=1
i=i+1i=i+1
Evaluar Evaluar ff
Mejor Mejor PP
Mejor Mejor GG
Fin
SiSi
SiSi
Guardar GGuardar G
NoNo
NoNo
SiSi
NoNoCriterio de STOP?Criterio de STOP?
F=Extraer Mejor VecinoF=Extraer Mejor Vecino
Mejora Mejora ff
??
k=k+1k=k+1
SiSi
PSO PSO SSííncrononcrono
i=TPi=TP
P Invisible y P Invisible y APAPii??
Para cada partPara cada partíícula i = 1..TPcula i = 1..TP
L=FL=F
11 11
22
22
NoNo
i=TPi=TP
Para cada partPara cada partíícula i = 1..TPcula i = 1..TP
Ajustar ParAjustar Paráámetrosmetros
APAPii
=0=0
L=GL=G
k=1k=1
TopologTopologíía a LL??
Inicializar EnjambreInicializar EnjambreInicializar Rangos Inicializar Rangos NN--DimensionesDimensiones
Actualizar VelocidadActualizar Velocidad
Actualizar PosiciActualizar PosicióónnLimitar Limitar vvii
(k(k+1) a +1) a vvMaxMax
Limitar Limitar XXii
(k(k+1); +1); APAPii
=1=1
i=i+1i=i+1
Evaluar Evaluar ff
Mejor Mejor PP
Mejor Mejor GG
P Invisible y P Invisible y APAPii??
Fin
NoNo
SiSi
Guardar GGuardar G
NoNo SiSi
SiSi
NoNoCriterio de STOP?Criterio de STOP?
F=Extraer Mejor VecinoF=Extraer Mejor Vecino
Mejora Mejora ff
??
k=k+1k=k+1
SiSi
PSO AsPSO Asííncrononcrono
i=TPi=TP NoNo
L=FL=F
La La InicializaciInicializacióón del n del EnjambreEnjambre
supone que supone que existen existen II PartPartíículas, a las culas, a las
que se les asigna que se les asigna posicionesposiciones
y y velocidadesvelocidades aleatoriasaleatorias::
XXii
→→ {x{xi1i1
rndrnd...... xxiNiN
rndrnd}}VVii
→→ {v{vi1i1
rndrnd... ... vviNiN
rndrnd}}PPii
y G = y G = Mejor(PMejor(Pii
) en ) en II
PSO PSO SSííncrononcrono
Rango de ParRango de Paráámetrosmetros –– DefiniciDefinicióón del Espacio de n del Espacio de
SolucionesSoluciones: en cada : en cada DimensiDimensióón n, se fija que la n n, se fija que la variable variable xxnn
→→[x[xnn
MinMin,, xxnn
MaxMax]]
PSO PSO SSííncrononcrono
EvaluaciEvaluacióón de la Funcin de la Funcióón de n de AptitudAptitud:: para cada Partpara cada Partíícula, cula, ii, y , y en cada iteracien cada iteracióón, n, kk, existir, existiráá un un
vector vector XXii(k(k))
→→ ffii(k(k) ) = = ff(X(Xii(k(k))))
PSO PSO SSííncrononcrono
ActualizaciActualizacióón del Mejor Personaln del Mejor Personal:: para cada Partpara cada Partíícula, cula, ii, y en cada , y en cada iteraciiteracióón, n, kk, se comprueba si con , se comprueba si con
PPii
: : ffii(k(k) ) > > ff(P(Pii
)) →→PPii
= = XXii(k(k))
PSO PSO SSííncrononcrono
ActualizaciActualizacióón del Mejor Globaln del Mejor Global:: para cada Partpara cada Partíícula, cula, ii, y en cada , y en cada iteraciiteracióón, n, kk, se comprueba si con , se comprueba si con
GG: : ffii(k(k) ) > > ff(G(G)) →→ G = G = XXii(k(k))
PSO PSO SSííncrononcrono
ActualizaciActualizacióón de la velocidadn de la velocidad:: para para cada Partcada Partíícula, cula, ii, en cada , en cada
dimensidimensióón, n, nn, y en cada iteraci, y en cada iteracióón, n, kk, , se procede segse procede segúún el n el Modelo PSOModelo PSO::
PSO PSO SSííncrononcrono
vviinn
((kk+1+1) ) ==
{{ww(k)(k)
xx
vviinn
((kk))}}
++
wwCC
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
wwSS
xx
rr22
xx BBB[[llnn
((kk))
--
xxiinn
((kk)] )]
1)1)
VelocidadVelocidad
con Peso Inercialcon Peso Inercial
2)2)
VelocidadVelocidad
con Factor de Constriccicon Factor de Constriccióónnvviinn
((kk+1+1) ) ==
χχ
x x {{vviinn
((kk) ) ++
φφCC
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
φφSS
xx
rr22
x x
bbbb[[llnn
((kk))
--
xxiinn
((kk)] )] }}
ActualizaciActualizacióón de la posicin de la posicióónn:: para cada para cada PartPartíícula, cula, ii, en cada dimensi, en cada dimensióón, n, nn, y , y
en cada iteracien cada iteracióón, n, kk, se procede , se procede segsegúún mediante:n mediante:
PSO PSO SSííncrononcrono
con con ΔΔtt
= 1= 1xxiinn
((kk+1+1) ) ==
xxiinn
((kk) ) ++
vviinn
((kk+1+1) ) xx
ΔΔttEcuaciEcuacióón del Movimienton del Movimiento
METAMETA--HEURHEURÍÍSTICA PSO STICA PSO ––
Modelo con Factor de Modelo con Factor de ConstricciConstriccióónn::
Modelo de CLERCModelo de CLERC
Alteraciones en la Forma CanAlteraciones en la Forma Canóónica delnica del
PSO PSO
vviinn
((kk+1+1) ) ==
χχ
x x {{vviinn
((kk) ) ++
φφCC
xx
rr1 1 xx
[p[piinn
((kk) ) --
xxiinn
((kk)] )] ++
φφSS
xx
rr22
x x
bbbb[g[gnn
((kk) ) --
xxiinn
((kk)] )] }}
EcuaciEcuacióón del Cambio de Velocidad con Factor n del Cambio de Velocidad con Factor de Constriccide Constriccióón n χχ
Ajuste o SintonizaciAjuste o Sintonizacióón de la n de la velocidad totalvelocidad total::
κχ =φ φ φ2
2
2 4
[0,1][0,1]κφ = φ φC S
φ > 4
AjusteAjuste
χχ