Вы находитесь на странице: 1из 88

Tesis de Licenciatura

Modelos y algoritmos de optimizacin combinatoria para


planicacin de rutas en regatas de barcos de vela

Tesistas Director
Federico E. Martnez Dr. Javier Marenco
femartinez@dc.uba.ar jmarenco@dc.uba.ar
lu 17/06
Gonzalo SainzTrpaga Codirector
gsainztrapaga@dc.uba.ar Dr. Toms Tetzla
lu 454/06 tetzlaff@dc.uba.ar

Diciembre de 2010

Departamento de Computacin
Facultad de Ciencias Exactas y Naturales
Universidad de Buenos Aires
Resumen

Los barcos de vela compiten en eventos denominados regatas, cuyo objetivo consiste
generalmente en recorrer un circuito determinado en el menor tiempo posible. Aunque existen
regatas de duraciones que van desde menos de una hora hasta varios meses, en todos lo
casos interviene fuertemente el planeamiento estrategico: la velocidad de las embarcaciones
est
a determinada en gran medida por las condiciones meteorol ogicas.
Las herramientas computacionales existentes para toma de decisiones de estrategia en re-
gatas estan fuertemente orientadas a las regatas de larga distancia. Bas andose en un pronostico
meteorol ogico y en una predicci on numerica del comportamiento de un barco, pueden indicar
a los navegantes las rutas m as veloces para la situaci
on pronosticada. Sin embargo, no hacen
consideraciones sobre la fiabilidad del pron ostico ni ning
un tipo de optimizaci on estocastica.
Las regatas de corta distancia, por su parte, transcurren en extensiones de tiempo y espacio
que estan fuera del alcance de los pron osticos; los fen
omenos dominantes que condicionan la
estrategia se originan en las turbulencias atmosfericas. En este contexto, las herramientas
existentes no tienen utilidad pr actica.
En esta tesis se abord o el problema de las regatas de corta distancia, buscando desarrollar
herramientas que ayuden a los regatistas a tomar decisiones en funci on de mediciones realizadas
en tiempo real por instrumentos de navegaci on instalados en el barco.
Con este fin, desarrollamos un modelo de optimizaci on combinatoria teniendo en cuenta las
caractersticas propias de las regatas de corta distancia que se desprecian en los modelos de gran
escala. Propusimos a su vez un algoritmo eficiente para la optimizaci on de rutas en este modelo
con informaci on completa, y una serie de heursticas inspiradas en conocimiento experto del
dominio del problema. A partir de un modelo de simulaci on de condiciones meteorol ogicas
implementado para tal fin, contrastamos el rendimiento de las heursticas.

Estas logran, en condiciones favorables y bajo informaci on incompleta, ubicarse a menos
de 2 % de las rutas o ptimas realizando s olo procesamiento en tiempo real.

Abstract

In sailboat racing, boats try to go over a circuit in the shortest possible amount of time.
Although sailboat race durations can be as short as half an hour or as long as half a year, in
all cases strategic planning is of the upmost importance: the speed of the boats over the water
is mostly determined by the weather conditions they find along their path.
Existing computer tools for strategic decisionmaking are highly biased towards long dis-
tance races. Based on weather forecasts and an accurate prediction of sailboat performance,
these tools help sailors find the fastest routes for the expected conditions. However, not much
is done in the way of dealing with the inherent imperfections that are present in forecasts.
There are no stochastic optimization tools in the market.
On the other hand, short distance racing takes place in short spans of time and space that
forecasting tools cannot predict; the phenomenons that have the highest amount of influence
on strategic decisions are caused by atmospheric turbulence, which no available weather model
takes into account. In this context, existing tools have no practical application.
In this thesis we focus on short distance racing, in an attemt to develop tools for decision
making that take advantage of realtime weather data made available by onboard weather
sensors and electronics.
For this purpose, we developed a combinatorial optimization model that accounts for the
specific characteristics of short distance racing that largescale models disregard. At the same
time, we propose an efficient algorithm for route optimization under complete information, as
well as heuristic methods inspired in the knowledge of experts in the field of sailboat references.
Using a weather simulation model that we created for this purpose, we can analyze the results
obtained by our heuristic methods in realistic setups.
In favorable conditions, the routes generated in real-time by our algorithms are less than
2 % away from the optimal ones.
Indice

1 Introducci
on 3
1.1 El mundo de la vela 3
1.1.1 Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Embarcaciones de vela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2.1 Como hace un velero para navegar contra el viento? . . . . . . . . . . . . . 5
1.1.2.2 Predicciones de velocidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.3 Regatas de vela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.3.1 Como se gana una regata? . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.2 Estado del arte 11


1.2.1 La ventaja estrategica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.2 Herramientas existentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.3 Limitaciones caractersticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2.3.1 Distintas escalas de optimizacion . . . . . . . . . . . . . . . . . . . . . . . . 15
1.2.3.2 El agua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.3 Resumen del trabajo 18

2 El modelo 20
2.1 La prediccion de velocidad 20
2.1.1 Velocidad bajo corriente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.2 Modelado de la cancha 25


2.2.1 El
area de interes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.2 El grafo de rutas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2.2.1 Las maniobras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.2.2 Calculo de costos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3 Algoritmo Exacto 35
3.1 C omputo de la ruta optima 35
3.1.1 Camino mnimo en grafos independientes del tiempo . . . . . . . . . . . . . . . 35
3.1.1.1 Algoritmo A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.2 Camino mnimo en grafos dependientes del tiempo . . . . . . . . . . . . . . . . . 36
3.1.2.1 Camino mnimo en grafos FIFO . . . . . . . . . . . . . . . . . . . . . . . . 38
3.1.3 Heursticas propuestas para A . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1.3.1 Heurstica basada en distancia cartesiana . . . . . . . . . . . . . . . . . . . 39
3.1.3.2 Heurstica basada en VMC . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1.4 Algoritmo final para rutas
optimas . . . . . . . . . . . . . . . . . . . . . . . . . 41

3.2 Implementaci
on 41

4 Heursticas 44
4.1 Por qu
e desarrollar heursticas? 44

4.2 Framework para heursticas 45

4.3 Criterios de decisi on 46


4.3.1 Criterio de mayor VMG ponderado . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.3.2 Criterio de mayor VMG ponderado y distancia . . . . . . . . . . . . . . . . . . . 48
4.3.3 Criterios asimetricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.3.4 Criterios de viento promedio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5 Experimentaci
on 53

5.1 El modelo experimental 53


5.1.1 Calidad de los escenarios a utilizar . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.1.2 Obtencion de los datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
5.1.3 El modelo de simulacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.1.4 La corriente y el barco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5.2 Heursticas para A* 60

5.3 Comportamiento del modelo 63


5.3.1 Cantidad de nodos por lado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.3.2 Cantidad de cuadrantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.3.3 Cantidad de tiempos de cambio . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

5.4 Heursticas 68
5.4.1 Modelo para experimentacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.4.1.1 Optimizaci
on de los parametros . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.4.1.2 Comparacion de las heursticas . . . . . . . . . . . . . . . . . . . . . . . . . 70

6 Conclusiones 79
6.1 Balance del trabajo 79

6.2 Trabajos futuros 79


Martnez, SainzTr
apaga Pagina 1 de 82

Agradecimientos
A Javier Marenco, que acept o con ganas dirigir esta tesis sobre un tema bastante extra
no, y
siempre estuvo disponible para asistirnos (y tranquilizarnos) en todo lo que necesitamos.

A Alberto Enguix, que nos abri o las puertas de su casa para enterarse de que estabamos
haciendo, y nos ayud o con la mejor onda para que avanzaramos con nuestro trabajo en la zona
gris de la meteorologa a peque
na escala.

A Andrew Philpott, cuya investigacion y publicaciones nos permitieron no empezar de cero con
esta historia de ruteo de veleros.

A Pablo Jacovkis, que nos dijo que s, que seguramente podamos hacer una tesis sobre esto. A
Tom as Tetzlaff, por su colaboraci
on con el trabajo. A Tate de empopado.com, que se intereso por
nuestro trabajo y nos facilit
o cantidades de datos que finalmente no pudimos usar. A Mara Eugenia
Dillon, que corrio simulaciones meteorologicas de alta resolucion para nosotros.

A nuestros companeros: Checho, Metegol, Gonza Rubio, Victoria, Page, Marta, Emilio, Santi,
que hicieron de estos 5 a nos un perodo inolvidable, a
un en los momentos mas asperos en que
vivamos en los laboratorios y dormamos tan poco.

A todos los profesores y ayudantes extraordinarios que conocimos a lo largo de todos estos
a
nos, que con su trabajo y dedicaci
on nos inspiran da a da.

A los que nos olvidamos de nombrar, que seguramente son varios.

Y finalmente a 40 millones de argentinos que sostienen esta Universidad, y que nos permiten a
unos pocos afortunados acceder a una educacion superior publica, gratuita y de primer nivel.

Agradecimientos de Gonzalo

A mi Mam a (a la que no le gusta que le diga vieja), que me llevo a una colonia de vacaciones
donde me sub por primera vez a un Optimist, que me tuvo paciencia todos estos a nos y se
o por cada detalle1 .
preocup

A mi viejo, por su incondicionalidad. Por su interes en lo que sea en que ando metido, y por
unos 300 desayunos antes de entrar a clase que nos valieron el Lo de siempre? no en una, sino
en varias cafeteras.

A mi hermana Mariana, que me explico las fracciones cortando un alfajor de chocolate, y me


dijo que en el Pabell
on 1 haba gente como yo. Y a mi cu
nado, que aunque lo niegue encajara bien
en el Pabell
on 1.

A Natal, que me ense


no a pedir disculpas y a reirme de m mismo, y me amanso a lo largo de
estos a
nos. Gracias de parte ma y de todos los que tienen que tratar conmigo.
1 S
olo 3 minutos atr
as acabo de recibir un mail de ella con un link a la p
agina de una imprenta donde me pueden
imprimir la tesis!
Martnez, SainzTr
apaga Pagina 2 de 82

A mi familia. Y a mis amigos, que ya son familia, por su amistad.

A Fede, por una lecci


on de 5 a
nos sobre la humildad, la dedicacion y el esfuerzo.

A los que se fueron, por sus ense


nanzas.

A los que intentan superarse, por ser una fuente de inspiracion.

Agradecimientos de Federico

Afortunadamente son muchas las personas a las que tengo que agradecer, ya que son muchos
los que de una u otra forma hicieron cosas por m.

Primero y antes que nada, dar gracias a Dios, por estar conmigo en cada paso que doy y por
haber puesto en mi camino a aquellas personas que han sido mi soporte y compa
na durante toda
mi carrera.

Agradecer a mis viejos, que me apoyaron, me bancaron, estuvieron siempre, sobre todo en los
momentos difciles, que los tuvimos que pasar. Sin duda, no podra haber llegado a donde llegue si
no fuera por ellos, y por su esfuerzo constante. Son un ejemplo y un orgullo para m.

No puedo dejar de agradecerle a mi hermana Estafana (o Rudy) porque ella tambien me


banc
o mucho durante toda la carrera, en cuantos parciales la habre vuelto loca con mis nervios?!

A mis abuelos tambien debo dedicarles un parrafo. Su constante apoyo y consejo fueron funda-
mentales para que hoy sea lo que soy.

Sabri se gan
o el cielo con la paciencia que me tuvo todo este tiempo. Peluca gracias por tu
amor, tu compa
nia y tu comprension!

Le agradezco a GomoX por su amistad, sin duda una de las mejores cosas que me llevo de la
facultad. Sos una excelente persona, y un mejor amigo.

A Emi por ser tan buen amigo, a mi madrina que hace mucho por m, y a muchos mas que el
espacio me impide nombrar, Gracias!
Martnez, SainzTr
apaga Pagina 3 de 82

Captulo 1

Introducci
on

1.1. El mundo de la vela

1.1.1. Historia

En 1848 la compa na de joyera londinense Garrard & Co


forj
o una enorme jarra de plata que fue bautizada entonces como
la copa de las 100 guineas, haciendo referencia a su valor mone-
tario. Tres a
nos m
as tarde, Henry William Paget, primer marques
de Anglesey, compro la jarra y la dono al Royal Yacht Squadron co-
mo premio para su regata alrededor de la isla de Wight que tendra
lugar en 1851.

A mediados del siglo XIX, Inglaterra era la nacion mas indus-


trializada del mundo y la Royal Navy era poco menos que la joya
de la corona. Sin embargo, la flota inglesa fue derrotada por la
u
nica embarcaci on norteamericana que participo en la regata: la
goleta America. En un evento de car acter profetico, el peque
no,
moderno y liviano barco americano se impuso a la pesada flota in-
glesa hiriendo as el orgullo de la primera potencia mundial. Tras
esta victoria el trofeo fue rebautizado Copa America, en honor
al barco triunfador.

Hoy, mas de 160 anos despues de que la jarra fuera forjada,


la Copa America se sigue disputando: se trata del trofeo deportivo
mas antiguo que a
un se compite en la actualidad. Ya no con goletas
y bergantines de madera portando velas de algodon egipcio, sino Figura 1.1: La Copa America
con dise
nos ultramodernos construidos con laminados compuestos,
verdaderas obras de ingeniera comparables a las de la industria
aeroespacial.

Sin embargo, el espritu del deporte se mantiene intacto. Equipos de todo el mundo compiten,
impulsados u
nicamente por el viento, en carrera hacia el historico trofeo.

1.1.2. Embarcaciones de vela

La caracterstica primordial de los vehculos a vela es que obtienen la energa necesaria para
su movimiento a partir del viento. Si bien este trabajo se enfoca mayormente en embarcaciones, la
gran mayora de los conceptos se transfieren de forma analoga a otro tipo de vehculos eolicos como
los iceboats o karts a vela. Estos u
ltimos tienen la ventaja de desplazarse sobre superficies solidas,
que por ofrecer en general una menor resistencia al avance que el agua sobre la que navegan los
veleros, permiten que desarrollen velocidades bastante superiores.
Martnez, SainzTr
apaga Pagina 4 de 82

(a) La goleta Am
erica (b) El trimar
an Oracle BMW

Figura 1.2: Los ganadores de la Copa America en 1851 y 2010

Numerosos avances tecnol ogicos desde la epoca de las fragatas permiten a las embarcaciones
modernas navegar en circunstancias que antes se consideraban imposibles con un rendimiento
sorprendente. Tanto vehculos terrestres como marinos logran con la tecnologa actual dos hitos
fundamentales:
Pueden avanzar en direcci
on opuesta al viento, y
Pueden navegar mas r
apido que el viento que los propulsa.

Estas dos cualidades provienen de las propiedades


aerodinamicas de las velas modernas. Intuitivamente,
la idea b
asica que viene a la mente es que las velas de
un barco se comportan como un paracadas: al retener
el viento y frenarlo, producen una fuerza de arrastre
que la embarcacion puede utilizar para desplazarse.

Sin embargo resulta bastante claro que, a partir de


esta idea, sera imposible que una embarcacion se de-
splace en direcci on opuesta al viento, ya que cualquier
empuje que se obtenga de frenar una corriente de aire
solo puede estar orientado en la direccion de dicha
corriente.

En efecto, las velas modernas tienen la capacidad


de adquirir un comportamiento aerodinamico com-
parable al del ala de un avi on. As, desarrollan una
fuerza de succion que permite a los vehculos a vela
desplazarse en contra del viento. Sin embargo, al igual
que el ala de un avion, deben mantener un angulo de
incidencia apropiado respecto de la corriente de aire
para evitar que se desarrollen turbulencias (situacion
que en la jerga aeron autica se denomina entrar en Figura 1.3: Un velero moderno
perdida).
Martnez, SainzTr
apaga Pagina 5 de 82

(a) Velero vs. ala de avi


on F-22 (b) Velero vs. misil Tomahawk

Figura 1.4: Comparacion entre apendices de veleros y aeronaves

La situaci
on que se produce bajo el agua es similar a la de las velas. La parte sumergida de un
velero tiene tambien apendices hidrodinamicos que son una parte vital de sus cualidades nauticas.
Como se observa en la Figura 1.4, las similitudes entre los perfiles aero e hidrodinamicos de un
velero y las alas de un avi
on son innegables.

1.1.2.1. C
omo hace un velero para navegar contra el viento?

Las velas de una embarcaci on moderna, a diferencia de las alas de un avion, pueden funcionar
en 2 regmenes. El primero es el que corresponde al paracadas ya mencionado, donde las velas
no hacen sino intentar detener el viento, tomando as parte de su energa. Este regimen se
conoce como regimen turbulento. El segundo corresponde al comportamiento propio de un ala, y
se denomina regimen laminar. Es precisamente este u ltimo el que le permite a un velero desplazarse
contra el viento, as como le permite a un avion vencer la gravedad.

(a) R
egimen Turbulento (b) R
egimen Laminar (c) Proa al viento

Figura 1.5: Distintos modos de funcionamiento del plano velico

Para mantener un regimen laminar, que es el de mayor eficiencia, es necesario que el angulo de
incidencia del viento sobre las velas sea suficientemente chico. Si las velas se colocan perpendiculares
Martnez, SainzTr
apaga Pagina 6 de 82

al viento, como se observa en la Figura 1.5a, es inevitable que las mismas entren en perdida y se
produzca una turbulencia ya que el flujo de aire no puede mantenerse adherido a las mismas.
Por otra parte, si el
angulo de incidencia del viento sobre las velas es demasiado chico, la succion
producida ser a demasiado peque na para sostener su forma y estas flamearan como una bandera
(Figura 1.5c).

En raz on de estas limitaciones, un velero moderno puede navegar contra el viento hasta un
ngulo de incidencia de unos 40o . Si el timonel de una embarcacion intenta navegar a un angulo de
a
incidencia menor, sus velas flamear an y la embarcacion se detendra por completo. Por el contrario,
si bien el regimen turbulento no es
optimo desde un punto de vista aerodinamico, es posible navegar
directamente a favor del viento sin problemas 2 .

Sin embargo, estos 40o de aproximacion al viento son


suficientes para alcanzar cualquier destino mediante la
tecnica que se denomina bordejeada (o, mas coloquial-
mente, tirar bordes). La misma consiste en describir un
recorrido de zig-zag con la embarcacion, avanzando pro-
gresivamente en contra del viento. As, colocando las ve-
las alternativamente de un lado y de otro de la embar-
cacion se navega en direcciones simetricas respecto del
viento. La maniobra que consiste en reorientar el barco
de una direccion (borde) a la otra en este zig-zag se
denomina virar, y sera de particular interes para nuestro
trabajo.

Las situaciones ilustradas anteriormente son es-


tereotpicas: hay una buena parte de los regmenes que
son mixtos (es decir, parcialmente turbulentos y parcial-

mente laminares). Estos corresponden a los angulos de
incidencia intermedios que se encuentran entre los 180o
y los 40o exhibidos en la Figura 1.5. Estas situaciones
intermedias son en general las que permiten obtener una
mayor velocidad, lo que redunda en algunas situaciones
curiosas. Por ejemplo, en muchos barcos resulta mas rapi-
do hacer una suerte de bordejeada para navegar no solo
contra el viento Sino tambien a favor!
Figura 1.6: Velero bordejeando

1.1.2.2. Predicciones de velocidad

A pesar de los rasgos comunes que comenzamos a discutir, hay muchas diferencias entre una
embarcaci on y otra. En el contexto de las carreras de barcos (regatas), sin duda una cuestion
esencial es la velocidad. Con la tecnificacion progresiva del dise
no naval, se desarrollaron modelos
numericos complejos de predicci
on de velocidad para veleros que se conocen en el ambiente como
vpps (Velocity Prediction Programs).
2 Este tipo de navegaci
on es en general lenta e inestable. La expresi
on com
un que dice que algo va viento en
popa no est
a bien fundada desde el punto de vista nautico.
Martnez, SainzTr
apaga Pagina 7 de 82

Los mismos intentan responder una pregunta aparentemente sencilla: Que velocidad desarrol-
lar
a una embarcacion? Para esto, se valen de algunos datos esenciales, en particular:
Las caractersticas fsicas del barco (peso, longitud, superficie velica, etc.),
Las condiciones meteorol ogicas (intensidad, direccion del viento, tama no de las olas, etc.), y
La direcci
on en la que se desea navegar,

Es evidente que esta pregunta es muy relevante para el dise nador de una embarcacion de
regata. Sin embargo, resulta muy difcil de responder. En primer lugar, la mecanica de fluidos
computacional, herramienta primordial en el estudio de estos procesos, es un problema complejo
en todas sus escalas. En segunda instancia, la cantidad de variables que afectan significativamente
el comportamiento de una embarcaci on de vela es inmensa, lo que dificulta aun mas la simulacion
numerica. Por u
ltimo, las embarcaciones a vela funcionan a merced del viento y las olas, variables
que son practicamente imposibles de controlar en la escala necesaria. En particular, t uneles de
viento y tanques de prueba nunca funcionan de manera combinada.

Sin ir muy lejos, recien con el advenimiento del gps fue posible hacer una medicion medi-
anamente fiable de la velocidad de un barco en aguas abiertas. Antes resultaba esencialmente
imposible. Tengamos en cuenta que las velocidades en tierra se pueden medir con precision Desde
la invenci
on del cron
ometro!

A pesar de la inmensa dificultad, con el correr de los a nos se desarrollaron varios sistemas de
prediccion de velocidad que se comportan razonablemente bien. En gran medida, la motivacion
detr
as de estos desarrollos est
a en la creacion de sistemas de handicap para permitir que compitan
entre s veleros distintos. En base a la prediccion de un vpp se puede establecer una serie de
compensaciones que permita, hasta un punto, nivelar barcos mas lentos con otros mas rapidos.

Sin embargo, dada la gran complejidad del problema a atacar, estas formulas de medicion
parecen estar condenadas al fracaso: una vez que una regla de handicap se torna popular, los
ingenieros navales comienzan a descubrir y explotar sus falencias, dise
nando barcos especficamente
para tal fin. Por lo tanto, muchas veces se recurre a handicaps asignados a ojo (en general a
puertas cerradas): La Santa Mara recorre la misma distancia que La Ni na en 10 % menos de
tiempo. Es el caso de las f
ormulas phrf y irc.

La primera formula de medicion popular con fundamentos cientficos fue el International Mea-
surement System (ims) que surgi o en 1985 a partir de la investigacion realizada en el mit por
Kerwin y Newman [21]. La misma consta de un vpp, que entrega una prediccion completa de
la velocidad de cada barco en condiciones predefinidas, a partir de una serie de mediciones del
mismo. Si bien ims tambien fue vctima de la ingeniera, por sus solidos fundamentos cientficos se
reedit
o en los u
ltimos a
nos (con actualizaciones varias) como la renovada formula Offshore Racing
Congress (orc).

