title: Mechanical Linkage Optimization Algorithm
body: <p>I am trying to find an algorithm that can optimize the lengths of a mechanical linkage, such as a simple four-bar linkage, to provide the longest stride length possible. I am aware of a project that tried to solve a similar problem, however the physical geometry was quite more complex then what I need to do. The details of a stackoverflow question relating to this more advanced geometry was asked here:</p>
  
  <p><a href="https://stackoverflow.com/questions/6573415/evolutionary-algorithm-for-the-theo-jansen-walking-mechanism">Evolutionary Algorithm for the Theo Jansen Walking Mechanism</a></p>
  
  <p>Although actual code would be great, I understand that this specific problem may be slightly beyond the scope of stackoverflow and thus helping me in the right direction would be great. I have spent a significant amount of time trying to find such an algorithm or piece of code that can get me started but I have been unsuccessful. An academic paper outlining a very similar optimization problem can be downloaded from this link:</p>
  
  <p><a href="http://www.designsociety.org/publication/29718/four-bar_linkage_design_using_global_optimization_approach" rel="nofollow noreferrer">http://www.designsociety.org/publication/29718/four-bar_linkage_design_using_global_optimization_approach</a></p>
  
  <p>A four-bar linkage similar to the one that I want to optimize can be seen in this image:</p>
  
  <p><a href="http://bdml.stanford.edu/twiki/pub/Rise/StickyBotIII/MechanicalIcon.png" rel="nofollow noreferrer">http://bdml.stanford.edu/twiki/pub/Rise/StickyBotIII/MechanicalIcon.png</a></p>
  
  <p>To provide a bit more background. I am looking to write a script were one can input the general linkage geometry that they want (general size and location of links and pivots) and then the code will optimize the either the lengths of the individual linkage pieces or the position of the pivots (or both) for the longest stride length.In the image linked to above the stride length would simply be defined as the length that the robotic "paw" moves. I essentially want to optimize for maximum paw movement.</p>
  
  <p>I would optimally like to program the algorithm in python or matlab. Thanks for any help! I love stackoverflow!</p>