Thursday, April 02, 2009

CS: On the value of Distributed Sensor Networks, More on the Labview Reconstruction algorithm

To recap, in a previous entry, Angshul Majumdar asked the following question:
I do not really understand how Distributed Sensor Networks benefit from CS. In general the main constraint in DSN is the battery life of the sensors. Now the battery is consumed for communications. Therefore the final aim is to reduce the communication cost of each sensor. Now, in general if there are n sensors each one will send one piece of data to the fusion center. But by CS techniques each center needs to multiple its values to a k dimensional vector and send out k pieces of data. What CS argues is that all the sensors need to send out k pieces of data, and they are added in air by the superposition of radio waves, and the fusion center decodes the n dimensional vector from the k dimensional vector. The problem is that each sensor is sending out k pieces instead of one. Therefore it is likely that the battery burns our faster. May be I haven't understood the problem. Can you explain? Or who is the right person to enquire about this?

Responding to that question, Waheed Bajwa provided the following answer:
...We have in the past investigated the use of compressed sensing in distributed sensor networks in precisely the setting mentioned by Angshul;

the relevant partial results can be found in our IPSN 2006 and ICASSP 2006 papers, while a comprehensive collection of all our related results can be found in our IT Trans 2007 paper. I believe that these papers collectively answer the points raised by Angshul in terms of the usage of CS-based encoding in sensor networks.

In particular, the upshot of our results is that if one has enough prior knowledge about the sensor network data then using that prior knowledge in encoding the data is superior to CS-based encoding in terms of power-distortion-latency metrics. But if one does not have enough prior knowledge about the underlying data then using CS-based encoding can be strictly superior to using a mismatched encoding mechanism. Further, CS-based encoding gives one the ability to design universal encoding mechanisms that need not be changed with the underlying data, but the price that one has to pay is in terms of the performance as compared to data-specific encoding---an observation that we term as the "universality vs prior knowledge trade-off".

Finally, note that whether one uses CS-based encoding or not, the end result is always better than sending individual measurements from each sensor independently. Angshul remarks regarding energy usage do not apply here since he is not taking into account the power pooling gain that one gets out of beamforming data from the sensors. This is explained in quite a detail in our IT Trans 2007 paper.

Bottom line: Using CS-based encoding in sensor networks is typically going to be better than making sensors send individual measurements to a central fusion center. Whether or not this is the best thing to do though depends upon whether or not we can get reliable prior information regarding the signal field of interest.

Sanjay Chawla then commented in the comment section of that answer:
I have read Waheed's answer to Angshul on DSN. Shouldn't the "right answer" be that the real power of compressed sensing kicks when when each sensor wants to transmit a sparse signal of length n. When each sensor just wants to send one value then compressed sensing is not meaningful and Angshul is right - we end up transmitting nk values rather than n to the data center.
In turn, Waheed Bajwa was kind enough to provide the following comment to Sanjay's comment:

...Unfortunately while every sensor having sparse vectors is one scenario where compressed sensing can be utilized, it is not a physically plausible scenario in my opinion. Rather, assuming that the entire sensor network data itself is sparse or compressible in some basis is the interesting setup. (When you take a picture, the sparsity manifests itself across the pixels, for example.) In that regard, the figure of merit in communication systems is not the "number of values" that one transmits. It is power, channel uses (bandwidth) and distortion---this is discussed in quite a detail in the IT Trans paper that I mentioned yesterday. Perhaps one thing that I did not clarify yesterday was that the communication setup in our IT Trans paper is a little different from the usual setup and CS is meaningful in sensor networks precisely because we use a different setup to communicate, rather than the conventional collision-avoidance setup where each sensor communicates digitally over orthogonal channels.

Thank you Angshul, Sanjay and Waheed ! I learned something out of this impromptu Q/A.


If you recall, I mentioned some time ago an implementation of compressive sensing in Labview a GUI-like scripting language. After talking some more to Lalo Perez, the author of the script that implements both the acquisition and the reconstruction of the signal, it looks as though we should see a publication of this new reconstruction algorithm soon. In the meantime, one can check it out by downloading the Labview script file and the attendant webpage presenting the algorithm. It might be interesting if somebody would translate it into a matlab equivalent.

No comments:

Printfriendly