Sin lugar a dudas un gran aporte de la formula ims fue poner a disposicion del navegante comun
la salida de un vpp de primera lnea, informacion que por lo general estaba reservada a los grandes
estudios de diseno. Dicha informacion son las llamadas curvas polares caractersticas de una
embarcaci on.
Martnez, SainzTr
apaga Pagina 8 de 82

315 45

2 4 6 8 10 12
270 90

225 135

180

Figura 1.7: Curva polar de un velero clase Farr 36 con 18 nudos de viento

La Figura 1.7 exhibe la curva polar caracterstica de un velero de regata de 36 pies que navega
con un viento de 18 nudos de intensidad3 . La velocidad del barco se representa en forma radial,
mientras que el
angulo de incidencia del viento sobre el barco esta representado en la coordenada
angular. Como era de esperarse, este barco no puede navegar directamente en contra del viento:
con un angulo de incidencia de 0o , su prediccion de velocidad es de 0 kts. Mas a un, todos los
angulos entre 0o y 28o (y los
angulos simetricos, entre 0o y 332o ) le estan vedados. Esta es la
zona en que las velas del velero flamean.

Sin embargo, si el timonel orienta el barco de forma tal que el viento incida sobre el mismo
con un angulo de 45o , podra desarrollar casi 8 kts de velocidad. Lo mismo ocurre con un angulo
de incidencia de 315o : este es el borde complementario en la situacion de bordejeada de la Figura
1.6. En general, las curvas polares de las embarcaciones simetricas son simetricas dado que para
un mismo angulo de incidencia, el lado por el que incida el viento resulta indistinto.

Este barco adem as tiene la posibilidad de mejorar su velocidad en la direccion del viento (es
angulo de incidencia de 180o ) haciendo una nueva bordejeada. Como se observa en
decir, con un
31 nudo = 1 kt (knot) = 1 milla n
autica por hora = 1.852 Km/h
Martnez, SainzTr
apaga Pagina 9 de 82

la curva polar, navegando directamente con un angulo de 180o la velocidad sera de apenas 8 kts,
mientras que si se realizan dos bordes con angulos de 155o y 205o respectivamente, la velocidad
resultante en la direccion deseada ser a bastante superior (alrededor de 11 kts). Esta velocidad
resultante se conoce como Velocity Made Good (vmg), y es un concepto fundamental en navegacion
a vela4 . En efecto, la posibilidad que tienen los veleros de desplazarse mas rapido en la direccion
deseada haciendo una bordejeada en lugar de navegar en lnea recta es el punto de partida para
nuestra investigacion.

Un vpp provee por lo general un conjunto de curvas, correspondiendo cada una de ellas a una
intensidad de viento particular. Cabe aclarar que si bien las consideraciones numericas efectuadas
corresponden a un viento de 18 kts, las conclusiones se verifican para la mayora de los barcos en
la mayora de las condiciones de viento, variando de forma cuantitativa pero no cualitativa.

1.1.3. Regatas de vela

Las competencias entre barcos de vela se agrupan esencialmente en dos categoras.

El primer tipo de competencia es lo que se conoce como regata de marcas fijas. Como su
nombre lo indica, el objetivo de los participantes es recorrer un circuito que se encuentra establecido
por puntos cuya ubicaci on se conoce previamente a la largada de la regata. Por ejemplo, la regata
Cape Town - Ro de Janeiro une las dos ciudades que le dan su nombre, y el objetivo de los
competidores es llegar de una a la otra. Dentro de esta categora caen todas las regatas de larga
distancia y muchas regatas costeras.

El segundo tipo se denomina regata entre boyas y se disputa en un circuito fijado expresa-
mente para tal fin mediante la colocacion de boyas u otro tipo de marcas, por lo general flotantes.
La diferencia principal es que dichas marcas se establecen en posiciones que varan en funcion de
las condiciones meteorologicas. La idea es que los barcos se vean obligados a navegar en rumbos
particulares respecto del viento reinante, en lugar de hacerlo en rumbos determinados por la posi-
ci
on de marcas fijas. Dentro de esta categora estan todas las competencias olmpicas, y en general
la gran mayora de las de corta distancia. Algunos recorridos tpicos que se plantean en este tipo
de regatas son:
Barlovento - Sotavento5 : Las embarcaciones navegan primero en direccion opuesta al
viento y luego en la direcci
on del mismo, por alguna cantidad de vueltas alrededor de las
boyas (por lo general 2 o 3 veces).
Tri
angulo Olmpico: Las embarcaciones navegan primero a barlovento, luego dos tramos
(piernas) con el viento incidiendo sobre ellas a unos 135o , luego nuevamente a barlovento,
sotavento y nuevamente barlovento para terminar.

La Figura 1.8 ejemplifica la disposicion de las marcas (boyas y lanchas) que determinan el
recorrido de una regata tipo Barlovento - Sotavento de 4 tramos en dos condiciones de viento
diferentes. Los organizadores de la regata son responsables de colocar las marcas de forma tan
precisa como les sea posible, aunque las condiciones meteorologicas adversas o cambiantes pueden
dificultar la tarea.
4 El concepto de vmg se detalla en la Figura 2.2
5 Se denomina barlovento a la direcci on desde la que proviene el viento, y sotavento a la direcci on en la que

este se dirige. El concepto es an


alogo al de ro arriba y ro abajo, solo que respecto de la corriente de aire.
Martnez, SainzTr
apaga Pagina 10 de 82

N N

(a) Con viento del Norte (b) Con viento del Sudeste

Figura 1.8: Regata Barlovento - Sotavento de 4 piernas en distintas condiciones de viento

1.1.3.1. C
omo se gana una regata?

En una regata de primer nivel, los participantes necesitan combinar una serie de cualidades
para poder lograr buenos resultados.

En primer lugar, el requisito m as evidente es tener un barco r apido. Sin embargo, en que con-
siste un barco r apido depende fuertemente de la competencia. En una regata con un sistema de
handicap (como se describi o en 1.1.2.2), es vital que la formula de calculo no sobrestime la ve-
locidad del barco, ya que esto implicara una penalizacion. En una regata de monotipos (barcos
identicos), es importante que dentro de los lmites del reglamento la embarcacion sea tan rapida
como sea posible. A su vez, las velas deberan tener formas muy eficientes, y el conjunto debera ser
tan liviano como se permita. Este es trabajo del dise nador y del armador del barco. Por otro lado,
la tripulacion debe utilizar los ajustes disponibles a bordo para obtener la configuracion optima de
las velas y del aparejo para lograr la mayor velocidad.

En segunda instancia, la tripulaci


on debe ser capaz de maniobrar eficientemente, realizan-
do tareas tales como viradas, giros alrededor de boyas y cambios de velas en el menor tiempo
posible y minimizando la perdida de rendimiento del barco durante las mismas. Para lograr esto
ser
a necesario un entrenamiento completo, puesto que la coordinacion resulta tan fundamental
como la aptitud fsica.

En tercer lugar, todas las situaciones problematicas en una regata son regidas por un ex-
tenso reglamento de competencia, as como por un reglamento naval basico (respectivamente, el
Reglamento de Regatas a Vela de la isaf y el Reglamento Internacional para la Prevencion de
Abordajes). La aplicaci on de este reglamento para obtener ventajas respecto de otros barcos den-
tro de los lmites establecidos se denomina t
actica, y es de particular importancia en las regatas
de tipo match-race 6 .
6 Regata en que s
olo participan dos embarcaciones
Martnez, SainzTr
apaga Pagina 11 de 82

Por ultimo, la estrategia es fundamental. Se entiende por estrategia a la toma de decisiones


sobre el recorrido que debe realizar el barco para completar la regata en el menor tiempo posible.
Como se advirti o anteriormente, en la gran mayora de las regatas las rutas directas entre las
marcas no son optimas o no son factibles. Si a esto sumamos la naturaleza impredecible de los
fen
omenos meteorol ogicos que determinan el viento, se desprende que las decisiones estrategicas
son sumamente complejas y probabilsticas. Involucran numerosas observaciones y estimaciones
de variables muchas veces sutiles frente a condiciones cambiantes, as como una buena habilidad
para cuantificar y evaluar riesgos. Las aptitudes necesarias para llevar a cabo todas estas tareas
provienen de ambitos sumamente dismiles. No en vano la navegacion a vela ha recibido los apodos
mas llamativos, desde ajedrez sobre agua hasta, lisa y llanamente, el deporte mas difcil del
mundo7 .

Nuestro trabajo se enfoca en el problema de la estrategia. Propondremos la aplicacion de


tecnicas de optimizaci
on combinatoria para asistir a los responsables de la toma de decisiones
sobre las rutas a seguir.

1.2. Estado del arte

1.2.1. La ventaja estrat


egica

En una embarcaci on de regatas de tama no suficiente, un miembro de la tripulacion sera encar-


gado de tomar las decisiones respecto de la ruta a seguir. Dependiendo del tipo de regata, deberan
considerarse una serie de factores para realizar esta eleccion.

Por lo pronto, si las aguas a sortear presentan obstaculos, el estratega debera considerarlos en
su planteo. Estos obst aculos incluyen barcos hundidos, islas, piedras, zonas de escasa profundidad
u otro tipo de escollos. En general, la informacion sobre los mismos se encuentra contenida en las
cartas n
auticas. Hoy por hoy, los dispositivos gps suelen incluir un plotter que puede mostrar una
carta digital al usuario, as como notificarlo en caso de que su ruta se aproxime a un obstaculo.
Alternativamente, se puede recurrir a una carta nautica tradicional de papel sobre la que se traza
la ruta de la embarcaci on.

Estos aspectos son relevantes tanto en la navegacion de regata como cuando se realiza una
travesa. Sea cual sea el prop
osito de la navegacion, todo barco debe lograr sortear los obstaculos
que encuentra en su camino sirviendose de la cartografa y las boyas de se nalizacion que pudiera
encontrar. El manejo de este tipo de elementos es requisito para la obtencion de la habilitacion
pertinente, as como aprender a respetar las se
nales de transito es necesario para obtener un permiso
de conducir.

Sin embargo, un estratega que desea ganar una regata debe considerar cuestiones mucho mas
sutiles. Como se mencion
o antes, la variabilidad propia del viento, en conjunto con la gran incidencia
que tiene este u
ltimo sobre la velocidad del barco, resulta de vital importancia al momento de
planear una ruta de navegacion.

Examinemos las situaciones presentadas en la Figura 1.9. En ambos casos se trata de dos
embarcaciones identicas navegando en direccion contraria a la del viento, y teniendo que recurrir
7 Seguramente el autor de esta caracterizaci
on era un eximio navegante.
Martnez, SainzTr
apaga Pagina 12 de 82

(a) Con viento constante (b) Con viento curvo

Figura 1.9: Rutas alternativas en una navegacion hacia barlovento

por ende a una bordejeada. Como se observa en la Figura 1.9a, en condiciones de viento constante
(tanto en el espacio como en el tiempo), dos embarcaciones que navegan en direcciones simetricas
desde la lnea de partida no logran ventajas entre s a pesar de haber recorrido rutas sustancialmente
distintas. Por supuesto, esto esta supeditado a que ambas utilicen los rumbos de maximo vmg hacia
barlovento como se describi o en 1.1.2.2.

Por otra parte, en la Figura 1.9b se observa una situacion conocida como viento curvo, en la
que la direcci
on del viento vara seg
un la posicion dentro de la cancha de regatas. Esta situacion
puede producirse en una variedad de escenarios. El mas simple es la proximidad de la costa o de
alg
un otro obstaculo cuya presencia afecta la direccion del viento, pero vientos de origen termico8
suelen presentar tambien esta caracterstica en proximidades de la costa. Dado que los veleros
mantienen un angulo constante respecto del viento (el que les proporciona un mayor vmg), sus
trayectorias resultan tambien curvas, y de esta curvatura una de las embarcaciones obtiene un
beneficio sustancial, posicion
andose por delante de la otra.

on9 , que corresponde a una variacion del viento ya no en el espacio sino


Existe una tercera situaci
en el tiempo. Si cuando los veleros se encuentran en la mitad de la navegacion el viento cambia su
direcci
on en toda la extensi
on de la cancha de regatas, por el hecho de estar en posiciones diferentes
uno de ellos se ver
a aventajado sobre el otro. Algo similar ocurre con la intensidad del viento, que
puede variar tanto en el tiempo como en el espacio.

1.2.2. Herramientas existentes

Como se vio en el apartado anterior, se puede obtener una ventaja (en muchos casos decisiva) si
se logran predecir correctamente los cambios en las condiciones meteorologicas. En particular, para
cada ubicacion dentro de una cancha de regatas durante el lapso en que transcurra la competencia,
8 Los vientos t
ermicos son los que se originan por la circulaci
on convectiva del aire causada por una diferencia de
temperatura entre superficies contiguas, por lo general el mar y su costa lindante. La brisa de mar que se observa
regularmente en las playas es de este tipo. Este fen
omeno se explica con mayor detalle en 1.2.3.1.
9 Esta situaci
on es posiblemente la mas comun de las tres, pero resulta la m
as difcil de representar en papel.
Martnez, SainzTr
apaga Pagina 13 de 82

deben considerarse tres factores:


La intensidad y la direcci
on del viento
La intensidad y la direcci
on de la corriente
El tamano del oleaje

A partir de una predicci on fiable de estos tres parametros, con la ayuda de un vpp pueden
obtenerse las velocidades de una embarcacion a lo largo de una ruta, y con ellas, el tiempo nece-
sario para recorrerla. M as aun, teniendo la forma de establecer el costo de una ruta (lo que en
nuestra area de interes corresponde al tiempo necesario para recorrerla), con el tiempo de computo
suficiente puede obtenerse una ruta optima para las condiciones previstas. Si bien esto presenta
una utilidad evidente en regatas, el desarrollo de aplicaciones de ruteo meteorologico (weather
routing) comenz o por el transporte de cargas.

Los buques de carga, a pesar de no ser propulsados por el viento, se ven afectados de todos
modos por las condiciones meteorol ogicas que encuentran en sus rutas. El impacto de las olas puede,
en funci
on de su tama no, disminuir la velocidad de los barcos o poner en juego su estabilidad. La
integridad estructural de los sistemas de sujecion de carga tambien se exige mas en condiciones de
mar agitado. Estos factores tienen una incidencia medible sobre la duracion de los trayectos, los
consumos de combustible y las probabilidades de falla mecanica o estructural de los buques. En
el contexto de una flota grande, los costos se amplifican y realizar una optimizacion de rutas se
vuelve conveniente, si no necesario para competir en un mercado global.

(a) Navegaci
on con marejada (b) Da
nos a la carga

Figura 1.10: Efectos de las condiciones meteorologicas sobre buques a motor

En los inicios de estas tecnologas, las rutas se optimizaban en una oficina especialmente dis-
puesta en tierra para tal fin, que tena acceso al poder de computo requerido y a la informacion
meteorologica pertinente. Stoter argumento que esta tarea deba, en la medida de lo posible, re-
alizarse a bordo puesto que los tradeoffs involucrados en las decisiones de ruteo solo podan ser
evaluados adecuadamente por el comandante de la embarcacion [32]. Hoy por hoy, la tecnologa
informatica hizo de esta propuesta una realidad, y la herramienta se transfirio a las embarcaciones
de vela en competencia, as como m as adelante a las de placer.

Actualmente una embarcaci on que compite en regatas de larga distancia de buen nivel utiliza
necesariamente un software de optimizacion de rutas que se alimenta de modelos meteorologicos
de diferentes escalas. El Global Forecast System (gfs) que ejecuta diariamente la National Oceanic
and Atmospheric Administration (noaa) provee un pronostico de hasta 16 das de anticipacion.
Martnez, SainzTr
apaga Pagina 14 de 82

El modelo que utiliza gfs subdivide la superficie del globo en una retcula de 35 Km de lado, y
su atm
osfera en 64 capas verticales, de las que predice la evolucion cada 3 horas para las primeras
180 horas, y luego cada 12 horas hasta completar los 16 das. De toda esta informacion, las capas
de menor altura son las que resultan de interes para un navegante.

El pron ostico del que se sirve un software de optimizacion de rutas se carga generalmente de
una versi on resumida de la salida de gfs, en la que se consideran solamente las capas y zonas de
interes. As, se produce un archivo grib (Gridded Binary) que muestra la intensidad y direccion del
viento para cada sector de una retcula a intervalos de tiempo discretos. Esta retcula corresponde
a una ubicaci on geogr
afica particular, as como a un momento dado.

Figura 1.11: Datos de viento del modelo gfs para parte del Atlantico Sur

Armado de este pron ostico y de una prediccion de performance del barco en cuestion, un
software de optimizacion de rutas puede calcular una ruta optima para la embarcacion. Productos
comerciales que realizan esta tarea y est
an orientados a competencias de veleros son Expedition[33],
Deckman[4] y Adrena[1], utilizados por numerosos competidores.

1.2.3. Limitaciones caractersticas

Cualquier modelo meteorol


ogico tiene una limitacion inherente: sus predicciones son, como
mucho, una buena aproximaci
on. Por esta razon, la utilidad de las herramientas informaticas
Martnez, SainzTr
apaga Pagina 15 de 82

est
a relacionada directamente con la capacidad de las mismas de obtener resultados valiosos, que
a su vez depende en gran medida de la calidad de los pronosticos.

El problema es grave en la medida en que los criterios de optimalidad utilizados para la seleccion
de rutas, as como los metodos utilizados, no tienen en cuenta ninguna nocion de riesgo frente a
cambios inesperados en el pron ostico. La naturaleza discreta de las tecnicas empeora aun mas la
situaci
on. As, un cambio menor en las condiciones meteorologicas puede tener consecuencias muy
graves sobre el costo total de la ruta utilizada.

Es posible realizar optimizaciones robustas frente a estas discrepancias entre las predicciones
y la realidad. La aplicacion de tecnicas de optimizacion estocastica a ruteo de embarcaciones
fue abordada por Philpott y Mason en [25], pero no tenemos conocimiento de que este tipo de
algoritmos se utilice en ning
un software comercial.

1.2.3.1. Distintas escalas de optimizaci


on

Sin embargo, existe una problem atica fundamental con el ruteo basado en pronosticos. De los
factores meteorol
ogicos de interes para el calculo de rutas, la intensidad y direccion del viento son
sin duda los m
as importantes. Deteng amonos un momento sobre este.

El viento se desarrolla a escala global por la existencia y desplazamiento de centros de alta y


baja presion (lo que se conoce como viento de escala sin optica), y a escala local por fenomenos
termicos costeros o bien por la formacion de nubes de tormenta localizadas. Si bien modelos de
circulaci
on global como gfs pueden predecir de forma bastante certera los vientos sinopticos con
varios das de anticipaci
on, los fen
omenos costeros son mucho mas complejos y dependientes de
sutilezas geograficas.

(a) Convecci
on en una ciudad costera (b) Brisa de mar resultante

Figura 1.12: Formacion de una brisa de mar

La brisa de mar caracterstica de ciudades costeras se origina por el calentamiento de un suelo


de baja capacidad termica (como el hormigon) que alimenta un proceso convectivo. Este proceso
se ilustra en la Figura 1.12. Vientos de estas caractersticas no se observan en las predicciones de
los modelos globales como gfs ya que dependen de cuestiones muy especficas de la zona (como
Martnez, SainzTr
apaga Pagina 16 de 82

por ejemplo, la composici


on de los suelos costeros y el nivel de radiacion solar recibido cada hora),
que no son tenidas en cuenta.

Existen modelos m as detallados que pueden realizar este tipo de predicciones para algunas
regiones del mundo. Algunas regatas de gran convocatoria producen una demanda suficiente para
pronosticos de alta resoluci
on de las
areas a recorrer. No obstante, la gran mayora de los modelos
de circulaci
on atmosferica para prediccion de vientos consideran al viento de superficie como una
condici
on de borde compleja y se abstienen de modelarlo.

Por supuesto, la din


amica compleja del aire en superficie resulta a su vez inmanejable computa-
cionalmente incluso para modelos regionales o de menor escala. Mas a un, el viento superficial en el
que los veleros se desplazan presenta caractersticas como rafagas o peque
nas variaciones de direc-
ci
on, que se originan en fenomenos de turbulencia en la circulacion del aire. A un si se dispusiera
del poder de computo suficiente, los fenomenos turbulentos son inherentemente impredecibles.

Esto no invalida de ningun modo la utilizacion de modelos numericos de pronostico meteo-


rol
ogico como punto de partida para la optimizacion de rutas. No hay mas que observar el historial
de resultados obtenidos por navegantes que utilizaron este tipo de herramientas en regatas de
largo aliento para probar su efectividad practica. Sin embargo, la utilidad de este tipo de her-
ramientas disminuye a medida que las competencias son de menor distancia, ya que los fenomenos
meteorologicos que las dominan ser
an de menor escala y por lo tanto, menos predecibles.

As, un software de optimizaci


on de rutas basado en pronosticos es indispensable para el nave-
gante oceanico, u
til para quien compite en regatas costeras de media distancia, y no se utiliza
jamas en regatas entre boyas como las de la Figura 1.8. Esto no responde unicamente a problemas
de capacidad de c omputo: las estrategias a utilizar para ganar una regata de 2 horas no son las
mismas que para una regata de 30 das.

En una regata de algunas horas, seran los navegantes que mejor reaccionen a los cambios de
viento que perciban en su barco los que puedan tomar ventaja sobre el resto. En una regata
oceanica, la mayora de las veces ser
a una decision de ruteo la que condicione el resultado (por
ejemplo, navegar por el sur o el norte de una isla a sortear). Es facil trazar un paralelismo con
una situacion mas estudiada de estrategias frente a incertidumbre: las inversiones en mercados
financieros.

Las regatas de larga distancia funcionan como las in-


versiones a largo plazo. En base a una estimacion mas o
menos formal de las fluctuaciones que espera que se pro-
duzcan, un inversor puede comprar acciones que espera
que tengan una tendencia alcista por un perodo extenso.
Por ejemplo, quien confe en la poltica de desarrollo in-
dustrial de Brasil podra comprar un paquete accionario
con activos en industrias de ese pas, con la intencion de
conservarlas por varios anos.

Las regatas entre boyas funcionan como inversiones a


corto plazo (lo que en finanzas se conoce como micro trad-
ing). En estas situaciones, los inversores siguen muy de
cerca las tendencias de sus acciones, comprando cuando
consideran que se alcanz o un mnimo, y vendiendo cuan-
Figura 1.13: Cotizacion accionaria
Martnez, SainzTr
apaga Pagina 17 de 82

do consideran que se alcanz o un maximo. El intervalo sobre el que se consideran estos maximos y
mnimos depender a de cada inversor y de su aficion o aversion al riesgo. Este tipo de fluctuacion es
inherentemente impredecible: los vencedores son los que reaccionan mas rapido, razon por la que
este tipo de trading se lleva a cabo generalmente de forma automatica.

