You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When a node is removed, all the nodes in its neighbourhood are notified of this event and remove it from their neighbourhood.
With an asymmetric linkingRule policy a node (N) can have the node to remove (NR) in its neighbourhood, but N could not be in the neighbourhood of NR. So, N continues to believe that NR is its neighbour.
If this happens and N changes position, the neighbourhoods are updated, and also the NR neighbourhood is updated, but
it doesn't exist anymore and AbstractEnironment.getNeighborhood throw the IllegalArgumentException.
The text was updated successfully, but these errors were encountered:
The problem here is currently unavoidable: Alchemist requires LinkingRules to be bi-directional. I'm converting this issue to a call for asymmetric neighborhoods: fixing the issue reported would break the simulator, as the engine and its dependency management system assumes an undirected graph.
DanySK
changed the title
Environment.removeNode with asymmetric linkingRule policy
Asymmetric LinkingRules
Apr 28, 2021
When a node is removed, all the nodes in its neighbourhood are notified of this event and remove it from their neighbourhood.
With an asymmetric
linkingRule
policy a node (N) can have the node to remove (NR) in its neighbourhood, but N could not be in the neighbourhood of NR. So, N continues to believe that NR is its neighbour.If this happens and N changes position, the neighbourhoods are updated, and also the NR neighbourhood is updated, but
it doesn't exist anymore and
AbstractEnironment.getNeighborhood
throw theIllegalArgumentException
.The text was updated successfully, but these errors were encountered: