FlashPlanner 1.0.2
See the version list below for details.
dotnet add package FlashPlanner --version 1.0.2
NuGet\Install-Package FlashPlanner -Version 1.0.2
<PackageReference Include="FlashPlanner" Version="1.0.2" />
<PackageVersion Include="FlashPlanner" Version="1.0.2" />
<PackageReference Include="FlashPlanner" />
paket add FlashPlanner --version 1.0.2
#r "nuget: FlashPlanner, 1.0.2"
#:package FlashPlanner@1.0.2
#addin nuget:?package=FlashPlanner&version=1.0.2
#tool nuget:?package=FlashPlanner&version=1.0.2
<p align="center"> <img src="https://github.com/kris701/FlashPlanner/assets/22596587/d3f387a6-e0b5-4118-9801-c125a4e64100" width="200" height="200" /> </p>
Flash Planner
This is a project that contains a simple planner, operating on a grounded representation. You can either use the planner as the C# code or use the CLI interface to get plans. The planner expects a grounded representation of a PDDL domain+problem, that can be obtained from the Translator.
The following is an example of how to use the CLI interface:
dotnet run -- --domain domain.pddl --problem p01.pddl --search Classical_BestFirst --heuristic hWeighted(hFF(),10)
This project is also available as a package on the NuGet Package Manager.
Classical Planners
These planners is able to find solutions for SMALL problems. The planners are:
- GreedyBFS: Greedy Best First Search
- GreedyBFSUAR: Greedy Best First Search with Under-Approximation Refinement (UAR)
- GreedyBFSPO: Greedy Best First Search with Preferred Operators (PO)
- GreedyBFSDHE: Greedy Best First Search with Deferred Heuristic Evaluation (DHE)
For these planners, there is a set of heuristics as well.
- hConstant: Returns a given constant all the time
- hDepth: Simply returns a cost that is 1 lower than its parent
- hFF: Returns a cost based on a solution to the relaxed planning graph for the problem
- hAdd: Retuns the sum of actions needed to achive every goal fact
- hMax: Returns the highest amount of actions needed to achive a goal fact.
- hGoal: Returns the amount of goals that are achived in the given state, i.e.
h = allGoals - achivedGoals
- hPath: Returns the cost of the current branch being evaluated
- hWeighted: Takes one of the previously given heuristics, and weights its result from a constant.
There are also a set of "collection heuristics" that runs on a set of heuristics:
- hColMax: Gets the highest heuristic value from a set of heuristics
- hColSom: Gets the sum of the heuristic values from a set of heuristics
Again do note, that these planners are very inefficient, and will run out of memory with larger problems.
Examples
To find a plan using the Greedy Best First Search engine:
PDDLDecl decl = new PDDLDecl(...);
ITranslator translator = new PDDLToSASTranslator(true);
SASDecl sas = translator.Translate(decl);
using (var greedyBFS = new GreedyBFS(sas, new hFF(decl)))
{
var plan = greedyBFS.Solve();
}
Black Box Planners
This is a type of planners where the heuristic gets seriously limited, by not allowing it to know any structural knowledge of the domain.
The current planners are:
- GreedyBFS: Greedy Best First Search
- GreedyBFSFocused: Greedy Best First Search with Focused Macros.
This also only support the hGoal heuristic
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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. |
-
net8.0
- PDDLSharp (>= 1.5.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.2.21 | 141 | 6/14/2024 |
1.2.20 | 137 | 6/13/2024 |
1.2.19 | 145 | 6/13/2024 |
1.2.18 | 134 | 6/13/2024 |
1.2.17 | 122 | 6/12/2024 |
1.2.16 | 123 | 6/12/2024 |
1.2.15 | 133 | 6/12/2024 |
1.2.14 | 114 | 6/11/2024 |
1.2.13 | 126 | 6/10/2024 |
1.2.12 | 130 | 6/9/2024 |
1.2.11 | 137 | 6/9/2024 |
1.2.10 | 138 | 6/9/2024 |
1.2.9 | 127 | 6/9/2024 |
1.2.8 | 124 | 6/9/2024 |
1.2.7 | 125 | 6/9/2024 |
1.2.6 | 126 | 6/8/2024 |
1.2.5 | 117 | 6/8/2024 |
1.2.4 | 132 | 6/7/2024 |
1.2.3 | 123 | 6/7/2024 |
1.2.2 | 120 | 6/7/2024 |
1.2.1 | 123 | 6/7/2024 |
1.2.0 | 129 | 6/6/2024 |
1.1.15 | 120 | 6/6/2024 |
1.1.14 | 114 | 6/6/2024 |
1.1.13 | 138 | 5/30/2024 |
1.1.12 | 138 | 5/30/2024 |
1.1.11 | 131 | 5/29/2024 |
1.1.10 | 141 | 5/28/2024 |
1.1.9 | 117 | 5/28/2024 |
1.1.8 | 121 | 5/28/2024 |
1.1.7 | 136 | 5/28/2024 |
1.1.6 | 145 | 5/24/2024 |
1.1.5 | 157 | 5/24/2024 |
1.1.4 | 144 | 5/24/2024 |
1.1.3 | 138 | 5/24/2024 |
1.1.2 | 142 | 5/24/2024 |
1.1.1 | 136 | 5/23/2024 |
1.1.0 | 132 | 5/23/2024 |
1.0.21 | 134 | 5/23/2024 |
1.0.20 | 131 | 5/14/2024 |
1.0.19 | 118 | 5/14/2024 |
1.0.18 | 99 | 5/14/2024 |
1.0.17 | 103 | 5/14/2024 |
1.0.16 | 108 | 5/13/2024 |
1.0.15 | 111 | 5/13/2024 |
1.0.14 | 134 | 5/13/2024 |
1.0.13 | 99 | 5/13/2024 |
1.0.12 | 128 | 5/11/2024 |
1.0.11 | 128 | 5/11/2024 |
1.0.10 | 115 | 5/11/2024 |
1.0.9 | 127 | 5/11/2024 |
1.0.8 | 126 | 5/11/2024 |
1.0.7 | 140 | 5/10/2024 |
1.0.6 | 121 | 5/10/2024 |
1.0.5 | 109 | 5/10/2024 |
1.0.4 | 127 | 5/10/2024 |
1.0.3 | 122 | 5/10/2024 |
1.0.2 | 123 | 5/9/2024 |
1.0.1 | 117 | 5/9/2024 |