## Citizen sensing with Arduino

Introducing some notes on low-power Arduino programming.

## Research fellow in verifiable sensor systems

The Science of Sensor Systems Software (S4) programme grant (of which I’m a PI) has a vacancy for a research fellow based at the University of Glasgow.

## Gillespie simulation

While synchronous simulation is straightforward to understand and code, we can manipulate the mathematical description of the simulation probabilities to generate a much more efficient simulation dynamics, known as stochastic or Gillespie simulation. This is far more efficient, more statistically exact, and is generally the method used where possible.

(This is a chapter from Complex networks, complex processes.)

## Synchronous simulation

The simplest way to simulate an epidemic from a computing perspective is to adopt a discrete time model. We tie this together with our compartmented models from earlier to create a simulator for SIR.

(This is a chapter from Complex networks, complex processes.)

## Epidemic simulation

Before we go any further, let’s pause to think about the general theme of computer simulation. This is a huge topic, but some of the common themes, ideas, and terms are essential to understanding how to simulate an epidemic — and equally importantly, to make some of the decisions that need to be made.

(This is a chapter from Complex networks, complex processes.)

## Coding a compartmented model

Having moved from continuous to discrete views of compartmented disease models, we now need to create code so we can simulate such diseases over a network. There are lots of possible compartmented models, so — rather than develop each from scratch — we make use of a Python library the gives us a framework for doing so. This has the advantages that the code we develop can be run under different simulation regimes if required, and can also be run at scale.

(This is a chapter from Complex networks, complex processes.)

## From continuous to networked compartmented models

Let’s now return to the compartmented models of disease we developed earlier. These were continuous models, described using calculus. Networks, by contrast, are discrete structures consisting of nodes and edges. We therefore need to develop a way to think about the continuous model in a discrete way appropriate to being applied as a process over a network..

(This is a chapter from Complex networks, complex processes.)

## The components of an ER network

ER networks have a strange property: even a small number of edges, distributed randomly, can lead to a connected structure with very high probability — the so-called “giant” component. Studying this effect brings up the notion of a critical threshold and a phase change, which can be calculated both mathematically and in simulation.

(This is a chapter from Complex networks, complex processes.)