You are on page 1of 9

Universidad Austral de Chile

Facultad de Ciencias de la Ingeniera


Escuela de Ingeniera Civil en Informtica

Taller de Algoritmos Evolutivos


INFO267 - Inteligencia Artificial
Optimizacin de ruta martima con apoyo de energa elica

Asignatura :
INFO267 - Inteligencia Artificial
Profesor Encargado:
Jorge Maturana
Integrantes :
Rodolfo Daz
Genoveva Flores
Ricardo Rochow
Benjamn Gallusser
Jonathan Muster
Francisco Guzmn
Jos Ramirez
8 de Octubre 2014

Resumen
El siguiente documento, presenta un anlisis detallado de los resultados y metodologas
usadas, en la aplicacin de algoritmos evolutivo para resolver un problema de optimizacin de
recursos.
El problema a resolver consiste en buscar la ruta ptima de un carguero que cuenta con un
sistema mixto de empuje, a petrleo y elico. Conociendo los vientos dominantes en distintos
sectores del ocano, se debe encontrar una ruta que minimice el costo de combustible al viajar
desde un puerto a otro.

Para llevar a cabo este experimento, utilizamos MatLab en la implementacin del algoritmo
evolutivo que optimiza la solucin del problema, luego se crearon 4 escenarios, con distintas
caractersticas para observar y analizar el comportamiento de este, y as de manera emprica
encontrar la mejor solucin.

Introduccin
Contexto
Hoy en da debido a los avances en las tecnologas de comunicacin, se hace muy fcil hacer
negocios a larga distancia, por lo que las importaciones y exportaciones han ido en alza,
sumado a ello se tiene que el medio de transporte preferido debido a la capacidad de carga es
el transporte martimo, y los costos asociados a este tipo de servicio. Sin embargo debido a la
crisis del petrleo y control ambiental se hace necesario el optimizar el uso de este recurso. En
este contexto, se han desarrollado algunas propuestas para incorporar el uso de energas
renovables (elica, solar) al transporte martimo.

Energa Elica
La energa elica es la energa obtenida a partir del viento, es decir, la energa cintica
generada por efecto de las corrientes de aire, y que es convertida en otras formas tiles de
energa para las actividades humanas[Wik14]. En el caso de las embarcaciones la accin del
viento sobre su aparejo constituye una forma de propulsin, sin embargo posee el
inconveniente de depender del viento. A pesar que en la actualidad se tiene conocimiento de la
intensidad y la direccin predominante del viento, esto no es suficiente para lograr la velocidad
de operacin esperada, por lo que se plantea el uso de embarcaciones con fuentes de energas
hbridas, petrleo/elica, que se complementen entre ellas. Hoy en da existen distintas
propuestas para capturar la energa elica, sin embargo en este trabajo nos limitaremos a las
embarcaciones a vela.

Problemtica
Problema
Se requiere encontrar una serie de puntos que describen la trayectoria que minimice el
consumo de combustible. La ruta debera orientarse de manera tal de aprovechar los vientos
predominantes, pero sin alargarse innecesariamente. Para esto utilizaremos un modelo
simplificado para representar el problema.

Modelo de la Trayectoria

El ocano ser representado por una grilla regular, tal como aparece en la figura 1. Los
rectngulos azules definen una serie de segmentos rectos. Los crculos rojos, corresponden a
la posicin de la nave cada 6 hr. de navegacin, la evaluacin de combustible se evala entre

los puntos A y B.[Mat14,2]

Figura 1:modelo de la trayectoria


del barco

Figura 2: Empuje del viento y motor sobre el consumo

Influencia del Viento


Para que el barco llegue a su puerto destino, este debe desplazarse a una velocidad constante
de 8 m/s. Para determinar el consumo de combustible que se genera para mantener la
velocidad constante antes sealada, se debe tener en cuenta los vientos, los cuales nos dan
dos posibles situaciones:
El empuje del viento esta a favor del desplazamiento del barco, por lo que nos
reduce el consumo de combustible, pues no se requiere mantener la velocidad con el
uso del motor.
El empuje del viento no se encuentra a favor del desplazamiento del barco, por
lo que nos obliga a utilizar el motor, lo que aumenta el consumo de combustible.

Clculo de Consumo de Combustible


El consumo de petrleo est dado en funcin del empuje suplementario que deba proveer el
motor, e indica la cantidad de kilos de combustible consumido por hora. La funcin objetivo a
minimizar es el consumo total de combustible a lo largo de una trayectoria.[Mat14,4]

