GithubHelp home page GithubHelp logo

leopepe / goapy Goto Github PK

View Code? Open in Web Editor NEW
43.0 43.0 11.0 1.37 MB

Goal-Oriented Action Planning implementation in Python

License: BSD 2-Clause "Simplified" License

Python 93.62% Makefile 5.46% Dockerfile 0.85% Ruby 0.07%
ai artificial-intelligence automation automaton goap planning planning-algorithms python

goapy's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

goapy's Issues

Strict networkx=2.3 dependency makes it difficult to use with python 3.9+

As of python 3.9, fractions.gcd(a, b) method has been removed and replaced by math.gcd(*integers). networkx==2.3 still uses fractions.gcd(a, b) and as such will throw an "ImportError: cannot import name 'gcd' from 'fractions'" error at runtime
https://stackoverflow.com/questions/66174862/import-error-cant-import-name-gcd-from-fractions

The workaround is to manually install a later version of networkx and ignore pip warnings, but ideally version requirements should be relaxed to somthing like networkx>=2.3

Associated cost with each action

Since GOAP is using A* to find the best solution, is there a simple way of assigning a cost to each action? It might make sense in situations where a long chain of actions is still "cheaper" than a short sequence of very "expensive" actions.

[DOC] Diagrams

Component diagram describing the interactions between components (Sensors, Automaton, Actions etc.)

The diagram must be clear and simple to give more insight regarding the interaction between components. A new contributor must be able to understand the core concepts by reading the diagrams.

Makefile: improve 'make style' reporting

  • Add a help target to a Makefile that will allow all targets to be self documenting.
  • Docker Build/Push/Run
  • PEP 440 -- Version Identification and Dependency Specification/Version scheme.
  • PEP 405 -- Python Virtual Environments.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.