MLAPINET.Snake
1.1.4
dotnet add package MLAPINET.Snake --version 1.1.4
NuGet\Install-Package MLAPINET.Snake -Version 1.1.4
<PackageReference Include="MLAPINET.Snake" Version="1.1.4" />
<PackageVersion Include="MLAPINET.Snake" Version="1.1.4" />
<PackageReference Include="MLAPINET.Snake" />
paket add MLAPINET.Snake --version 1.1.4
#r "nuget: MLAPINET.Snake, 1.1.4"
#:package MLAPINET.Snake@1.1.4
#addin nuget:?package=MLAPINET.Snake&version=1.1.4
#tool nuget:?package=MLAPINET.Snake&version=1.1.4
Designed as part of an A-Level project.
Provides an interface for unsupervised machine learning models with a Snake Game.
GitHub page for example implementation: https://github.com/IoanThomas06/Snake-Genetic-Algorithm.
Please contact me through NuGet if you have any suggestions, want to be involved in expanding this project, or find any bugs.
Suggestions may include adding utility functions, changing documentation, interface reworks, etcetera.
Future Planned Additions:
- Change the RunGameFor[Display/Training] such that moveLimit is an optional parameter – this would not be backwards compatible and a major version change would need to be used.
- This would likely involve using a negative integer being passed to select continuing the game for an indefinite number of moves.
- Adding functionality for supervised training by being able to generate training data and being able to train brains incrementally through each game rather than after each game.
- Built in program to graph training performances. (MlApi.Analytics)
- Upgrade the .NET core the API targets to the new version 8.0, or the current LTS model for optimised processing.
- Add brain templates or utilities.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net6.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
1.1.0:
- Includes UnformatFileName method in the Loader static class.
1.1.1: {no technical changes}
- Fixed upper bound of indexes message in Game.Setup(...). {dev ref: Game.GetTypeIndex(...)}
1.1.2:
- Altered Board.PrintState to take GameState as a parameter to reduce coupling to implementation of board instance data.
- General code refactoring to increase functional cohesion.
1.1.3:
- General code refactoring.
1.1.4: {no technical changes}
- Fixed terminal board state showing apple in place of final head position, {dev ref: added Board.RemoveApple(), called by Snake.MakeNextMove()}