## 2 Human-Based Wireless Sensor Network  
A HWSN consists of a mesh that allows a variety of sensors to retrieve and disseminate context information in a certain area [6, 7]. These sensors can be regular sensors (including smartphones [11]), human-based sensors (e.g., people using a mobile application on a smartphone to detect the presence of friends in the area), rules (e.g., vehicles that--carrying a mobile computing device--connect two or more disconnected networks) and witness units (also known as information sprinklers [12], which can be used to store and deliver information on-demand). However, the main actors in these networks are the human-based sensors, which have the capability of sending/receiving information on-demand to/from other sensors, and also interconnecting the incoming information to produce more complex and accurate knowledge. For example, a shopping center employee (_i.e._, a human-based sensor) that does not want to take lunch alone nor talk about work during lunch, goes for a walk to find a friend in the neighboring area. He uses the smartphone (_i.e._, a regular sensor) to detect the presence of a friend's smartphone in the HWSN of the shopping center, which is formed by the mobile devices used by people visiting or working in that place. Thus, the incoming information given by the regular sensor (_i.e._, the smartphone) is used by the human-based sensor to generate knowledge. Such knowledge is information that can be then shared with other human-based sensors through the HWSN. These sensors types are in fact sensors roles, therefore a certain device can play more than one role in a HWSN. These capabilities of a HWSN can be used to support opportunistic and also participatory sensing [1, 5]. These networks are usually composed by several islands of nodes (_i.e._, sub-networks), which are dynamically created and unified according to the movements of the participants (_i.e._, the network nodes). On the one hand, if we consider each island as a single node, then the HWSN behaves as an opportunistic network (oppnet). This means that the nodes are able to route messages from a source to a destination node, without knowing if there is a path between them [13]. On the other hand, each island behaves as a mobile _ad hoc_ network (MANET), where the existence of path from the source to the destination node is previously known. This behavior determines that the network topology is never known by the nodes, unless that all of them belong to a single island. Message routing among islands typically requires the participation of mules, which implement store and forward mechanisms. However, this propagation activity can also be performed by regular nodes. Several criteria can be used to choose the nodes that will participate in this activity; for instance, those with the highest mobility level [14, 15, 16] or probability of meeting the destination node [17], those with similar profiles [18], or any other criterion. These nodes add the capacity of storing (in memory) the messages that cannot be delivered, because the destination node is outside the island. These messages are kept by the nodes until a suitable \"carrier\" is found. The carrier forwards them to other islands. The propagation process is done until the destination node is met, or _the time to live_ of that message is reached. The topology control (TC) strategies used in HWSN-based applications usually plays an important role in both the message dissemination and energy consumption inside the islands. Designers of these applications must decide what is the best way to not only keep the sub-network topology updated in this dynamic scenario, but also to reduce energy consumption of the participating devices. The chosen strategies should not interfere with the regular traffic of the network. In general, these networks are built upon an IEEE 802.11 variant [19]. The IP assignment for the network nodes is outside the scope of this paper, but it can be performed following the proposal described in [20].