Saturday, November 19, 2005

Server side scientific software as a way to try out an algorithm's popularity ?


I was recently asked about how one could try to test the attractiveness of an algorithm one had devised and see how it was used by users. Generally, people want to be free to toy with an algorithm, so giving them an implementation of an algorithm is fine but how do you do feedback ?

Some of the models I have seen over time include examples such:

* Wavelab where the toolbox allows examples and implementation to be totally readable to your audience
* Beamlab where the toolbox allows examples to be run but hide the content of the algorithm to the user
* The MadMax Optics Matlab toolbox (Multipole method) that can be used for free for a 2-D problem but requires a commercial licence for more complex cases (3D).

All the previous examples use Matlab as a way to remove the complexity of having to deal with different customer's platforms. It certainly does not work well when Matlab versions change. For instance, Carrie Grimes shows us that Matlab Revision 12 and Revision 13 do not handle eigenvectors (eigs.m) the same way. These methods are fine in order to enhance people's understanding of the capabilities of your algorithm, but there are other issues to consider. If you want to improve that same algorithm in order to fit into a specialized area of expertise or several areas of expertises, then the complexities of the previous solution carry a tremendous implementation and platform knowledge burden. In particular, what do you do when you have improved the algorithm ? In most cases, you have to publish a new version of software and hope that your users are tracking your web page or that you were wise enough to have set up a mailing lists and thenhope that all your users still have the same e-mail addresses. Mailing lists handling, in my experience, is a pain and takes away time you should be focusing on the algorithm. Last but not least, you also need to make sure your new algorithm works perfectly on different platforms.

Another way to go about this and avoid the upgrade nightmare is to evaluate the possibility of having a server side software like the Argonne optimization server and provide a GUI that anybody can use. There, computations are performed on somebody else's computer provided that you send the right batch job. An example would be the interactive demo on the simplex method.

Another example with a GUI is Spenvis (a software that provides a way of quantifying radiation doses to spacecrafts while in orbit.) To see how it works, you might need to take a look at it by creating an account. There, you are never running the models on your machine and therefore do not have access to the models except through their reference number. You can run different models and play with many different parameters. If this is an important application, customers may want to pay a licence to use and keep the data on their accounts. They may even ask for a freezed version of the current server side computation. It is also very likely that if a new use of your algorithm arises, an account holder/client might provide a useful input as to what needs to be added to the application to make it appealing to a larger audience. This is not a new idea, Paul Graham lists the reasons why this server-side business is promising in his now famous essay "Beating the averages"

I was initially thinking about implementing something like this server side algorithm for a multilayer algorithm but let's take an example in the space business. If one were to design orbits for spacecrafts performing remote sensing imagery, one could use the different tools offered in the Google Maps API to project these orbits on earth using examples such as these:

* a simple Spacecraft tracking,
* or the shadow of eclipses on the ground,
* or the map of Robotic car race which uses polylines,
* or finally a map of Nuclear detonation which uses an image superimposed on maps.

But why stop at 2-d imagery, when Google Earth provides a 3-d view.

Just generate a klm file and you are done. A way to do your server side algorithm would be to just generate a klm files to be used in Google Earth!

The example of Google Maps or Google Earth serves two purposes:

* With very little capability you can produce output similar to commercial products such as STK thanks to a third party product like Google Maps.
* If you have a good algorithm, it would be of tremendous help to designing a good API.

And don't forget, your initial crowd of users might be students at colleges and universities. You might use the WOW factor to initiate a good following. Wowing examples can be found in the following references ([1], [2],[3], [4])

Other relevant references of interest:
* LAMP: 5
* Ajax: drag and drop site creator, Tutorial on Ajax, here,
and here as well.

Wednesday, November 16, 2005

Comment l'etat americain interagit avec les petites entreprises innovantes (premiere partie)

Ce poste, en francais, vient d'une rencontre a l'un des colloques organise par la SCM ou se trouvait des representants de l'etat Francais, en particulier de la CNER. A la fin du colloque, il semblait assez evident que l'etat francais est incapable d'avoir une relation normale ou une relation (tout court) avec des tres petites entites. Comme il est presque acquis que seules des toutes petites structures sont a l'origine d'innovations impressionantes (Apple, Google,...), il me semblait utile de detailer comment l'etat americain permet a certaines de ces start-ups de tres hautes technologie de fleurir a travers des financements specifiques.