Por ejemplo, si bien la cotizaci


on accionaria en la Figura 1.13 denota una tendencia global a
la baja (flecha roja), hay varios intervalos de crecimiento a lo largo del perodo. Quien compre y
venda durante el perodo abarcado por la flecha verde podra obtener un beneficio de esa inversion.

Los dos tipos de inversi


on descriptos no se diferencian solo por su escala temporal: las estrategias
a utilizar son esencialmente distintas. Lo mismo ocurre con las rutas a utilizar en regatas. Esto no
significa que una variaci
on de escala sinoptica no pueda inclinar la balanza en una regata de corta
distancia, ni que una competencia oce anica no pueda ganarse por peque nos borneos10 : simplemente
no es lo que ocurre en la enorme mayora de los casos.

En funci
on de esta limitaci
on de los modelos tradicionales para optimizar estrategias en regatas
de corta distancia, practicamente todos los modelos de optimizacion estan orientados a grandes
distancias. Por esta razon, desprecian sistematicamente el costo de las viradas, que en regatas de
corta distancia puede ser significativo.

1.2.3.2. El agua

Nos enfocamos hasta aqu en c omo el viento afecta a las embarcaciones en su navegacion.
La corriente que pueda existir en el agua navegada puede resultar del mismo modo un factor
determinante, as como las olas que se produzcan.

En esencia, la corriente puede ser mod-


elada de forma analoga al viento y contem-
plada a su vez por los algoritmos de ruteo.
En muchos casos la corriente tiene su origen
en mareas meteorologicas o astronomicas.
En general, ambos tipos de marea pueden
predecirse con mayor precision que el vien-
to. Al igual que en el caso de este u ltimo,
existen pronosticos comerciales de alta res-
olucion para zonas de interes particular.

Las olas, a su vez, pueden deducirse con


bastante confiabilidad a partir de informa-
cion de viento, corrientes y caractersticas
del lugar a analizar (como por ejemplo, la
Figura 1.14: Pron
ostico de corriente profundidad del espejo de agua).

Nos conformaremos en este punto con aclarar que la corriente debera necesariamente ser tenida
en cuenta para realizar un modelo apropiado de optimizacion de rutas. Veremos mas adelante como
se encar
o este problema.
10 Borneo: variaci
on en la direcci
on del viento
Martnez, SainzTr
apaga Pagina 18 de 82

1.3. Resumen del trabajo

El objetivo de nuestro trabajo es desarrollar tecnicas que ayuden al estratega a cargo de una
embarcaci on a tomar decisiones apropiadas cuando las situaciones no son aptas para la optimizacion
basada en pron osticos, en particular regatas costeras de corta duracion. As, nos proponemos ayudar
a los regatistas a tomar decisiones m as informadas en cuanto a las rutas que deben utilizar, a partir
del analisis en tiempo real de la informacion de los instrumentos del barco.

Los metodos obtenidos ser


an necesariamente heursticos: la informacion inherentemente incom-
pleta que el navegante puede obtener proviene de los instrumentos de su embarcacion, y no incluye
datos meteorologicos m
as que sobre el punto en que se encuentra el barco, tanto en el tiempo como
en el espacio.

Para ello, construimos en primer lugar un modelo como los incluidos en los paquetes comerciales,
con la sofisticaci
on adicional de que permite contemplar los costos de las viradas (como fuera
aclarado en su momento, en regatas de corta distancia estos no son despreciables). El mismo nos
sirve de benchmark para evaluar nuestras heursticas.

A continuaci
on, desarrollamos una serie de heursticas basadas en un relevamiento de la liter-
atura no academica, un trabajo de campo en contacto con estrategas que compiten regularmente
en regatas de corta distancia y la experiencia previa con la que contamos. Las mismas pueden com-
pararse contra los resultados
optimos obtenidos por el modelo de optimizacion, con la salvedad de
que estas u
ltimas no tienen a su disposicion la informacion completa sino u
nicamente la del lugar
donde se encuentran.

Por u
ltimo, desarrollamos un generador de escenarios simulados para realizar las pruebas de
nuestras heursticas en condiciones verosmiles, dada la imposibilidad practica de realizar medi-
ciones en un entorno real. Para ello entrevistamos a un experto local en meteorologa de peque na
escala aplicada a regatas.

Gracias a las simulaciones realizadas, pudimos optimizar los parametros de nuestras heursticas
y evaluar su rendimiento en comparaci on con las rutas optimas. Logramos obtener resultados muy
alentadores utilizando informacion incompleta.

Esta tesis se organiza de la siguiente manera:

El Captulo 1 es esta introducci


on, que pretende establer los conceptos basicos de navegacion
a vela y de la competencia en regatas, as como las posibles ventajas de utilizar un sistema
de estrategia computacional, y las limitaciones de los productos existentes.
El Captulo 2 ahonda en el modelo de grafos que planteamos para el problema de optimizacion
de rutas de veleros, incluyendo particularidades como el calculo de los costos de navegacion
en distintas condiciones de viento y corriente.
El Captulo 3 describe la construccion de un algoritmo eficiente de caminos mnimos para
el c
alculo de rutas
optimas en el modelo descripto previamente, bajo la hipotesis de que se
conoce toda la informacion meteorologica de la situacion que se desea analizar.
El Captulo 4 motiva y describe una serie de heursticas que propusimos a partir del analisis
del problema, el conocimiento del dominio y la discusion con navegantes experimentados.
Martnez, SainzTr
apaga Pagina 19 de 82

El Captulo 5 detalla el modelo experimental de simulacion que construimos para generar


escenarios donde ejecutar nuestros algoritmos, as como los resultados de los experimentos
realizados a partir de estos u
ltimos.
El Captulo 6 corresponde a las conclusiones, donde se detallan ademas investigaciones que
podran realizarse en el futuro.
Martnez, SainzTr
apaga Pagina 20 de 82

Captulo 2

El modelo

2.1. La predicci
on de velocidad

Antes de plantear un modelo capaz de optimizar las rutas para una embarcacion, es necesario
establecer de que manera se proceder a para predecir la velocidad de un barco en condiciones
dadas. Como se discuti
o en la Secci
on 1.1.2.2, un vpp entrega la prediccion de performance de una
embarcacion en forma de un conjunto de curvas polares caractersticas como la de la Figura 1.7.

Dichas curvas polares son a su vez resumidas en forma de una tabla con algunos valores sig-
nificativos que deben ser interpolados en software para obtener datos completos. Como vimos
anteriormente, de la lectura directa de la curva polar para una intensidad de viento determinada,
se desprende la velocidad que se espera del barco en esa condicion. As, en la Figura 2.1a se observa
como se interpreta la curva polar: representa la isocrona 11 para un tiempo de una hora.

0 0

45 45

90 90
2 4 6 8 10 12 2 4 6 8 10 12

(a) Velocidad (b) Velocity Made Good to Course

Figura 2.1: Metricas alternativas de velocidad

Asimismo, hay otras dos nociones de velocidad que resultan particularmente relevantes para
la navegaci
on a vela y que se derivan de la caracterizacion anterior. La primera es el concepto
conocido como Velocity Made Good to Course (vmc) que corresponde a maximizar la proyeccion
del vector velocidad del barco sobre la direccion deseada. Esta u
ltima metrica corresponde a la
Figura 2.1b.

La segunda es la llamada Velocity Made Good (vmg) que mencionamos en la Seccion 1.1.2.2. El
11 Curva que une todos los puntos alcanzables en un intervalo de tiempo dado. Corresponde a la curva de nivel de

la funci
on mnimo tiempo necesario para alcanzar el punto P .
Martnez, SainzTr
apaga Pagina 21 de 82

vmg es la velocidad que puede desarrollar una embarcacion en una direccion dada, con la relajacion
adicional de que no necesariamente debe navegar en lnea recta. As, el barco tiene la posibilidad
de bordejear, y el vmg es la velocidad resultante de dicha bordejeada. El vmg esta dado por la
frontera de la c
apsula convexa del conjunto delimitado por la curva polar [26]. La Figura 2.2 ilustra
este concepto.

En nuestra implementaci on, utilizamos curvas po-


lares de referencia producidas por el vpp de ims [21], 2 4 6 8 10
que se encuentran disponibles en forma de tabla con
las velocidades esperadas para varios angulos de nave-
gacion respecto del viento, y para varias intensidades
de este ultimo. Estos valores son interpolados lineal-
mente para tener mayor precisi on en las predicciones.

135
2.1.1. Velocidad bajo corriente
180
Se denomina corriente al movimiento del agua
en que el barco se desplaza. Como se discutio has-
ta el momento, la estimacion de la velocidad de un
velero bajo condiciones dadas de viento, incluso sin
corriente, es un tema complejo. Sin embargo, resulta Figura 2.2: Velocity Made Good
a priori muy simple estimar la velocidad de un velero
que es unicamente arrastrado por la corriente: su ve-
locidad es precisamente la de esta u ltima, tanto en
direcci
on como en intensidad.
B'

Al igual que el viento, la corriente puede modelarse


apropiadamente con un vector que la represente. Una
simple suma de vectores permite entonces aproximar B
la posici
on esperada de una embarcaci on tras un cierto
perodo de tiempo sometida a una corriente.

El problema primordial con esta caracterizacion


es que no responde a la pregunta que es pertinente
para nuestro modelo: Dados un viento y una cor- A
riente constantes, que tiempo le insume a un barco
navegar desde un punto A hasta un punto B? Efec-
tivamente, la suma vectorial solo nos indica donde
estar
a un barco que en ausencia de corriente habra
alcanzado un punto dado en cierta cantidad de tiem- Figura 2.3: Impacto de la corriente
po. Esto corresponde a la situaci
on de la Figura 2.3,
donde la corriente desplaza a un barco que normal-
mente hubiera llegado de A a B hacia un tercer punto B.

M as a
un: este modelo no es m as que una aproximacion porque presupone que la velocidad que
confieren a la embarcaci on el viento y la corriente son estrictamente independientes. Lamentable-
mente, esta suposici on no es correcta. En todo nuestro trabajo, consideramos que tanto viento
como corriente son medidos desde un punto de referencia fijo a la tierra o al fondo de un espejo
de agua de interes. Sin embargo, el viento que percibe una embarcacion que navega puede ser sus-
Martnez, SainzTr
apaga Pagina 22 de 82

tancialmente distinto, ya que es necesario ademas tomar en cuenta la velocidad del propio barco.
El viento medido por un anem ometro12 de a bordo se denomina viento aparente (VA ), y puede
ser significativamente distinto de aquel que se mide desde un punto de referencia fijo (el llamado
viento real VR ), tanto en direccion como en intensidad.

La Figura 2.4 ilustra la diferencia que existe


entre viento real (en verde) y viento aparente
(en azul). El viento aparente VA es el que cap-
turan los instrumentos del barco. A su vez, el
angulo es el angulo de incidencia del viento
sobre el barco que debe utilizarse como entra-
da para consultar la velocidad esperada en las
curvas polares caractersticas.

Asimismo, dado que la corriente afecta la


velocidad de navegacion del barco, modifica a
su vez la direccion e intensidad del viento en el
que este navega. As, un barco que se encuen-
tra en un da de ausencia total de viento sobre
un canal cuya corriente es de 5 kt percibira un
viento de velocidad igual a la de la corriente,
y direccion exactamente opuesta13 . Por lo tan-
Figura 2.4: Viento aparente to, si se desea utilizar la prediccion polar de
velocidad de un barco, sera necesario antes de
consultar la curva corregir tanto la velocidad
como la intensidad del viento que percibe este,
as como adicionar la velocidad que le imprime
la corriente a la embarcacion de forma directa.

Este nuevo viento corregido corresponde a


una medicion hecha desde un punto de ref-
erencia que se encuentra a la deriva (es ar-
rastrado por la corriente), y es mencionado en
pocas oportunidades por la literatura nautica.
Suponemos que esta omision se debe al hecho
de que en contextos tpicos, la informacion de
viento que se utiliza a bordo proviene de los
instrumentos del barco, y por lo tanto ya in-
cluye la modificacion que se produce por causa
de la corriente. Sin embargo, en el contexto de
ruteo optimo trabajaremos con un sistema de
referencia fijo en la superficie terrestre, y por lo
tanto nos resultara necesaria la diferenciacion.
Figura 2.5: Viento de navegaci
on Rushall llama a este viento sailing wind [29],
traduciremos esta nomenclatura como viento
de navegaci on (VN ).
12 Instrumentoque mide la velocidad del viento.
13 Estoes una nueva simplificaci
on, puesto que presupone que la fricci
on entre el agua y el aire es despreciable,
pero es una aproximaci
on razonable.
Martnez, SainzTr
apaga Pagina 23 de 82

La Figura 2.5 ilustra el viento de navegacion VN y su derivacion, a saber VN = VR C. A su


vez, este cambio de viento afecta el
angulo de incidencia del viento sobre la embarcacion, y ahora
debe utilizarse 0 en lugar de como dato de consulta para prediccion de velocidad de las curvas
polares.

Como mencionamos antes, la raz on primordial de tener en cuenta la corriente es poder predecir
con exactitud cual es el menor tiempo que insume el barco de interes para navegar entre dos puntos
A y B de coordenadas conocidas bajo condiciones meteorologicas homogeneas. Esta prediccion es
esencial para el modelo que presentaremos a continuacion.

Para proveer al modelo de una prediccion util, generamos un nuevo conjunto de curvas polares
que incluyen todas las variaciones introducidas por la corriente (la velocidad del barco, la velocidad
del viento y la direcci
on del viento). Para llevar a cabo esta tarea se calcula en primer lugar el
viento de navegacion, se obtiene la curva polar caracterstica para ese viento y luego se aplica
una traslaci
on en el plano por el vector de corriente. Esta transformacion refleja el incremento de
velocidad que la corriente proporciona al barco sobre el sistema de referencia terrestre.

La traslaci
on del polgono polar introduce un problema. Como toda funcion polar continua, su
curva representativa debe contener a un conjunto star shaped y el origen debe estar contenido en
el kernel del polgono14 .

Esto puede no ocurrir: bajo los efectos de la corriente, es posible que haya dos o mas maneras
diferentes de navegar en una misma direccion, lo cual introduce una ambig uedad. Afortunada-
mente, las consultas a responder involucran la velocidad m axima que alcanza el barco en una
direcci
on dada, con lo cual en caso de haber varias opciones simplemente se considerara la de
mayor magnitud.

La Figura 2.6 exhibe la diferencia en la prediccion de velocidad. La curva rosa corresponde a


la curva entregada por el vpp, que considera u nicamente el viento (que en este caso sopla desde
la direccion 0o a 10 kts), mientras que la de color azul claro corresponde a la curva modificada
por la corriente. Esta segunda curva corresponde a VN : un viento levemente mas intenso (10.45
kts) y con una orientaci on algo distinta (343o ). Ademas, la curva sufre la traslacion producto de la
velocidad que la corriente imprime directamente al barco. En razon de ello, la curva polar celeste
esta desplazada en la direccion de dicha corriente. Sin embargo, al no cumplir la curva celeste con
el criterio geometrico descripto unas lneas atras, debe ser ajustada logrando as la curva azul final.

N
otese que en presencia de corriente sustancial, la caracterizacion nos indica que la embarcacion
es capaz de navegar directamente en la direccion opuesta a VR , sin necesidad de bordejear. Sin
embargo, no podr a hacerlo directamente en contra de VN , que es el que se percibe sobre el agua.

Provistos de esta caracterizaci


on adaptada, disponemos entonces de una prediccion apropiada
de la velocidad del barco en cualquier direccion bajo condiciones homogeneas de viento y corriente,
lo cual nos servir
a de punto de partida para nuestro modelo.
14 Un conjunto S es star shaped si en el existe un punto P tal que para todo punto Q dentro del conjunto, el
segmento que une P y Q est a contenido en el conjunto. El kernel de S es el conjunto S S de todos los puntos
P que verifican esto u
ltimo.
Martnez, SainzTr
apaga Pagina 24 de 82

10 kts de viento, sin corriente


10 kts de viento, 3 kts de corriente (trasladado)
10 kts de viento, 3 kts de corriente (nal) 0

14

12
315 45
10

270 90

225 135

180

Figura 2.6: Predicciones de velocidad de un Farr 36 con 10 nudos de viento


Martnez, SainzTr
apaga Pagina 25 de 82

2.2. Modelado de la cancha

2.2.1. El
area de inter
es

En base a lo discutido anteriormente, proponemos un modelo discreto de la navegacion de un


velero sobre un espacio de agua, con condiciones igualmente discretas de viento y corriente. As,
considerando intervalos de condiciones uniformes, podemos utilizar las herramientas descriptas en
la secci
on anterior para computar las velocidades esperadas del barco en cada intervalo. Luego,
a partir del conocimiento de cada intervalo podremos caracterizar la navegacion sobre cualquier
ruta.

Para modelar el problema dividimos la superficie navegable en una grilla cuadrada de A A


sectores. Cada sector de dicha grilla (de aqu en mas, cuadrante) tiene condiciones uniformes
de viento y corriente: en cualquier punto del mismo, direccion e intensidad tanto del viento como
de la corriente son constantes. Si suponemos que cada cuadrante tiene un lado de alrededor de 50
metros, la suposicion resulta razonable para las velocidades e intervalos de tiempo a considerar.
Discretizaciones del area a navegar son discutidas en la literatura [24, 26], y se utilizan por lo
general en los softwares de optimizacion de rutas a gran escala.

En particular, si consideramos que un velero similar al ilustrado en la Figura 1.7 se desplaza a


velocidades que usualmente oscilan entre 5 y 15 kts, resulta que el tiempo esperado para recorrer
una distancia de 50 metros es de entre 7 y 20 segundos. Dado que una pierna15 convencional puede
insumir entre 15 y 25 minutos, y que la cuestion de mayor interes sera donde deberan realizarse
las viradas, la discretizaci
on propuesta presenta numerosas oportunidades para llevar a cabo estas
maniobras, muchas m as de las que se suelen utilizar en la practica.

Identificaremos a los cuadrantes por un par ordenado (i, j), siendo el cuadrante inferior izquierdo
el que corresponde al par (0, 0), incrementando el ndice i hacia la derecha y el ndice j hacia arriba,
hasta asignar el par (A, A) a la esquina superior derecha. Una vez caracterizada as la superficie
de agua a modelar, se podr an establecer puntos arbitrarios dentro de dicha area como origen y
destinos de la ruta.

Dado que la cancha no necesariamente tiene forma cuadrada, sino que puede presentar irreg-
ularidades varias (islas, zonas de baja profundidad, costa, etc.), es posible establecer cuadrantes
inv
alidos que se ven excluidos del
area de navegacion. Esto se ejemplifica en la Figura 2.7.

Si bien cada cuadrante presenta condiciones homogeneas de viento y corriente, ambos factores
podr
an cambiar a lo largo del tiempo. Para ello, consideraremos una discretizacion de esta tercera
on, por lo que consideraremos al viento como una funcion Viento: (NA NA R>0 )
dimensi
(R R).

Consideraremos que tanto la intensidad como la direccion del viento cambian a intervalos dis-
cretos, de modo que entre dos momentos de cambio dados, el viento en un cuadrante sera constante.
Es decir, existe un conjunto T de tiempos {t0 = 0, t1 , ...., tn , tn+1 = }, tal que en el intervalo
[ti , ti+1 ) el viento no vara. Esto corresponde a decir que para cada t dentro del intervalo estudiado,
el viento solo depende del cuadrante de la cancha. Mas formalmente:

t, i, j/tk t < tk+1 , V iento(i, j, t) = V iento(i, j, tk )


15 Pierna: tramo del recorrido de una regata
Martnez, SainzTr
apaga Pagina 26 de 82

(a) Cancha de regatas (b) Cuadrantes asociados para A = 10

Figura 2.7: Discretizaci


on en cuadrantes para una regata en Punta del Este

La corriente se considerar
a de forma analoga al viento, ya que como se discutio en la Seccion
2.1.1, puede ser modelada con un vector en R2 . Si bien utilizaremos una discretizacion del plano
identica tanto para corrientes como para vientos, no es necesario que los intervalos temporales
de cambio de viento y de corriente sean compatibles. Esta situacion puede resolverse facilmente
modificando los intervalos y obteniendo as funciones de viento y corriente identicas a las originales
pero cuyos intervalos de cambio s son compatibles entre s.

2.2.2. El grafo de rutas

Dado que nuestro objetivo al modelar la cancha es evaluar los costos de navegacion de un velero
sobre la misma para luego poder optimizar su ruta, asociaremos a la discretizacion descripta en la
secci
on anterior un grafo dirigido. Cada nodo del grafo tendra asociada una posicion en el plano
considerado, y los costos de los arcos corresponderan al tiempo que le insume al velero navegar
entre esas dos posiciones.

Adem as, se restringen las posiciones de los nodos a los contornos de los cuadrantes. En prin-
cipio, dado que las condiciones dentro de cada cuadrante son homogeneas, esta restriccion resulta
razonable. As, se considera un tercer parametro n para el modelo que establece cuantos nodos se
disponen sobre cada lado de cada cuadrante. Por las ubicaciones de los nodos sobre los bordes de
dichos cuadrantes, resulta que un mismo nodo puede hallarse en contacto con mas de uno de ellos.
Los nodos se identifican con un par ordenado (u, v), analogamente a lo descripto antes para los
cuadrantes de la discretizacion del
area navegable.

Es importante notar que el parametro establece la cantidad de nodos por lado de cada cuad-
rante, pero no directamente la cantidad de nodos del grafo, ya que esta depende de la dis-
cretizaci
on. Dada una discretizacion de la cancha en A A cuadrantes, la cantidad de nodos
total es (A + 1)(1 + A(n 1)) + (n 2)A(A + 1)) O(A2 n)
Martnez, SainzTr
apaga Pagina 27 de 82

Utilizaremos adem as dos nodos distinguidos, inicial y final, que corresponden a los puntos de
partida y destino de la ruta que deseamos considerar en nuestro modelo. Los nodos del grafo hasta
aqu descriptos se pueden observar en la Figura 2.8.

Final

Nodo (0, 12) Nodo (12, 12)

Nodo (12, 6)

Nodo (0, 0)
Nodo (9, 0)

Inicial

Figura 2.8: Nodos sobre la discretizacion de un area para A = 4 y n = 4

2.2.2.1. Las maniobras

Consideramos en una primera aproximacion establecer un arco entre dos nodos del mismo
cuadrante si, segun la caracterizacion polar de la embarcacion, es posible navegar directamente
entre ellos teniendo en cuenta el viento y la corriente reinantes dentro del cuadrante en cuestion.
Si bien esta idea es v
alida, un camino dentro de este grafo no modela correctamente las rutas de
interes para nuestro trabajo ya que no involucra ning un costo para las viradas. Como se haba
anticipado en la Seccion 1.2.3.1, para regatas de corta distancia el costo de las mismas no resulta
despreciable, por lo que el modelo no es apropiado.

