Buckets:
| <meta charset="utf-8" /><meta name="hf:doc:metadata" content="{"title":"Types of Robot Motion","local":"types-of-robot-motion","sections":[{"title":"References","local":"references","sections":[],"depth":2}],"depth":1}"> | |
| <link href="/docs/robotics-course/pr_27/en/_app/immutable/assets/0.e3b0c442.css" rel="modulepreload"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/entry/start.6a087fe8.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/chunks/scheduler.4048030c.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/chunks/singletons.6333d672.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/chunks/index.dd3f5310.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/chunks/paths.cd6cdab2.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/entry/app.f7ddcd05.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/chunks/preload-helper.225f7c4d.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/chunks/index.30ed9803.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/nodes/0.56abb042.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/chunks/each.e59479a4.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/nodes/9.5506d09a.js"> | |
| <link rel="modulepreload" href="/docs/robotics-course/pr_27/en/_app/immutable/chunks/MermaidChart.svelte_svelte_type_style_lang.4d36332b.js"><!-- HEAD_svelte-u9bgzb_START --><meta name="hf:doc:metadata" content="{"title":"Types of Robot Motion","local":"types-of-robot-motion","sections":[{"title":"References","local":"references","sections":[],"depth":2}],"depth":1}"><!-- HEAD_svelte-u9bgzb_END --> <p></p> <div class="items-center shrink-0 min-w-[100px] max-sm:min-w-[50px] justify-end ml-auto flex" style="float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"><div class="inline-flex rounded-md max-sm:rounded-sm"><button class="inline-flex items-center gap-1 h-7 max-sm:h-7 px-2 max-sm:px-1.5 text-sm font-medium text-gray-800 border border-r-0 rounded-l-md max-sm:rounded-l-sm border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-live="polite"><span class="inline-flex items-center justify-center rounded-md p-0.5 max-sm:p-0 hover:text-gray-800 dark:hover:text-gray-200"><svg class="sm:size-3.5 size-3" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg></span> <span>Copy page</span></button> <button class="inline-flex items-center justify-center w-6 max-sm:w-5 h-7 max-sm:h-7 disabled:pointer-events-none text-sm text-gray-500 hover:text-gray-700 dark:hover:text-white rounded-r-md max-sm:rounded-r-sm border border-l transition border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-haspopup="menu" aria-expanded="false" aria-label="Open copy menu"><svg class="transition-transform text-gray-400 overflow-visible sm:size-3.5 size-3 rotate-0" width="1em" height="1em" viewBox="0 0 12 7" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L6 6L11 1" stroke="currentColor"></path></svg></button></div> </div> <h1 class="relative group"><a id="types-of-robot-motion" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#types-of-robot-motion"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Types of Robot Motion</span></h1> <img src="https://huggingface.co/robotics-course/images/resolve/main/ch2/ch2-platforms.png" alt="Robotics Platforms" style="width: 70%;"> <p data-svelte-h="svelte-1mgohy5">Different kinds of motions require very different robotic platforms. From left to right, top to bottom: ViperX, SO-100, Boston Dynamics’ Spot, Open-Duck, 1X’s NEO, Boston Dynamics’ Atlas.</p> <p data-svelte-h="svelte-3z85lf">In this section, we’ll organize the space of robot behaviors so you can quickly recognize what kind of problem you’re solving and pick appropriate tools.</p> <p data-svelte-h="svelte-1tu86t7">Most robotics involves creating motion by controlling joints that connect rigid links. The key distinction between different areas of robotics comes down to what the robot is trying to change: the world around it, its own position in the world, or both.</p> <p data-svelte-h="svelte-18iokdp">Most problems fall into one of three categories:</p> <p data-svelte-h="svelte-mte6rx"><strong>Manipulation</strong> involves the robot changing the environment around it while staying in a fixed location. The robot acts on the world - grasping objects, assembling parts, or using tools. Think of a factory robot arm that picks up parts and puts them together.</p> <p data-svelte-h="svelte-1hcm9wx"><strong>Locomotion</strong> involves the robot changing its position in the environment. This includes wheeled robots (like mobile bases and autonomous cars) and legged robots (like walking robots and quadrupeds) that move through their environment.</p> <p data-svelte-h="svelte-1vy0gjt"><strong>Mobile Manipulation</strong> combines both capabilities, creating systems that can both move through their environment and manipulate objects. These problems are more complex because they need to coordinate many more control variables than either locomotion or manipulation alone.</p> <blockquote class="tip" data-svelte-h="svelte-1psoyvi"><p>Quick rule of thumb: ask “what changes most?” If mainly the world (object pose/state) changes, it’s manipulation. If mainly the robot pose changes, it’s locomotion. If both change in a tightly coupled way, it’s mobile manipulation. Use this to decide sensors to log and the action space to predict.</p></blockquote> <p data-svelte-h="svelte-ia9bl8">Recently, the development of low-cost manipulators like the ALOHA, ALOHA-2 and SO-100/SO-101 platforms significantly lowered the barrier to entry to robotics, considering the increased accessibility of these robots compared to more traditional platforms like the Franka Emika Panda arm.</p> <img src="https://huggingface.co/robotics-course/images/resolve/main/ch2/ch2-cost-accessibility.png" alt="Robot Cost Comparison" style="width: 40%;"> <p data-svelte-h="svelte-159ql2f">Cheaper, more accessible robots are starting to rival traditional platforms like the Panda arm platforms in adoption in resource-constrained scenarios. The SO-100, in particular, has a cost in the 100s of Euros, and can be entirely 3D-printed in hours, while the industrially-manufactured Panda arm costs tens of thousands of Euros and is not openly available.</p> <p data-svelte-h="svelte-11gputg">The traditional body of work developed since the very inception of robotics is increasingly complemented by learning-based approaches. ML has indeed proven particularly transformative across the entire robotics stack, first empowering planning-based techniques with improved state estimation used for traditional planning and then end-to-end replacing controllers, effectively yielding perception-to-action methods.</p> <p data-svelte-h="svelte-1r50mxa">While explicit models have proven fundamental in achieving important milestones towards the development of modern robotics, recent works leveraging implicit models proved particularly promising in surpassing scalability and applicability challenges via learning.</p> <img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/robotics-course/classical-vs-robot-learning.png" alt="Classical vs Robot Learning" width="600" height="200"> <p data-svelte-h="svelte-27m0xn">We’ll reuse this taxonomy in later units when we discuss datasets (modalities to record) and policies (what action chunks to predict) for each category.</p> <h2 class="relative group"><a id="references" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#references"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>References</span></h2> <p data-svelte-h="svelte-12jfyok">For a full list of references, check out the <a href="https://huggingface.co/spaces/lerobot/robot-learning-tutorial" rel="nofollow">tutorial</a>.</p> <ul data-svelte-h="svelte-f023j0"><li><p><strong>ALOHA 2: An Enhanced Low-Cost Hardware for Bimanual Teleoperation</strong> (2024)<br> | |
| Jorge Aldaco et al.<br> | |
| This paper describes advances in accessible manipulation platforms, demonstrating how low-cost hardware enables research across manipulation tasks.<br> <a href="https://aloha-2.github.io/" rel="nofollow">Project Page</a></p></li> <li><p><strong>Learning Agile and Dynamic Motor Skills for Legged Robots</strong> (2019)<br> | |
| Joonho Hwangbo et al.<br> | |
| A key paper demonstrating learning-based approaches to locomotion, showing how reinforcement learning can enable quadrupedal robots to perform complex dynamic movements.<br> <a href="https://huggingface.co/papers/1901.08652" rel="nofollow">arXiv:1901.08652</a></p></li></ul> <a class="!text-gray-400 !no-underline text-sm flex items-center not-prose mt-4" href="https://github.com/huggingface/robotics-course/blob/main/units/en/unit2/2.mdx" target="_blank"><svg class="mr-1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M31,16l-7,7l-1.41-1.41L28.17,16l-5.58-5.59L24,9l7,7z"></path><path d="M1,16l7-7l1.41,1.41L3.83,16l5.58,5.59L8,23l-7-7z"></path><path d="M12.419,25.484L17.639,6.552l1.932,0.518L14.351,26.002z"></path></svg> <span data-svelte-h="svelte-zjs2n5"><span class="underline">Update</span> on GitHub</span></a> <p></p> | |
| <script> | |
| { | |
| __sveltekit_157nhjv = { | |
| assets: "/docs/robotics-course/pr_27/en", | |
| base: "/docs/robotics-course/pr_27/en", | |
| env: {} | |
| }; | |
| const element = document.currentScript.parentElement; | |
| const data = [null,null]; | |
| Promise.all([ | |
| import("/docs/robotics-course/pr_27/en/_app/immutable/entry/start.6a087fe8.js"), | |
| import("/docs/robotics-course/pr_27/en/_app/immutable/entry/app.f7ddcd05.js") | |
| ]).then(([kit, app]) => { | |
| kit.start(app, element, { | |
| node_ids: [0, 9], | |
| data, | |
| form: null, | |
| error: null | |
| }); | |
| }); | |
| } | |
| </script> | |
Xet Storage Details
- Size:
- 12.7 kB
- Xet hash:
- a4b19aed60198c1ff2cca427d5f29914bd47828d5d40d7be0f537e8d3ef175b9
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.