Comments (2)
Thank you @yonetaniryo for the quick reply, and for sharing the link to the DeepMind's paper.
It was an absolute blast to read, not only for potential applications in search-based planning, but also for tackling partially observable Markov decision processes in general.
I had something very similar in mind conceptually, albeit much simpler in implementation, trying to make use of graph convolution networks and some form of recurrent units to retain a graph embedding.
As a simple first iteration, I may just try to replace the convolutional encoder with a suitable graph counterpart and to force node expansion on adjacency matrices to use sparse convolution to save some memory.
I am closing this for now, but I will post back here if I happen to have some decent results.
from neural-astar.
Hi, thank you for your question!
Extending Neural A* to non-grid, general graphs is promising, and indeed technically possible. I am not currently planning to support it in this repository just because our team has other higher priority work. If someone can work on this that would be great and I'll be happy to help. Here are some thoughts:
- Replacing convolutional encoders to GCNs is relatively straightforward, just random sampling nodes from the valid space of environments and estimating a cost for each node.
- Extending differentiable A* to general graphs is possible as you recognized, but making it efficient for a large-scale training may be non-trivial. For now we are using 3x3 fixed convolution kernel to perform the node expansion (i.e., retrieving the neighboring nodes of selected nodes). This part will be replaced by the retrieval of neighboring nodes using adjacency matrices, which typically has the size of N^2 or Nxk (N is the number of nodes and k is the number of neighbors) for each map, which will be more memory-expensive. Enabling mini-batching will make this procedure further complex. Auto vectorizers such as
torch.vmap
would help, but I have never tried it in pytorch. - I am not knowledgeable about heuristic functions for general graphs but recently I found one paper that is potentially relevant: https://www.deepmind.com/publications/learning-graph-search-heuristics.
from neural-astar.
Related Issues (18)
- could you please elaborate the mazes_032_moore_c8.npz file HOT 1
- "goal not found" error with pq_astar HOT 4
- Is diff a* search admissible? HOT 2
- question about pq_astar HOT 3
- Metrics visualization during training and evaluation HOT 8
- Possibility of non-square map HOT 2
- Some confusions HOT 1
- Role of guidance map HOT 4
- What's the reason behind using initial obstacles_maps of ones and zeros result in IndexError? HOT 2
- An OSerror on Colab HOT 3
- branch for reproduce and seed
- dataloader for sdd HOT 2
- The result of pq_A* and differentiable A* looks same. HOT 2
- Improve repository organization
- Introduce PTL HOT 1
- Add training on raw images HOT 1
- Add standard A*
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from neural-astar.