<div dir="ltr"><div>FYI</div><div class="gmail_quote"><br></div><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Tully Foote</b> <span dir="ltr">&lt;<a href="mailto:tfoote@osrfoundation.org">tfoote@osrfoundation.org</a>&gt;</span><br>Date: 2014-10-31 2:07 GMT+02:00<br>Subject: [aldebaran] Towards a standard simulator for RoboCup<br>To: <a href="mailto:ros-sig-aldebaran@googlegroups.com">ros-sig-aldebaran@googlegroups.com</a><br>Cc: Carlos Agüero &lt;<a href="mailto:caguero@osrfoundation.org">caguero@osrfoundation.org</a>&gt;<br><br><br><div dir="ltr"><span><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Hi All, </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">With the recent work toward simulating the Nao I’d like to start a thread about building up a standard implementation that can support a few of the RoboCup leagues. In particular I’d like to suggest that we work toward providing a standard simulation which the RoboCup SPL can practice in, and will support the RoboCup 3D Simulation League. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">At OSRF we’ve been prototyping a little bit in conjunction with some of the RoboCup teams to support RoboCup in Gazebo. You can find the repository here: </span><a href="https://github.com/osrf/robocup_3d_simulation" style="text-decoration:none" target="_blank"><span style="font-size:15px;font-family:Arial;background-color:transparent;text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">https://github.com/osrf/robocup_3d_simulation</span></a><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap"> In this repository we have proof of concept replicating the game play and match mechanisms for 3D Simulation League and multiple Nao robots being simulated. This is implemented as Gazebo plugins that provide a ROS API for the Game Controller as well as a ROS API for each robot. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Looking forward what we’ve done is just a prototype. It would be great to take this and develop some standard APIs, such as the Game API, Robot API, and a way to launch a team for a tournament. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Building on these APIs we could create a very simple reference implementation of the RoboCup leagues as both an example to follow for new teams as well as a test opponent for matches. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">As part of this we would hope that we can also create a standard API for walking engines for their inputs and outputs. As well as a simple reference implementation for testing. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">With these capabilities we hope that we can improve the RoboCup developer experience and facilitate efficient tournaments. And if all the parts come together a continuous online tournament server could be setup to allow continuous challenge testing. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Reviewing our current work and this vision we see the below tasks will be necessary. Please take a look and give some feedback. If you’re interested in any parts please speak up. For this to be sustainable it will need to be a community effort. Below is just my quick suggestion of where things might go. If you have other suggestions or feedback it would be great to hear that. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Tully + Carlos</span></p><br><br><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Integrate Aldebaran robot plugin. Provide two modes, one SPL simulation(with real sensors) two 3D Simulation(with abstracted perception) </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Develop Standard APIs for: (aka write REPs)</span></p><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Walking Controller</span></p><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Robot API</span></p><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Game API</span></p><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Launching a team: clearly defined entry points for automated testing. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Develop open source walking controller reference implementation</span></p><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Develop a reference implementation team which can demonstrate playing. And be a test opponent. </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Evaluate performance of the system (aka can we support close to real time?) Physics tweaks for the models</span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Evaluate Nao model. Standing still sometimes is not stable. (debug controller vs simulation jitter) </span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Write unit tests for everything</span></p><br><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Create Tutorials:</span></p><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">How to use the game controller API (learn the Game Controller API).</span></p><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">How to control a robot in the game. (learn the Robot API)</span></p><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">How to get sensor information from a Robot (part 2 robot API)</span></p><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">How to write a Competition Team(Setup standard entry points and release)</span></span><span class="HOEnZb"><font color="#888888"><br></font></span></div><span class="HOEnZb"><font color="#888888">

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &quot;ROS Sig Aldebaran&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an email to <a href="mailto:ros-sig-aldebaran+unsubscribe@googlegroups.com" target="_blank">ros-sig-aldebaran+unsubscribe@googlegroups.com</a>.<br>
To post to this group, send email to <a href="mailto:ros-sig-aldebaran@googlegroups.com" target="_blank">ros-sig-aldebaran@googlegroups.com</a>.<br>
Visit this group at <a href="http://groups.google.com/group/ros-sig-aldebaran" target="_blank">http://groups.google.com/group/ros-sig-aldebaran</a>.<br>
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/ros-sig-aldebaran/CAM7qi7WLgcRVATkFsw_aB%3DsMY2tEE3dg6wKesa8iYkvHxE3Cdg%40mail.gmail.com?utm_medium=email&amp;utm_source=footer" target="_blank">https://groups.google.com/d/msgid/ros-sig-aldebaran/CAM7qi7WLgcRVATkFsw_aB%3DsMY2tEE3dg6wKesa8iYkvHxE3Cdg%40mail.gmail.com</a>.<br>
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank">https://groups.google.com/d/optout</a>.<br>
</font></span></div><br></div>