Voici donc une petite revue des structures qui permettent aux petites entreprises américaines d'avoir des contrats avec différentes entités (ministère/agence) du gouvernement américain.

Depuis relativement longtemps, il existe un système de budgets spécifiquement alloués aux petites entreprises grâce à certains programmes. L'un de ces programmes, le plus connu, inclu le SBIR et le STTR qui signifie Small Business Innovation Research Program (SBIR) et Small Business Technology Transfer Program (STTR), il est coordonné par la U.S. Small business administration (ministère des petites entreprises) et a la particularité d'être administré par chacun des ministères/agences qui le finance. Les plus connus sont ceux du département de l'énergie et de la défense ( Département de l'énergie (équivalent du CEA)et le Ministère de la Défense).

Les ministères qui participent à cette activité de R&D à travers des petites entreprises (SBIR/STTR) sont :

..Department of Agriculture
Department of Commerce
Department of Defense
Department of Education
Department of Energy
Department of Health and Human Services
Department of Transportation
Environmental Protection Agency
National Aeronautics and Space Administration
National Science Foundation
..


En particulier, les conditions de définitions pour les contrat SBIRs sont les suivants:

..SBIR Qualifications:

Small businesses must meet certain eligibility criteria to participate in the SBIR program.

American-owned and independently operated
For-profit
Principal researcher employed by business
Company size limited to 500 employees ..


Le programme se résume en trois phases:

..Three-Phase Program:

Following submission of proposals, agencies make SBIR awards based on small business qualification, degree of innovation, technical merit, and future market potential. Small businesses that receive awards or grants then begin a three-phase program.

Phase I is the startup phase. Awards of up to $100,000 for approximately 6 months support exploration of the technical merit or feasibility of an idea or technology.

Phase II awards of up to $750,000, for as many as 2 years, expand Phase I results. During this time, the R&D work is performed and the developer evaluates commercialization potential. Only Phase I award winners are considered for Phase II.

Phase III is the period during which Phase II innovation moves from the laboratory into the marketplace. No SBIR funds support this phase. The small business must find funding in the private sector or other non-SBIR federal agency funding. ..


Les programmes de transfert de technologies (STTR), qui sont utilisés par moins d'administrations, utilisent à peu près les mêmes critères que ceux du SBIR.

