Skip to content

This is the source code for the paper "Route planning for autonomous surface vessels based on improved artificial fish swarm algorithm".

Notifications You must be signed in to change notification settings

LiangZhao13/Code-for-IAFSA

Repository files navigation

Improved-Artificial-Fish-Swarm-Algorithm

Description

This is the MATLAB code for Improved Artificial Fish Swarm Algorithm (IAFSA). The code is used for global path planning of autonomous surface vessels.
The mathematical background of IAFSA is detailed descriped in the author's article:
Zhao, L., Wang, F., Bai, Y., 2022. Route planning for autonomous vessels based on improved artificial fish swarm algorithm. Ships and Offshore Structures 18, 897–906.

Files

Main Function

  • IAFSA: m file. The main function of the algorithm. The function starts with the reading of the environment map and returns the x/y coordinates and yaw angle of the planned waypoints.
  • GridAF_prey: m file. The modified prey behavior of the artificial fish. The directional operator and probability weight factor are included here.
  • GridAF_follow: m file. The artificial fish will follow its neighbor which is with the best food consisitency. See the figure below. image
  • GridAF_swarm: m file. The artificial fish will take a step in the direction of the swarm center. See the figure below. image

Additional Function

  • image_process: m file. Read and process the environment map. Recognize the RGB color of the obstacles and ocean and convert the map into binary matrix.
  • allow_fun: m file. Calculate the allowable area in the neighborhood.
  • eachAF_dist: m file. Calculate the distance between each artificial fish.
  • arr2orxy: m file. Convert array structure into xy coordinates.
  • distance: m file. Calculate the distance between 2 artificial fish.

Running Results

image image

Contact

Liang Zhao: liamzhao13@zju.edu.cn.

About

This is the source code for the paper "Route planning for autonomous surface vessels based on improved artificial fish swarm algorithm".

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages