<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Learning &#8211; Robohub</title>
	<atom:link href="https://robohub.org/tag/learning/feed/" rel="self" type="application/rss+xml" />
	<link>https://robohub.org</link>
	<description>Connecting the robotics community to the world</description>
	<lastBuildDate>Mon, 05 Oct 2026 00:39:46 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>
	<item>
		<title>Noisy imitation speeds up group learning</title>
		<link>https://robohub.org/noisy-imitation-speeds-up-group-learning/</link>
		
		<dc:creator><![CDATA[Alan Winfield]]></dc:creator>
		<pubDate>Tue, 03 Dec 2013 15:05:00 +0000</pubDate>
				<category><![CDATA[opinions]]></category>
		<category><![CDATA[Alan Winfield]]></category>
		<category><![CDATA[EU perspectives]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[research]]></category>
		<guid isPermaLink="false">http://robohub.org/?guid=e4351b7e31e8ea308f06d357066f4b3f</guid>

					<description><![CDATA[Broadly speaking there are two kinds of learning: individual learning and social learning. Individual learning means learning something entirely on your own, without reference to anyone else who might have learned the same thing before. The flip side o...]]></description>
										<content:encoded><![CDATA[<p>Broadly speaking there are two kinds of learning: individual learning and social learning. Individual learning means learning something entirely on your own, without reference to anyone else who might have learned the same thing before. The flip side of individual learning is social learning, which means learning from someone else. We humans are pretty good at both individual and social learning although we very rarely have to truly work something out from first principles. <span id="more-23289"></span><img decoding="async" class="alignleft size-medium wp-image-23631" alt="view_finder_two_robots_binocular" src="http://robohub.org/wp-content/uploads/2013/11/view_finder_two_robots_binocular-300x151.jpg" width="300" height="151" srcset="https://robohub.org/wp-content/uploads/2013/11/view_finder_two_robots_binocular-300x151.jpg 300w, https://robohub.org/wp-content/uploads/2013/11/view_finder_two_robots_binocular-500x252.jpg 500w, https://robohub.org/wp-content/uploads/2013/11/view_finder_two_robots_binocular.jpg 848w" sizes="(max-width: 300px) 100vw, 300px" />Most of what we learn, we learn from teachers, parents, grandparents and countless others. We learn everything from how to make chicken soup to flying an aeroplane from watching others who already know the recipe (or wrote it down), or have mastered the skill. For modern humans I reckon it’s pretty hard to think of anything we have truly learned, on our own; maybe learning to control our own bodies as babies, leading to crawling and walking are candidates for individual learning (although as babies we are surrounded by others who already know how to walk – would we walk at all if everyone else got around on all fours?). Learning to ride a bicycle is perhaps also one of those things no-one can really teach you – although it would be interesting to compare someone who has never seen a bicycle, or anyone riding one, in their lives with those (most of us) who see others riding bicycles long before climbing on one ourselves.</p>
<p>In robotics we are very interested in both kinds of learning, and methods for programming robots that can learn are well known. A method for individual learning is called <a href="http://en.wikipedia.org/wiki/Reinforcement_learning" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">reinforcement learning</a> (RL). It’s a laborious process in which the robot tries out lots and lots of actions and gets feedback on whether each action helps or hinders the robot in getting closer to its goal – actions that help/hinder are re/de-inforced so the robot is more/less likely to try them again; it’s a bit like shouting “warm, hot, cold, colder…” in a hide-and-seek game. It’s fair to say that RL in robotics is pretty slow; robots are not good individual learners, but that&#8217;s because, in general, they have no prior knowledge. As a fair comparison think of how long it would take you to learn how to make fire from first principles if you had no idea that getting something hot may, if you have the right materials and are persistent, create fire, or that rubbing things together can make them hot. Roboticists are also very interested in developing robots that can learn socially, especially by imitation. Robots that you can program by showing them what to do (called <a href="http://en.wikipedia.org/wiki/Programming_by_demonstration" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">programming by demonstration</a>) clearly have a big advantage over robots that have to be explicitly programmed for each new skill.</p>
<p>Within the <a href="https://sites.google.com/site/artcultproject/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">artificial culture project</a> PhD student (now Dr) Mehmet Erbas developed a new way of combining social learning by imitation and individual reinforcement learning, and the paper setting out the method together with results from simulation and real robots has been published in the journal <a href="http://adb.sagepub.com/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Adaptive Behavior</a>. Let me explain the experiments with real robots, and what we have learned from them.</p>
<div class="separator" style="clear: both; text-align: center;"><a style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;" href="http://3.bp.blogspot.com/-KReF2JpF_c0/UpRo9mS519I/AAAAAAAABG0/YXt-opNToHM/s1600/Soc_learning_epucks.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img fetchpriority="high" decoding="async" alt="" src="http://3.bp.blogspot.com/-KReF2JpF_c0/UpRo9mS519I/AAAAAAAABG0/YXt-opNToHM/s320/Soc_learning_epucks.jpg" width="320" height="260" border="0" /></a></div>
<p>Here&#8217;s our experiment. We have two robots &#8211; called <a href="http://alanwinfield.blogspot.co.uk/search/label/e-puck" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">e-pucks</a>. The inset shows a closeup. Each robot has its own compartment and must &#8211; using individual (reinforcement) learning &#8211; learn how to navigate from the top right hand corner, to the bottom left hand corner of its compartment. Learning this way is slow, taking hours. But in this experiment the robots also have the ability to learn socially, by watching each other. Every so often one of the robots will stop its individual learning and drive itself out of its own compartment, to the small opening at the bottom left of the other compartment. There it will stop and simply watch the other robot while it is learning, for a few minutes. Using a movement imitation algorithm the watching robot will (socially) learn a fragment of what the other robot is doing, then combine this knowledge into what it is individually learning. The robot then runs back to its own compartment and resumes its individual learning. We call the combination of social and individual learning &#8216;imitation-enhanced learning&#8217;.</p>
<p>In order to test the effectiveness of our new imitation-enhanced learning algorithm we first run the experiment with the imitation turned off, so the robots learn only individually. This gives us a baseline for comparison. We then run two experiments with imitation-enhanced learning. In the first we wait until one robot has completed its individual learning, so it is an &#8216;expert&#8217;; the other robot then learns &#8211; using its combination of individual learning and social learning from the expert. Not surprisingly, learning this way is faster.</p>
<div class="separator" style="clear: both; text-align: center;"><a style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;" href="http://4.bp.blogspot.com/-D8iSiP7Vp4c/UpRxVkCvVzI/AAAAAAAABHE/DAUW2b7exKo/s1600/graph1.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img decoding="async" alt="" src="http://4.bp.blogspot.com/-D8iSiP7Vp4c/UpRxVkCvVzI/AAAAAAAABHE/DAUW2b7exKo/s320/graph1.jpg" width="320" height="260" border="0" /></a></div>
<p>This graph shows individual learning only as the solid black line, and imitation-enhanced learning from an expert as the dashed line. In both cases learning is more or less complete when the graphs transition from vertical to horizontal. We see that individual learning takes around 360 minutes (6 hours). With the benefit of an expert to watch, learning time drops to around 60 minutes.</p>
<p>The second experiment is even more interesting. Here we start the two robots at the same time, so that both are equally inexpert. Now you might think it wouldn&#8217;t help at all, but remarkably each robot learns faster when it can observe, from time to time, the other <i>inexpert </i>robot, than when learning entirely on its own. As the graph below shows, the speedup isn&#8217;t as dramatic &#8211; but imitation enhanced learning is still faster.</p>
<div class="separator" style="clear: both; text-align: center;"><a style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" href="http://3.bp.blogspot.com/-7pGGkeZa4DM/UpRxVuQr3II/AAAAAAAABHI/O4e1Yme3P9w/s1600/graph2.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img decoding="async" alt="" src="http://3.bp.blogspot.com/-7pGGkeZa4DM/UpRxVuQr3II/AAAAAAAABHI/O4e1Yme3P9w/s320/graph2.jpg" width="320" height="259" border="0" /></a></div>
<p>Think of it this way. It&#8217;s like two novice cooks, neither of whom knows how to make chicken soup. Each is trying to figure it out by trial and error but, from time to time, they can watch each other. Even though it&#8217;s pretty likely that each will copy some things that lead to worse chicken soup, on average and over time, each hapless cook will learn how to make chicken soup a bit faster than if they were learning entirely alone.</p>
<p>In the paper we analyse what&#8217;s going on when one robot imitates part of the semi-learned sequence of moves by the other. And here we see something completely unexpected. Because the robots imitate each other imperfectly &#8211; when one robot watches another and then tries to copy what it saw, the copy will not be perfect &#8211; from time to time, one inexpert robot will miscopy the other inexpert robot and the miscopy, by chance, helps it to learn. To use the chicken soup analogy: it&#8217;s as if you are spying on the other cook &#8211; try to copy what they&#8217;re doing but get it wrong and, by accident, end up with better chicken soup.</p>
<p>This is deeply interesting because it suggests that when we learn in groups, making mistakes &#8211; noisy social learning &#8211; can actually speed up learning for each individual and for the group as a whole.</p>
<p><strong>Full Reference</strong><br />
Mehmet D Erbas, Alan FT Winfield, and Larry Bull (2013), Embodied imitation-enhanced reinforcement learning in multi-agent systems, Adaptive Behavior. <a href="http://adb.sagepub.com/content/early/2013/08/29/1059712313500503.abstract" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Published online 29 August 2013</a>. <a href="https://drive.google.com/file/d/0BwjY2P_eeOeia01WTDlKMkw2cmc/edit?usp=sharing" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Download pdf (final draft)</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Video: Quadrocopter learns from its mistakes, perfects air racing</title>
		<link>https://robohub.org/video-quadrocopter-learns-from-its-mistakes-perfects-air-racing/</link>
		
		<dc:creator><![CDATA[Markus Waibel]]></dc:creator>
		<pubDate>Thu, 08 Nov 2012 10:35:20 +0000</pubDate>
				<category><![CDATA[articles]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[Algorithm]]></category>
		<category><![CDATA[ETH Zurich]]></category>
		<category><![CDATA[Flying Machine Arena]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[quadrocopter]]></category>
		<category><![CDATA[Raffaello D'Andrea]]></category>
		<category><![CDATA[Swiss Robots]]></category>
		<category><![CDATA[Switzerland]]></category>
		<category><![CDATA[UAVs & drones]]></category>
		<guid isPermaLink="false">http://robohub.org/?p=5227</guid>

					<description><![CDATA[Manual programming of robots only gets you so far. And, as you can see in the video, for quadrocopters that&#8217;s not very far at all (see the &#8220;Without Learning&#8221; part starting at 1:30): On its first try to navigate the obstacle course, the flying robot attempts to navigate based on a pre-computed flight path. The [&#8230;]]]></description>
										<content:encoded><![CDATA[<style type="text/css">
#fstxfloat p {
  margin-top: 1em;
  margin-bottom: 1em;
}
</style>
<p style="text-align: center;"><a href="http://robohub.org/wp-content/uploads/2012/11/Robohub_Air_Racing_Robot.png" data-wpel-link="internal"><img decoding="async" class=" wp-image-5255 aligncenter" title="Robohub_Air_Racing_Robot" src="http://robohub.org/wp-content/uploads/2012/11/Robohub_Air_Racing_Robot.png" alt="First person view of the quadrocopter racing through a pylon slalom course." width="874" height="489" srcset="https://robohub.org/wp-content/uploads/2012/11/Robohub_Air_Racing_Robot.png 960w, https://robohub.org/wp-content/uploads/2012/11/Robohub_Air_Racing_Robot-300x167.png 300w, https://robohub.org/wp-content/uploads/2012/11/Robohub_Air_Racing_Robot-500x279.png 500w" sizes="(max-width: 874px) 100vw, 874px" /></a></p>
<p>Manual programming of robots only gets you so far. And, as you can see in the video, for quadrocopters that&#8217;s not very far at all (see the &#8220;Without Learning&#8221; part starting at 1:30):</p>
<p><span id="more-5227"></span></p>
<div class=" "><iframe title="Quadrocopter Slalom Learning" width="500" height="281" src="https://www.youtube-nocookie.com/embed/zHTCsSkmADo?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>
<p></p>
<p>On its first try to navigate the obstacle course, the flying robot attempts to navigate based on a pre-computed flight path. The path is derived using a basic mathematical (&#8220;first principles&#8221;) model. But quadrocopters have complex aerodynamics &#8211; the force produced by the propellers changes depending on the vehicle&#8217;s velocity and orientation, and thus the actual amount of force produced is quite different from what the simple math describes.</p>
<p>What&#8217;s worse, these flying vehicles use soft propellers for safety, which bend differently depending on how much thrust is applied and wear rapidly with use (and even more rapidly when crashing).</p>
<p>Even with continuous feedback on the robot&#8217;s position from the motion capture system, manually programming the robots with a control sequence that takes all these imperfections into account is impractical.</p>
<p>&nbsp;</p>
<p>My colleague <a href="http://www.idsc.ethz.ch/people/staff/schoellig-a" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Angela Schoellig</a> and the <a href="http://www.flyingmachinearena.org" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Flying Machine Arena</a> team here at <a href="http://www.ethz.ch" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ETH Zurich</a> have now developed and implemented algorithms that allow their flying robots to race through an obstacle parcours &#8211; and learn to improve their performance.</p>
<p>Here is how Angela described the process to me:</p>
<blockquote><p>The learning algorithm is applied to a quadrocopter that is guided by an underlying trajectory-following controller. The result of the learning is an adapted input trajectory in terms of desired positions. The algorithm has been equipped with several unique features that are particularly important when pushing vehicles to the limits of their dynamic capabilities and when applying the learning algorithm to increasingly complex systems:</p>
<p>1. We designed an input update rule that explicitly takes actuation and sensor limits into account by solving a constrained convex problem.<br />
2. We developed an identification routine that extracts the model data required by the learning algorithm from a numerical simulation of the vehicle dynamics. That is, the algorithm is applicable to systems for which an analytical model is difficult (or impossible) to derive.<br />
3. We combined model data and experimental data, traditional filtering methods and state-of-the- art optimization techniques to achieve an effective and computationally efficient learning strategy that achieves convergence in less than ten iterations.</p>
</blockquote>
<p>&nbsp;</p>
<p>The result is a robot that learns and improves each time it tries to perform a task.</p>
<p>In this example the robot races through a pylon parcours, calling to mind air races, such as the Red Bull Air Racing Championships or the Reno Air Races &#8211; except that there are no human pilots that spent their life learning to fly &#8211; here it&#8217;s robots doing the learning. And they are efficient, taking less than 10 training sessions to find the optimal steering commands!</p>
<p>Moreover, the learning algorithms are not specific to slalom racing, they can be used to learn other tasks. As Angela points out:</p>
<blockquote><p>Our goal is to enable autonomous systems &#8211; such as the quadrocopter in the video &#8211; to &#8216;learn&#8217; the way humans do: through practice. </p></blockquote>
<p>&nbsp;</p>
<p>The videos below show how learning algorithms can be used for other robotic tasks:</p>
<div class=" "><iframe title="Swing and Learn" width="500" height="281" src="https://www.youtube-nocookie.com/embed/eyM5T960R1Q?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>
<p></p>
<p>&nbsp;</p>
<div class=" "><iframe title="Quadrocopter learns to follow trajectories" width="500" height="281" src="https://www.youtube-nocookie.com/embed/goVuP5TJIUU?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>
<p></p>
<p>&nbsp;</p>
<div class=" "><iframe title="FMA - Triple Adaptive Flips - ICRA2010 submission" width="500" height="281" src="https://www.youtube-nocookie.com/embed/bWExDW9J9sA?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>
<p></p>
<p>&nbsp;</p>
<div class=" "><iframe title="Towards Robotic Calligraphy - New Results" width="500" height="281" src="https://www.youtube-nocookie.com/embed/ON_rPJ-DW1c?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>
<p></p>
<p>&nbsp;</p>
<p>Full disclosure: Angela and the Flying Machine Arena team work in the same lab as I. Also, I&#8217;m working on <a href="http://www.roboearth.org" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">RoboEarth</a>, trying to allow robot learning on a much larger scale.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Making an iCub robot &#8220;clever&#8221;</title>
		<link>https://robohub.org/making-an-icub-robot-clever/</link>
		
		<dc:creator><![CDATA[Mike Hamer]]></dc:creator>
		<pubDate>Tue, 23 Oct 2012 19:22:18 +0000</pubDate>
				<category><![CDATA[articles]]></category>
		<category><![CDATA[EU Project]]></category>
		<category><![CDATA[iCub]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[video]]></category>
		<guid isPermaLink="false">http://robohub.org/?p=4636</guid>

					<description><![CDATA[As part of the IM-CLeVeR project, the IDSIA robotics laboratory recently released a video-overview of their work on the technologies, architectures and algorithms required to give an iCub robot more human-like abilities. This includes the ability to reason about and manipulate its local environment, and in the process, to acquire new skills that can be applied to future problems. [&#8230;]]]></description>
										<content:encoded><![CDATA[<a href="http://robohub.org/wp-content/uploads/2012/10/Robohub_iCub_humanoid_robot.jpg" data-wpel-link="internal"><img decoding="async" class=" wp-image-4660 alignleft" title="Robohub_iCub_humanoid_robot" src="http://robohub.org/wp-content/uploads/2012/10/Robohub_iCub_humanoid_robot-250x300.jpg" alt="" width="198" height="238" srcset="https://robohub.org/wp-content/uploads/2012/10/Robohub_iCub_humanoid_robot-250x300.jpg 250w, https://robohub.org/wp-content/uploads/2012/10/Robohub_iCub_humanoid_robot.jpg 377w" sizes="(max-width: 198px) 100vw, 198px" /></a>
<p>As part of the <a href="http://www.im-clever.eu/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">IM-CLeVeR</a> project, the<a href="http://robotics.idsia.ch/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer"> IDSIA robotics laboratory</a> recently released a video-overview of their work on the technologies, architectures and algorithms required to give an iCub robot more human-like abilities. This includes the ability to reason about and manipulate its local environment, and in the process, to acquire new skills that can be applied to future problems.<span id="more-4636"></span></p>
<p>&nbsp;</p>
<p>The <a href="http://www.icub.org/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">iCub robot</a> is an open-source humanoid platform developed by the Italian Institute of Technology and used by over 20 robotics laboratories worldwide in research areas such as human-robot interaction, computer reasoning, motion planning and &#8220;socially aware robotics&#8221;.</p>
<p>&nbsp;</p>
<p>Some of these we&#8217;ve covered on Robohub before: <a title="From iCub to artist" href="http://robohub.org/from-icub-to-artist/" target="_blank" data-wpel-link="internal">From iCub to artist</a> and <a title="iCub drums and crawls using bio-inspired control" href="http://robohub.org/icub-drums-and-crawls-using-bio-inspired-control/" target="_blank" data-wpel-link="internal">iCub drums and crawls using bio-inspired control</a>.</p>
<p>&nbsp;</p>
<p>The IM-CLeVeR project was launched in 2009 and uses the iCub as a platform to support the goal of:</p>
<blockquote><p>Developing a new methodology for designing robots that can cumulatively learn new  skills through autonomous development based on intrinsic motivations, and reuse such skills for accomplishing multiple, complex, and externally-assigned tasks.</p></blockquote>
<p>In the following 13 minute video, researchers from the IDSIA laboratory, an IM-CLeVeR project-partner, describe motivations, challenges and successes in fields such as computer vision, motion planning, &#8220;reflex&#8221; behaviors and reinforcement learning.</p>
<p>&nbsp;</p>
<div class=" "><iframe title="Toward Intelligent Humanoids | iCub 2012" src="https://player.vimeo.com/video/51011081?dnt=1&amp;app_id=122963" width="500" height="281" frameborder="0" allow="autoplay; fullscreen; picture-in-picture; clipboard-write"></iframe></div>
<p></p>
<p>&nbsp;</p>
<p>For more information on the project, consult the laboratory&#8217;s <a href="http://robotics.idsia.ch/im-clever/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">other videos and technical releases</a>, or visit the <a href="http://www.im-clever.eu/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">IM-CLeVeR homepage</a>.</p>
<p>&nbsp;</p>
<p>A list of iCub related projects can be found <a href="http://www.icub.org/projects.php" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">here</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 

Served from: robohub.org @ 2026-10-18 06:49:09 by W3 Total Cache
-->