I am not a mathematician but out of curiosity I am trying to implement the [SIS epidemic model][1] when the nodes have mobility to understand how it will change the results. I understand how to perform this simulation in an analytical fashion. However, things get rather confusing when nodes are mobile. To give a background, all models that I have come across do not consider that nodes are mobile. The model assumes that each node can infect **any** node and hence the equations (differential or difference) are valid. But when nodes are mobile, each node is **not able** to infect every other node (the other node might not be within the range) and has to explicity send a message to a node that is susceptible in order to infect it. In that case, give an infection rate `B`, how do I simulate this when the nodes are mobile? Currently, the way I am doing this is in the following way: def Controller(): for i in range(1,100): randNum = getRand() if (randNum <= InfectionRate): neighbors = getNeighbors(i) ScheduleTransmission(getCurrentTime(), i, neighbors) Schedule(getCurrentTime() + 1, Controller) Any suggestions on whether I am heading in the right direction? [1]: http://en.wikipedia.org/wiki/Compartmental_models_in_epidemiology#The_SIS_model