Answers.Body: <p>You would not believe how difficult this task is, assuming you want a humanoid robot to tie laces with humanoid hands. It’s possible of course but compared to what the current state of the art in machine learning is, this task is very very complex because it’s a physical system with unknown variables (Eg. coefficient of friction on laces), physical limitations (Eg. dexterity of robotic hands), and occluded vision (Eg. hand in front of laces) to name a couple of the issues one faces not to mention robots are expensive but I digress. </p>
  
  <p>Robots can perform amazing preprogrammed sequences but if you wanted to have a robot to be able to tie any shoe in any situation, machine learning is the right approach. </p>
  
  <p>Training data should include all of the things that humans use when they approach this problem: </p>
  
  <ul>
  <li><p>proprioception (the location of joints in space aka where are your fingers)</p>
  
  <ul>
  <li><p>a sense of touch, a robot would need a quite a few touch sensors</p></li>
  <li><p>vision, although not actually necessary (because blind humans are capable of learning to do this task), it may speed up learning</p></li>
  </ul></li>
  </ul>
  
  <p>Using reinforcement learning as a framework, one needs to be able to give the RL agent a signal that it is closer to tying the lace. This could be done in a few ways and it’s unclear what would be the best. </p>
  
  <p>One method would be to train a separate model using supervised learning and pictures of shoes laced up to look at the current state of the bow (or lack thereof) and report if it looks like a tight bow. This method requires a whole other network but it may be the most versatile in the end although the RL agent may just learn how to place laces so it looks like a tight bow. </p>
  
  <p>Although simple for humans, this is an interesting problem and thinking about how it could be implemented helps one understand how to apply ML in other areas. </p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-12-31T17:05:23.950Z
Answers.LastActivityDate: 2018-01-05T00:57:14.577Z
Answers.LastEditDate: 2018-01-05T00:57:14.577Z
Answers.UserDisplayName: Jaden Travnik
Body: <p>Is it possible with any of machine learning methods to train machine to tie shoe lace? If possible how data should be interpreted for the training? 
  If we are using reinforcement learning, how will it learn to reach the best rewards?</p>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2018-01-02T22:44:24.203Z
Comments.Text: Great question.  Very smart people are thinking about knots! 
  https://en.wikipedia.org/wiki/Conway_notation_(knot_theory)
Comments.UserDisplayName: DukeZhou
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2018-01-05T20:43:40.810Z
Comments.Text: @DuttaA it's a good point for certain questions, but what if this is just a high-level, theoretical question from a curious mind?
Comments.UserDisplayName: DukeZhou
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2018-01-07T21:07:18.883Z
Comments.Text: @DuttaA :)  One think I love about Conway's notation is that he uses it to teach children at math camps.  Apparently, there are a fair few kids who are interested in knots, and the field is surprisingly complex.  But as "theorics" are on topic here, I do quite like this question!
Comments.UserDisplayName: DukeZhou
Tags: <machine-learning><reinforcement-learning>
Title: Can we teach machine to tie shoe lace?
UserDisplayName: Karan Nadagoudar
ThreadText: # Can we teach machine to tie shoe lace?
  
  (Asked by: username_0 on 2017-12-31)
  
  Is it possible with any of machine learning methods to train machine to tie shoe lace? If possible how data should be interpreted for the training?
  If we are using reinforcement learning, how will it learn to reach the best rewards?
  
  **Tags:** machine-learning, reinforcement-learning
  
  > **Comments:**
  > **username_1**: Great question.  Very smart people are thinking about knots!  https://en.wikipedia.org/wiki/Conway_notation_(knot_theory)  
  > **username_1**: @DuttaA it's a good point for certain questions, but what if this is just a high-level, theoretical question from a curious mind?  
  > **username_1**: @DuttaA :)  One think I love about Conway's notation is that he uses it to teach children at math camps.  Apparently, there are a fair few kids who are interested in knots, and the field is surprisingly complex.  But as "theorics" are on topic here, I do quite like this question!  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2017-12-31. Score: 6 | Accepted answer
  
  You would not believe how difficult this task is, assuming you want a humanoid robot to tie laces with humanoid hands. It’s possible of course but compared to what the current state of the art in machine learning is, this task is very very complex because it’s a physical system with unknown variables (Eg. coefficient of friction on laces), physical limitations (Eg. dexterity of robotic hands), and occluded vision (Eg. hand in front of laces) to name a couple of the issues one faces not to mention robots are expensive but I digress.
  
  Robots can perform amazing preprogrammed sequences but if you wanted to have a robot to be able to tie any shoe in any situation, machine learning is the right approach.
  
  Training data should include all of the things that humans use when they approach this problem:
  
  * proprioception (the location of joints in space aka where are your fingers)
  
    + a sense of touch, a robot would need a quite a few touch sensors
    + vision, although not actually necessary (because blind humans are capable of learning to do this task), it may speed up learning
  
  Using reinforcement learning as a framework, one needs to be able to give the RL agent a signal that it is closer to tying the lace. This could be done in a few ways and it’s unclear what would be the best.
  
  One method would be to train a separate model using supervised learning and pictures of shoes laced up to look at the current state of the bow (or lack thereof) and report if it looks like a tight bow. This method requires a whole other network but it may be the most versatile in the end although the RL agent may just learn how to place laces so it looks like a tight bow.
  
  Although simple for humans, this is an interesting problem and thinking about how it could be implemented helps one understand how to apply ML in other areas.
  
  
  ---
  
  