Cookbook - "pause" function

Case number:845813-986021
Topic:Game: Tools
Opened by:Brick
Status:Open
Type:Suggestion
Opened on:Saturday, April 25, 2009 - 02:56
Last modified:Tuesday, April 14, 2020 - 23:22

It would be nice if there was a way to pause the execution of the recipe to manually interact with the protein.

Sometimes there will be a section that is responding well to the current programmed action, and it would be nice to be able to pause the script, do a few manual processes, and then allow the script to take up from where it was paused. This is particularly useful during long local wiggle sections. The current 25 iterations maximum (what is an "iteration" in this context?) will sometime have the script move on while the section being wiggled is still producing point gains.

(Sat, 04/25/2009 - 02:56  |  28 comments)


Joined: 11/10/2007
Groups: Window Group

Assigning.

Joined: 09/19/2011
Groups: Beta Folders

A pause button on client is desperately needed. And, as someone else said, the holding of the pause while computer is off would also be good.

My cpu usage is off the hook at times and I need to stop the client for other non foldit functions at times. It seems so wasteful to have to start over with some recipes.

It's a matter of efficiency with large puzzles.

mat747's picture
User offline. Last seen 26 weeks 6 days ago. Offline
Joined: 10/15/2008
Groups: Void Crushers

Still waiting ?

Joined: 09/18/2009
Groups: SETI.Germany

This function will also help to manually create or delete bands while a script is running, as changing them while the script runs can lead to abnormal behaviour.

Joined: 01/19/2011

Bump. This is a useful one...that hasn't been implemented.
Also, i think it would be useful for the pauses to carry over if you turn your computer off.

Joined: 05/09/2008
Groups: None

changing assignment, hopefully this will get added soon.
Thanks for the reminder!

Joined: 06/17/2010
Status: Open » Closed

Duplicate to: http://fold.it/portal/node/990217

B_2's picture
User offline. Last seen 5 years 26 weeks ago. Offline
Joined: 11/29/2008
Groups: None
Status: Closed » Open

This is not a duplicate of 990217 - it predates it by a very long time.

Joined: 06/17/2010
B_2's picture
User offline. Last seen 5 years 26 weeks ago. Offline
Joined: 11/29/2008
Groups: None
Status: Closed » Open

This request is still pending, and it's one of the original old requests for this.

Please leave it open!

NOTE: and the CAPTCHA issue is still not fixed

B_2's picture
User offline. Last seen 5 years 26 weeks ago. Offline
Joined: 11/29/2008
Groups: None

The ability to Pause Scripts is not a cookbook problem, it's a script and client functionality issue.

Please don't try to consolidate it into cookbook management.

Joined: 06/17/2010
Joined: 05/09/2008
Groups: None

we're try to see if this is easy to implement

Joined: 05/09/2008
Groups: None
Status: Open » Open

This is on our list of things to fix, but we won't be able to get to this for a couple weeks because it's not a trivial fix.

Joined: 04/15/2012
Groups: Beta Folders

Is this still going to happen?

jeff101's picture
User offline. Last seen 33 min ago. Offline
Joined: 04/20/2012
Groups: Go Science

Sounds like Control-C on the Apple II. You could stop a program, print variables, change variables, list lines of code, and when you were ready, continue the program from where it left off. Very useful.

Matlab has a similar feature called keyboard mode. See http://fold.it/portal/node/989751#comment-17611 for more details.

Being able to pause Foldit recipes would be very helpful. Then, if you're running something like GAB that learns as it runs, when you see a big improvement to your structure, you could pause and share the latest structure with yourself or your group, then jump back into GAB from where you left off.

Joined: 08/24/2011

bump for the win

Joined: 11/18/2012
Groups: Go Science

This would be great for the game. I hope that this is on the horizon. . .

Joined: 09/24/2012
Groups: Go Science

see intermediate solution on:

http://fold.it/portal/recipe/45154

Joined: 09/24/2012
Groups: Go Science

It is implemented in ebola Rebuild here:
http://fold.it/portal/recipe/45692

You can stop the recipe, do something else (for example share your solution or some hand made improvement) then start again where it stopped.

Joined: 09/24/2012
Groups: Go Science
Status: Open » Open

62 votes for.
Bump.

More and more big puzzles and long recipes.
Long overnight recipes (e.g. Ebola or Acid Tweaker 2.4.5) have a strategy that make them less efficient if restarted.

Being able to share a solution without being obliged to stop recipe or open a duplicate client/track is a must.