Recordemos: una virada es la maniobra en la que un barco de vela cambia su direccion de


navegacion (y la orientaci
on de sus velas) para que el viento deje de incidir por uno de los lados
del barco y pase a incidir sobre el otro. Esta maniobra es la base de la bordejeada que permite a
un velero navegar contra el viento, y fue presentada en la Figura 1.6. Observemos esto con mayor
detalle en la Figura 2.9a.
Martnez, SainzTr
apaga Pagina 28 de 82

(a) Viradas (b) Trasluchadas

Figura 2.9: Distintos tipos de maniobras que realizan los veleros

En dicha figura los discos azules representan a la tripulacion de la embarcacion, y las lneas
negras a sus velas. Como se observa, ambos deben cambiar su posicion en la embarcacion para
adecuarse al cambio en el angulo de incidencia del viento sobre la misma. Esta movilizacion de
personas, as como el tiempo en que las velas no trabajan correctamente durante la maniobra afecta
negativamente la velocidad del barco.

La virada ocurre cuando el velero gira de modo a presentar su parte delantera (proa) al viento
y seguir su camino hasta establecerse con el viento por su otro lateral. Una segunda maniobra, la
trasluchada, ocurre cuando el velero gira de modo a presentar su parte trasera (popa) al viento.
En funcion de si las velas pasan de izquierda a derecha o viceversa, tanto viradas como trasluchadas
ofrecen dos variantes simetricas que se observan en las figuras.

En la jerga n
autica, se dice que un barco que nave-
ga con sus velas sobre el lado izquierdo de la embar-
cacion navega con amuras a estribor, mientras que Ceida
si lo hace con sus velas sobre el lado derecho nave-
ga con amuras a babor. Por ejemplo, en la Figura
2.9a, el barco de la izquierda navega inicialmente con
amuras a estribor, y luego de la virada contin ua con
amuras a babor. An alogamente, en la Figura 2.9b, el Popa
barco de la izquierda navega primero con amuras a es-
tribor y luego de la trasluchada pasa a tener amuras a
babor. En resumidas cuentas, viradas y trasluchadas
Amuras Amuras
son maniobras que permiten a un velero cambiar de a estribor a babor
amura.
Figura 2.10: Tipos de navegacion
Martnez, SainzTr
apaga Pagina 29 de 82

(ce
nida,estribor) (ce
nida, babor) (popa, babor) (popa, estribor)

Figura 2.11: Ejemplo de arcos para un grupo de nodos hermanos seg


un su tipo de navegacion

Tanto viradas como trasluchadas tienen un costo temporal que se deduce de la perdida de
velocidad que provocan. Nuestro modelo debe considerar estos costos. Planteamos entonces un
refinamiento: consideramos que en cada posicion donde antes exista un u nico nodo, ahora existiran
cuatro, que representan cuatro tipos de navegacion. Un tipo de navegacion se define por su amura
(babor o estribor) y su rumbo. El rumbo, que en este caso puede ser simplemente popa o ce nida 16 ,
no es m as que una categorizaci
on de los angulos de incidencia del viento sobre el barco que denota
si este navega mayormente contra el viento o a favor de este, como se ejemplifica en la Figura 2.10.

As, en cada coordenada (x, y) habra en el nuevo modelo cuatro nodos en lugar de uno u nico.
Diremos que estos nodos que ocupan una misma coordenada en el plano son nodos hermanos. En
este nuevo modelo, existir
a un arco entre nodos u y v si ese arco exista en el anterior ambos nodos
comparten su tipo de navegaci on. La Figura 2.11 ilustra la disposicion de los arcos para nodos
hermanos de los distintos tipos de navegacion propuestos.

A su vez, se agregar
an arcos entre nodos hermanos ilustrando las maniobras que el barco puede
realizar para cambiar de un tipo de navegacion a otro. Esto se ilustra en la Figura 2.12.

Cabe destacar que se introducen aqu dos seudomaniobras llamadas orzada y derivada que
sirven para garantizar la correctitud del modelo. Dichas maniobras tienen un costo artificial cuyo
objetivo es garantizar que el pasaje entre dos nodos vecinos se haga por el camino directo en el
grafo. Si miramos la Figura 2.10, observamos que se puede pasar de un rumbo de ce nida al otro
(es decir, es una cenida con amuras a estribor a una ce nida con amuras a babor) realizando una
virada. Sin embargo, tambien es posible hacerlo mediante una trasluchada, pasando primero por
el rumbo de popa con amuras a estribor, haciendo una trasluchada seguida del rumbo de popa
con amuras a babor, y finalmente alcanzando la ce nida con amuras a babor. Este camino indirecto
tiene en la practica un costo bastante superior a la de realizar la virada. Sin embargo, el costo de
una trasluchada es caractersticamente inferior al de una virada. De darle un peso nulo a los arcos
que se bautizaron orzada y derivada, sera mas conveniente en el grafo realizar siempre una
trasluchada, lo cual no es fiel a la realidad. Se introducen entonces estas seudomaniobras que se
denominan seg un su nombre n autico correspondiente.17
16 Sedenomina ce nida a la configuracion de una embarcacion que le permite navegar contra el viento.
17 En la pr
actica un pasaje de una popa a la cenida de la misma amura tiene efectivamente un costo, aunque por
lo general se considera despreciable. Sin embargo, una sucesion de cambios de rumbo s tiene un costo considerable.
En efecto, las penalizaciones en regatas por lo general consisten en giros de 360o o 720o .
Martnez, SainzTr
apaga Pagina 30 de 82

Virada

(Ceida, Estribor) (Ceida, Babor)


Virada

Orzada Orzada

Derivada Derivada

Trasluchada
(Popa, Estribor) (Popa, Babor)

Trasluchada

Figura 2.12: Nodos asociados a cada tipo de navegacion y sus transiciones

Sea angulosamurap ,rumboq = [desde , hasta ) el rango de angulos asignado al tipo de navegacion
(amurap , rumboq ), y sea vectorDeNavegacion(u, v) el vector correspondiente a la navegacion entre
u y v: (u.x v.x, u.y v.y). Entonces, en un instante dado t, existira un arco entre dos nodos u y
v de tipo de navegaci on (amurap , rumboq ) incluidos en el cuadrante (i, j) si y solo si:

anguloDeIncidencia(viento(i, j, t), vectorDeNavegacion(u, v)) angulosamurap ,rumboq

Aqu anguloDeIncidencia es una funcion que calcula el angulo entre dos vectores, en este caso
el vector que modela la direcci
on del viento y el que modela la direccion de navegacion del barco.
Este angulo es el
angulo mencionado en la Seccion 2.1.1.

Establecimos posteriormente que la cantidad de rumbos distintos sea parametrizable, a fin


de permitir discretizaciones mas granulares del espacio de angulos de navegacion. Esto permite
en principio la reducci
on de costos espurios causados por las seudomaniobras, ya que el costo
de cada una de ellas puede ser menor. Para ello, se divide cada amura uniformemente entre la
cantidad de rumbos distintos. En la Figura 2.13 se aprecia un ejemplo con 4 rumbos por amura. Las
seudomaniobras deben extenderse consecuentemente para garantizar el comportamiento correcto
de las maniobras como se describio previamente.

Como se ilustra en la Figura 2.14, el grafo resultante puede razonarse de forma tridimensional.
As, cada tipo de navegaci
on puede considerarse en un plano y las maniobras conectan los distintos
planos entre s. Por ejemplo, una virada permite desplazarse en el grafo desde el plano asociado a
(ce
nida, babor) al plano de (cenida, estribor). Dentro de cada plano, los arcos corresponden solo a
rumbos dentro del tipo de navegaci on correspondiente.
Martnez, SainzTr
apaga Pagina 31 de 82

Virada

Virada

Amuras Amuras
a Estribor a Babor

Trasluchada

Trasluchada

Figura 2.13: Nodos para 4 rumbos distintos por amura

Ejes de maniobra

Ejes de navegacin

(Ceida, Estribor)

(Ceida, Babor)

(Popa, Babor)

(Popa, Estribor)

Figura 2.14: Vista tridimensional del grafo del modelo


Martnez, SainzTr
apaga Pagina 32 de 82

2.2.2.2. C
alculo de costos

Arcos de navegaci
on

Dado que tanto viento como corriente pueden cambiar a lo largo del tiempo, los arcos que
inciden sobre un nodo tambien resultaran variables. No solo puede modificarse su costo, sino que
arcos pueden aparecer o desaparecer en funcion de si el barco puede navegar de forma directa entre
los nodos involucrados para el viento que reina en ese instante.

En todo momento, el costo asociado a cada arco se corresponde con el tiempo necesario para
recorrer la distancia cartesiana que separa las coordenadas asociadas a los nodos, navegando con
la velocidad que predicen las curvas polares caractersticas del barco, con el viento y la corriente
asociados a ese cuadrante en ese instante.

Consideremos u, v nodos no hermanos de un cuadrante c en el tiempo t. Sea velocidad(u, v, c, t)


la velocidad predicha por la curva polar del barco para navegar en la direccion que une u con v en
las condiciones que corresponden al cuadrante c en el instante t. Luego, el costo de navegar desde
u hasta v (y por lo tanto el costo asociado al arco) se obtiene como:

kuvk

velocidad(u,v,c,t) velocidad(u, v, c, t) > 0
Costo(u, v, c, t) =


velocidad(u, v, c, t) = 0

Es de destacarse que el cuadrante es un parametro


del costo, ya que dos nodos no hermanos pueden com-
partir mas de un cuadrante, lo que se ilustra en la
Figura 2.15. En ella se observa que todos los nodos
A B ubicados sobre el borde de un cuadrante comparten
entre s los dos cuadrantes que divide dicho borde, y
con ellos dos condiciones de viento y marea que even-
tualmente podran diferir.
Figura 2.15: Cuadrante compartido El hecho de que dos nodos esten unidos por dos o
mas arcos, que por estar asociados a distintos cuad-
rantes tengan costos diferentes, es un problema causado por la discretizacion. Para salvar este
problema podemos redefinir la funcion de costo para que reduzca esos arcos a uno u nico, al que le
corresponder
a el costo mnimo de navegacion. As, se definira de la siguiente manera:

Costo(u, v, t) = mn Costo(u, v, c, t)
c:cuadrante/ucvc

En el caso de dos nodos que no comparten ning un cuadrante se les asigna un costo infinito18 ,
ya que no nos interesa navegar entre ellos. Si alguno de los dos es uno de los nodos distinguidos
(inicial o final ), el costo entre ellos sera 0 si el otro corresponde respectivamente a uno de los
orgenes o destinos de la ruta.
18 Por el uso que se le va a dar al modelo, un arco de costo infinito es equivalente a la ausencia de un arco.
Martnez, SainzTr
apaga Pagina 33 de 82

Arcos de maniobra

Consideremos ahora el caso de los nodos hermanos. Entre ellos, los arcos tienen un valor que
representa el costo asociado a cada maniobra, que en principio es caracterstico del barco y por lo
tanto es un parametro del modelo. Si bien nuestro modelo permite definir una cantidad arbitraria
de tipos de navegaci on como se comento en la Seccion 2.2.2.1, nosotros optamos por utilizar solo
4, con lo que resulta necesario especificar los parametros costovirada , costotrasluchada , costoderivada
y costoorzada .

Como se detallo oportunamente, los costos de las seudomaniobras deben ser tales que las man-
iobras directas siempre resulten menos costosas que una secuencia alternativa de varias maniobras.
Se parte siempre de la base de que costovirada > costotrasluchada . Ademas, para este caso se debera
cumplir que costoderivada +costotrasluchada +costoorzada > costovirada , ya que de lo contrario nunca
sera conveniente realizar una virada.

Cuando se utilizan m as tipos de navegacion, dicha igualdad debe seguir siendo valida para
obtener un modelo correcto. Una forma sencilla de obtener una asignacion de costos de maniobra
v
alida consiste en segmentar las seudomaniobras, distribuyendo uniformemente entre los nuevos
arcos los costos originales asignados a orzada y derivada.

En cualquier caso, dados dos nodos hermanos u y v definimos el costo del arco que los une
como el costo de la maniobra necesaria para pasar de uno al otro, o en caso de no haber una
maniobra que nos permita llegar directamente de uno al otro. Por ejemplo, no se puede pasar de
un nodo de tipo (ce
nida,estribor) a uno de tipo (popa,babor) en una sola maniobra.


costomaniobrau,v Existe una maniobra para pasar de u a v
Costo(u, v) =
En otro caso

Por u
ltimo, el nodo inicial que se exhibio en la Figura 2.8 se conecta con los nodos cuya posicion
este asociada al punto de partida de la ruta a considerar con arcos de costo nulo. Si bien en muchas
instancias se considerar a un unico punto de partida, la mayora de las regatas cuentan con una
lnea de partida. El nodo inicial permite modelar que un subconjunto cualquiera de nodos es un
punto de partida v alido. Una situaci
on analoga ocurre con una eventual lnea de llegada y el nodo
final.

Resumen

Resumiendo, la funci
on de costos dentro del grafo de nuestro modelo resultara:
Costo(u, v, t) = costomaniobrau,v si u y v son dos nodos hermanos unidos por una maniobra
Costo(u, v, t) = si u y v son hermanos pero no estan unidos por una maniobra.
Costo(u, v, t) = 0 si u es el nodo inicial y v esta en la lnea de salida.
Costo(u, v, t) = 0 si v es el nodo final y u esta en la lnea de llegada.
Costo(u, v, t) = mnc:cuadrante /ucvc Costo(u, v, c, t) si u y v no son hermanos y comparten
por lo menos un cuadrante.
Costo(u, v, t) = en otro caso.
Martnez, SainzTr
apaga Pagina 34 de 82

Utilizando esta definici


on surge que un camino dirigido entre los nodos inicial y final representa
una ruta posible entre un conjunto de puntos de partida y uno de puntos de llegada, cuyo costo
modela el tiempo de navegaci on esperado entre los mismos e incluyendo los costos insumidos en
la realizaci
on de maniobras. Veremos en el proximo captulo como implementar un algoritmo que
encuentre rutas optimas en este modelo.
Martnez, SainzTr
apaga Pagina 35 de 82

Captulo 3

Algoritmo Exacto

3.1. C
omputo de la ruta
optima

El modelo presentado nos permite representar todas las rutas posibles entre los puntos de origen
y destino recorriendo un
area navegable dada. Nos interesa entonces determinar la ruta de menor
duraci
on, que corresponde al camino mnimo entre el nodo inicial y el nodo final.

Para ello debemos generalizar la definicion tradicional de camino en grafos para que tenga en
cuenta la variable temporal. As, dado un camino X = u1 , ..., un , definimos su costo de la siguiente
manera:
Si X = u1 , u2 , Costo(X) = Costo(u1 , u2 , 0)
Si X = u1 , ...., un n > 2, Costo(X) = Costo(X 0 ) + Costo(un1 , un , Costo X 0 )).
| {z }
X0

A continuaci
on examinaremos los algoritmos utilizados para resolver este problema.

3.1.1. Camino mnimo en grafos independientes del tiempo

El problema de camino mnimo en grafos es un problema muy estudiado. Dado un grafo G(V, E),
con una funcion de costoPw : V V R, se desea hallar el camino P entre dos nodos u V
y v V que minimiza (ui ,uj )P W (ui , uj ). Esta es la versi
on single-source single-destination
(origen y destino u
nicos), pero existen otras variantes, como por ejemplo buscar los caminos mas
cortos entre todo par de nodos de G.

Si w es tal que w(ui , uj ) 0 se puede resolver el problema mediante el algoritmo de Dijkstra [5].
Dicho procedimiento se ilustra en el Algoritmo 3.1. Este algoritmo puede implementarse con una
complejidad O(|E| + |V | log(|V |)) utilizando una cola de prioridad implementada sobre Fibonacci
Heaps para obtener el nodo de menor costo en cada iteracion [14].

3.1.1.1. Algoritmo A

El algoritmo A es una extensi on del algoritmo de Dijkstra. Fue planteado por Peter Hart, Nils
Nilsson, y Bertram Raphael en 1968 [17, 18]. Este algoritmo utiliza una funcion heurstica h(v)
que se suma al costo de llegar al nodo, para de esta manera guiar el orden de exploracion de los
nodos en el algoritmo. As, en cada iteracion no se elige el nodo de menor costo sino el nodo que
minimiza la suma de este y el valor de h.
Martnez, SainzTr
apaga Pagina 36 de 82

Algoritmo 3.1 C
alculo del camino mnimo entre nodos u y v en G(V, E) con funcion de peso w
1: x V : costosx =
2: x V : predecesorx = null
3: fijos = {u}
4: costosu = 0
5: Mientras v 6 fijos hacer
6: costoMinimo = mn({costosy /y V y 6 fijos})
7: Sea x V / costox = costoMinimo
8: fijos = fijos {x}
9: Para cada y adyacente a x/y 6 fijos hacer
10: Si costoy > costox +w(x, y) entonces
11: costoy = costox +w(x, y)
12: predecesory = x
13: Fin si
14: Fin para
15: Fin mientras

En el contexto de A , decimos que la heurstica h(v) es:


Admisible si no sobrestima la distancia hacia el objetivo
Consistente si u, v V : h(v) w(v, u) + h(u)

un esas definiciones, A es equivalente al algoritmo de Dijkstra


Si h es admisible y consistente seg
dado que ambos encuentran el camino mnimo. Sin embargo, y pesar de que ambos algoritmos
tienen el mismo orden de complejidad, A suele tener un tiempo de ejecucion considerablemente
menor ya que la heurstica puede brindarle informacion adicional al procedimiento para guiar la
busqueda de manera m as inteligente.

3.1.2. Camino mnimo en grafos dependientes del tiempo

En base a las definiciones antes planteadas debemos proponer un algoritmo que pueda deter-
minar el camino mnimo en nuestro modelo, en el que tanto la existencia como el costo de los arcos
est
an condicionados por el tiempo.

Definamos en primer lugar la propiedad fifo para grafos dependientes del tiempo. Sea Gt (V, E, wt )
un grafo dependiente del tiempo, con V el conjunto de nodos de Gt , E los arcos y wt la funcion de
costo dependiente del tiempo. Diremos que Gt cumple la propiedad fifo (First In, First Out) si y
solo si todos sus arcos (u, v) cumplen que: t1 , t2 R>0 , t1 t2 t1 +wt (u, v, t1 ) t2 +wt (u, v, t2 )
Informalmente, un grafo dependiente del tiempo es fifo si siempre resulta conveniente llegar mas
temprano a un nodo que llegar m as tarde, o en el peor de los casos es equivalente.

El grafo de nuestro modelo no cumple la propiedad fifo, ya que al cambiar el viento con el
tiempo nada impide que en un instante t0 sea imposible navegar entre dos nodos u y v (ya sea
porque no hay viento, o porque el viento no es favorable) pero que mas tarde la situacion cambie.
Esta situaci
on se ilustra en la Figura 3.1: un velero que llega en el instante t0 no puede navegar
entre los nodos unidos por la flecha punteada ya que no hay ning un arco que se lo permita. Sin
embargo, de haber llegado m as tarde podra haber encontrado un viento distinto que s se lo hubiera
permitido.
Martnez, SainzTr
apaga Pagina 37 de 82

(a) t = t0 (b) t = t0 + t

Figura 3.1: Cambio en los arcos del grafo seg


un el viento

Esto representa un problema para nuestro modelo: el algoritmo de Dijkstra (incluidas sus
variantes como A ) no es correcto sin la condicion fifo. Observemos el ejemplo de la Figura 3.2.
Para desplazarse del nodo u al nodo v hay que pasar por el nodo w. Si se aplica el algoritmo de
Dijkstra, se intentar
a llegar lo antes posible a cada nodo. Llegamos entonces al nodo w en t = 10.
Para abandonar el nodo w y llegar a v, debemos pagar un costo de 1000, para un total de 1010.
Sin embargo, exista un camino m as corto: ir hasta w pasando por z y pagando un costo de 50,
para luego pasar a v con un costo de 1. As, el total sera de 51.

v v

1000 1

30 30
w z w z

10 20 10 20

u u

(a) t = 0 (b) t = 50

Figura 3.2: Grafo dependiente del tiempo no-fifo

Lo que ocurre es que el algoritmo de Dijkstra utiliza la subestructura optima del problema de
camino mnimo, que aprovecha mediante programacion dinamica. Sin embargo, en grafos dependi-
entes del tiempo no-fifo, el problema no presenta subestructura optima: un camino mnimo entre
dos nodos puede contener caminos sub optimos entre nodos intermedios. Por lo tanto, el algoritmo
no funciona correctamente.

En efecto, el problema de hallar un camino mnimo en un grafo no-fifo es np-hard [23, 30].
Sin embargo, Orda y Rom probaron que introduciendo la posibilidad de esperas en los nodos,
el grafo se puede transformar en fifo en tiempo polinomial [22]. La espera, como su nombre lo
indica, consiste en permanecer en un nodo por un tiempo arbitrario en lugar de estar obligado
Martnez, SainzTr
apaga Pagina 38 de 82

a abandonarlo inmediatamente. Formalmente, se considera que para cada nodo v y todo tiempo
r R>0 se agrega un arco (v, v) con costo r.

Nuestro modelo inicial no contemplaba la posibilidad de esperar. Sin embargo, la opcion es lcita:
nada prohbe que durante una regata, sus participantes se detengan (por lo general, anclando) a
la espera de mejores condiciones de viento o corriente. En la practica no es algo que se realice
comunmente, pero puede ser de vital importancia si el viento calma completamente y la corriente
aleja a los participantes de su destino. Dado que incluir la posibilidad de espera no solo redunda
en un modelo m as completo, sino que ademas reduce la optimizacion a un problema polinomial,
optamos por incluir la posibilidad de arrojar el ancla y esperar en los nodos.

Para transformar un grafo no-fifo en uno que s cumpla con la propiedad, construimos una
on w0 para el costo de los arcos, que se define de la siguiente manera:
funci

w0 (u, v, t) = mn(w(t + , u, v) + )
0

El nuevo costo en un tiempo dado es el menor de los costos de transicion sumado al costo
de esperar para realizar dicha transicion. Con esta nueva definicion, vuelve a ser cierto que es
conveniente llegar lo mas r
apido posible a cada nodo, ya que cualquier ventaja que se poda tener
llegando despues, se puede lograr esperando.

Recordando la Figura 3.2, al llegar al nodo w el costo del arco que incide en v es:

mn( 0 + 1000 , 40 + 1)
| {z } | {z }
no esperar esperar