Quelques petites remarques liées à ces programmes. La majorité des "fausses" bonnes idées qui ont passé le test de sélection avec les ministères/agences concernés sont en général éliminées à partir de la deuxième phase (car il n'y a en général pas de réel plan de commercialisation ou d'interet d'une autre agence). Il est à noter que la dernière phase ne requiert pas de financement de l'Etat fédéral. Chaque année il y a des dates limites de depots de dossier afin soumettre des propositions de projets. Ces dates semblent être différentes d'une agence à l'autre. Certains contrats SBIR sont aussi soumis à des systèmes de discrimination positive. Dans l'évaluation des propositions, il y a une prise en compte de l'appartenance du chef d'entreprise à des catégories telles que l'appartenance raciale, sexuelle ou le fait d'être un ancien des services militaires. Il est à noter qu'une majorité de ces entreprises est en général créée par des anciens professeurs d'universités ou chercheurs. Il faut savoir que si certaines entreprises reçoivent souvent ce genre de contrat, c'est aussi en particulier, parce qu'elles renouvellent régulièrement leurs équipes, assurant ainsi leur capacité à être au fait de nouvelles recherches prometteuses.

Pour ce qui est de la vérification de la bonne utilisation des fonds au cours de chacune des phases du SBIR ou du STTR, chaque agence fédérale utilise ses propres moyens, très puissants, que sont les administrations des inspecteurs généraux ("Office of the Inspector General"). Chaque agence fédérale dispose d'un inspecteur général et des moyens pour détecter et enquêter sur tout problème lié a l'utilisation des fonds de ces administrations, en particulier ceux du SBIR au sein de ces agences. Au niveau de l'entreprise, le budget de la proposition doit, en général, avoir une catégorie "voyages" de façon à permettre aux chercheurs de présenter leurs résultats à l'agence pendant la duree du contrat.

Un fait intéressant est la comptabilisation publique des statistiques des contrats qui se trouve sur le site de la SBA.

Il y a d'autres mécanismes de financements tel que l'ATP (Advanced Technology Program ) du NIST (National Institute of Standards and Technology) mais celui-ci n'est pas réservé uniquement aux toutes petites entreprises. Ce programme sert de pont entre recherche fondamentale et application industrielle. Enfin, il existe aussi des mécanismes de financement de recherches dans certains états, qui sont trop petits pour intéresser de grandes entreprises tels que les ATP au Texas .

Je n'ai pas mentionné la DARPA car elle fait partie du département de la défense (DoD). La Navale (U.S. Navy) ou l'armée de terre (U.S. Army) ont des programmes SBIR particuliers à leur domaine de compétences. Le fonctionnement de la DARPA est plus spécifique et demanderait un chapitre entier.

Eye Tracking Machines and Autism: A Business Case ? Part deux


This is interesting: Andrew Meltzoff and Rechele Brooks at University of Washington came up with new results on how kids learn how to talk. In this new study they show that...
"... babies who simultaneously followed the eyes of the researcher and made vocalizations when they were 10 or 11 months old understood an average of 337 words at 18 months old while the other babies understood an average of 195 words.

"The sounds they are making are very simple, but some children are looking and making these sounds spontaneously," said Brooks. "They are creating a social interaction or a link. There seems to be something special about the vocalization when they are looking at the toy. They are using social information to pick out what we are focusing on. They can't vocalize words, but they are carefully watching where we are looking. We think they are using social information and getting a boost in figuring out the social and language world together."

"Although the babies are too young to talk to us, those individual babies who are most attuned to our eye gaze are the same babies who pick up language faster more than half a year later," said Meltzoff. "This is a fascinating connection between the social and linguistic world and suggests that language acquisition is supported by preverbal social interaction.

"To do this a baby has an important social regularity to master: follow mom's eyes and you can discover what she is talking about. This study shows that babies first master this social information between 10 and 11 months of age, and it may be no coincidence that there is a language explosion soon thereafter. It is as if babies have broken the code of what mom is talking about and words begin pouring out of the baby to the parents' delight," he said.

The UW researchers are following the same group of babies to see if gaze-following and vocalization at an early age predict increased language understanding and use at 24 and 30 months of age...
"

In the study of autism, scientists generally believe there is a dysfunction of the eye tracking of faces. This is all the more important since, for babies, watching faces and gestures is the elementary process that enables learning as shown in another paper by Rao and Meltzhoff. In short, researchers think that the deficiency in face tracking is responsible for an inability to learn much about social cues and even language yielding to diagnosis of Austim or PSOD.

Yet another interesting finding by Aysenil Belger and Gabriel Dichter reveals that the processing of faces in the brain of autistic kids is similar to that of normals kids. As it turns out, Kevin Pelphrey shows that gaze following deficiency is the issue, not the processing of face information, as I was initially thinking [second part of the SCM talk]. During his investigation, Pelphrey shows where gaze processing is localized in the brain:

using event-related functional MRI (fMRI), we show that in autism, brain regions involved in gaze processing, including the superior temporal sulcus (STS) region, are not sensitive to intentions conveyed by observed gaze shifts.... We conclude that lack of modulation of the STS region by gaze shifts that convey different intentions contributes to the eye gaze processing deficits associated with autism.


It seems there is a increasingly better business case of eye tracking software everyday.

Friday, November 11, 2005

Wednesday, November 09, 2005

Wiping NF1 ?

It is facinating, in a matter of four days, one hears about two drugs that could have a significant impact on neurofibromatosis (NF-1.) First there is this announcement that fumagillin could be used to dramatically shrink tumors associated with the the NF1 condition. And second, that Lovastatin, a drug used for reducing the amount of cholesterol and certain fatty substances in the blood could be used to bring back some fo the major cognitive impairements of people affected by NF1. There are other clinical trials for other drugs. This is a stunning development for what is considered a orphan disease.

Tuesday, November 01, 2005

Visualizing complexity


Through fluctuat.net, I found the following web site that displays many different solutions to displaying the complexity of networks. I am trying to use Google map to map the current bird flu and how it propagates and I am not sure how certain data should be displayed. This should help.

Printfriendly