(other possible solution would be to be able to share or save a solution when recipe is still running. See:
http://fold.it/portal/node/997959)

Joined: 09/24/2012
Groups: Go Science

Share and save solutions is now implemented.

That makes possible to then share a solution (using another track, also using the quicksaves or duplicating the track) without stopping the recipe.

It makes possible to open in another track, hand fold, saving to the name the running recipe can recognize. Equivalent to (and even better than) a "pause" actually.

Closing this discussion?

Enzyme's picture
User offline. Last seen 50 years 44 weeks ago. Offline
Joined: 07/10/2008
Groups: None

bump #69. (does a jig)

Joined: 09/24/2012
Groups: Go Science
Status: Open » Closed

See my comment #22

I think the problem is solved now. A real "pause" function is not needed anymore.
If somebody is not satisfied with this, please reopen and "bump".

Brick's picture
User offline. Last seen 1 year 13 weeks ago. Offline
Joined: 07/15/2008
Groups: Beta Folders
Status: Closed » Open

Re-opening. Your solution doesn't address the issue, unless the quick-save (or whatever you call it) has the ability to continue the execution of the running recipe where it left off.

Joined: 09/24/2012
Groups: Go Science

Indeed,

the following Lua commands don't stop the recipe:

save.SaveSolution(string) Save a solution
save.LoadSolutionByName(string) Load the highest scoring solution by name

In the supplementary material from the latest Foldit paper, isaksson explained that he wrote recipes using these tools: "In my own and others scripts I have inserted some additional code that stores the solution for each round (a sequence of the structure). Before the script start iterating the sequence again, it will upload the best saved solution, which could be from another script. By this approach I can have many different scripts/clients running at the same time, and the best script contributor will always be picked up by the other clients to take the overall result to the next level."

Example with 2 tracks on the same computer, same puzzle:
Track A and track B running RecipeA and RecipeB both with sometimes a "Save" command
For i= 1, 1000 do
ActionFromRecipeA() -- or ActionfromRecipeB()
save.SaveSolution(Temp)
save.LoadSolutionByName(Temp) -- it will take the best scoring "temp" solution and continue running
End

Now if you want, you stop RecipeB, you hand fold and you save as "Temp".
RecipeA will take this Temp (only if its score is > current score)

With these Lua tools, you can do anything, like obliging the recipes to take over a "Hand" save. I'm currently testing it on Jet and Bwpi and it works (the only problem being to limit the number of saves to your hard disk). I'll share the new versions when they will be ok.

jeff101's picture
User offline. Last seen 33 min ago. Offline
Joined: 04/20/2012
Groups: Go Science

That Supplementary Material section is really useful.
I thought I had read it all before, but some of it
seems new to me. Thanks for sharing it, Bruno.

donuts554's picture
User offline. Last seen 11 hours 54 min ago. Offline
Joined: 06/20/2019
Groups: Go Science

I think this feedback is a very distinctive idea.

Having a pause button to modify the protein will enable more diversity in the puzzle designs. Instead of having let the recipe go all the way forward into a driven outcome, players can conduct experiments, like "What happens if I move it this way in the middle of the recipe?" and so forth. This will enable many outcomes in a recipe.

Also some players are very lazy and do not want to make a whole new recipe. The pause button also addresses that issue as well. There are many types of Foldit players and we much be able to take advantage of all of their distinctions conveniently and put it into a good viable usage, and the pause button is a convenient way to enable more diversity in players who do not like to code, do not want to code, and are more creative. I am one of those types of people, and I think that players should not be forced to code. (This is just like forcing people to speak a different language, for more details please send me a reply or PM ASAP.)

Also, pausing a recipe is realistic. Since Foldit players are creative, we should not let them follow the traditional ways of recipes all the time. Some players do not know why we should follow a certain process, and want to think outside the box .

Pausing recipes is like making a new recipe without having to code, and is like making a new recipe in of itself.


Here is an analogy:

Let's say you have a Magic Experienced Cook in a kitchen. He/she is especially experienced at cooking soups, but he/she is forgetful, so she has to look at a recipe notecard in order to cook his/her soup.

One day, he/she encounters a new recipe that appears useful and wants to try it out. While in the middle of the recipe, after sprinkling the salt into the pot of soup, he/she tastes the soup but realizes it is not salty enough like other soups she had cooked before. So, she stops looking at the recipe notecard and adds half a teaspoon more salt to the soup.

He/she then follows the rest of the recipe and then finds out that the half teaspoon of salt was going to be added anyway, after stirring it for 1 minute and after 2 tablespoons of sugar was added. The cook does not freak out, and since the cook is also a Magic cook, he/she can simply undo to before she added the salt herself.


The point of this analogy is to show that the pause button will make protein folding more realistic. We are not just executing recipes in a restricted sequence like proteins. We are humans, we are Magic Experienced Cooks, and we like to tinker, and examine, and pause, and reflect.

Another point is that even if you make a mistake when you pause, you can always undo. Pausing also acts as checkpoints for when things do not go the right way, and can outline which parts of the recipe a developer needs to modify.

The addition of the pause button will be very helpful. It will enable more diversity, and making folding proteins more realistic, and have Foldit players be more comfortable without being forced to code.

Bruno says "With these Lua tools, you can do anything, like obliging the recipes to take over a "Hand" save". But not everyone has to know Lua. Lua is a tedious thing to learn, and when making a recipe, you have to start from scratch. This is Protein Folding, not Lua Learning!

People should not be forced to do things that they can do without.
People should not be forced to do things one way, if there is an alternate solution that is just as good and resolves the same problem. That is how many scientists and mathematicians and peacemakers have found revolutionizing discoveries and done very distinctive things.

Attention Developers: This pause button will need to be fashioned so that it does not crash and stops immediately as soon as it is clicked. The first time. It will need to be tested first, in devprev possibly. A better way at resolving problems is preventing them.

Sitemap

Developed by: UW Center for Game Science, UW Institute for Protein Design, Northeastern University, Vanderbilt University Meiler Lab, UC Davis
Supported by: DARPA, NSF, NIH, HHMI, Amazon, Microsoft, Adobe, RosettaCommons