NetLogo User Community Models
## WHAT IS IT?
This model studies how social decision, known as magnetization, changes over time. Social decision is modeled as the average opinion of all agents. The number of potential opinions varies, and it is measured by the number-states variable. Agents adjust their opinion over time based on their current opinion, the opinions of their related agents, and the global ease of opinion change. As agent opinion changes, so does social decision.
## HOW IT WORKS
Over time, agents interact with their neighbors. As they interact, their opinions change. They change based on the number of their neighbors who have the same opinion as the agent compared to the number of neighbors who have a certain different opinion. If there are more linked agents with the specific different opinion than agents who have the same opinion as the agent, then the agent will switch to the new opinion. The different opinion is selected at random from the set of opinions that the linked agents possess. Furthermore, there is a random component that allows the agent to change their opinion even if it has more neighbors that match its opinion than neighbors with the new opinion. This is where the temperature variable, measuring global ease of opinion change, comes into play. As the simulation runs and agents change their opinion, the user can track the magnetization over time.
## HOW TO USE IT
There are three different options in the setup of the simulation: Preferential Attachment, Fully Connected, and Random Network.
-Preferential Attachment: Arranges N agents into preferential groups determined by the m0 and m variables.
After selecting the setup procedure, the agents will appear on the screen. Agents are colored different shades of blue to represent different opinions. To get a better look at the colors of the agents, press the resize button to increase their size. Press it again to change the agent size back to normal.
When using the Preferential Attachment setup, the Layout button may be pushed to give a better view of the structure. Press the Layout button again to stop the movement. By selecting On from the manual-layout? switcher, you can use the spring-length, repulsion-constant, and spring-constant sliders to adjust the layout options.
You may now start the simulation by pressing the Go button. Agent's will adjust their opinion and change their color. In addition, the change in magnetization will be tracked on the plot on the right side of the interface. Adjusting the plotting-interval slider will change the update frequency of the plot. When you have finished, press the Go button again to stop the simulation. The magnetization will be recorded in the monitor box labeled magnetization. This is the average opinion of all the agents, and it represents the social decision of the agents.
If you wish to move the agents around, press the move-nodes button. This will allow you to move the various agents. There are three options under the style chooser. These will allow you to adjust the layout of the agents. Furthermore, the move-type chooser will allow you to adjust which agents move, if it is just the agent you select, or if additional agents will move as well. The agent being moved and the number of other agents being moved with it are tracked by the two corresponding monitor boxes.
## THINGS TO NOTICE
Notice how magnetization changes over time, and how this differs how models of the three setup types. Adjust the sliders under the Variables header to see how they affect the various setups, and therefore the magnetization.
## THINGS TO TRY
Adjust the temperature variable to alter the likelihood of opinion changing, which in turn will affect the magnetization and social decision of the simulation.
## EXTENDING THE MODEL
Given that it is still possible for an agent to change its opinion despite complete magnetization given a high enough temperature variable, it may be interesting to see what happens when one adjusts the procedure that determines if an agent changes its opinion due to change. This function depends on the temperature, the difference in opinion among the agent's neighbors, and a random draw. By changing this function, one may change the outcome of the magnetization in this simulation. The function is found in the GO section of the code.
Furthermore, one could try to incorporate a variable measuring initial magnetization. Currently, the model randomly assigns initial opinions uniformly. By adjusting the initial distribution of opinions, one may be able to model more interesting and realistic situations.
## RELATED MODELS
(back to the NetLogo User Community Models)