NetLogo banner

 Contact Us

 Modeling Commons

 User Manuals:


NetLogo User Community Models

(back to the NetLogo User Community Models)

Confident Voter - Network

by Daniel Diermeier (Submitted: 06/01/2015)

[screen shot]

Download Confident Voter - Network
If clicking does not initiate a download, try right clicking or control clicking and choosing "Save" or "Download".

(You can also run this model in your browser, but we don't recommend it; details here.)


This simulation models the Confident Voter model discussed in Volovik and Redner (2012). The Confident Voter model studies how individuals change opinion through interaction. Agents interact with their neighbors and adjust their opinion accordingly. Two adjustment procedures are studied: the Extremal Voter Model and the Marginal Voter Model.


Agents can have one of four opinions: negative confident, negative unsure, positive unsure, or positive confident. These four opinions can be seen as steps. Each agent is initially assigned to be either negative confident or positive confident. As the simulation runs and agents interact with other agents of different opinions, their own opinion changes based on a probability distribution. This probability distribution depends on which version of the model is being simulated, extremal or marginal. For all versions, if an agent interacts with another agent of the exact same opinion, both opinions remain unchanged.

Let us first look at the marginal version. Under this version, when two agents of the same side, e.g. both positive, but different levels of confidence interact, then either opinions remain unchanged or the unsure agent will become confident. When two agents of opposing sides interact, one will change its opinions towards the other by a step. For example, if a positive confident and a negative unsure agent interact, then either the positive confident agent becomes positive unsure, or the negative unsure agent becomes positive unsure. Which event happens depends on the variable p.

The extremal version behaves largely the same except for one key difference. When an agent changes opinion to the other side under the extremal version, it becomes confident in its new opinion. Thus in the prior example, if a positive confident agent and a negative unsure agent interact and the negative unsure agent changes opinion, then it will change to positive confident instead of positive unsure as in the marginal version. There is still the possibility in this example that the positive confident agent would switch to positive unsure. Again this depends on p, and the exact distribution can be seen in the code.


To start, select one of five setup versions. These versions differ in how the agents are connected to one another. The options are Lattice, Mean Field, Random, Scale Free, and Small World.

-Lattice: Creates cube-length^dimension agents and arranges and links them to represent a lattice.
-Mean Field: Creates N agents and connects every agent to every other agent.
-Random: Creates N agents. Each agent then randomly selects one other agent and makes a link with that agent. Though each agent may only select one target, it is possible for one agent to be the target of many other agents.
-Scale Free: Arranges N agents into preferential groups determined by the m0 and m variables.
-Small World: Creates N agents and arranges them in a circle. Each agent is linked with its adjacent agents.

When using the Lattice, Random, or Scale Free setup, the Layout button may be pushed to assist in visualization. Push Layout again to stop the agent rearrangement.

Next, decide which version of the model you wish to run by selecting the appropriate one under the voting-rule chooser. Also select whether you want the mode to run simultaneously, all agents interacting each tick, or not, one randomly selected agent interacting each tick. Finally, select which value of p you would like to simulate. The default option, p=.5, makes it so that both new opinion outcomes are equally likely. We suggest you keep p=.5 to start.

When you are satisfied with the setup, press Go. Agents will change color to reflect their opinion. The opinion shares in the population are tracked in the plot on the right side of the interface. Press Go again to stop the simulation.

The sliders under the variable heading adjust the number of agents created during the setup. The dimension and cube-length sliders affect the number of agents in the Lattice setup and their relation. Similarly, the m0 and m sliders are specifically used in the Scale Free setup. See the code section for the exact implications of modifying these variables.


Notice how the opinion shares change over time and how this differs between the marginal and extremal versions of the model.


Try adjusting the p variable to examine how changing the probability distribution over outcomes affects the share of opinions in the simulation


This model initially assigns positive confident and negative confident opinions with equal probability. One possible extension is to examine the effects of asymmetric initial opinions. This can be further studied by modifying the p variable with asymmetric starting distributions. It may also be interesting to see what happens when positive unsure and negative unsure opinions are initially assigned as well.


Heterogeneous Voter
Social Consensus
Voter Turnout

Volovik, Daniel, and Sidney Redner. 2012. "Dynamics of Confident Voting." _Journal of Statistical Mechanics_ P04003

(back to the NetLogo User Community Models)