FlashPlanner 1.0.12

There is a newer version of this package available.
See the version list below for details.
dotnet add package FlashPlanner --version 1.0.12
                    
NuGet\Install-Package FlashPlanner -Version 1.0.12
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FlashPlanner" Version="1.0.12" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FlashPlanner" Version="1.0.12" />
                    
Directory.Packages.props
<PackageReference Include="FlashPlanner" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FlashPlanner --version 1.0.12
                    
#r "nuget: FlashPlanner, 1.0.12"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package FlashPlanner@1.0.12
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=FlashPlanner&version=1.0.12
                    
Install as a Cake Addin
#tool nuget:?package=FlashPlanner&version=1.0.12
                    
Install as a Cake Tool

<p align="center"> <img src="https://github.com/kris701/FlashPlanner/assets/22596587/d3f387a6-e0b5-4118-9801-c125a4e64100" width="200" height="200" /> </p>

Build and Publish Nuget Nuget GitHub last commit (branch) GitHub commit activity (branch) Static Badge Static Badge Static Badge

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 "greedy(hGoal())"

The available search engines are:

Do note that the black box planners only support the hGoal heuristic.

The available heuristics are:

  • hConstant(n): 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(h,w): Takes one of the previously given heuristics, and weights its result from a constant.

This project is also available as a package on the NuGet Package Manager.

Examples

To find a plan using the Greedy Best First Search engine:

var decl = new PDDLDecl(...);
var translator = new PDDLToSASTranslator(true);
var sas = translator.Translate(decl);
using (var greedyBFS = new GreedyBFS(sas, new hFF(decl)))
{
   var plan = greedyBFS.Solve();
}

Supported PDDL Requirements

Here is the set of requirements that the planner supports.

  • STRIPS (:strips)
  • Typing (:typing)
  • Disjunctive Preconditions (:disjunctive-preconditions)
  • Equality (:equality)
  • Quantified Preconditions (:quantified-preconditions)
    • Existential Preconditions (:existential-preconditions)
    • Universal Preconditions (:universal-preconditions)
  • Conditional Effects (:conditional-effects)
  • Domain Axioms (:domain-axioms)
    • Subgoals Through Axioms (:subgoals-through-axioms)
    • Expression Evaluation (:expression-evaluation)
  • ADL (:adl)
  • Fluents (:fluents)
  • Durative Actions (:durative-actions)
    • Durative Inequalities (:durative-inequalities)
    • Continuous Effects (:continuous-effects)
  • Negative Preconditions (:negative-preconditions)
  • Derived Predicates (:derived-predicates)
  • Timed Initial Literals (:timed-initial-literals)
  • Action Expansions (:action-expansions)
  • Foreach Expansions (:forach-expansions)
  • DAG Expansions (:dag-expansions)
  • Safety Constraints (:safety-constraints)
  • Open World (:open-world)
  • True Negation (:true-negation)
  • UCPOP (:ucpop)
  • Constraints (:constraints)
  • Preferences (:preferences)
Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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