Esto nos deja un costo de 41, que sumado al costo de llegar a w (que era 10) nos permite obtener
un costo total de 51, que era el costo mnimo. Notemos que el camino es distinto: recorremos ahora
u, w, v esperando en w, mientras que antes era necesario transitar por el nodo z. Es por esto que,
para realizar la transformacion que hace del grafo uno fifo, es importante que en el contexto del
problema modelado la espera sea v alida.

En nuestro caso, podemos definir Costo0 (u, v, t), seg


un lo planteado anteriormente, como:

Costo0 (u, v, t) = mn (Costo(u, v, ti ) + (ti t))


ti T,ti t

Con esta nueva definici


on, es posible resolver el problema utilizando una variante del algoritmo
de Dijkstra, que analizaremos a continuacion.

3.1.2.1. Camino mnimo en grafos FIFO

Como se mencionara antes, bajo la hipotesis fifo existe un algoritmo para hallar el camino
mnimo en tiempo polinomial. El mismo fue propuesto por Dreyfus y es una generalizacion directa
para el algoritmo de Dijkstra [7]. Curiosamente, Dreyfus lo propuso como una solucion general, sin
notar que solo funcionaba para grafos con la propiedad fifo. Sus resultados fueron luego discutidos
en otros estudios [16, 20, 22].
Martnez, SainzTr
apaga Pagina 39 de 82

A su vez, se puede generalizar el algoritmo A de la misma manera. La extension es inmediata


si se utiliza una heurstica h(v) consistente y admisible. Un ejemplo de esto puede verse en el
trabajo de Kanoulas et al [19]. M as a
un, tambien es posible considerar una heurstica dependiente
del tiempo h(v, t) [36].

3.1.3. Heursticas propuestas para A

Necesitamos para nuestro uso heursticas que permitan estimar el costo necesario para llegar
desde un nodo u cualquiera al nodo final en el grafo de nuestro modelo. Propondremos a contin-
on dos heursticas que fueron utilizadas en nuestra implementacion de A .
uaci

3.1.3.1. Heurstica basada en distancia cartesiana

La primera heurstica que consideramos utiliza la distancia euclidiana entre u y alguno de los
nodos adyacentes al nodo final 19 . Llamemos v al nodo vecino al nodo final.

Para obtener el tiempo, se divide la distancia kv uk por la mayor velocidad que el barco puede
lograr en cualquier direcci
on, para cualquiera de los vientos que se puedan producir en la cancha.
Si se tomara la velocidad caracterstica en la direccion entre u y v, la heurstica no sera admisible
ya que podra subestimar la distancia total. Esto se debe a que los tiempos de navegacion en el
plano no cumplen la desigualdad triangular, puesto que las velocidades de los barcos estan muy
lejos de ser uniformes dependiendo de su direccion.

Formalmente, definimos:
kv uk
he (v) =
maxVel

Siendo maxVel la velocidad m


axima que puede desarrollar el velero en cualquier direccion,
cuadrante y tiempo.

Intuitivamente, esta heurstica resulta muy susceptible a outliers de viento, ya que alcanzara
con que en algun cuadrante haya un viento muy alto para que el valor de maxVel aumente brusca-
mente y la heurstica subestime demasiado el tiempo total, reduciendo su efectividad. Por otro lado,
el valor de la velocidad efectiva de navegacion suele ser mucho menor al de la maxima velocidad
posible, en funci
on de la gran disparidad que existe entre las velocidades de un rumbo y otro. Dado
que la efectividad de la heurstica utilizada por A aumenta mientras mejor sea la aproximacion de
la misma al costo real, no deberan esperarse grandes mejoras con una cota tan gruesa. Por estas
razones, no confiabamos en que esta heurstica nos permitiera obtener muy buenos resultados en
la pr
actica.

Heursticas de este tipo se utilizan en otros trabajos para problemas de ruteo [19], pero las
caractersticas particulares de nuestro problema (mas precisamente, la gran variacion de velocidad
que existe entre una direcci on y otra) dificultan su funcionamiento.
19 Recordemos que tanto el nodo inicial como el final no tienen asociadas coordenadas en el plano, son u
tiles
simplemente para la construcci
on del modelo.
Martnez, SainzTr
apaga Pagina 40 de 82

3.1.3.2. Heurstica basada en VMC

