Epitome Creator: Silverlight for Science

Coordinator
Nov 14, 2008 at 1:04 AM

Greetings,


We've release a new biology tool (and web toy). It's "Create Epitome". The web version is http://atom.research.microsoft.com/EpitomeCreator/It can also be run as an off-line web page (via Silverlight) and a command-line app (via .NET).

 

Along with using it to create HIV vaccines, you can also play with it as a little web toy. If you paste in

 

Twinkle, twinkle, little star; How I wonder what you are.

 

You can watch it build up, one step at a time:

 

Method

AminoAcidLength

numComponents

coverage

Vaccine

Greedy

7

1

0.3

TWINKLE

Greedy

7

1

0.3

TWINKLE

Greedy

10

2

0.4

TWINKLE,HOW

Greedy

13

2

0.5

WHATWINKLE,HOW

Greedy

12

1

0.5

HOWHATWINKLE

Greedy

15

2

0.6

HOWHATWINKLE,YOU

Greedy

18

3

0.7

HOWHATWINKLE,YOU,ARE

Greedy

20

3

0.8

HOWHATWINKLE,YOU,STARE

Greedy

26

4

0.9

HOWHATWINKLE,YOU,STARE,LITTLE

Greedy

32

5

1

HOWHATWINKLE,YOU,STARE,LITTLE,WONDER

 

Silverlight is great for this kind of tool because

·         The port from .NET was easy.

·         Processing, which could be long, is on the user's machine not the web server

·         No user data need be transferred to our servers

·         Runs on Windows, Mac, or (soon) Unix
·         Users get rich interaction (including an animated plot) with web-like simplicity.

 

 The .NET command-line version uses the Microsoft Parallel Extensions Library to run muti-core, leading to faster results.

 

 

The code is open source and available at:

http://www.codeplex.com/MSCompBio/Wiki/View.aspx?title=Create%20Epitome

 

Some source code features of possible interest:

·         Builds both Silverlight and .NET command-line versions from the same C# code in the same Visual Studio solution.

·         Includes installer that installs both versions, including setting up the Silverlight page to run off-line.

·         The Silverlight version resizes the Silverlight control on the web page.

·         The Silverlight version shows results interactively as they are produced. It allows the run to be paused and continued. It plots the performance of the algorithm.

·         The Silverlight control appears in an HTML table and is visible to both IE and Firefox.

·         The code uses the HashSet data structure. For Silverlight, where HashSet is not available automatically, a mini version is provided.

 

-          Carl

 

Carl Kadie
http://research.microsoft.com/~carlk