Marco experimental
Para el desarrollo de nuestro algoritmo evolutivo se aplican los siguientes operadores de
evolucin:
Evaluacin, clculo del consumo de combustible de cada ruta en la poblacin.
Seleccin, en base a comparaciones directas entre individuos de la poblacin se escoge los
puntos que tendrn la oportunidad de reproducirse. Para esto, se aplica el concepto del ktorneo, es decir que para cada sitio en la nueva generacin luchan k rutas de la actual
generacin. La ruta con el consumo minimo gana y obtiene el sitio.
Cruzamiento, el algoritmo de cruce utilizado, consiste en la seleccin de un punto de la ruta en
la cual sern intercambiados. Cada ruta participa en el cruzamiento con una cierta probabilidad.
Las rutas seleccionadas forman parejas, las cuales se denominan Padres. Los padres pasan
por una seleccin de un punto aleatorio en sus rutas, donde sern cortadas e intercambiadas
entre ambos. Este procedimiento es el que da origen a los hijos, los cuales tienen la estructura
que se muestra a continuacin.

Grfico. Ej. de cruzamiento de dos rutas A y B, cada una con seis puntos

Mutacin, Cada ruta participa en la mutacin con una cierta probabilidad. Si es elegida, se
modifica slo un punto (ms si es deseado) aleatorio de la ruta. Cada cierto porcentaje de
iteraciones se cambia la forma de mutacin, las cuales consisten en:
a. Cuadrado fijo con los cuatro rincones para posibilidades de mutacin.
b. Mutacin en todos los puntos del rea del cuadrado.
c. igual que b, reduccin del cuadrado de mutacin a la mitad.

Grfico. Los tres tipos de mutacin

Resultados
Escenario 1:
El escenario bsico tiene 500 generaciones. Se usa una poblacin de 20, cada uno con 6
rombos, una cantidad de competidores por iteracin (k) de 5, una probabilidad de cruzamiento
(pc) y de mutacin (pm) de 0.5. El tamao del cuadrado de mutacin es 1000x1000 km.

Resultados escenario 1:
A continuacin presentamos los grficos y datos obtenidos para este escenario.
El grfico 1 nos muestra el comportamiento o la mejora que tiene la mejor ruta versus el
promedio de todas las rutas, para este escenario, podemos observar que el comportamiento de
la mejor ruta es constante durante todo el proceso, por otra parte el promedio de la poblacin
tiene un grado de variabilidad significativo, por lo que podemos concluir que existe mucha

exploracin pero falta explotacin.


Grfico 1. Nmero de Iteraciones versus consumo de combustible para escenario 1.
Grfico 2. Navegacin (trayectoria) del barco en el escenario 1.

El grfico 2 nos muestra la mejor ruta (color rojo) versus la mejores rutas (color azul) por cada
10% de las generaciones. En este escenario, las primeras 90% de generaciones no sufren
ningn cambio (grfico 1), por lo que solo podemos visualizar dos rutas.

Escenario 2:
Para realizar el escenario 2 aumentamos la pm a 0.8, la cantidad de rombos a 8 y bajamos el
tamao del cuadrado a 400x400 km.

Resultados escenario 2:
En el grfico 3 podemos ver que durante las primeras 50 iteraciones, la solucin ptima sufre
una mejora considerable con respecto al escenario 1, sin embargo a lo largo del algoritmo esta
se va estabilizando, quedando estancado, por lo que a pesar de que la explotacin ha
mejorado, no es la mejor solucin. Por otro lado debido a que la diferencia entre el promedio y
la mejor ruta, es alta, podemos decir que existe un alto grado de exploracin, por lo que al

hacer muchas iteraciones el algoritmo esta dando solo palos ciegos..


Grfico 3 : Nmero de Iteraciones versus consumo de combustible para escenario 2.
Grfico 4. Navegacin (trayectoria) del barco en el escenario 2.

Al observar el grfico 4, podemos ver que para este escenario la ruta fue sufriendo mejoras a lo
largo de todas las iteraciones, por lo que se observa un grado de evolucin en los resultados.

Escenario 3:
Basndose en los resultados del escenario 2, se le efectuaron las siguientes mejoras al
algoritmo.
cantidad de competidores por iteracin: aumenta de 5 a 8 a 40% de las
generaciones
probabilidad de cruzamiento: inicia en 0.5, baja a un cuarto de eso a 80% de las
generaciones
probabilidad de mutacin: igual 0.8, pero se aplica a 2 rombos de la ruta.
Utilizamos 3 formas de mutacin descritas en el Marco Experimental, las
cuales van cambiando despus de un cierto porcentaje de iteraciones del algoritmo (por
ej. 40% y 80%).

Resultados escenario 3:
En el grfico 5 vemos como el algoritmo tiene una mejora considerable al 40% y al 80% de las
iteraciones, esto debido a los cambios efectuados en las etapas de seleccin, cruzamiento y
mutacin. En estos porcentajes la diferencia entre la mejor ruta y el promedio se minimiza, por

