Jochen -
I'm glad I didn't jump in earlier and let some of this play out. I hope I'm not still jumping in too early ('you move too soon') here... but as with Tom's question, I'm not sure what you are trying to model with "forgetting"? Is this adding thermal noise to the rules on principle (annealing) or does it model something like a loss/fading of allegiance to an affinity group over time?
I did a half-ass search for the pre-thread when you talked about your book-in-progress to see what I might have missed there.
More background would be interesting to me.
- Steve
Stephen,
here are some first simulation results. I took a classic Boids model and made the Boids forgetful. They lose the memory of the rules, and I have simply used the classic "curve of forgetting". The "curve of forgetting" describes the exponential rate at which something is forgotten after it is initially learned. Using Python and Matplotlib it looks like this and describes the memory loss of an agent<img id="HEV1591646109767" src="http://friam.383.s1.nabble.com/attachment/7596949/0/storage_emulated_0_Download_ExponentialDecay_png_1591646109767" name="storage_emulated_0_Download_ExponentialDecay_png_1591646109767" style="" class="" width="192" height="128" onmouseover="imageMousePointerUpdate(true)" onmouseout="imageMousePointerUpdate(false)">
To counteract the memory loss the agents are taught the rules again at regular "teaching" intervals. After a teaching event the agents start to forget again. If this teaching interval exceeds the half life time of the curve of forgetting, the swarm starts to disintegrate as expected.<img id="HEV1591646061775" src="http://friam.383.s1.nabble.com/attachment/7596949/1/storage_emulated_0_Download_FlockSize_png_1591646061775" name="storage_emulated_0_Download_FlockSize_png_1591646061775" style="" class="" width="192" height="128" onmouseover="imageMousePointerUpdate(true)" onmouseout="imageMousePointerUpdate(false)">
-Jochen
-------- Original message --------From: Stephen Guerin [hidden email]Date: 6/6/20 23:24 (GMT+01:00)To: The Friday Morning Applied Complexity Coffee Group [hidden email]Subject: Re: [FRIAM] Oblivion resistant swarm
Jochen,
Here's a video recording I made this afternoon for you using Josh Thorp's Processing flocking model for a student lesson for 6-12th graders in the NM Supercomputing Challenge that shows this kind of manipulation of the control parameter to move the flocking through its phase transition
https://bit.ly/FlockingPhaseTransition (turn on the audio for narration)
To make an interactive example to run on line, you could use Owen's flocking model in Agentscript using a 3D View:
http://backspaces.github.io/as-app3d/models/?flock
<img src="content://com.samsung.android.email.attachmentprovider/1/8202/RAW" alt="image.png" name="com_samsung_android_email_attachmentprovider_1_8202_RAW_1591646021540" moz-do-not-send="true" width="562" height="266" onmouseover="imageMousePointerUpdate(true)" onmouseout="imageMousePointerUpdate(false)">
or add a UI to the 2D version:
https://backspaces.github.io/agentscript/models2/flock.html
Either could be modified to add an interface to manipulate the micro rules to move the system through the phase transition of "flocking / no flocking" like I was doing in the movie. I would operationalize that with an order parameter of an entropy on the collective heading or a kind of "linear momentum".
Also, definitely check out the Netlogo Web option as there's some very nice "alternative visualization" approaches:
https://www.netlogoweb.org/launch#https://www.netlogoweb.org/assets/modelslib/Alternative%20Visualizations/Flocking%20-%20Alternative%20Visualizations.nlogo
In the top search bar: type in "flock" to see alternatives.
<img src="content://com.samsung.android.email.attachmentprovider/1/8201/RAW" alt="image.png" style="margin-right: 0px;" name="com_samsung_android_email_attachmentprovider_1_8201_RAW_1591646021541" moz-do-not-send="true" width="375" height="299" onmouseover="imageMousePointerUpdate(true)" onmouseout="imageMousePointerUpdate(false)">
Or download Netlogo and search in the netlogo library.
_______________________________________________________________________
[hidden email]
On Sat, Jun 6, 2020 at 1:27 PM Jochen Fromm <[hidden email]> wrote:
- .... . -..-. . ...- --- .-.. ..- - .. --- -. -..-. .-- .. .-.. .-.. -..-. -... . -..-. .-.. .. ...- . -..-. ... - .-. . .- -- . -..I would like to add an agent-based model for the last chapter of my book. The idea is to use a classic swarm as a model for a religious or political movement (since the basic rules like global attraction and local repulsion are isomorphic, as I argue in earlier chapters).
The new thing is an "oblivion" factor which causes agents to forget the classic Boids swarm rules step by step. In order to keep the swarm from dissolving the model reinforces the rules every T timesteps, which simulates a rally, convention or congregation for the movement. Therefore the name "Oblivion Resistant Swarm" (ORS model) :-)
As T varies, I expect to find some kind of phase transition in simulations where the swarm forms or dissolves. If T is too large, the swarm forgets the rules and is unable to maintain the form. If T is very small we get the classic Boids model and the swarm is able to form. Does that make any sense? Two more questions:
1. Is two weeks a reasonable timespan for the time we need to learn new rules in general?
2. Do you know any existing ABMs which are similar?
-J.
FRIAM Applied Complexity Group listserv
Zoom Fridays 9:30a-12p Mtn GMT-6 bit.ly/virtualfriam
un/subscribe http://redfish.com/mailman/listinfo/friam_redfish.com
archives: http://friam.471366.n2.nabble.com/
FRIAM-COMIC http://friam-comic.blogspot.com/
- .... . -..-. . -. -.. -..-. .. ... -..-. .... . .-. . FRIAM Applied Complexity Group listserv Zoom Fridays 9:30a-12p Mtn GMT-6 bit.ly/virtualfriam un/subscribe http://redfish.com/mailman/listinfo/friam_redfish.com archives: http://friam.471366.n2.nabble.com/ FRIAM-COMIC http://friam-comic.blogspot.com/
Free forum by Nabble | Edit this page |