... | ... | @@ -43,6 +43,11 @@ Use following steps to add new stimuli to Vadere: |
|
|
2. In the class `VadereState/src/org/vadere/state/psychology/perception/types/Stimulus.java`, assign a name for the new stimulus. This name can then be entered in the "Psychology" tab of Vadere.
|
|
|
3. Use an existing perception model like `SimplePerceptionModel` or implement your own and make the stimulus available for agents by using `agent.setMostImportantStimulus()`. On cognition layer, `agent.getMostImportantStimulus()` can be used to process this information further to set an agent's self category. This self category influences the motion of an agent on the locomotion layer. For instance, `SELF_CATEGORY.COOPERATIVE` causes agents to swap positions to reach a target.
|
|
|
|
|
|
### Adding stimuli dynamically
|
|
|
The flowcontrol repository is a python package that allows to add stimuli dynamically. In particular, stimuli can be introduced during run-time. This enables the user to specify state-dependent stimuli, e.g. waiting behavior that depends on a density measured in a local area.
|
|
|
|
|
|
*Please note* that dynamic stimuli are set at the end of the time step in Vadere. However, they are not executed until the following time step.
|
|
|
|
|
|
## References
|
|
|
|
|
|
This psychology-inspired architecture was introduced after conducting an experiment with 69 students at the Munich University of Applied Sciences. The experiment results are available as journal preprint on arXiv: https://arxiv.org/abs/2005.12712 |
|
|
\ No newline at end of file |