1. Simplification is key! 2. Use 2D lattice model in part one. Brute force might just work, avoid complex algorithms, the problem is complex enough. The product of (complex problem)x(complex algorithm) is a killer. If brute force proves to be intractable, try generating a good sample of conformations using Monte Carlo. It is conceptually very simple. If you feel you do not want to program, consider making a physical bead-on-strings model using colored beads of any sort threaded through. Explore various conformations in 2D following the same emergetic rules (qualitatively) as above. Arrive at conclusions about which configurations in space might be energetically most preferable == lowest energy. 3. Assume Asp, Arg, Lys, Glu, Asn, Ser, Gln == hydrophilic. See old hydrophobicity scale (Wiki). 4. You want to generate compact and non-compact states to make sure the compact ones have lower energy. 5. Note that you have an Arg and an ASP in your sequence, and they are not adjacent. Will these want to be next to each other in space? How would you account for it in your energy function? Note that these are not just hydrophilic, there is something else special about them. 6. For the second part, construct analytical, differentiable functions z = z(x, y) [or z(r, phi) if you use cylindrical coordinates ] that produce "realistic looking" folding funnels (e.g. http://wavefunction.fieldofscience.com/2011/06/protein-folding-funnel-and-its.html ) with great many local minima. In fact, you might want to start with 1D funnels y = y(x). Then think which of the "standard" minimization method(s) might work. I highly recommend that you buy "Numerical recipes in C" book -- a bible in this field. Most of these methods are implemented in Mathematica, you can test them out easily. Do not code them yourselves, it will be a waste of time. Visualize results! Start with the simplest, such as Newton or Steepest descent. You want to make a list of 5-10, discuss their pros and cons, and test them out on your funnels. I suggest that you do 6) concurrently with the lattice models, that some people in the group work on 1-5, and the rest on 6. 7. By the end of the day, you need to have a pretty good idea which method(s) might work within a month at most, to allow just enough time to learn how to run AMBER and try to fold a real protein. 8. I will prepare the unfolded protein in the correct input format for AMBER. Your goal is to figure out which method to use, what are the control parameters, and how to run the code. Folding will be through trial and error: you will try several parameters to see which ones might work. So by this point you will need to have a pretty good idea what is computationally reasonable on your supercomputer, and which method(s) might work. There is no point wasting your precious time [and contribute to global warming] by running algorithms that are apriori not good enough to handle the "grand challenge" of computational science. Specifically, several differentiable functional forms E(x_i,y_i,z_i) that define a realistic funnel as a function of atomic coordinates x_i,y_i,z_i i=1,N are available in AMBER. You will not have to worry about coding up anything. You can test out a couple of options for E(x,y,z) [set by igb=5 or igb=8 parameter], and choose the specific minimization option and its parameters. But remember to compare energies of structures only within one or the other energy function, that is do not compare energy value from between igb5 to igb8. You will be visualizing the folding trajectories via VMD, checking your simulation outputs often.