Implementation and Validation of a Deep Reinforcement Learning Algorithm for Maritime Collision Avoidance and Anti-Grounding
Master thesis
Permanent lenke
https://hdl.handle.net/11250/3153474Utgivelsesdato
2024Metadata
Vis full innførselSamlinger
Sammendrag
Den globale shippingindustrien er i stor vekst, som betyr at trygg og presis manøvrering av maritime fartøy i traffikerte område er viktigare enn nokon gong. Menneskelege feil er av mange peikt på som hovudårsaka til ulykker på sjøen. Det er derfor stort potensiale for autonome løysingar som enten kan gi støtte til mannskapet eller manøvrere fartøy heilt utan menneskeleg hjelp.
Som følge av dette har mykje arbeid og forsking dei siste åra blitt lagt ned i utvikling av ulike metodar for automatisk kollisjonsunngåing (COLAV). Dei best etablerte metodane er modellbaserte og er ofte avhengige av presise, matematiske beskrivelsar av andre skip og deira intensjonar, traffikkreglar, naturkrefter osv. Dei slit derfor ofte i høgt trafikkerte og uoversiktlige område. I eit forsøk på å adressere nokre av desse utfordringane har fleire COLAV-algoritmar tatt i bruk såkalla modell-fri djup, forsterkande læring (DRL). DRL kombinerer approksimasjonsferdigheitane til djup læring med forsterkande lærings-algoritmers evne til å lære opp seg sjølve. Resultatet har vist seg å vera ein svært god kombinasjon, og bruken av DRL innan robotikk og styring av autonome fartøy har aukt dei siste åra.
Dei fleste publikasjonar som omhandlar nyutvikla COLAV-algoritmar presenterer kun resultat frå spesiallagde simuleringsmiljø. Dette medfører at det er vanskeleg å gjennomføre direkte samanlikningar mellom dei ulike løysingane. Det Python-baserte simuleringsrammeverket colav-simulator er utvikla for rask implementering og grundig, simuleringsbasert testing av COLAV-algoritmar. Rammeverket har inntil nyleg hatt begrensa støtte for DRL-baserte algoritmar.
I denne masteroppgåva blir ein eksisterande DRL-basert COLAV-algoritme implementert i colav-simulator for å teste ytelsen utanfor det opprinnelige rammeverket. Justeringar blir gjort innanfor belønnings-, handlings- og observasjonsalgoritmane for å best mogleg tilpasse algoritmen til simuleringsrammeverket. For opptrening av ein DRL-agent ved bruk av algoritmen blir det satt saman eit datasett beståande av tilfeldig genererte, realistiske scenario. Algoritme- og modellparametrane blir deretter justert for å legge til rette for simultan læring av banefølging, grunnstøyting- og kollisjonsunngåelse. Til slutt blir agenten evaluert ved hjelp av Monte Carlo-simulering av ei rekke håndplukka scenario utforma for å teste dei ulike læringsmåla. Ein ekstra runde med simuleringar blir også gjort med vind, straum og målestøy tilstades for å vurdere kor realistisk og robust agenten er.
Agenten yter bra i dei enklaste scenarioa, kor den er i stand til å følge banen samtidig som den unngår grunnstøyting og kollisjon. Delvis følging av dei maritime trafikkreglane er også vist her. I meir komplekse scenario med ein miks av statiske og dynamiske hindringar bryt derimot ytelsen saman. Agenten er heller ikkje i stand til å motstå naturkrefter som vind og straum, sjølv i enkle scenario. Samla sett viser resultata at mykje arbeid gjenstår før DRL-baserte COLAV-algoritmar er klare for bruk på ekte skip. With the rapid growth in global shipping traffic, the task of maneuvering marine vessels safely and precisely through high-traffic areas is more important than ever. With the majority of incidents and casualties at sea being attributed to human error, there is massive potential for autonomous solutions that can either aid human sailors or safely guide vessels without human intervention.
Consequently, much effort has been put into the research and development of automatic collision avoidance (COLAV) algorithms in recent years. The most well-established approaches are typically model-based, and often rely on precise mathematical descriptions of other ships and their intentions, traffic rules, environmental disturbances, etc. As a consequence, they tend to struggle in complex and unstructured environments. In an attempt to address these issues, several COLAV algorithms have utilized model-free Deep Reinforcement Learning (DRL). Combining the function approximation abilities of a deep neural network with the self-learning capabilities of reinforcement learning algorithms has proven a very powerful combination, and DRL has gained traction within the field of robotics and autonomous vehicle control because of it.
Most published research on newly developed COLAV algorithms only presents results obtained within custom-made environments, thus making direct comparisons between algorithms challenging. The colav-simulator is a Python-based simulation framework developed to enable rapid implementation and simulation-based testing of COLAV algorithms. Until recently, the support for DRL-based algorithms has been limited within the framework.
In this thesis, an existing maritime DRL COLAV algorithm is implemented within the colav-simulator framework to assess its performance outside the original framework. Necessary adjustments to the reward, action and observation procedures are made to properly interface with the simulation framework. To train an agent using the framework, a dataset consisting of randomly generated, realistic scenarios is constructed. The algorithm and model parameters are then tuned to enable learning of all tasks concurrently, namely trajectory tracking, anti-grounding and collision avoidance. Finally, the trained agent is evaluated through Monte Carlo simulation on a set of handpicked scenarios, designed to test how well the agent performs within the different learning tasks. A separate set of simulations is also done on the scenarios with the presence of environmental disturbances and noise-corrupted sensor measurements, to assess the realism and robustness of the trained agent.
The agent performs well in simple evaluation scenarios, and is able to track a trajectory while avoiding both grounding and collision. Partial compliance with the maritime traffic rules is also achieved. However, the performance breaks down when faced with more complex environments containing a mix of static and dynamic obstacles. The algorithm is also unable to counteract environmental disturbances, even in simple scenarios. Overall, the results show that much work remains before DRL COLAV algorithms are applicable to real-life ships.