lo que existe una especie de equilibrio entre la exploracin y la explotacin, sin embargo para

obtener la mejor solucin se debi agregar nuevas caractersticas al cdigo.


Grfico 5. Nmero de Iteraciones versus consumo de combustible para escenario 3.
Grfico 6. Navegacin (trayectoria) del barco en el escenario 3.

Finalmente en el grfico 6 podemos ver como fue evolucionando la ruta durante todas las
iteraciones.

Escenario 4
Para el escenario 4 los parmetros utilizados son los mismos que en el escenario 3, pero
subimos el nmero de rombos azules en pasos de 1 hasta 15.

Resultados escenario 4:

Grfico 7. Consumo de la mejor ruta v/s la cantidad de rombos utilizados.

En el grfico se puede ver que el resultado final del algoritmo evolutivo bsico no depende
mucho de la cantidad de los rombos azules.

Encontrar el consumo mnimo con explotacin(mejor ruta)


Los mejores resultados encontrados fueron en el escenario 3 (consumo menos que 100.000
litros) teniendo una trayectoria similar. Para encontrar el valor mnimo, se cree que la
trayectoria del consumo mnimo global es similar al del grfico 7. Es por esta razn que se
asume que las mejores trayectorias ( de menos consumo de combustible) se encuentran en
esta localidad y no cercana a las fronteras del grfico. Para verificar esta suposicin se ejecut

el algoritmo evolutivo varias veces para asegurar que no se descarte ningn caso.
Grfico 8. Trayectoria del barco con 8 rombos.
Grfico 9. trayectoria del barco agregando rombos intermedios (rojos) entre los rombos establecidos
(azul).

Para obtener ms explotacin, una mejora en la solucin es doblar la cantidad de los rombos
azules. Por esto que la poblacin inicial del algoritmo ser fijo con los mejores puntos
(rombos), o sea , todos las combinaciones de puntos en la poblacin inicial son idnticas.
Entre cada dos rombos azules, ponemos un punto nuevo exactamente en la mitad de los dos
(rombos rojos en la grfica).
Ahora se ejecuta el algoritmo con la poblacin fija y al doble. Para sacar mejores resultados, se
tiene que adaptar los parmetros del escenario 3. Se necesita una mayor mutacin, es por esto
que se subi la cantidad de puntos que sean modificados significamente, pero al mismo tiempo
la mutacin debe que ser ms pequea, entonces se debi bajar el cuadrado de mutacin al
tamao de 50x50 km. Igualmente es importante que la seleccin sea ms alto, por eso se
aument el k inicial del k-torneo por ej. a 9 y se increment el nmero de iteraciones a 1000.
Con estos cambios el proceso de la obtencin de un mejor valor es ms lento, pero constante.
El proceso de doblar la poblacin puede ser repetido varias veces para obtener una explotacin
mxima. Con las computadoras de la actualidad este algoritmo dura varios minutos. La mejor
solucin obtenida contiene 90 rombos que definen la ruta, el consumo de combustible es de
78839 litros. La ruta se asemeja a la grfica anterior, pero tiene varios lugares con pequeas
variaciones. En conclusin se puede decir que esta ruta con una alta probabilidad cercana al
mximo global.

Grfico 10. mejor trayectoria obtenida con 90 rombos.

Conclusiones
Despus de llevar a cabo el experimento, que consisti en desarrollar un algoritmo evolutivo,
analizar los datos, y adaptar el algoritmo, pudimos comprobar que despus de cierto nmero de
generaciones el mejor individuo de la poblacin estuvo cerca de la solucin buscada.
Un factor determinante a la hora de encontrar una buena solucin consiste en Adaptar el
algoritmo mientras se realizan las iteraciones, por este problema especfico, se encuentran
mejores resultados cuando se cambian unos parmetros del algoritmo despus de un cierto
tiempo. Antes se trabajaba con nmeros fijos, p.e. a 130.00 litros, pero fue mejor solucin
adaptar el algoritmo despus de un porcentaje de iteraciones.
Lo ms importante dentro de esta mejora al algoritmo es el tamao de la mutacin, hay que
bajarlo poco a poco. Tambin, en el anlisis vimos que esta bien trabajar con una mutacin de
retcula al inicio y cambiar a una mutacin variable despus de 30% de los iteraciones por
ejemplo. Se nota que cuando hay una adaptacin, el mnimo actual y el promedio de la
poblacin se acercan y ambos bajan.

Referencias
[Mat14] Jorge Maturana, (2014),Optimizacin de ruta martima con apoyo de energa elica
Planteo de problema,Valdivia.
[Wik14] Wikipedia., (2014). Energa Elica. Disponible en
http://es.wikipedia.org/wiki/Energa_elica. Consultado el 8 de Octubre de 2014