Skip to content
Bernard Davison edited this page May 20, 2013 · 7 revisions

Description

Yacht Sim was created to aid in developing Artificial Intelligence algorithms for an autonomous yacht. The inspiration came from reading about The Microtransat Challenge and linked pages.

The initial code was inspired by TrackSail-AI. The included simulator in (Tracksail.sim.dll) follows the TrackSail simulator quite closely.

About Yacht Sim

There are three main applications to Yacht Sim YachtSimServer, YachtSimClient and EyeInTheSky.

They fulfill the following functions:

  • YachtSimServer - This provides the interface between the virtual yacht hardware and the AI which is running on the YachtSimClient. It provides a list of available simulators (*.sim.dll) the simulate the environment that the virtual yacht is sailing in.
  • YachtSimClient - This is where the AI code that sails the yacht would be. This is a sample application that has no AI at all but requires the user to "sail" the virtual yacht.
  • EyeInTheSky - This application is not required at all for the simulation. It is purely a client of the server and provides the user with a visual display of where and how the virtual yacht is sailing.

Binaries

A latest build of YachtSim is available here.

Running

  1. Extract the binary release ZIP file where ever you like.
  2. Double click on the YachtSimServer.exe application to start the server.
  3. Set the wind speed, direction and direction variability as you desire.
  4. Double click on the YachtSimClient.exe application to start the sample client.
  5. Select the Simulator from the drop down list and click the Add Yacht button.
  6. Adjust the Sail and Rudder sliders to your desired setting.
  7. To show a map of the yachts sailing
  8. Download and install FalconView.
  9. Double click on the EyeInTheSky.exe application.
  10. Select the yacht you wish to view from the list on the left.

Building

The code was developed using Visual Studio 10 Professional in C#. It should build and compile okay using Visual C# 2010 Express. But this is completely untested.

Dependencies

Where ever possible I've tried to include the dependencies for the code into source. The one exception to this is that the EyeInTheSky application depends FalconView. So you'll need to download and install FalconView separately. At the time of writing I'd recommend FalconView 4.2.1. EyeInTheSky was developed on an earlier version of FalconView that I use for work but any of the open source versions of FalconView should work. This is completely untested.

The following open source projects are include, these may have been updated since they were included.

Clone this wiki locally