astar-search 1.0.2

Re-usable and immutable AStar Search implementation

Install-Package astar-search -Version 1.0.2
dotnet add package astar-search --version 1.0.2
<PackageReference Include="astar-search" Version="1.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add astar-search --version 1.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

astar-search

A* Search algorithm in F#.

An implementation of the classic algorithm, as described here: <https://en.wikipedia.org/wiki/A*_search_algorithm.>

However, in contrast to the pseudo-code shown in that article, this version is implemented in a purely functional and immutable way, as is more idiomatic for F#.

The core code is in the src/AStar.fs/AStar module. The algorithm requires callers submit a start point, goal point, and three functions: a gscore calculator, fscore calculator and a method that returns the neighbours of a given point. In this way, the algorithm is generalisable to any type of point or graph structure - the only constraint on the generic point type is that it be comparable.

samples/Program.fs contains a console application demonstrating use of the algorithm, finding a path through a two dimensional grid.

This project can be used from nuget: <https://www.nuget.org/packages/astar-search/1.0.2>

Enjoy!

Changes from 1.0.1

The core algorithm wasn't using tail recursion, which could cause stack overflows over large problem spaces. This has been fixed.

astar-search

A* Search algorithm in F#.

An implementation of the classic algorithm, as described here: <https://en.wikipedia.org/wiki/A*_search_algorithm.>

However, in contrast to the pseudo-code shown in that article, this version is implemented in a purely functional and immutable way, as is more idiomatic for F#.

The core code is in the src/AStar.fs/AStar module. The algorithm requires callers submit a start point, goal point, and three functions: a gscore calculator, fscore calculator and a method that returns the neighbours of a given point. In this way, the algorithm is generalisable to any type of point or graph structure - the only constraint on the generic point type is that it be comparable.

samples/Program.fs contains a console application demonstrating use of the algorithm, finding a path through a two dimensional grid.

This project can be used from nuget: <https://www.nuget.org/packages/astar-search/1.0.2>

Enjoy!

Changes from 1.0.1

The core algorithm wasn't using tail recursion, which could cause stack overflows over large problem spaces. This has been fixed.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.2 103 12/28/2018
1.0.1 168 9/22/2018
1.0.0 148 9/22/2018