Comments (9)
from mapc-uva.
A rough solution would be to make the planning on a coarser map, decreasing the definition so that an agent plus blocks count as a full position.
I agree with this theoretically. The only downside to this solution, however, is that we would have to search the entire map for obstacles and expand the obstacles in the direction of attached blocks for an agent. This could be computationally intensive.
Another possibility could be to only path plan normally, but when computing the transition costs to a certain node, the nodes relative to that node corresponding with the relative block attachments could be checked.
i.e. (simplified)
def transition_cost(from, to):
for node in [from, to] + relative_attached:
if node is obstacle:
return inf
return 1
from mapc-uva.
As it turns out, checking the neighbours for every possible next node is very computationally intensive too. Perhaps I could instead only check the final path for 'if it is possible' and turn if it is not.
from mapc-uva.
from mapc-uva.
This may also make it harder to merge the Graphs as @dorian4840 is working on, since each agent with blocks attached must have it's own graph where these issues are taken into account.
from mapc-uva.
from mapc-uva.
I understand what you meant, this solution somewhat looks like what you suggested: https://harablog.wordpress.com/2009/01/29/clearance-based-pathfinding/.
from mapc-uva.
from mapc-uva.
from mapc-uva.
Related Issues (20)
- Unpack higher level functions in BDI agent
- Create universal run function in super agent for testing purposes
- Replace primitive function state flags by nav_to check
- Need a pretty_print function in one central location.
- Use STATUS-REQUEST message to determine server config, including no. agents
- Replace all bare excepts with the errors we wish to catch HOT 1
- Agent needs a function to print the current state of the map (as known in the beliefs)
- Use Tobias Albrecht's idea for creating proper amount of agents HOT 2
- Expand single agent builders to complete complex tasks HOT 3
- Taskboards and dispensers are not correctly added to the beliefs
- Confusing usage of the word node HOT 1
- Why are we storing the current Node the agent is on as a dictionary? HOT 5
- Should we treat the dictionary of nodes in graph as a defaultdict instead of a normal dict? HOT 1
- Find the middle of the goal state HOT 2
- move _manhattan_distance(coords1, coords2) from builder to agent HOT 2
- There needs to be a way to tag agents with an ID HOT 7
- Add drop_intention using the context
- We need a way to generate paths using our algorithm
- We should keep a copy of the server configuration we use for this research
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 mapc-uva.