Archive for 2008/02/24

Armchair science: Use BOINC framework to analyze whale/bird songs

2008/02/24/1545

After arguing for hours about the nature of social facilitation in cockroaches, we got to the nature of the cognitive representation of the presence of another living creature of the same species… Suffice to say that a lot of ground was covered, and that brings us to Whale songs. Yes. Somehow.

From http://en.wikipedia.org/wiki/Whale_song:

The songs follow a distinct hierarchical structure. The base units of the song (sometimes loosely called the “notes”) are single uninterrupted emissions of sound that last up to a few seconds. These sounds vary in frequency from 20 Hz to 10 kHz (the typical human range of hearing is 20 Hz to 20 kHz). The units may be frequency modulated (i.e., the pitch of the sound may go up, down, or stay the same during the note) or amplitude modulated (get louder or quieter). However the adjustment of bandwidth on a spectrogram representation of the song reveals the essentially pulsed nature of the FM sounds.

A collection of four or six units is known as a sub-phrase, lasting perhaps ten seconds (see also phrase (music)). A collection of two sub-phrases is a phrase. A whale will typically repeat the same phrase over and over for two to four minutes. This is known as a theme. A collection of themes is known as a song. The whale will repeat the same song, which last up to 30 or so minutes, over and over again over the course of hours or even days. This “Russian doll” hierarchy of sounds has captured the imagination of scientists.

All the whales in an area sing virtually the same song at any point in time and the song is constantly and slowly evolving over time. For example, over the course of a month a particular unit that started as an “upsweep” (increasing in frequency) may slowly flatten to become a constant note. Another unit may get steadily louder. The pace of evolution of a whale’s song also changes—some years the song may change quite rapidly, whereas in other years little variation may be recorded.

Whoah. That’s totally interesting. People have recorded lots of whale songs, and they’ve already written software to work with it. From the bird-researchers at Cornell:

Raven: Interactive Sound Analysis Software

Raven and Raven Lite are software applications for the acquisition, visualization, measurement, and analysis of acoustic signals. Raven has been developed by the Cornell Bioacoustics Research Program, with the support of the National Science Foundation, to provide a powerful, user-friendly research and teaching tool tailored to the needs of biologists working with acoustic signals. Both Raven and Raven Lite run on computers running Microsoft Windows operating systems and Mac OS X.

XBAT: Extensible Acoustic Analysis

XBAT is an open-source extensible sound analysis application and MATLAB platform for developing sound analysis tools. It has been developed through on-going interaction with conservation scientists and animal communication researchers at the Cornell Bioacoustics Research Program. XBAT was designed to satisfy the diverse sound analysis needs of scientists who deal with large-scale data sets from both marine and terrestrial environments.

…et cetera. So, we have hierarchical patterns that are present in the communication of another species of animal. We have algorithms for performing meaningful analysis of these songs. …and yet, the conclusion of it all is: inconclusive. …but cognitive scientists and language researchers want to hear more about this!

So, it’s obvious that a lots of people have put lots of time into this thing, and their work has really advanced human understanding about the communication of these other animals. Thanks! I just wanted to point out that the BOINC platform might be a good future direction for this work:

BOINC is designed to support applications that have large computation requirements, storage requirements, or both. The main requirement of the application is that it be divisible into a large number (thousands or millions) of jobs that can be done independently.

If the project is going to use volunteered resources, there are additional requirements:

Public appeal

An application must be viewed as interesting and worthwhile by the public in order to gain large numbers of participants. A project must have the resources and commitment to maintain this interest, typically by creating a compelling web site and by generating interesting graphics in the application.

Low data/compute ratio

Input and output data are sent through commercial Internet connections, which may be expensive and/or slow. As a rule of thumb, if your application produces or consumes more than a gigabyte of data per day of CPU time, then it may be cheaper to use in-house cluster computing rather than volunteer computing.
What resources are needed to create a BOINC project?

If you have an existing application, figure on about three man-months to create the project: one month of an experience sys admin, one month of a programmer, and one month of a web developer (these are very rough estimates). Once the project is running, budget a 50% FTE (mostly system admin) to maintain it. In terms of hardware, you’ll need a mid-range server computer (e.g. Dell Poweredge) plenty of memory and disk. Budget about $5,000 for this. You’ll also need a fast connection to the commercial Internet (T1 or faster).

It may be difficult for some scientists to provide these resources. In this case, it may be possible to create a BOINC project at a higher organizational level, to server the needs of multiple scientists. For example, such a project might be created at the university campus level. Several U.S. funding agencies (NSF, NIH) have programs that could support this.

What is the public appeal? Well, there’s certainly a lot of emotionality that humans project onto whales, since they’re mammals and they seem to communicate with each other in a meaningful way.

What problem would be solved by the availability of a distributed compute grid? Well, in the same way that SETI combs the noise for some sort of signal, the point would be to brute-force through whale songs for the higher order signal. Fortunately, in this case, the starting data is really clean: the signal to noise ratio of whale song recordings is probably quite good. I don’t know, but I expect it’s better than what the SETI folk deal with.

The challenge for computer scientists, who have relied on transactions, critical sections, atomic operations, etc… well, the problem is in making the algorithm parallel enough that it can be meaningfully scaled up 10^8% to take advantage of the abundance of donated compute time.

So why whale songs? It just seems like an inevitable next step… so inevitable that perhaps it’s already happening. Do it with bird songs, too. Yeah! …and then tell me what those whales talk about for 30 minutes at a time.

That’s the end of my armchair science rant.