|
WELCOME TO THE ALMENDE SENSE TECH-BLOG
Sense Internships at Almende
Almende BV, Rotterdam, offers two MSc-level internships in the field of wireless sensor networks. The first internship focuses on distributed multi-modal sensor fusion, pattern recognition and machine learning in the field of wireless sensor networks. The internship includes the opportunity to investigate existing algorithms, adapting them so they fit the distributed and resource-constrained nature of wireless sensor networks or creating your own algorithms. Additionally, there is the opportunity to implement the results on an operational WSN framework, and to test it in two use cases in the Dutch research projects ALwEN and STORM. Check the entire Internship description here Internship Adacptivity and Learning in Wireless Sensor Networks The second Internship focuses on bio-inspired data diffusion in wireless sensor networks. The internships includes analyzing and possibly enhancing the gossip protocol currently in use in the MyriaNed WSN platform. Also, research can be conducted to different bio-inspired models and algorithms (slime mold, hormone models, swarm intelligence) to create intelligent data diffusion algorithms. Additionally there is the opportunity to test your solution both in a simulator and in real WSN deployments of different sizes. Check the entire Internship description here Internship Bio-Inspired Data Diffusion in Wireless Sensor Networks Almende is a research company in Rotterdam, focusing on self-organization in (hybrid) networks of things and people. Around 25 people are employed by Almende, both doing research in areas such as wireless sensor networks, robotics, multi-agent systems and social networks. Multiple students have done their master's thesis or PhD research at Almende over the years. Freek van PolenonMonday 01 February 2010 - 15:42:05 comment: 0 1000-Node Experiment
A flashy way to start the new year: 1024 MyriaNodes performing a light show. On monday the 11th of January, Chess organized the "1000-nodes experiment", where for the first time an attempt was made to let around 1K MyriaNodes organize into a network. The experiment took place in "de Lichtfabriek", a pop-concert hall in Haarlem. The nodes were aligned in an 8x8x16 block, with around one meter distance between nodes. Nearly all nodes managed to get synchronized, and a global clock algorithm was run to give every node the same round number. Unfortunately, getting them to actually perform light patterns went awry, as the commands for two different patterns were present in the network, and vied for control. The result was, however, quite colorful and psychedelic. Though the results of this experiment weren't as astounding as was hoped for, one should realize that this kind of experiment usually is held with the aim of getting insight and obtaining data, rather than to actually show something works. As 15GB(!) of data were collected, who knows what interesting and unexpected behavior may be discovered. It was already quite reassuring that 1024 nodes, packed practically into a one-hop distance space, were able to synchronize, maintaining the strict energy-efficient communication schemes they did. Hopefully this experiment will reveal practical limitations to the current architecture, and allow us to come up with ways around them. On a sidenote, our Android-MyriaNode-sniffer combination had its first use, and it seemed to be capable to deal with the many messages flying around, gathering 2.5K of them in some fifteen minutes. Freek van PolenonTuesday 19 January 2010 - 11:13:25 comment: 0 Sense Internship at Almende
Almende BV, Rotterdam, offers a master-level internship concerning distributed multi-modal sensor fusion, pattern recognition and machine learning in the field of wireless sensor networks. The internship includes the opportunity to investigate existing algorithms, adapting them so they fit the distributed and resource-constrained nature of wireless sensor networks or creating your own algorithms. Additionally, there is the opportunity to implement the results on an operational WSN framework, and to test it in two use cases in the Dutch research projects ALwEN and STORM. Almende is a research company in Rotterdam, focusing on self-organization in (hybrid) networks of things and people. Around 25 people are employed by Almende, both doing research in areas such as wireless sensor networks, robotics, multi-agent systems and social networks. Multiple students have done their master's thesis or PhD research at Almende over the years. Check the complete internship description here: Internship_Adaptivity_and_Learning_in_Wireless_Sensor_Network.pdfFreek van PolenonThursday 24 December 2009 - 17:14:34 comment: 0 Enter the Smartphone
With the smartphone acquiring increasingly widespread use, it is time for Sense to adopt the smartphone as a sensing and acting device. After all, phones like the iPhone and Android contain lots of sensors: an accelerometer, compass, microphone, proximity sensor, GPS, camera, light sensor and a touch sensor. Also, they can communicate over multiple channels: Bluetooth, GPRS, UMTS, EDGE and WiFi. And then there are the actuating modalities the smartphone offers: loudspeaker, vibration and screen. Modern smartphone functionalities only scratch the surface of the possibilities although the Android Market offers users the opportunity to develop their own application. So how do we envision a smartphone embedded in the Sense landscape? Firstly, as your personal agent that keeps track of how other people can try to contact you. When you are on the phone, it makes no sense for other people to call you, and so your phone should be aware of this and advise other to for instance send you a text message instead. Your phone should notice whether it is carried around or not, and if it notices it has been forgotten, it could for instance relay incoming text messages to your e-mail address. Aside from keeping track of one's reachability through various channels, a smarthphone could also function as a central part in a body-area network in many health care applications. Aided by sensors worn on the body it could keep track of vital signs or rate of activity, and directly give advice to a user, or automatically alert care givers in case of an emergency. Ideally, a smartphone would adapt to the specific conditions and habits of his user thus living up to the name it has been given. Finally, the smartphone could function as an interface to or a part of a wireless sensor network. Pulling information from the network, serving as a gateway to the Internet, sharing its own sensor data and visualizing data for a human user are but some of the possibilities. To start realizing all this, the Android developer's phone has become the center of attention for Steven, our youngest Sense-family member. In addition to exploration of the options, the Android has been married to the MyriaNode, as can be seen in the picture below. Though the start was somewhat hesitant from the side of the Android, the two are now comfortably exchanging information. It will be only a matter of months before the Android will find his first use as a personal track keeper of reachability. Also it is planned to be used in an Independent Living use case where it will assess the amount of physical exercise of elderly people and will advise the user to move more or less. Freek van PolenonFriday 11 December 2009 - 11:04:32 comment: 0 Tracking Application on the first National Day of Selforganisation
Last Wednesday the 11th of November 2009 De Eerste Nationale Dag van de Zelforganisatie, a seminar dedicated to the topic of selforganization, was held in Rotterdam. An excellent occasion for Almende to show what can be done with a Wireless Sensor Network, and so a lot of effort was put into creating an operational Tracking Application. The application was used on the conference to track a number of visitors as they moved through the area. It consisted of a number of static nodes that were spread through the conference area and of which the location was recorded, and a number of mobile nodes that were handed out to selected visitors. While no further functionality was added, a little creativity goes a long way: the organizer could use it to alert people when workgroups start, visitors could use it to look up where certain other visitors are during the lunch break to go talk to them, etc. As can be seen in the picture, getting the application together was not straightforward, as a lot of different processes and devices are involved. First, the actual tracking data is produced by the network of nodes, and needs to be gathered by the two sniffer nodes that were present. This raw data was stored in a database, where the locations of the static nodes were also stored. Then, there was an application that took the raw tracking data, along with the locations of the static nodes from the database, and generated from this the locations of all mobile nodes present in the environment. These mobile node locations were again stored in the database. Finally, there was a googleApp that took the locations of both the static and the mobile nodes from the database and generated an image of the conference area with blue icons for the static nodes and red icons for the red nodes. This image could be refreshed every minute. The graphical user interface that was developed can be viewed on http://1.latest.almendetracker.appspot.com/, but beware that as it is still in a developmental stage, it is quite slow. Here are pictures of the MyriaNodes before and after deployment. Though they do not look very inconspicuous, most visitors of the seminar did not notice them until they were explicitly pointed out to people. Freek van PolenonThursday 19 November 2009 - 11:41:20 comment: 0 Big Brother is Tracking & Tracing You! (or actually the node in your pocket)
Suppose a fire breaks out in an elderly care center: wouldn't it be nice if the firefighters can whip out their PDA's and check how many people are left in the building and where in the building they are? Or think of the relative peace and quiet you as a passenger would experience in Schiphol if no more of those "will mr. X hurry to gate D11, we will proceed to offload your luggage" messages keep ringing out because it was known that mr X was still windowshopping in wing A and sent a text message telling him to start moving to gate D11 (and think of the amount of work it would save Schiphol personnel). Tracking and Tracing, or localization, is perceived to be one of the main area's of application for wireless sensor networks. Because it is hard to track human beings with just a wireless sensor network deployed in the area (what sensors would you use to identify hundreds of persons at the same time?), the usual approach is to assume that the targets to be tracked actually carry a node with them. This may seem to be a bold assumption, but think of the amount of personal possessions you already carry with you: wallet, phone, pda, laptop, elderly people carry an alarm button. Each of these are larger than a single wireless sensor node, so the assumption is not as bold as it may seem. So tracking and tracing people then becomes a matter of determining the location of the node the person carries in the deployed network. There are roughly three popular classes of methods for doing this: a dedicated sensor, radio signal qualities and network communication patterns. - The most straightforward way to determine the location of a node would be to outfit it with a GPS-device. This would, however also be the most energy-consuming solution, and, moreover, one that would not work indoors.
- Measuring qualities of a radio signal is a second method. In a wireless sensor network, nodes communicate with each other using a rather short range radio. The idea is that if node A measures qualities of the radio signal it receives from node B (qualities such as signal strength, travel time), and node A knows how the distance traveled by the radio signal influences the qualities of the radio signal, node A can infer the distance between node A node B. If three nodes do this with the signal emitted by a target node, a technique called triangulation can be used to determine the exact position of the target node. Problematic with this approach is that it is typically very hard to reliably measure these qualities of a radio signal. Also, it is practically unfeasible to know how these qualities are affected during flight time of the radio signal.
- The third method is to use communication patterns in the network to measure distances between nodes. The assumption is that one can adopt some model for the propagation of radio signals through the environment, and thus for the reception of signals from node A by node B. Well-known models are the unit-disc model, where there is a fixed radius around a node where its radio signal is perfectly received while outside of the radius there is no chance the signal is received; and the stochastic model, where the chance of receiving a signal decreases with distance. Using this assumption, one can let nodes compare their neighborhoods (the set of nodes a node can or has communicated with): more similarity in neighborhood indicates a smaller distance. Alternatively, nodes can count the amount of packets they receive from other nodes and estimate what chance they have of receiving a packet from other nodes, and then use the radio model to determine the distance between itself and other nodes. The former technique is exploited in for instance the NIDES algorithm, the latter we have used and experimented with at Almende.
- A fourth option, which is less popular as it currently is futuristic, would be to use input from non-dedicated sensors to determine whether nodes are close to each other or not. For instance, nodes that are close would "hear" the same door slam, and both measure a decrease in temperature when the window is opened. This is an option that is on Almende's wishlist.
For one week, a network of thirteen nodes gathered packet reception ratio's from every other node in the network. Additionally, one mobile node moved around in the environment. The goal was to be able, after the experiment, to deduce from the data where the mobile node was at what time and, additionally, to see if it was possible to reconstruct the topology of the network from the data. In the first image, the packet reception ratio's of all static nodes from the mobile node are plotted for a period of twelve hours. One can clearly see five distinct patterns, that correspond to the moments and places the mobile node was moved. The second image is an attempt to reconstruct the network topology by loading the packet reception data into INQ, an algorithm normally used to generate images of social networks. Though the result is not 100% correct, some major clusters can still be seen, which makes the result at least hopeful regarding the ad-hocness of the attempt. For a rendition of all data of the entire experiment, check this demo! Packet Reception Ratio's of packets from the mobile node to the static nodes. Rendition of the network topology based on the inter-node packet reception ratio's. Freek van PolenonFriday 23 October 2009 - 14:49:52 comment: 0 To make Sense of it
One goal Almende has for a Wireless Sensor Network platform is to have the system be able to find patterns in sensor data. Pattern detection is a problem that can be defined in different levels of complexity, and we define it in quite a complex way: unsupervised, multi-modal, temporal, distributed pattern detection, though the unsupervised part really only is "up to a degree". What does all this mean? The problem of pattern detection basically means to find recurring patterns in a set of data. This data can come in batches, where time or sequentiality is not a factor, such as in image classification, where the entire image comes at a time, and the sequence of images presented to classify carries no meaning. Alternatively, the sequence in which data comes in could be of importance, such as in the classification of strings of DNA. Then, data could be temporal, where the actual time that data comes in is important. This is for instance the case in the human brain, where the exact timing of spikes carries meaning, rather than for instance an average amount of spikes per time period. So temporality is one dimension along which different levels of complexity can be achieved; another is modality. If your data is all of one modality, such as pictures, sound, type of protein, etc., detecting patterns is relatively straightforward. However, if your data is of multiple modalities, this is not true. Consider, for instance, a robot trying to make sense of the sounds coming into its microphone and the images coming into its camera. How can it link the image of a dog to the barking the dog produces? And is it capable to deduce, from just the sound of a dog, that a dog is nearby, even though it can't see the dog? A third dimension is distributedness. Traditionally, it is assumed that all data is present in one physical location, where all data can be used to train and classify. Training becomes a lot trickier if the data is distributed over multiple physical locations. Do you opt for gathering all data at some central destination first and then training one classifier? Or do you let the nodes carrying the data organize into clusters and elect clusterheads to perform the training? Or, even fuzzier, do you let each node train using the data it can gather? And how then, do you come to a final decision? The fourth dimension is degree of supervision: traditional machine learning methods rely heavily on supervision by an expert. You present them an image, the algorithm attempts to classify, and you provide it feedback on how it did. The algorithm then uses this feedback to make a better classification next time. However, things get a lot more complex if this feedback is not, or to a lesser degree, present. It will be up to the algorithm to for instance make a number of clusters of similar data, and classify according to this.
A typical example of what we would like our sensor network to be able to do is the following. Suppose a toilet is outfitted with three nodes, one capable of measuring whether the door is open or closed, one measuring the light, and one measuring water current. The network should then be able to find a typical pattern of someone going to the toilet: door open, light on, door closed, water flowing, door open, lights off, door closed. It should do this by noting that this pattern is recurring, without any a priori knowledge that this kind of pattern might occur, particularly no idea of time scale, or network topology. It should them be able to present this found pattern to a user, asking whether this is indeed an interesting pattern, and asking to label it. It is easy to see that this scenario is complex in each of the four dimensions described earlier: our data is temporal in nature, it is multi-modal, it is distributed, and to some extend unsupervised.
Coming up with some way to do it is the big challenge.
Freek van PolenonTuesday 29 September 2009 - 17:47:59 comment: 0 A Myriad of Scenario's
With the MyriaNode V3 available, gathering sensor data has finally become a real option. The new MyriaNode has four LED's, of which 2 can be used as a light sensor, a temperature sensor built into the processor, and it can be extended with an accelerometer. Though these sensors are of course not yet the type of sensors we would wish to employ in the end (think rather of PIR, Sonar, less crude light and temperature sensors, humidity, electrical current, etc.) it offers some way to experiment with sensor fusion and pattern recognition algorithms. With the MyriaNodes running MyriaCore and organizing themselves into a communicating network, and a sniffer grabbing all interesting messages from the air and storing them on a desktop computer, it is time to turn to some scenario's to solve. And lo and behold, these are abundant: - COPD use case: The COPD use case is the use case in the ALwEN project that has to be solved in the end. The objective is to create a Body Area Network that monitors a number of vital signs of a COPD patient (COPD is a disease of the lungs much like asthma, except that the effects are quite permanent and often deteriorate) and notifies a network in the environment of important information. This information may then be forwarded to for instance care-givers or relatives, or the network may decide to act autonomously and for instance inform the patient that he or she has to take it easy.
- Greenhouse Monitoring: Greenhouse monitoring is one of the two scenario's in the STORM project. The objective is to use a wireless sensor network to observe environmental conditions important to the growth of whatever plant is growing in the greenhouse. These conditions include temperature, humidity, air pressure, light intensity, etc. The goal of the network can subsequently be to report all data to a central database for analysis, to report only in case some condition has reached some critical value, or to act autonomously by for instance switching on the sprinklers or switching off the lights.
- Assisting the Elderly: One main issue in keeping elderly in their own home as long as possible, instead of elderly homes, is how to observe whether the person is still healthy and capable of living independently. A WSN could help by monitoring so called Activities of Daily Life (ADL's), to determine whether a person's situation is deteriorating, and if so, how fast, by actively assisting the elderly in these activities, or by reminding them to perform them. Additionally, it could call for care at home and automatically register the type and duration of care delivered.
- Cool Kastje: The first scenario solved with respect to the CCF2 Independent Living. Where WSN related activities mainly focus on the sensor network itself, little attention is given to how information contained in the network can be made accessible to humans, or how it can be actively presented to humans. The Cool Kastje scenario was a first attempt to construct a complete chain from individual sensor node to human being. A fridge (Dutch: koelkast) was outfitted with a node measuring the temperature and spreading this temperature in the network. A sniffer node connected to a desktop would analyze the temperature, and make a call to an ASK-system (www.ask-cs.nl) if the temperature was too high. ASK would consequently call a fixed person and inform him or her that the fridge was left open.
- Kees-opsluit-Case: An infamous scenario, still high on the list of to be solved scenario's. One of our colleagues tends to be locked in at night because he works in the attic and people don't realize he is still there when they lock the door. The goal of course is to detect if there is someone in the building and make this information available at the front door, so that people know whether to lock the door or not.
- Koffie Case: Noone likes to queue up for getting coffee, thus it should be possible to view from upstairs whether the coffee machine is currently in use or might soon be in use. Thought this may not be the most intricate of scenario's to solve (a simple electrical current sensor would suffice) the scenario mainly serves to be an interesting yet solvable one with the sensor we can currently employ: light and temperature.
It may be obvious in the above list the the first three scenario's are rather ambitious, while the last three are more low-profile. This is exactly the way it is meant to be: it is highly surprising to see how little attention, despite the enormous amount of work on wireless sensor networks, is given to actual implementations of WSN's. It is our firm belief that all the theoretical work on modeling the behavior of WSN's and coming up with theoretical applications is useless if you are not familiar with the harsh and unpredictable reality that you will face in the end. Better to get your hands dirty and test every theory and every idea in the real world on a real network and in that way gradually, step by step, build your architecture. Thus, the first three scenario's could be seen as the Valhalla that we hope to achieve by taking the baby steps (be sure not to underestimate them though, to quote Andries: "het is weerbarstige materie") that are the last three scenario's. Freek van PolenonThursday 17 September 2009 - 16:45:55 comment: 0 Wheels are in motion again!
It has been a long time since the last (also the second) post on this blog, but that's what you get when the person maintaining the blog takes a four-month holiday :D. Since the 3rd of august work on wireless sensor networks has resumed, in multiple directions: - The ALwEN project goes on in its normal state of operation: a meeting every two or three weeks where all participating researchers have a chance to share their work and findings, a good place for cross-pollination of ideas.
- The STORM project has finally started last May. Whereas the ALwEN project is highly research oriented (i.e. what are the properties of large scale networks, how to organize/configure such a network, etc), STORM is more development oriented. The goal is to develop all necessary materials to solve two well-defined applications: tracking & tracing and greenhouse monitoring.
- A new project has started: CCF2 Onafhankelijk Wonen. This project is geared towards creating a true product that can be used to assist elderly people in living independently for a longer time.
- Another project, ELS, will still have to start some day in the future. ELS (Experiments with Large-Scale sensor networks) will have as a goal to experiment with large scale sensor networks (a lot can be in a name).
Additionally, we will hopefully soon welcome two more colleagues who will dedicate their time to the topic of Wireless Sensor Networks. Thus, the Sense wheels truly are in motion again. Freek van PolenonThursday 17 September 2009 - 16:03:53 comment: 0 Welcome!
Welcome to Almende's Sense Tech-Blog. Almende is active in the field of wireless sensor networks, developing its own sensor network platform. We are working on an operating system, a suite of distributed pattern recognition algorithms for sensor data fusion, methods that allow sensor networks to organize themselves and tools for programming and debugging wireless sensor networks. This blog will provide a look into the kitchen of Almende's Sense activities, providing a closer look at what is being built and the ideas and considerations that underlie this. Freek van PolenonFriday 20 March 2009 - 17:51:35 comment: 0 | |