Como dijimos, la heurstica anterior es bastante generica y utiliza muy poca informacion del
dominio del problema a tratar. En principio, si volvemos sobre una curva polar como la de la Figura
1.7, salta a la vista el origen del problema: algunos angulos respecto del viento tienen velocidades
muy superiores a otros. As, tomar la velocidad maxima como estimacion de la velocidad del barco
(en la cuenta anterior referida a maxVel introduce un error muy sustancial. Lo deseable sera
entonces tener en cuenta la direcci on en la que la embarcacion desea desplazarse en lugar de tomar
el maximo para todas las direcciones.

El problema con esto ya fue anunciado antes: la desigualdad triangular no es valida en la


navegaci
on a vela, puesto que es usual que rutas mas largas en distancia necesiten menos tiempo
para ser recorridas. Buscamos entonces relajar la nocion detras de la desigualdad triangular para
obtener una cota m as fina, pero manteniendo la admisibilidad de la misma.

As, partimos de la idea de que para avanzar desde un punto a otro del grafo necesariamente
habra que atravesar una cierta cantidad de filas de la grilla del modelo. Como cada cuadrante tiene
condiciones homogeneas, podemos evaluar, sobre un intervalo de tiempo, cual es la manera mas
r
apida de atravesar cualquiera de los cuadrantes que integran una fila a partir del vmc (introducido
en la Figura 2.1b). As obtendremos una cota inferior del tiempo necesario para atravesar cada fila
entre el punto de origen y el de destino, que corresponde a los di en la Figura 3.3.

Final

Inicial

Figura 3.3: Explicacion de la heurstica de VMC


Martnez, SainzTr
apaga Pagina 41 de 82

Pn
Adem as, es cierto que D i=0 di , con lo cual podemos deducir una cota admisible del tiempo
necesario para realizar la ruta completa. Eso se debe a que independientemente de la ruta elegida,
para pasar de una fila a otra necesariamente hay que atravesar uno de sus cuadrantes.

El tiempo necesario para cruzar un cuadrante de esta manera, se puede acotar dividiendo la
altura del cuadrante (en metros) por el vmc en la direccion perpendicular a la fila (que corresponde
a la maxima velocidad proyectada sobre esa direccion que puede alcanzar el velero). Recordemos
que a los cuadrantes se les asignaba una tupla (fila, columna) que indicaba su posicion en la grilla.
Si tomamos una grilla con A cuadrantes de altura, definimos entonces:
A
X
hVMC0o (v) = tiempoFila(i)
i=f ila(v)

Donde:
tiempoFila(i) es el menor tiempo en el que se puede cruzar el cuadrante i (es decir, el alto
del cuadrante divido por la mayor velocidad que se puede lograr hacia arriba, considerando
todos los cuadrantes de la fila en todos los instantes).
La fila de un nodo es el m
aximo de las filas de sus cuadrantes
La fila de un cuadrante es la fila que le corresponde en la grilla

Un razonamiento similar se puede hacer para las columnas de la grilla modelada, e incluso ambas
opciones pueden combinarse. Sin embargo, la experimentacion mostro que el vmc horizontal sola
subestimar demasiado el tiempo y por lo tanto no presentaba ventajas sustanciales. Intentamos
aprovechar las dos opciones utilizando la velocidad resultante de combinar el vmc vertical con
el horizontal, pero nuevamente en la experimentacion no funciono muy bien. Suponemos que la
subestimacion propia del vmc horizontal es tan grande que desmejora el resultado obtenido por la
vertical.

Finalmente decidimos aprovechar ambos calculos tomando la cota mas fina de las dos:

hVMC = max(hVMC0o , hVMC90o )

3.1.4. Algoritmo final para rutas o


ptimas

Tras la presentaci
on de los distintos algoritmos para la obtencion de caminos mnimos, estamos
en condiciones de introducir el seudoc odigo del algoritmo que utilizamos para obtener el camino
mnimo en el grafo del modelo, que se corresponde con la ruta optima para la regata. El codigo
correspondiente es el Algoritmo 3.2.

3.2. Implementaci
on

Las implementaciones relativas al modelo se realizaron en c++ ya que buscabamos lograr un


buen rendimiento. Todas las implementaciones de grafos y objetos de geometra computacional
fueron construidas por nosotros para adaptarlas al maximo a las necesidades particulares del prob-
lema.
Martnez, SainzTr
apaga Pagina 42 de 82

alculo del camino mnimo entre u y v usando A con heurstica h(v)


Algoritmo 3.2 C
1: x V : costosx =
2: x V : predecesorx = N U LL
3: fijos = {u}
4: costosu = 0
5: tiempo = 0
6: Mientras v 6 fijos hacer
7: costoMinimo = mn({costosy +h(y)/y V y 6 fijos})
8: Sea x V / costox +h(x) = costoMinimo
9: fijos = fijos {x}
10: Para cada y adyacente a x/y 6 fijos hacer
11: Si costoy > costox + Costo(x, y, costox ) entonces
12: costoy = costox + Costo(x, y, costox )
13: predecesory = x
14: Fin si
15: Fin para
16: Fin mientras

El primer inconveniente de implementacion fue la estructura de datos asociada al grafo. Una


primera versi
on construa el grafo en memoria utilizando listas de adyacencia. Sin embargo, con
el aumento de la resolucion y el consiguiente incremento en la cantidad de arcos, rapidamente
tuvimos que descartar esta alternativa por limitaciones en la cantidad de memoria necesaria. Re-
sultaba adem as bastante ineficiente construir un grafo completo en memoria dado que el buen
comportamiento de nuestra implementacion de A haca necesario recorrer solo una porcion muy
reducida del mismo.

En u ltima instancia optamos por generar las listas de adyacencia dinamicamente solo a medida
que se iba realizando la exploraci
on del grafo, eliminando posteriormente la informacion ya utilizada
para asegurar un uso reducido de recursos.

Para guardar informaci on de los nodos se utilizo una propiedad: si n > 1 es la cantidad de nodos
por lado y (x, y) las coordenadas de un nodo, entonces x 0 mod (n 1) y 0 mod (n 1). En
base a esta se desarroll
o una funci
on de numeracion de los nodos que permite almacenar los mismos
en vectores en memoria, sin necesidad de implementaciones mas costosas y lentas de diccionarios.

Finalmente se utilizaron intensivamente caches en memoria para reutilizar tantos calculos como
fuera posible. En muchos casos, los escenarios presentan un alto grado de redundancia que permite
que las tecnicas de memorizaci
on brinden beneficios sustanciales.

La implementaci on de curvas polares que se utiliza para calcular los pesos de los arcos tena
inicialmente una implementaci on vectorial que ofreca una resolucion arbitraria para los angulos de
navegacion en base a los puntos ingresados a partir de la prediccion del vpp. Mas adelante decidimos
hacer un muestreo de dichas curvas con una resolucion de 1o que por las caractersticas tpicas de las
mismas resulto ser mas que suficiente, y nos permitio mejorar bastante el rendimiento del algoritmo
en general. Dado que en la implementacion definitiva los arcos se computan dinamicamente, la
evaluaci
on de sus costos se torna una operacion crtica.

Al igual que en varias secciones del c


odigo del grafo, se utilizo un cache de polares. En la medida
en que los algoritmos de b
usqueda exploran el grafo de forma ordenada, es de esperarse que se reali-
Martnez, SainzTr
apaga Pagina 43 de 82

cen numerosas consultas para unas mismas condiciones de viento y corriente (ya que todos los arcos
de un mismo cuadrante comparten estas condiciones). Esta optimizacion resulto particularmente
efectiva.

Figura 3.4: Aplicacion para analisis de curvas polares

Utilizamos extensivamente Python para construir herramientas de visualizacion y evaluacion


de los resultados. Realizamos tambien bindings para Python de la implementacion de las curvas
polares, y con ellas una aplicaci on independiente para consultas y analisis de dichas curvas para
cualquier viento y corriente, as como de calculo de las curvas de vmc y vmg asociadas.
Martnez, SainzTr
apaga Pagina 44 de 82

Captulo 4

Heursticas

4.1. Por qu
e desarrollar heursticas?

El modelo exacto descripto en el captulo anterior nos permite, dada una descripcion completa
de un escenario del problema, optimizar la ruta de navegacion de un velero a partir de su prediccion
polar de velocidad. La descripci on debe ser abarcativa: para poder calcular la ruta optima, se
necesitan conocer tanto el viento como la corriente en toda la extension del area de interes, as como
su evoluci
on a lo largo de un perodo de tiempo apropiado.

Sin embargo, como se discuti o en la Seccion 1.2.3, la presuncion de que un navegante dispone
de informacion tan detallada no es verosmil. Si bien se puede considerar que un pronostico a
gran escala como gfs es fiable y completo, su resolucion espaciotemporal solo permite su uso en
c
omputos de rutas para regatas de larga distancia. Como habamos anticipado, el centro de nuestra
atenci
on son las regatas cortas, y para las mismas los pronosticos son casi siempre irrelevantes.

En este contexto, la u nica informacion que el


regatista tiene a su alcance es la que le proveen los
instrumentos instalados a bordo de su barco. Al-
gunas de las mediciones que una embarcacion de
regatas adquiere en tiempo real son la direccion e
intensidad del viento (mediante un anemometro y
una veleta), la direccion y velocidad del barco re-
specto del agua (mediante un comp as magnetico y
una corredera20 ), la direcci
on y velocidad del barco
respecto de la tierra (con un gps) y la temperatu-
ra y profundidad del agua en que navega (con una
sonda ecoica), entre otros.

La mayora de los instrumentos modernos uti- Figura 4.1: Instrumental de un vo70


lizan el estandar de datos nmea 0183 (por las si-
glas de National Marine Electronics Association) y por lo tanto pueden intercambiar informacion
entre s, o enviarla a un sistema informatico convencional. Esto permite que un software analice
estos datos en tiempo real. Sin embargo, esta informacion es claramente insuficiente para construir
rutas
optimas en nuestro modelo: todos los datos son lecturas en tiempo real (lo que implica un
desconocimiento de su evoluci on futura), y a su vez todos ellos conciernen a la ubicacion geografica
del barco (lo que redunda en el desconocimiento de las condiciones en otros lugares).

Aun as, es posible utilizar la informacion que se adquiere durante la navegacion para tomar de-
cisiones estrategicas, en particular para regatas de corta distancia. La evidencia de esto es emprica:
los navegantes que obtienen buenos resultados en competencias de corta distancia solo disponen
de esta informaci on, al igual que los demas competidores.
20 Instrumento que mide la velocidad del agua bajo el casco del barco con una peque
na h
elice sumergida.
Martnez, SainzTr
apaga Pagina 45 de 82

Nuestro objetivo es desarrollar un algoritmo que pueda servirse de esta informacion acotada
para tomar decisiones heursticas, permitiendole hacer una aproximacion razonable a las rutas opti-
mas que podran computarse si la informacion completa estuviera disponible. Para ello, nos servi-
mos del algoritmo exacto presentado en el captulo anterior como benchmark para el rendimiento
de los metodos aproximados.

Si bien es ambicioso suponer que las rutas resultantes de algoritmos heursticos puedan ser
utilizadas en forma directa, s es razonable esperar que sirvan como informacion para el tripulante
a cargo de la estrategia, ofreciendole informacion adicional para ayudarlo en la toma de decisiones.

4.2. Framework para heursticas

Decidimos centrarnos para el desarrollo de heursticas en las condiciones de competencia mas


usuales para regatas de corta distancia: los recorridos entre boyas introducidos en la Seccion 1.1.3.
Para esto, recurrimos a nuestro conocimiento del dominio, discusiones con expertos regatistas y a
la literatura no academica que utilizan los mismos[2, 15, 29].

En este tipo de regatas, la cuesti


on mas desafiante desde el punto de vista estrategico es en
que momento de una pierna deber an realizarse las maniobras (ya sean viradas o trasluchadas)
para aprovechar mejor el viento disponible. Una primera aproximacion al problema revela que
como regla general siempre debe navegarse en rumbos de vmg.

Si bien el concepto de vmg se discuti


o en la Sec-
ci
on 2.1, ahondaremos un poco m as en el a partir
de la Figura 4.2. En ella, un velero navega en una
bordejeada contra el viento. Los rumbos de may- 0
or vmg est an indicados en la figura con puntos
azules. Se observa intuitivamente que son precisa-
mente esos rumbos los que maximizan la velocidad 45
en direcci
on opuesta al viento. Angulos mas abier-
tos o m as cerrados para cada borde redundaran
en una velocidad resultante menor en la direccion
en que se desea avanzar. La curva azul es la polar
de vmg, que como se mencionara oportunamente
no es m as que la c
apsula convexa de la curva polar
de velocidad.
2 4 6 8
La eleccion de navegar u
nicamente en rumbos
de mayor vmg reduce significativamente el espa-
cio de b usqueda que deben considerar nuestras
heursticas. A partir de esta suposici
on, para to- Figura 4.2: Rumbos de vmg
do tipo de navegaci on habr
a que decidir a lo sumo
entre dos opciones, que corresponden a los bordes alternativos de las bordejeadas. Esto no es solo
una simplificacion para nuestro modelo, sino que se condice muy bien con la realidad de una regata.
En todo momento, una u nica pregunta flota en la cabeza de un estratega: viro o no viro?

As, proponemos un armazon general para la construccion de heursticas que sera com
un a todas
nuestras propuestas. Recorriendo el grafo, se elegira en cada nodo hacia donde se desea avanzar en
Martnez, SainzTr
apaga Pagina 46 de 82

el paso siguiente mediante un criterio. Sera este criterio lo que diferencie a una heurstica de otra.
Las opciones que se presenten a los criterios corresponderan u nicamente a los rumbos de mayor
vmg. El metodo general com un a todas las heursticas se describe en el Algoritmo 4.1.

Cabe aclarar que en las navegaciones que no requieren de una bordejeada para ser recorridas
en tiempo mnimo, el rumbo de mayor vmg sera u
nico y correspondera al rumbo directo.

Algoritmo 4.1 Elecci


on del pr
oximo movimiento en una heurstica
1: dir = (xfinal , yfinal ) (xactual , yactual )
2: Para cada cuadrante donde est a el nodo actual hacer
3: calcular la velocidad actual en direccion dir con el viento y la marea del cuadrante
4: hacer lo mismo pero obteniendo el vmg
5: Si el vmg y la velocidad coinciden entonces
6: obtener el nodo candidato intersecando la recta que pasa por el nodo con direccion=dir
7: Si no
8: obtener los rumbos de mayor vmg
9: obtener los nodos candidatos intersecando los rumbos de mayor vmg con el cuadrante
10: Fin si
11: Fin para
12: aplicar el criterio propio de la heurstica a los candidatos para elegir el proximo punto
13: Si seguir desde el nodo elegido requiere hacer una maniobra entonces
14: maniobrar y continuar desde este nodo
15: Si no
16: pasar al nodo candidato y continuar
17: Fin si

La condicion de la lnea 5 modela la situacion en que el rumbo hacia el destino final no requiere
una bordejeada: en este caso vmg y velocidad coinciden, por lo que se puede navegar directamente
hacia el objetivo final y no es necesario tomar ninguna decision.

Por otra parte, la condici


on de la lnea 13 modela la posibilidad de que tras decidir llevar a cabo
una maniobra, no resulte conveniente avanzar hacia otro nodo como se haba planeado cuando se
decidi
o ejecutarla. Este arrepentimiento cobra sentido en la medida en que las maniobras insumen
una cantidad de tiempo: durante la ejecucion de una, las condiciones meteorologicas pueden cambiar
y hacer que lo m as conveniente sea realizar una nueva maniobra en lugar de apegarse a la idea
original.

En base a este framework general, propondremos a continuacion varios criterios de decision.

4.3. Criterios de decisi


on

4.3.1. Criterio de mayor VMG ponderado

A partir de lo establecido algunas lneas atras, podemos plantear una primera idea: si partimos
de la base de que siempre es deseable utilizar uno de los rumbos de mayor vmg para maximizar
esta metrica, podemos ir a un mas all
a y elegir, cuando haya opciones, aquella que se caracterice
por tener un mayor vmg. As elegiremos entre dos bordes aquel cuya proyeccion sobre la direccion
Martnez, SainzTr
apaga Pagina 47 de 82

deseada nos da una mayor velocidad hacia el destino. Se trata de lo representado en la Figura 4.3.
Esta heurstica es muy utilizada en la practica por los navegantes que cuentan con un gps con la
capacidad de computar el vmg hacia el destino.

La direcci
on en que se desea navegar corre-
sponde a la flecha negra en la ilustraci
on. La curva
polar presenta en la regi
on intersecada por esta di-
reccion una concavidad, lo que redunda en la posi-
bilidad de obtener la velocidad optima realizando 0

una bordejeada. Los bordes entre los que hay que


optar fueron representados en color celeste: son los
rumbos de mayor vmg. La proyecci on de los mis-
45
mos sobre la direcci
on deseada fue indicada con las
lneas rojas punteadas. En esta situaci on, el bor-
de m as conveniente parece ser el de la izquierda,
puesto que se acerca m as a la direccion en que se
desea navegar.

Se deduce de aqu que si se desea navegar en 2 4 6 8


forma exactamente opuesta a la direccion del vien-
to, el vmg de ambos bordes ser a identico. En ese
caso se puede elegir de forma arbitraria o aleato-
ria alguna de las opciones, puesto que el criterio Figura 4.3: Comparacion de vmg
planteado no ofrece informacion.

Sin embargo se presenta una situacion problematica. Analice-


mos un caso bajo la hipotesis de que el viento es constante. La di-
recci
on en la que se desea navegar es por definicion la que conduce
directamente al objetivo final. Este u ltimo a su vez se encuentra
inmovil, a diferencia del velero, y por lo tanto la direccion deseada
va variando en la medida en que el punto en que se encuentra el
velero se modifica.

Supongamos que resulta en este punto mas conveniente elegir


el borde izquierdo. A medida que el velero avanza con ese borde,
la diferencia de vmg a favor de esta decision disminuye paulati-
namente, hasta llegar a un punto de indiferencia cuando el velero
se encuentra exactamente a sotavento (viento abajo) del punto
de destino. En este punto resulta conveniente virar, puesto que el
vmg del borde opuesto sera  mas grande. Sin embargo, al tomar
este otro borde se produce el fenomeno inverso: el borde contrario
comienza paulatinamente a aumentar su valuacion. El problema
aparece si  es muy chico: casi inmediatamente, volvera a ser con-
veniente el borde izquierdo. As, el velero comenzara una rapida
sucesi
on de viradas que si bien lo conducira al destino, lo obli-
gar
a a pagar un costo muy grande por realizar tantas maniobras.
Lo comentado se refleja en la Figura 4.4.
Figura 4.4: Viradas excesivas Para resolver esta situacion introducimos un coeficiente cv (co-
eficiente de virada) de modo a condicionar la virada. Ahora no
Martnez, SainzTr
apaga Pagina 48 de 82

ser
a suficiente que el otro borde sea mejor que el actual en terminos absolutos: debera superarlo
en una proporci on mayor que cv . As, el criterio resultante es el descripto en el Algoritmo 4.2, que
llamamos Criterio de vmg ponderado (Criterio p).

Algoritmo 4.2 Criterio p


Parametros: candidatos: Conjunto de nodos candidatos a ser el siguiente nodo visitado
Parametros: actual: nodo actual
1: sinVirar = elegir de entre los candidatos aquellos que no requieran virar
2: maxSinVirar = elegir de entre los candidatos en sinVirar el que maximice el VMG
3: virar = elegir de entre los candidatos aquellos que requieran virar
4: maxVirando = elegir de entre los candidatos en virar el que maximice el VMG
5: Si VMG(maxVirando) > VMG(maxSinVirar ) cv entonces
6: elegir maxVirando
7: Si no
8: elegir maxSinVirar
9: Fin si

4.3.2. Criterio de mayor VMG ponderado y distancia

Si bien resolvimos un problema con el criterio de mayor vmg


en el inciso anterior, el resultado de la introduccion del coefi-
ciente cv acarrea otra debilidad. La relacion entre el vmg de
un borde y el otro esta dada mayormente por el angulo entre
el viento y la direccion al destino. Si mantenemos la hipotesis
de viento constante, la sucesion de bordes que seleccionara la
heurstica producira tramos cada vez mas cortos entre las vi-
radas a medida que la embarcacion se aproxima al destino, como
se observa en la Figura 4.5.

Una vez mas, por la reduccion de la longitud de cada borde


se cae en viradas innecesarias que implican un costo adicional.
Si bien es razonable que a medida que el destino se aproxima
los bordes se reduzcan paulatinamente, es necesario acotar esta
reduccion para no pagar costos extraordinarios.

As, introducimos un segundo coeficiente cd (coeficiente de


distancia) que penaliza la decision de virar segun el criterio
estipulado anteriormente en funcion de la distancia al destino.
De esta manera, mientras mas cerca este el barco de llegar a
su objetivo, mayor resistencia tendra a tomar la decision de
Figura 4.5: Bordes de largo virar. Una opcion similar fue presentada por Stelzer y Proll en
decreciente [31]. Este criterio se denomina Criterio de vmg ponderado y
distancia (Criterio pd) y se define en el Algoritmo 4.3.

En la lnea 6 se utiliza la operaci


on maximo para permitir que el cv sea menor que 1. Si no se
cd
hiciera esta salvedad, cuando la distancia al destino fuera muy grande el termino distancia tomara
un valor muy chico que redundara en un coeficiente global inferior a 1. La implicacion de esto
sera que el barco buscara virar constantemente, no logrando ning un progreso hacia su objetivo.
Martnez, SainzTr
apaga Pagina 49 de 82

Algoritmo 4.3 Criterio pd


Parametros: candidatos: Conjunto de nodos candidatos a ser el siguiente nodo visitado
Parametros: actual: nodo actual
1: sinVirar = elegir de entre los candidatos aquellos que no requieran virar
2: maxSinVirar = elegir de entre los candidatos en sinVirar el que maximice el VMG
3: virar = elegir de entre los candidatos aquellos que requieran virar
4: maxVirando = elegir de entre los candidatos en virar el que maximice el VMG
5: distancia = kposllegada posactual k
cd
6: Si VMG(maxVirando) > VMG(maxSinVirar ) m ax(1, (cv + distancia )) entonces
7: elegir maxVirando
8: Si no
9: elegir maxSinVirar
10: Fin si

4.3.3. Criterios asim


etricos

Tras reunirnos con expertos en meteorologa para regatas[9] decidimos incorporar variantes
asimetricas de las heursticas propuestas hasta el momento. En ellas, los coeficientes cv y cd toman
valores diferenciados seg un la amura en que se encuentre navegando el barco. Estas variantes
intentan permitir que las heursticas tomen en cuenta la asimetra inherente a las variaciones de
viento como rachas y borneos que tienen origen en la fuerza de Coriolis. Esta cuestion se examina
en profundidad en la Secci on 5.1.3.

A los efectos de implementar el criterio, la u


nica diferencia es que se desdobla cada parametro
en dos variantes (estribor y babor) que corresponden a las amuras homonimas. Luego, en funcion
de la situaci
on en que se encuentra el barco se toma uno u otro valor para cada parametro.

Los Algoritmos 4.4 y 4.5 corresponden a las versiones asimetricas de los presentados en las
secciones anteriores. Las mismas se denominan respectivamente Criterio pa y Criterio pda. Los
nuevos parametros que resultan de la escision de cv y cd se nombran cvb , cve , cdb y cde .

4.3.4. Criterios de viento promedio

Si bien el vmg en direcci


on al destino parece una buena indicacion de la calidad de un borde,
recordando la discusion de la Seccion 3.1.3.2 podemos considerar que la verdadera dificultad en
una bordejeada en contra del viento reside en avanzar en la direccion opuesta a la que este se
dirige. Se puede formular una idea an aloga para la navegacion en popa.

As, formulamos heursticas que tengan en cuenta para su objetivo el avance respecto de la
direccion en que sopla el viento ademas del destino final al que se dirige la embarcacion. En
muchos casos, a un cuando la competencia se realice entre boyas, errores en la colocacion de las
mismas pueden hacer que la navegaci on que teoricamente es contra el viento presente en cambio
diferencias de varios grados en la pr
actica.

La idea de que a un cuando se desee navegar hacia una boya ubicada incorrectamente lo impor-
tante ser
a navegar contra el viento es relativamente popular. Tacktick, fabricante ingles de compases
magneticos digitales para navegacion a vela, presenta en sus dispositivos una valoracion del rumbo
Martnez, SainzTr
apaga Pagina 50 de 82

Algoritmo 4.4 Criterio pa


Parametros: candidatos: Conjunto de nodos candidatos a ser el siguiente nodo visitado
Parametros: actual: nodo actual
1: sinVirar = elegir de entre los candidatos aquellos que no requieran virar
2: maxSinVirar = elegir de entre los candidatos en sinVirar el que maximice el VMG
3: virar = elegir de entre los candidatos aquellos que requieran virar
4: maxVirando = elegir de entre los candidatos en virar el que maximice el VMG
5: Si la amura de navegaci on actual es babor entonces
6: cv = cvb
7: Si no
8: {la amura es estribor}
9: cv = cve
10: Fin si
11: Si VMG(maxVirando) > VMG(maxSinVirar ) cv entonces
12: elegir maxVirando
13: Si no
14: elegir maxSinVirar
15: Fin si

Algoritmo 4.5 Criterio pda


Parametros: candidatos:Conjunto de nodos candidatos a ser el siguiente nodo visitado
Parametros: actual: nodo actual
1: sinVirar = elegir de entre los candidatos aquellos que no requieran virar
2: maxSinVirar = elegir de entre los candidatos en sinVirar el que maximice el VMG
3: virar = elegir de entre los candidatos aquellos que requieran virar
4: maxVirando = elegir de entre los candidatos en virar el que maximice el VMG
5: Si la amura de navegaci on actual es babor entonces
6: cv = cvb
7: cd = cdb
8: Si no
9: {la amura es estribor}
10: cv = cve
11: cd = cde
12: Fin si
cd
13: Si VMG(maxVirando) > VMG(maxSinVirar ) m ax(1, (cv + distancia )) entonces
14: elegir maxVirando
15: Si no
16: elegir maxSinVirar
17: Fin si
Martnez, SainzTr
apaga Pagina 51 de 82

actual del barco en funci


on del rumbo promedio que se mantuvo en ese borde durante el u ltimo
perodo. Este promedio incorpora las fluctuaciones del viento (ya que estas afectan directamente
el rumbo del barco). El compas sugiere virar cuando el rumbo actual del barco se encuentra por
debajo del promedio en este borde.

El libro de Rushall [29] presenta una idea similar para condiciones de viento oscilante: The win-
ning strategy in swinging conditions: tack when headed below the mean! 21 . En High Performance
Sailing, Frank Bethwaite propone una idea parecida [2].

Consideramos entonces criterios que tendran como entrada adicional la direccion promedio del
viento. Si bien nosotros proporcionaremos manualmente a los criterios de esta informacion, es
relativamente trivial para un software ejecutandose con instrumentos de a bordo realizar el calculo
de forma autonoma a partir de las lecturas de la veleta electronica. En efecto, el compas Tacktick
propone a sus usuarios que ingresen dicha informacion mediante la observacion de las condiciones
durante un perodo anterior a la regata.

D F D

S S

(a) Boya Ficticia (b) Distancia Infinita

Figura 4.6: Heursticas de viento promedio

Proponemos dos interpretaciones. En primer lugar introduciremos una boya ficticia en nuestro
modelo que est a colocada en la posici on ideal respecto del viento promedio observado. En este
criterio, la distancia al destino se considera respecto de la boya real, pero el vmg se calcula a partir
del rumbo hacia la boya ficticia. Este criterio se denomina de viento promedio y boya ficticia
(Criterio vpbf). El mismo se ilustra en la Figura 4.6a.

Por u
ltimo, en lugar de considerar una boya ficticia a distancia similar al destino real, consider-
aremos que la misma se encuentra a distancia infinita. Esto corresponde a evaluar el vmc de cada
borde como metrica del mismo, lo que equivale a la proyeccion de la velocidad de cada bordem, ya
21 La estrategia ganadora en condiciones de viento oscilante: cuando el rumbo de este borde est
e por debajo del
promedio, vira!
Martnez, SainzTr
apaga Pagina 52 de 82

no en direcci
on al punto de destino, sino en la direccion opuesta al viento promedio. Este criterio
de viento promedio y boya infinita (Criterio vpi) corresponde a la Figura 4.6b.

Decidimos implementar y evaluar ambos criterios. Notemos que son similares a los anteriores,
con la diferencia de que se maximiza el vmg en otra direccion, modificando as el objetivo de los
bordes. Las consideraciones realizadas sobre los coeficientes de virada y distancia son identicas a
las realizadas para las heursticas anteriores, por lo que las implementaciones de estos criterios
utilizan par
ametros asimetricos como se describe en la Seccion 4.3.3.
Martnez, SainzTr
apaga Pagina 53 de 82

Captulo 5

Experimentaci
on

5.1. El modelo experimental

Partiendo de la descripci on de las heursticas introducidas en la seccion anterior, surge la


necesidad de evaluar su comportamiento. Estas heursticas manejan un subconjunto de la infor-
macion necesaria para el c
alculo de rutas optimas, que se corresponde con los datos que pueden
ser obtenidos por el instrumental instalable a bordo. Nuestra propuesta experimental consiste en
proveer al algoritmo exacto de la Seccion 3.1.4 de toda la informacion acerca de una regata para
permitirle calcular una ruta
optima, y a continuacion ejecutar las heursticas con el subconjunto de
los datos que podran haber medido en tiempo real en la cancha de regatas. As podremos analizar
de forma contrastada las virtudes y defectos de las aproximaciones realizadas por estas u ltimas.

Recordemos lo discutido en la Seccion 1.2.3.1 sobre las caractersticas del viento a distintas
escalas. El sistema circulatorio global de la atmosfera de la tierra se comporta de forma bastante
predecible a corto plazo: centros de alta y baja presion se desplazan produciendo vientos cuya
direcci
on e intensidad puede ser calculada por modelos numericos. A mediana escala, fenomenos
termicos como el ejemplificado en la Figura 1.12a pueden introducir modificaciones importantes
sobre la predicci
on de un modelo global. Finalmente, a peque na escala, la turbulencia producida
por los fenomenos de mayor tama no gobierna las fluctuaciones locales en la direccion e intensidad
del viento.

5.1.1. Calidad de los escenarios a utilizar

Por el enfoque elegido, las heursticas se dise


naron pensando en regatas gobernadas por situa-
ciones que entran en esta u ltima categora. Si bien nuestro modelo es independiente de la escala a
la que se utilice, evaluar el comportamiento de las heursticas frente a pronosticos de gran escala
(como la Figura 1.11) carecera de sentido. Necesitamos por lo tanto escenarios de prueba de gran
resoluci
on, tanto espacial como temporal.

En general, una regata entre boyas para embarcaciones de quilla tiene piernas de entre 1 y
3 Km, dependiendo del tama no de los barcos que compitan. A su vez, el tiempo necesario para
que los barcos naveguen estos tramos puede variar dependiendo del viento y de su performance,
pero el orden de magnitud de los mismos es de unos 15 a 30 minutos. Dado que en una ce nida es
usual que los competidores realicen 5 o 6 viradas, nuestro modelo debera usar una discretizacion
suficientemente fina como para que la ubicacion en el tiempo y en el espacio de estas maniobras
no se vea restringida artificialmente por la baja resolucion del modelo. Asimismo, el parametro n
del modelo debera ser suficientemente grande para no acotar demasiado los angulos de navegacion
que pueden elegir los barcos. Recordemos que el parametro n fue descripto en la Seccion 2.2.2,
y corresponde a la cantidad de nodos que se emplazan sobre el lado de cada cuadrante de la
grilla. Recordemos adem as que cada uno de estos nodos se multiplica por la cantidad de tipos de
navegacion que considera el modelo (ver Seccion 2.2.2.1) al construir el grafo.
Martnez, SainzTr
apaga Pagina 54 de 82

En base a estimaciones de este tipo, decidimos utilizar las siguientes caractersticas para nuestros
escenarios de prueba:
Tramos a navegar de 2500 metros
Parametro A = 50 (para un total de 50 50 cuadrantes en la grilla)
Parametro n = 30
Intervalo de variaci
on del tiempo de 25 segundos

Una discretizaci on de 50 50 cuadrantes, con n = 30 nodos sobre el lado de cada cuadrante


permite a los barcos elegir sus rumbos con una granularidad de poco mas de 1o , recorriendo arcos
de menos de 70 metros de longitud. En base a la experiencia en regatas, ambas granularidades
son relativamente finas en comparaci on a lo que puede controlarse en la practica. En particular, es
muy difcil que el timonel de un barco pueda conducirlo con una precision de 1o .

5.1.2. Obtenci
on de los datos

Las resoluciones involucradas en nuestros escenarios eliminan la posibilidad de utilizar direc-


tamente mediciones meteorol ogicas reales. Para ello, sera necesario disponer de una grilla de 250
anemometros y veletas electr
onicas capaces de registrar los datos, distribuidos uniformemente so-
bre un espejo de agua de m as de 6Km2 , y a distancia suficiente de la costa como para que la
presencia de la misma no interfiera con las mediciones. Por tratarse de instrumentos de medicion
caros y sensibles, nos es imposible acceder a datos de este tipo, y dudamos de la existencia de
alguna instalaci
on de estas caractersticas.

Resolvimos entonces recurrir a la generacion de escenarios de regata con las caractersticas


deseadas, intentando aproximarnos lo mas posible a condiciones reales. Recordemos que los modelos
meteorologicos utilizados para pron
ostico no modelan las fluctuaciones que son de vital importancia
para nuestras simulaciones, sino que las desprecian[6]. Por lo tanto, nos vimos en la necesidad de
desarrollar un modelo propio de simulacion.

Realizamos una extensa b usqueda de datos meteorologicos que pudieran servirnos de referencia
para hacer simulaciones. En todos los casos, los datos registrados por anemometros son de un u nico
punto y sera por lo tanto necesario realizar alg
un tipo de extrapolacion para tener datos espaciales.
En un estudio realizado para el Team New Zealand que participo en la Copa America de 2000 [26]
en el Golfo de Hauraki (Nueva Zelanda), Philpott et al realizaron mediciones de alta frecuencia
en un pilote meteorol ogico dispuesto expresamente para tal fin. Tras el analisis de la direccion e
intensidad del viento, se concluy o que en ese lugar la correlacion entre estas dos metricas no era
significativa y se simulo solo la direcci
on con un proceso de Markov, suponiendo que la intensidad
era constante. Esto permiti o a los autores generar condiciones de viento comparables a las sensadas.
En correspondencia personal, Philpott amplio:

The Markov chain assumed constant wind speed and random wind direction. The
direction at any location varied as a Markov chain. This model was very crude and
should be improved. The difficulty is in representing the spatial and time correlation of
wind vectors realistically. A Markov chain is the simplest attempt to do this. We tried
different approaches and eventually settled on assuming a single constant wind direction
on any line at right angles to the course. This wind varied as a Markov chain.22
22 La cadena de Markov asuma para el viento intensidad constante y direcci
on aleatoria. La direcci
on en cualquier
Martnez, SainzTr
apaga Pagina 55 de 82

Como bien aclara el autor, el problema de esta idea es que la cor-


relacion espacial que existe en las variaciones de viento no es verosmil:
las fluctuaciones en el viento no se propagan como olas rectas perpen-
diculares a la cancha de regatas (Figura 5.1). Ademas, el objetivo del
trabajo de Philpott era diferente al nuestro, ya que intentaban com-
parar disenos alternativos de barcos, y no calcular estrategias optimas.
Nuestra aplicacion es mas sensible a las deformaciones de los escenar-
ios generados puesto que los utilizamos para evaluar heursticas.

Aun cuando hubieramos decidido reutilizar la tecnica aqu descrip-


ta, nos fue imposible obtener datos de viento con la resolucion tempo-
ral necesaria: todas las estaciones meteorologicas locales, incluso las
que son utilizadas como referencia por los regatistas [13, 27, 28, 34],
presentan los datos a lo sumo en intervalos de 5 minutos, y por lo gen-
eral de forma agregada (por ejemplo, promedio de intensidad sobre
ese lapso de tiempo). A partir de este tipo de datos es imposible recu-
Figura 5.1: Modelo de perar la informacion original de alta resolucion que incluye peque nas
viento de Philpott et al fluctuaciones vitales para nuestra aplicacion.

Los unicos datos que nos fue posible obtener provenientes de anemometros de alta resolucion
temporal fueron obtenidos del sitio winddata.com [35]. Esta compa na vende datos de este tipo
para su utilizacion en el dise
no de turbinas eolicas para generacion de energa, y la calidad de
los mismos es excelente. Sin embargo, al estar sensados en tierra y por lo general en la zona de
los pases N
ordicos (con el desconocimiento que eso implica sobre las caractersticas del lugar por
nuestra parte) decidimos buscar otra alternativa.

5.1.3. El modelo de simulaci


on

Resolvimos entonces buscar expertos en meteorologa y en regatas que pudieran darnos infor-
maci
on sobre cu ales son los factores mas significativos que gobiernan la evolucion del viento a
pequena escala. As podramos construir un modelo ad hoc de canchas de regata que estuviera en
consonancia con la experiencia de navegacion.

Tras una entrevista con Alberto Enguix23 , resolvimos generar escenarios para regatas que tu-
vieran una distribuci
on verosmil de rachas aleatorias, tanto en su intensidad como en su forma
y duracion. A continuacion reproducimos los conceptos esenciales que dieron origen a nuestro
modelo[9].

El viento de escala sin


optica (el que se deriva de los centros de alta y baja presion que circulan
por la atmosfera) se caracteriza segun los modelos meteorologicos a alrededor de 1000 metros
punto variaba seg un una cadena de Markov. Este modelo era muy rudimentario y debera mejorarse. La dificultad
reside en representar la correlaci
on espacial y temporal de los vectores de viento de manera realista. Una cadena de
Markov es el intento m as simple de hacer esto. Intentamos varias opciones y finalmente decidimos asumir una u nica
direcci
on de viento para cada lnea perpendicular a la direccion del recorrido.
23 Enguix es un experto local en meteorologa aplicada a regatas y autor de varios libros sobre la materia [10, 11, 12].
Fue profesor de Vela en el Yacht Club Centro Naval y en la Escuela Argentina de N autica Deportiva. En 1986,
la Universidad Nacional de C ordoba (Catedra de Navegaci on a Vela) lo nombr o Profesor Honoris Causa. Como
regatista, represent
o a la Argentina en 3 campeonatos mundiales de la clase 505. Adem as, fue responsable del dise no
y superviso la construcci
on del casco del Lantia, un velero de la clase internacional Penguin con que Martn Costa
se consagro campe on mundial en 1972 en los Estados Unidos.
Martnez, SainzTr
apaga Pagina 56 de 82

Viento Intensidad Direccion


Viento de gradiente 100 % -
Viento de superficie sobre agua 65 % +15o
Viento de superficie sobre tierra 30 % +30o

Tabla 5.1: Resumen del modelo de la espiral de Ekman

de altura. Este viento se denomina tambien viento de gradiente ya que se desplaza seg un los
gradientes de presi on atmosferica que lo producen. El viento de superficie esta condicionado por
este viento de altura, pero tambien esta sujeto a una importante friccion con la superficie terrestre.
Por esta raz on, el viento de superficie originado de esta forma tiene siempre una velocidad menor
que la del viento sin optico. La rotaci
on de la tierra (y la resultante fuerza de Coriolis) hacen que
esta disminuci on de velocidad redunde a su vez en un cambio de la direccion en la que sopla el
viento, segun el modelo de la espiral que Ekman introdujo en un articulo clasico de 1905 [8]. La
espiral se ilustra en la Figura 5.2. As, en el hemisferio sur, el viento de superficie esta desfasado
en sentido horario respecto del viento de altura.

La Tabla 5.1 resume los valores mas significativos de la espiral de


Ekman. La diferencia entre las valuaciones sobre tierra y sobre agua
corresponde a la diferencia de friccion que existe cuando el viento cir-
cula sobre uno u otra. Esta discordancia valido la decision comentada
en la Secci
on 5.1.2 de no utilizar datos sensados en tierra a pesar de
que las mediciones tuvieran buena calidad.

La condicion esencial que afecta la cantidad y calidad de las rafagas


es la estabilidad del aire en la capa mas baja de la atmosfera. El
concepto de estabilidad se refiere a la cantidad de movimiento vertical
que se produce entre las diferentes capas de aire atmosferico.
Figura 5.2: Espiral de
Ekman (hemisferio sur)

(a) Estabilidad (b) Inestabilidad

Figura 5.3: Corte de las capas atmosfericas seg


un el grado de estabilidad
Martnez, SainzTr
apaga Pagina 57 de 82

En condiciones estables como las de la Figura 5.3a, los estratos se comportan de manera in-
dependiente, con las capas m as bajas presentando intensidades de viento mas reducidas y una
direcci
on desfasada seg
un la espiral de Ekman. En este tipo de situacion, es muy difcil que se
produzcan rafagas y variaciones aleatorias en la direccion e intensidad del viento de superficie.

En condiciones inestables, se producen movimientos convectivos que mezclan las capas entre
s. Aqu, es mucho mas f
acil que una masa de aire de altura descienda de forma turbulenta hacia
la superficie arrastrada por una celda de conveccion. Este fenomeno causa las rafagas que los
navegantes experimentan en la superficie, y que son las que originan las fluctuaciones aleatorias de
direccion e intensidad en el viento durante las regatas.

Estas r
afagas, que son en esencia una tajada de viento
de altura que se abre paso hacia la superficie, descienden
de forma abrupta, chocan con el agua y se propagan por
la superficie hasta que por efecto de la friccion pierden
su velocidad y direcci on caracterstica, mezclandose con
el viento de superficie lindante. Dicha propagacion tiene
forma de un frente de onda de mayor intensidad. En High
Performance Sailing, Bethwaite describe una estructura
similar [3]. Enguix hace lo propio en su libro [11]. A su
vez, es posible encontrar evidencia de esta caracterizacion
en fotos satelitales de alta resoluci
on tomadas sobre espe-
jos de agua. La Figura 5.4 es un ejemplo, donde el vien-
Figura 5.4: Rafaga de viento en el
to de mayor intensidad arruga la superficie del agua
embalse Exequiel Ramos Meja
formando peque nas olas que reflejan la luz del sol y de-
(Neuquen, Argentina)
scriben la forma de la racha.

A partir de esta concepci


on, Enguix nos transmitio varias ideas que nos sirvieron de base para
la construcci
on de un modelo:
Las r
afagas no pueden superar en intensidad al viento de gradiente, que es seg un la espiral
de Ekman un 50 % superior al de superficie sobre el agua.
Las r
afagas tienen por lo general la direccion inicial del viento de gradiente, que esta desfasado
unos 15o en sentido antihorario respecto del de superficie.
Las r
afagas golpean la superficie y se propagan de forma expansiva con un angulo de aprox-
imadamente 60o y un tama no que depende del grado de inestabilidad de la atmosfera.
Las r
afagas se propagan por la superficie a la velocidad del viento que las compone.

Caracterstica Inestabilidad baja Inestabilidad media Inestabilidad alta


Tiempo estimado entre rachas 8-10 minutos 2-3 minutos 1 minuto

Area abarcada por las rachas 50-100 metros 100-200 metros 400-500 metros
Aumento sobre viento base 10 % 30 % 50 %

Angulo de desvo sobre base 5o -10o 10o -15o 30o -40o

Tabla 5.2: Par


ametros estimativos para escenarios

Adem as, desde su condici


on de experto del dominio nos proporciono informacion cuantitativa
basada en su experiencia de algunos parametros relativos a las rafagas, que agrupamos en tres
escenarios representativos de la meteorologa caracterstica del Ro de la Plata (Tabla 5.2).
Martnez, SainzTr
apaga Pagina 58 de 82

Figura 5.5: Secuencia de una racha impactando sobre el agua

Los par
ametros involucrados son:
El tiempo estimado entre rachas, que corresponde a la esperanza del tiempo que un navegante
espera entre el momento en que percibe una racha y percibe la siguiente.
El area abarcada por las rafagas, que corresponde a la expansion geografica en la que el
viento de superfice se ve modificado por accion de una corriente de aire descendente de una
capa superior.
El aumento sobre el viento base, que es la variacion porcentual de intensidad que es esperable
observar cuando una racha de viento alcanza a un observador.
El
angulo de desvo sobre el viento base, que es la diferencia respecto de la direccion del
viento de base (en sentido horario u antihorario) que puede causar una rafaga.

Con la colaboraci on de Enguix construimos una secuencia de imagenes que describen la propa-
gacion de una racha de modo cualitativo, de acuerdo a nuestra experiencia conjunta. La misma se
exhibe en la Figura 5.5. En la figura, las zonas oscuras son las que perciben un incremento en la
intensidad de viento, mientras que las zonas claras perciben una disminucion. Las zonas con el tono
gris utilizado para el fondo no influyen de ninguna manera sobre el viento de base. La modificacion
que la racha produce sobre la direcci on del viento se establece en funcion de la distancia al centro
de la racha, lo que resulta coherente con la expansion que se produce cuando esta golpea el agua.

La secuencia de la Figura 5.5 se parametriza seg


un los valores establecidos en la Tabla 5.2 para
ajustarla al escenario que se desea modelar. Repitiendo este proceso e incorporando variaciones
aleatorias en los par
ametros puede generarse una variedad de rachas que luego se combinan con
un viento de base apropiado para generar canchas simuladas con condiciones realistas de viento.

As, proporcionando un viento de base y generando rafagas aleatorias seg un los parametros
estipulados aqu, podemos construir una variedad de simulaciones de condiciones meteorologicas
con rafagas de caractersticas y distribucion apropiadas. Se presenta un ejemplo en la Figura 5.6.
Esta propuesta es particularmente s olida frente a la cuestion de la correlacion espacial entre los
datos que describio Philpott. Dado que las rachas se construyen a partir de su estructura global,
las lecturas de viento en cuadrantes contiguos siempre seran consistentes frente al impacto de las
r
afagas.

Con esta herramienta, estamos en condiciones de generar condiciones meteorologicas simuladas


Martnez, SainzTr
apaga Pagina 59 de 82

para realizar optimizaciones con nuestros algoritmos. Gracias a la comprension del funcionamiento
de los fen
omenos meteorol ogicos involucrados, logramos un modelo cuya simulacion coincide con
nuestra experiencia practica as como con la de un experto del dominio del problema. En particular,
nos interesaremos a continuaci on por condiciones simuladas que se encuadren en las tipologas
descriptas en la Tabla 5.2, ya que son representativas de las condiciones locales del Ro de la Plata.
Podemos con ellas realizar experimentos para evaluar el funcionamiento de nuestros algoritmos en
condiciones realistas.

5.1.4. La corriente y el barco

Los escenarios descriptos hasta el momento involu-


cran solo las caractersticas referidas al viento. Las otras
dos variables de entrada al modelo son la corriente y
las caractersticas propias de la embarcacion a considerar
(sus curvas polares y sus costos tpicos de maniobra).

Para todos los escenarios que se detallan en este


captulo, se trabaj
o sin ning
un tipo de corriente. Si bien
es importante que el modelo considere este factor (sobre
todo en aras de no perder generalidad y ser utilizable en
regatas de larga distancia tanto como de corta distancia),
introducir esta variable extra complica sustancialmente Figura 5.6: Rafaga simulada de viento
la evaluacion de los resultados. en un escenario para optimizacion

En la medida en que se eval uen regatas de corta distancia, la corriente sera por lo general
uniforme para todos los participantes, ya que los flujos de agua en ros, lagos o mares son por
lo general de una extensi on espacial significativa. Si ademas consideramos que las regatas son
suficientemente breves como para que no pueda producirse un cambio de marea24 las condiciones
ser
an constantes y homogeneas durante todo el perodo analizado. En principio, no parece que
una condicion homogenea para todos los participantes pueda aventajar a uno sobre otro. Por esta
raz
on, despreciamos el efecto de la corriente en todos los experimentos, relegando el analisis de
este factor para trabajos futuros.

Maniobra Costo (en segundos)


Virada 5.0
Trasluchada 2.6
Derivada 1.3
Orzada 1.3

Tabla 5.3: Costos asignados a las maniobras

Respecto de la embarcaci on a analizar, utilizamos las curvas polares caractersticas de un velero


clase Farr 36, un barco moderno de regatas de 36 pies de eslora25 cuyas polares caractersticas estan
disponibles en Internet, y que ya se exhibieron parcialmente en la Figura 1.7. Los costos de las
maniobras fueron asignados manualmente seg un la Tabla 5.3 a partir de nuestra experiencia previa
en barcos de caractersticas similares.
24 Las mareas astron
omicas tienen un perodo aproximado de 12 horas, por lo que esta presunci
on resulta razonable.
25 Eslora: Longitud de un barco.
Martnez, SainzTr
apaga Pagina 60 de 82

Si bien para realizar un analisis completo sera necesario trabajar a partir de barcos distintos,
decidimos limitarnos a analizar un u nico barco para acotar la complejidad del trabajo. Por las
caractersticas del modelo, es de esperarse que el comportamiento del mismo sea relativamente
uniforme cuando se consideran barcos comparables.

5.2. Heursticas para A*

En primer lugar vamos a observar el rendimiento de las heursticas utilizadas para guiar la
b
usqueda del algoritmo exacto que utiliza informacion completa de los escenarios. Se presentan en
primer lugar las
areas exploradas de la grilla del modelo, tanto por la implementacion basica del
algoritmo de Dijkstra as como las dos heursticas que se presentaron en la Seccion 3.1.3.

Se consideraron 4 casos:
Viento uniforme y constante de direccion 0o a 10kts (Figura 5.7)
Viento uniforme girando de 0o a 20o a lo largo de la navegacion (Figura 5.8)
Un escenario de inestabilidad media y viento base de 0o a 13 kts (Figura 5.9)
Viento uniforme y constante de direccion 0o a 10kts y navegacion directa (Figura 5.10)

En los tres primeros escenarios presentados los resultados obtenidos son muy similares. La imple-
mentacion ingenua del algoritmo de Dijkstra explora el grafo en todas las direcciones, generando
todas las rutas optimas hacia todos los nodos con longitud inferior a un c0 . Cuando encuentra
una ruta que termina en el nodo de destino, el algoritmo termina con la certeza de que la ruta
es
optima. Se observa en todos los graficos correspondientes al algoritmo de Dijkstra que el area
explorada corresponde a la contenida por la isocrona de longitud c0 : la forma descripta no es mas
que la de la curva polar de vmg para la intensidad de viento de interes.

La heurstica de distancia cartesiana sesga la busqueda hacia la direccion en que se encuentra


el destino. Si bien el
area explorada mantiene la forma original de la curva polar de vmg, aparece
una protuberancia en la misma en la direccion de interes. Dado que la forma del area explorada es
mas larga en la dimensi on deseada, el algoritmo encuentra el nodo de destino antes de que el area
aumente mucho de tama no, recorriendo as una parte significativamente menor del grafo.

La heurstica de vmc tiene un rendimiento superior, a pesar de recorrer un area nada despre-
ciable del grafo. Si consideramos que por la simetra de las bordejeadas, existe una ruta igualmente
optima que es simetrica en el sentido vertical a la propuesta por el algoritmo, se deduce que el

area a explorar no puede ser significativamente menor al romboide que se aprecia particularmente

bien en la Figura 5.7c. En efecto, la superficie explorada se condice muy bien con lo que desde
el conocimiento del dominio de las regatas a vela se considera el area razonable para realizar una
bordejeada. No se exploran zonas que desde la experiencia podran considerarse sin sentido, a
diferencia de las otras implementaciones.

Adem as, a diferencia de las otras heursticas que exploran areas de la misma forma para
cualquier tipo de destino, manteniendo siempre la silueta aproximada de la curva, la heursti-
ca de vmc explora un camino particularmente angosto cuando la navegacion puede realizarse en
forma directa y sin bordejeadas. Esta situacion se observa en la Figura 5.10.

Los gr
aficos siguientes son comparaciones sistematicas de las heursticas para vientos constantes
Martnez, SainzTr
apaga Pagina 61 de 82

(a) Algoritmo de Dijkstra (b) A con heuristica Cartesiana (c) A con heuristica VMC


Figura 5.7: Area explorada para una cancha con viento constante 0o

(a) Algoritmo de Dijkstra (b) A con heuristica Cartesiana (c) A con heuristica VMC


Figura 5.8: Area explorada para una cancha con viento girando de 0o a 20o

(a) Algoritmo de Dijkstra (b) A con heuristica Cartesiana (c) A con heuristica VMC


Figura 5.9: Area explorada para una cancha inestable media

con todos los


angulos posibles de navegacion respecto del viento. La Figura 5.12 corresponde a
ejecuciones de los algoritmos para una grilla de 100 100 cuadrantes y n = 15 nodos por lado de
cuadrante, y exhibe la cantidad de arcos visitados en el grafo para obtener la solucion optima. La
Figura 5.11 muestra, para los mismos casos, el tiempo insumido por las variantes de A expresado
como porcentaje del tiempo utilizado por la implementacion ingenua del algoritmo de Dijkstra.
Martnez, SainzTr
apaga Pagina 62 de 82

(a) Algoritmo de Dijkstra (b) A con heuristica Cartesiana (c) A con heuristica VMC


Figura 5.10: Area explorada para navegacion directa con viento constante

La Figura 5.12 muestra c omo las navega-


ciones que involucran bordejeadas (las que
A* con cota cartesiana
rodean a 0o y a 180o ) son notablemente
mas costosas de resolver que aquellas en las A* con cota de VMC

que la navegaci on es directa. La heursti-


ca cartesiana presenta una mejora impor- 50
Porcentaje del tiempo de Dijkstra

tante aunque aproximadamente constante


para todos los rumbos de navegaci on. Por 40
el contrario, la heurstica de vmc presenta
una mejora que es superior en los rumbos
30
de bordejeada, y excelente en los rumbos di-
rectos. Si bien no se grafican los tiempos de
20
ejecuci
on, los mismos est an en correlacion
perfecta con la cantidad de arcos visitados
en el grafo. 10

La Figura 5.11 muestra la mejora de 0


rendimiento de los algoritmos gracias a las 0 50 100 150 200 250 300 350

heursticas. Como se deduca de la figura an-


ngulo de navegacin
terior, la mejora obtenida por la heurstica
cartesiana es aproximadamente constante,
insumiendo entre el 35 y el 50 % del tiem- Figura 5.11: Porcentaje del tiempo del algoritmo de
po utilizado por el algoritmo de Dijkstra. Dijkstra en funcion del angulo del viento
La heurstica de vmc, por su parte, insume
a lo sumo el 13 % del tiempo del algoritmo
de Dijkstra en los escenarios de bordejeada,
mientras que obtiene un rendimiento hasta 100 veces mayor en navegaciones directas.

En funcion de los resultados aqu presentados consideramos apropiado el rendimiento de los


algoritmos exactos como para proceder con el resto de la implementacion.
Martnez, SainzTr
apaga Pagina 63 de 82

Dijkstra
A* con cota cartesiana

A* con cota de VMC 0


Millones de arcos

8
315 45
7

270 90

225 135

180

Figura 5.12: Cantidad de arcos del grafo expresados en funcion del angulo del viento

5.3. Comportamiento del modelo

En segundo lugar examinaremos el comportamiento del modelo respecto de sus parametros.


Evaluaremos como los cambios en los mismos afectan la precision de los resultados obtenidos, la
cantidad de arcos que resulta necesario explorar en el modelo (utilizando A con heurstica de
vmc, que es la que presenta el mejor comportamiento) y el tiempo insumido para la obtencion de
la ruta
optima.

5.3.1. Cantidad de nodos por lado

Los graficos siguientes muestran el efecto que tiene el parametro n sobre las metricas men-
cionadas. Recordemos que n era la cantidad de nodos que se consideraban por cada lado de cuad-
rante. Las corridas se realizaron sobre una u
nica instancia de cada tipo. Los demas parametros se
dejaron fijos para las corridas.
Martnez, SainzTr
apaga Pagina 64 de 82

1004
1000
1002

Costo del camino (zoom)


800
Costo del camino

1000
600
998

400 996

200 994

0 992
0 10 20 30 40 50 0 10 20 30 40 50
Puntos por lado de cuadrante Puntos por lado de cuadrante

(a) Calidad del resultado

4.5 40

4.0 35
Millones de arcos visitados

Tiempo de ejecucin (s)

3.5
30
3.0
25
2.5
20
2.0
15
1.5

10
1.0

0.5 5

0.0 0
0 10 20 30 40 50 0 10 20 30 40 50

Puntos por lado de cuadrante Puntos por lado de cuadrante

(b) Benchmarks de rendimiento

Figura 5.13: Influencia del parametro n para viento constante, A = 30


Martnez, SainzTr
apaga Pagina 65 de 82

910
1000 905

Costo del camino (zoom)


900
800
Costo del camino

895
600 890
885
400 880
875
200
870
0 865
0 5 10 15 20 25 30 0 5 10 15 20 25 30
Puntos por lado de cuadrante Puntos por lado de cuadrante

(a) Calidad del resultado

14 450

400
12
Millones de arcos visitados

Tiempo de ejecucin (s)

350
10
300

8 250

6 200

150
4
100
2
50

0 0
0 5 10 15 20 25 30 0 5 10 15 20 25 30

Puntos por lado de cuadrante Puntos por lado de cuadrante

(b) Benchmarks de rendimiento

Figura 5.14: Influencia del parametro n para condiciones inestables, A = 30


Martnez, SainzTr
apaga Pagina 66 de 82

Los experimentos para verificar la calidad de los resultados son relevantes en la medida en
que por la complejidad del modelo resulta muy difcil acotar los errores cometidos producto de
discretizar variables. Las Figuras 5.13a y 5.14a muestran que si bien el error cometido por usar
una discretizaci
on demasiado gruesa es peque no en relacion con la solucion, a medida que aumenta
el valor de n el mismo se reduce hasta estabilizarse. En resumidas cuentas, el analisis parece
indicar que en condiciones verosmiles (como las de escenario inestable de la Figura 5.14a) un valor
de n = 30 parece ser m as que suficiente. Si bien en una situacion hipotetica de viento constante se
observan mejoras al aumentar m as el valor, la magnitud de las mismas es muy peque na.

Respecto de los benchmarks de las Figuras 5.13b y 5.14b, observamos el impacto predicho por
la complejidad teorica del algoritmo. Aumentar n aumenta linealmente la cantidad de nodos (como
se explic
o en la Seccion 2.2.2). A su vez, cada cuadrante tiene una cantidad cuadratica de arcos,
lo que ocasiona a su vez que el aumento de n tenga un impacto cuadratico en la cantidad de arcos
totales del grafo, lo que redunda en la progresion observada en las figuras.

Una vez m as, y al igual que en el apartado anterior, se observa una correspondencia muy fuerte
entre la cantidad de arcos visitados por el algoritmo de camino mnimo y el tiempo insumido. Se
desprende que el n umero de arcos es el mayor condicionante del tiempo de ejecucion del algoritmo.

5.3.2. Cantidad de cuadrantes

En tercer lugar se analiz o el impacto del aumento del parametro A, que gobierna el tama no
total de la grilla de discretizaci
on del modelo, y por lo tanto afecta directamente la cantidad de

cuadrantes. Este parametro fue descripto en la Seccion 2.2.1. Dado que el valor de A describe
el lado de la grilla, afecta cuadraticamente la cantidad de nodos del grafo puesto que el modelo
area de interes en A A cuadrantes. Los demas parametros se dejaron fijos para las
subdivide el
corridas.

No se analizaron en este caso escenarios que no fuesen constantes ya que al modificar la res-
oluci on de la grilla, se afecta significativamente el modelo a resolver, introduciendo as variaciones
difciles de controlar. Por otro lado, en general la resolucion de la grilla a utilizar no es realmente
una variable libre para ajustar, sino que esta condicionada por la disponibilidad de datos meteo-
rologicos o de pron ostico.

Segun lo predicho por la complejidad algortmica, se observa en la Figura 5.15 una progresion
polinomial en la cantidad de arcos visitados, acompa
nada por otra identica en el tiempo de ejecucion
insumido. Al igual que para n, el valor de A tiene un fuerte impacto sobre el rendimiento de los
algoritmos.

5.3.3. Cantidad de tiempos de cambio

Por u
ltimo, evaluamos el impacto del aumento en la resolucion temporal de los datos meteo-
rol
ogicos que proporcionamos al modelo. Aqu se modifico la cantidad de muestras de vientos para
toda la superficie de interes por unidad de tiempo. La cantidad de tiempos de cambio se reparte
de forma uniforme en la duraci on total del escenario que se somete a optimizacion, que abarca
un lapso de 2500 segundos. Durante ese perodo, la direccion del viento rota a velocidad uniforme
desde los 0o hasta los 20o .
Martnez, SainzTr
apaga Pagina 67 de 82

2.0 16

14
Millones de arcos visitados

Tiempo de ejecucin (s)


1.5 12

10

1.0 8

0.5 4

0.0 0
0 10 20 30 40 50 0 10 20 30 40 50

Cuadrantes por lado de la cancha Cuadrantes por lado de la cancha

Figura 5.15: Benchmarks de rendimiento para viento constante, n = 10

1.0 45

40
0.9
Millones de arcos visitados

Tiempo de ejecucin (s)

35
0.8
30

0.7 25

0.6 20

15
0.5
10
0.4
5

0.3 0
0 10 20 30 40 50 0 10 20 30 40 50

Resolucin temporal Resolucin temporal

Figura 5.16: Benchmarks de rendimiento con viento girando, n = 10


Martnez, SainzTr
apaga Pagina 68 de 82

Como se discuti o en la Secci


on 3.1.2, cada vez que en la b usqueda realizada por el algoritmo
se desea evaluar el costo de un arco, por la conversion a grafo fifo se debe verificar una cantidad
lineal de tiempos posibles en busca de un mnimo tiempo necesario para realizar la transicion. Esta
minimizaci on explora todas las combinaciones factibles de esperas y avances en tiempos futuros.
En raz on de esto es esperable la relaci
on lineal que se observa en la Figura 5.16 entre la cantidad
de tiempos de cambio en los datos de entrada y el tiempo del algoritmo de optimizacion.

Resulta m as llamativa la brusca disparidad entre esta variable y la cantidad de arcos que visita
la implementaci on de A . La explicacion es sencilla: si bien la resolucion temporal aumenta, la
longitud esperada de un arco en el grafo no se ve afectada, ya que la condiciona esencialmente el
valor del parametro A. Pasado un cierto nivel de resolucon, el algoritmo no percibe mejoras en la
ruta: una vez que la duraci on de los intervalos de tiempo cae muy por debajo del tiempo necesario
para recorrer un arco, la ruta optima dejara de variar y por lo tanto la cantidad de ejes explorados
se estabilizar
a.

Estas observaciones son relevantes ya que demuestran que el aumento en la resolucion temporal
tiene un costo apreciable respecto del tiempo de ejecucion de los algoritmos, pero sin embargo este
incremento no vendr a necesariamente acompa nado de una mejora en la precision de la ruta: la
misma puede verse limitada por el valor de A.

5.4. Heursticas

5.4.1. Modelo para experimentaci


on

A partir de lo estipulado en la Seccion 5.1.3, decidimos construir una serie de escenarios que
consideramos representativos para la evaluacion de la calidad de las heursticas que presentamos
en 4. Recordemos las siglas que utilizaremos para referirnos a ellas:
P: vmg ponderado (simetrico)
PA: vmg ponderado (asimetrico)
PD: vmg y distancia ponderada (simetrico)
PDA: vmg y distancia ponderada (asimetrico)
VPBF: Viento promedio (boya ficticia)
VPI: Viento promedio (boya infinita)

Para los criterios que tienen dos versiones, consideraremos que el criterio es asimetrico cuando
sus parametros son distintos para cada amura. De lo contrario lo consideraremos simetrico. De
esta forma separamos los criterios, ya que faltando esta consideracion los criterios simetricos son
un caso particular de un criterio asimetrico.

5.4.1.1. Optimizaci
on de los par
ametros

Una vez establecido el marco para la experimentacion, el primer paso consistio en buscar valores
apropiados de los par
ametros de cada heurstica para obtener un buen rendimiento. Para esto,
Martnez, SainzTr
apaga Pagina 69 de 82

Figura 5.17: Tiempo promedio para distintas configuraciones de parametros para el criterio pd

consideramos para cada criterio rangos razonables para los valores de sus parametros y probamos
las distintas combinaciones de los mismos en un procedimiento anidado.

Esta b
usqueda se realiz
o inicialmente con una granularidad baja, y posteriormente cuando se en-
contr
o la combinacion de valores de mejor comportamiento, se realizaron refinamientos progresivos
en intervalos mas peque
nos. Para la evaluacion del comportamiento en funcion de los parametros
recurrimos a un subconjunto de los escenarios descriptos anteriormente: utilizamos unicamente las
200 canchas con condiciones inestables medias y viento promedio de 0o , por considerar que son
las m
as representativas y generales. Como metrica para la valuacion de los parametros, buscamos
minimizar el tiempo promedio obtenido por las heursticas en todas las simulaciones.

La Figura 5.17 ilustra los resultados de la optimizacion para la heurstica pd. Cuanto mas oscuro
es el color de un punto, mejor fue el resultado obtenido por la heurstica en las simulaciones. Se
observa en la Figura que hay una franja diagonal de valores buenos (que aparecen de color negro),
rodeados por valores de peor comportamiento. Esta franja se extiende mas alla de los valores de
cd mostrados. Sin embargo, a medida que el coeficiente cd aumenta, observamos que la franja se
angosta. Esto implica que la calidad de la heurstica es muy sensible a peque nas variaciones de los
parametros. Tras hacer esta observaci on, consideramos que estos valores tan ajustados podran no
ser apropiados en escenarios levemente distintos a los inestables medios que utilizamos para este
caso. Decidimos entonces conservar el optimo dentro del rango graficado.
Martnez, SainzTr
apaga Pagina 70 de 82

Heurstica cv cd cve cvb cde cdb


P 3.50 - - - - -
PD -1.80 6900.00 - - - -
PA - - 3.20 2.80 - -
PDA - - -0.40 1.20 2900.00 2300.00
VPBF - - 2.45 1.45 1600.00 1600.00
VPI - - 0.40 1.30 1400.00 0.00

Tabla 5.4: Par


ametros optimos para las distintas heursticas

El procedimiento descripto se realizo para todas las heursticas presentadas, obteniendo los
valores que se exhiben en la Tabla 5.4.

5.4.1.2. Comparaci
on de las heursticas

Una vez obtenidos valores apropiados para los parametros, procedimos a comparar las cuali-
dades de los diferentes criterios. Una vez mas, realizamos las comparaciones en canchas de condi-
ciones inestables medias, utilizando diversas metricas. La mayora de las mismas son sencillas de
comprender, pero corresponde aclarar la metrica de puntos acumulados. En ella se utilizo el sis-
tema de puntuaci on que se utiliza en campeonatos de vela para asignar puntajes en un conjunto
de regatas. La cantidad de puntos que le corresponden a cada participante por cada regata son
los de la posici
on que obtuvo en la misma: el ganador recibe 1 punto, el segundo 2, y as sucesiva-
mente. El ganador del campeonato ser a el participante que acumule la menor cantidad de puntos
al completarse todas las regatas.

Los resultados de estas comparaciones se observan en las Figuras 5.18, 5.19, 5.20 y 5.21. La
primera constataci on es que en general los criterios se comportaron relativamente bien, alcanzando
errores relativos promedio del orden de entre el 4 y el 7 %. Ademas, se desprende del analisis de los
resultados que el criterio vpi tiene un comportamiento considerablemente mejor que los demas.

A partir de estos resultados, decidimos poner el mayor enfasis en la heurstica vpi para continuar
haciendo experimentos m as extensivos en otros escenarios, por lograr esta resultados marcadamente
superiores a los de las demas. A fin de poder contrastar sus resultados, conservamos a su vez para
experimentos futuros a la heurstica pd, por utilizarse variantes de la misma con mucha frecuencia
en el ambiente nautico.

Introdujimos a su vez una nueva heurstica que llamamos pdd, correspondiente a la utilizacion
de par ametros malos de la heurstica pd que la hacen comportarse de forma particularmente
ingenua. La estrategia resultante de pdd corresponde a la actitud que tendra un navegante que
se inicia: navegar en un mismo borde hasta tanto considere que el borde opuesto lograra llevarlo
directamente a su destino, y recien en ese momento realizar su primera (y posiblemente u nica)
virada.

La Figura 5.22 exhibe las rutas propuestas por las heursticas para las 200 canchas inesta-
bles medias, mientras que la Figura 5.23 presenta los puntos en que los algoritmos consideraron
conveniente realizar viradas.

Es difcil observar alg


un tipo de patron en las rutas optimas. Tanto los bordes como las viradas
Martnez, SainzTr
apaga Pagina 71 de 82

940
Tiempo promedio (segundos)

920

900

880

860

ptimo P PA PD PDA VPBF VPI

Figura 5.18: Tiempo promedio de las rutas para condiciones de inestabilidad media

7
Diferencia con el tiempo ptimo (%)

0
P PA PD PDA VPBF VPI

Figura 5.19: Diferencia relativa promedio con el tiempo optimo bajo inestabilidad media
Martnez, SainzTr
apaga Pagina 72 de 82

60
Diferencia con el tiempo ptimo

50

40

30

20

10

0
P PA PD PDA VPBF VPI

Figura 5.20: Diferencia absoluta promedio con el tiempo optimo bajo inestabilidad media

1000

800
Puntos acumulados

600

400

200

0
P PA PD PDA VPBF VPI

Figura 5.21: Cantidad de puntos obtenidos compitiendo con inestabilidad media


Martnez, SainzTr
apaga Pagina 73 de 82


(a) Optimos (b) VPI (c) PD (d) PDD

Figura 5.22: Recorridos para las 200 canchas de condicion inestable media


(a) Optimos (b) VPI (c) PD (d) PDD

Figura 5.23: Viradas para las 200 canchas de condicion inestable media
Martnez, SainzTr
apaga Pagina 74 de 82

se distribuyen de forma relativamente uniforme en toda la cancha de regatas, en consonancia con


la uniformidad de la distribuci on de las rachas que se modelan. Dado que el algoritmo optimo
utiliza un conocimiento completo de las condiciones de viento, es capaz de seleccionar rutas que
una heurstica difcilmente pueda adivinar: trabajan con conjuntos de informacion esencialmente
distintos.

La heurstica pdd exhibe el comportamiento descripto antes, realizando por lo general una
u
nica virada. Esta es la estrategia trivial para este tipo de situacion, y es relevante solo como
punto de referencia para las dem
as.

Comparadas con el optimo, tanto vpi como pd realizan comparativamente pocas viradas, circu-
lando mucho por la parte exterior de la cancha de regatas en lugar de hacerlo por su parte central.
Desde un punto de vista nautico, estas estrategias son bastante riesgosas. Un barco que circula por
el borde de la cancha como lo hace (en un caso extremo) pdd puede ver arruinada su regata por un
cambio de viento repentino. Sin embargo, dado que nuestros escenarios de prueba no incorporan
cambios permanentes de viento sino que se centran en oscilaciones aleatorias, es razonable que los
parametros de mejor comportamiento sean relativamente arriesgados, realizando pocas viradas y
navegando hasta los bordes: esta reduccion en la cantidad de viradas les permite ahorrar valiosos
segundos de navegaci on.

Vpi exhibe una preferencia superior por el lado izquierdo de la cancha. Esto se condice con
que el viento base utilizado para generar los escenarios favorece levemente ese lado, ya que se
encuentra unos grados por debajo del viento promedio. Ello se debe a que por lo descripto en 5.1.3,
las rachas se encuentran por lo general algunos grados por encima del promedio. Es probablemente
esta diferencia la que le permite vencer de forma sistematica a la heurstica pd.

Los mismos experimentos realizados para canchas de condiciones inestables medias con viento
base 0o se realizaron para canchas inestables y estables con viento base 0o , e inestables medias
pero con viento base 20o . Para estos experimentos mantuvimos los parametros de los criterios con
los mismos valores que obtuvimos luego de optimizarlos con las canchas inestables medias.

En general, todos los resultados apuntan en la misma direccion: la heurstica vpi se comporta
muy bien, en general mucho mejor que los demas criterios y de forma muy consistente. Se mantiene
adem as muy cerca de los valores del
optimo, una caracterstica muy buena si tenemos en cuenta
que trabaja con un subconjunto muy reducido de la informacion que utiliza este u ltimo. En las
canchas estables (Figura 5.25) se ve c
omo el criterio logra estar muy cerca del optimo, teniendo un
gap de optimalidad promedio de menos del 2 %. En el caso de las canchas de condiciones inestables
medias con viento base 20o (cuyos resultados se muestran en la Figura 5.26) se hace mas marcada
la tendencia, logrando vpi estar a menos de un 4 % de la solucion optima, contra casi un 6 % de
las otras heursticas.

Por u
ltimo, es importante senalar la diferencia abismal que existe entre los tiempos de ejecucion
de las heursticas y los algoritmos exactos. En la Tabla 5.5 se resumen los tiempos26 de ejecucion
promedio, los tiempos de las rutas obtenidas, la diferencia promedio con el recorrido optimo, el
porcentaje del tiempo optimo y el desvo estandar de dicho porcentaje. Toda esta informacion
corresponde a corridas realizadas sobre canchas de condiciones inestables medias con viento base
0o .
26 Estas pruebas fueron realizadas en una configuracion de hardware diferente al resto de las pruebas, por lo que
los tiempos de ejecuci
on difieren a los presentados antes
Martnez, SainzTr
apaga Pagina 75 de 82

980 12

Diferencia con el tiempo ptimo (%)


960
Tiempo promedio (segundos)

10
940

920 8

900
6
880

860 4

840
2
820

800 0
ptimo PDD PD VPI PD PDD VPI

(a) Tiempo promedio de las rutas para las canchas de (b) Diferencia relativa promedio con el tiempo o
ptimo
condiciones inestables ( %) en condiciones inestables

90 600

80
Diferencia con el tiempo ptimo

500
70
Puntos acumulados

60 400

50
300
40

30 200

20
100
10

0 0
PD PDD VPI PD PDD VPI

(c) Diferencia absoluta promedio con el tiempo (d) Cantidad de puntos obtenidos por regatas en

optimo en condiciones inestables condiciones inestables

Figura 5.24: Condiciones inestables


Martnez, SainzTr
apaga Pagina 76 de 82

980 12

Diferencia con el tiempo ptimo (%)


960
Tiempo promedio (segundos)

10
940

920 8

900
6
880

860 4

840
2
820

800 0
ptimo PDD PD VPI PDD PD VPI

(a) Tiempo promedio de las rutas para las canchas de (b) Diferencia relativa promedio con el tiempo o
ptimo
condiciones estables ( %) en condiciones estables

90 600

80
Diferencia con el tiempo ptimo

500
70
Puntos acumulados

60 400

50
300
40

30 200

20
100
10

0 0
PDD PD VPI PD PDD VPI

(c) Diferencia absoluta promedio con el tiempo (d) Cantidad de puntos obtenidos por regatas en

optimo en condiciones estables condiciones estables

Figura 5.25: Condiciones estables


Martnez, SainzTr
apaga Pagina 77 de 82

980 12

Diferencia con el tiempo ptimo (%)


960
Tiempo promedio (segundos)

10
940

920 8

900
6
880

860 4

840
2
820

800 0
ptimo PDD PD VPI PDD PD VPI

(a) Tiempo promedio de las rutas para las canchas de (b) Diferencia relativa promedio con el tiempo o
ptimo
condiciones inestables medias 20o ( %) en condiciones inestables medias 20o

90 600

80
Diferencia con el tiempo ptimo

500
70
Puntos acumulados

60 400

50
300
40

30 200

20
100
10

0 0
PDD PD VPI PD PDD VPI

(c) Diferencia absoluta promedio con el tiempo (d) Cantidad de puntos obtenidos por regatas en
optimo en condiciones inestables medias 20o
condiciones inestables medias 20o

Figura 5.26: Condiciones inestables medias 20o


Martnez, SainzTr
apaga Pagina 78 de 82

Heurstica T ejec T rec T T %T %T


Algoritmo de Dijkstra 124.60 884.02 0.00 100.00 0.00
A* euclidiana 93.40 884.02 0.00 100.00 0.00
A* vmc 83.20 884.02 0.00 100.00 0.00
PD 0.05 927.90 43.90 104.90 2.52
PDD 0.04 938.00 54.26 106.17 2.74
VPI 0.04 916.40 32.43 103.60 2.42

Tabla 5.5: Resumen de benchmarks de heursticas y algoritmos exactos

Notemos que si bien la heurstica vpi esta a alrededor de 4 % en promedio de la solucion


ptima, su tiempo de ejecuci
o on es mas de 3000 veces mas peque no. Esta diferencia de rendimiento
la hace aplicable para su utilizaci
on en tiempo real, en conexion directa con los instrumentos de
una embarcaci on que le proveen de toda la informacion que necesita. Estas caractersticas hacen
que pueda convertirse en una valiosa herramienta para un estratega embarcado.
Martnez, SainzTr
apaga Pagina 79 de 82

Captulo 6

Conclusiones

6.1. Balance del trabajo

En este trabajo implementamos un modelo mas general que los utilizados en el software comer-
cial, obteniendo as la posibilidad de extender su uso para situaciones de regatas de corta distancia
en que el costo de las maniobras pueda resultar significativo.

La cota de vmc descripta para el algoritmo A en la Seccion 3.1.3.2 exhibe un comportamiento


muy interesante, explorando u nicamente el area del grafo que es realmente pertinente a la nave-
gaci
on que se espera del barco. Este resultado, ademas de habernos permitido realizar experimentos
de forma muy r apida para el ajuste de las heursticas, puede ser transferido a las aplicaciones de
ruteo de larga distancia convencional, a las que puede significarles una mejora significativa de
rendimiento.

Las heursticas que desarrollamos para tomar decisiones de ruteo on-line reflejan en gran medida
el conocimiento popular de los regatistas del medio local. Entre ellas, se destaca el comportamiento
de la heurstica vpi de la Secci
on 4.3.4, que logra por lo general resultados que se encuentran a un
4 % del
optimo utilizando s olo la informacion accesible por los instrumentos del barco. A su vez,
logran esto con cantidades mnimas de tiempo de computo, haciendo posible su implementacion
para su uso en tiempo real durante la navegacion.

Por ultimo, el modelo de simulacion de canchas que desarrollamos, si bien parte de conocimiento
experto y no del an alisis de mediciones reales, es mas sofisticado que los presentados hasta el mo-
mento en la literatura porque ataca directamente el problema de correlacion espacial enunciado por
Philpott. As, es un buen punto de partida para su ajuste con datos concretos y la experimentacion
futura.

6.2. Trabajos futuros

Sin duda la extensi on mas interesante al trabajo realizado hasta el momento es el pasaje a la
pr
actica de las heursticas que exhibieron buen comportamiento para poder ajustarlas y observar
su desempeno en condiciones reales de regata. Para ello, es necesario valerse de una interfaz simple
con instrumental nautico, lo que hace que el proyecto sea relativamente modesto en cuanto a su
complejidad.

Otra alternativa posible es trabajar en la sofisticacion del modelo de simulacion de canchas


de regata para ajustarlo a datos reales, realizando as un analisis formal que permita validar
empricamente al modelo como fuente de escenarios para regatas.
Martnez, SainzTr
apaga Pagina 80 de 82

En tercera instancia, si bien la corriente fue descartada de nuestro marco experimental, sera
interesante evaluar el impacto de la misma sobre el funcionamiento tanto de los algoritmos exactos
como de las heursticas. Si bien el factor de la corriente es mas relevante en ruteo de larga distancia,
por las caractersticas generales de nuestro modelo, esta lnea esta abierta a futuros desarrollos.

Desde el punto de vista te


orico, hay algunas ideas que vale la pena explorar. Nuestro modelo se
centra u
nicamente en navegaciones entre un origen y un destino. Por las caractersticas habituales
de las regatas entre boyas, las distintas piernas son esencialmente independientes entre s y el
modelo funciona perfectamente sobre ellas tratandolas de forma secuencial. Sin embargo, muchas
regatas de marcas fijas tienen recorridos mas complejos en los que dependiendo de la navegacion
que sea conveniente hacer, puede no resultar necesario pasar por una marca intermedia. El modelo
puede generalizarse para contemplar estas situaciones realizando un grafo organizado por niveles.

Una opci on mas es la de revisar la discretizacion propuesta para el espacio navegable. La misma
est
a bien adaptada al formato de los pronosticos de tipo grib, que por lo general utilizan una malla
uniforme. Resulta adem as apropiada para la navegacion en extensiones de agua sin obstaculos. Sin
embargo, en situaciones donde existieran obstaculos de morfologa compleja (islas, bancos de arena,
etc), para obtener una descripci on fiel de estos u
ltimos sera necesario aumentar mucho la resolucion
de la grilla, con el consiguiente costo computacional. Una grilla adaptativa (como por ejemplo, la
resultante de una triangulaci on de Delaunay) podra ofrecer caractersticas mas adecuadas para
estas situaciones.
Martnez, SainzTr
apaga Pagina 81 de 82

Referencias

[1] Adrena, 2010, Adrena, http://www.adrena.fr/


[2] F. Bethwaite, 1996, Sailing the Wind Patterns, High Performance Sailing, 12(119), Adlard
Coles Nautical.
[3] F. Bethwaite, 1996, Sailing the Wind Patterns, High Performance Sailing, 5(39), Adlard Coles
Nautical.
[4] b&g, 2008, Deckman 9.1 , http://www.bandg.com/
[5] E. W. Dijkstra, 1959, A note on two problems in connexion with graphs. Numerische Mathe-
matik 1: 269271.

[6] Lic. Maria Eugenia Dillon, meteor


ologa, Comunicacion personal.
[7] S.E. Dreyfus, 1969, An appraisal of some shortest-path algorithms, Operations Research 17(3),
395412.
[8] V. W. Ekman ,1905, On the Influence of the Earths Rotation on Ocean-Currents, Arkiv foer
matematik. astronomi o. fysik., Vol. 11.

[9] A. Enguix, 2010, Comunicaci


on personal.
[10] A. Enguix, 2006, Curso de Vela, en tres tomos, Ediciones Granica.
[11] A. Enguix, 2010, El pr
oximo role, NEW Visiones

[12] A. Enguix, 2003, Viento: Pron


ostico y estrategia para Regata y Crucero, Editorial puma.
[13] Empopado, http://www.empopado.com/
[14] M. L. Fredman, R.R. Tarjan, 1987, Fibonacci heaps and their uses in improved network opti-
mization algorithms. Journal of the ACM 34(3), 596-615.

[15] B. Gladstone, 1983, Performance Racing Tactics, North U.


[16] H.J. Halpern, 1977, Shortest route with time dependent length of edges and limited delay
possibilities in nodes, Operations Research 21, 117124.
[17] P. E. Hart, N.J. Nilsson, B. Raphael, 1968, A Formal Basis for the Heuristic Determination
of Minimum Cost Paths. IEEE Transactions on Systems Science and Cybernetics SSC4 4 (2):
100107.
[18] P.E. Hart, N.J. Nilsson, B. Raphael, 1972, Correction to A Formal Basis for the Heuristic
Determination of Minimum Cost Paths. SIGART Newsletter 37: 2829.
[19] E. Kanoulas, Y. Du, T. Xia, D. Zhang, 2006, Finding fastest paths on a road network with
speed patterns, Proc. ICDE 06 10-19.
[20] D.E. Kaufman, R.L. Smith, 1993, Fastest paths in time-dependent networks for intelligent
vehicle-highway systems application, J. Intelligent Transportation Systems 1(1), 111.
[21] J.E. Kerwin, J.N. Newman, 1979, A Summary of the H. Irving Pratt Ocean Race Handicapping
Project, Proceedings of the Chesapeake Sailing Yacht Symposium.
Martnez, SainzTr
apaga Pagina 82 de 82

[22] A. Orda, R. Rom, 1990, Shortest-path and minimum-delay algorithms in networks with timede-
pendent edge-length, J. ACM 37(3), 607625.
[23] A. Orda, R. Rom, 1989, Traveling without waiting in time-dependent networks is NP-hard,
Manuscript, Dept. Electrical Engineering, Technion Israel Institute of Technology, Haifa,
Israel.
[24] C.P. Padhy, D Sen y P.H. Bhaskaran, 2008, Application of wave model for weather routing of
ships in the North Indian Ocean, Natural Hazards 44:373-385.
[25] A. Philpott, A. Mason, Optimising Yacht Routes under Uncertainty, Proceedings of the 15th
Chesapeake Sailing Yacht Symposium.
[26] A. Philpott, 2005, Optimal Routing under Uncertainty, Applications of Stochastic. Program-
ming 17, 315-335
[27] Pilote Norden, http://www.riovia.com/fotonor.php

[28] Pilote tiba, http://www.tiba.com/weather/index.php


[29] M. Rushall, 2007, Tactics , Royal Yachting Association, 1.1(18).
[30] H.D. Sherali, K. Ozbay, S. Subramanian, 1998, The time-dependent shortest pair of disjoint
paths problem: Complexity, models, and algorithms, Networks 31(4), 259272.

[31] R. Stelzer, T. Pr
oll, 2007, Autonomous Sailboat Navigation for Shourt Course Racing, Robotics
and Autonomous Systems 56(7) 604-614.
[32] P.H. Stoter, 1992, Ship Weather Routeing, The Meteorologists Job?, Ship & Werf de Zee.
8(92) 340-343.
[33] Tasman Bay Navigation Systems, 2010, Expedition 8, http://www.tasmanbaynav.co.nz/

[34] Yspots, http://www.yspots.com/


[35] WindData, http://www.winddata.com/
[36] L. Zhao, T. Ohshima, 2008, A* algorithm for the time-dependent shortest path problem. En
WAAC08: The 11th Japan-Korea Joint Workshop on Algorithms and Computation.

Вам также может понравиться