Team:Paris/Tool OSXSoft
From 2009.igem.org
iGEM > Paris > Tool > Mac software
Contents |
Mac Software
Why using a computer support?
this is a good question, but not so tricky. First of, have you imagine to create multiple protocols and rearranging databases on a 3.5" display? that sound a little bit crazy. In order to have a lots of functions, it's more useful to have a computer for this support.
But why don't we use the iPhone like a computer, I mean to plug it on a larger screen and keyboard and let's go ? This part could be possible, and we hope it'll be one day. Just for now our algorithm of merged protocol use some language/tool which doesn't exist yet on iPhone SDK. So we should create/use/transform a Desktop iPhone system and create the language/tool, it's a bit hard at this time... :)
What the software will look like?
The idea is to create a software which looks like easy to use. The user need to have two main tool to use :
- The databases: see them, look in them, clic&drop in it.
- the Protocol: a nice white piece of paper with tools to create the protocol.
Actually the presentation is not the main part of our work, and we are still not sure we're gonna do the software like this.
The idea is also to allow the user to use different screen/window if he wants to. For the case of dual screens, he can use one for the protocol and one for the databases.
Algorithms
the main part on which we are focusing, is the merged protocols algorithm. To well understand the process just look at this picture.
It represent 2 protocols. Each protocol is characterized by balloons of different colors and one continuous red part green line. Each balloon is a step; put in the fridge 20mn, 5mn 5000RPM centrifugation, anything you want it to be. The identical step are represented by the same color.
The red line represent the minimum time for the next step. "after making my cake I have to put it 20mn at 150°C" under this time the step will not be validated. The green represent the maximum time for the next step (still with the cake) "I can put my cake 20m, but I also let it be 40mn at 150°C" upper this time, the step will not be validated.
As you can see we have different variable the two limits for each step : Min and Max, and the special type of the step (color). The goal of this algorithm is to transform the two line in one with the less time or step possible. To identify the time a upper black arrow is represented on the left size of the picture.
So at this point, we can see that the two different protocols begin at time=0, the two first steps are different. We can't start like this "making the cake and go for a walk at the same time". So the algorithm have to try the two fist possibilities :
We will call these two situations A1 and B1 respectively (A for Protocol A, 1 for first up). As you can see all the first step doesn't have a green Max line upper them (because they are the first), which that we can try to make other possibility like A2, A3, B2 or B3. At this time B3 or A3 are possibilities that exist, obviously we can try to make the Protocol A finish it ant start the protocol B, but we didn't gain time or step, but the algorithm have to try all the possibility because some Ax (with high x) can take less time than expected and be very optimum.