czech english

SubT Virtual Cave Circuit

Robotika Team

Cave is the last of three training Circuits before the finals in 2021 (if everything goes well). The environment is interesting of variable 3D terrain and combination of huge and narrow openings. Update: 16/9/2020 — 17 Qualified Teams (29 days)


24th March 2020 — Robotika scores the first point in Simple Cave 1

Since we returned from successful mission in USA (see 3rd place in Urban Circuit, 2nd among DARPA non-sponsored teams) thanks to The Virus is is much easier to continue preparation for Cave Circuit in Virtual world rather than in System Track.
There is new release 2020-03-23 containing 3 Simple Cave worlds for testing. Yeah, I could not resist to see it, and surely it was too early (#360). But the simulation were re-triggered and we could see what the left and right robot has seen during 5 minutes of simulated exploration:
If you are wondering what the robots are doing … well it is version ver59 used in Urban Circuit where the robots starts on optimized trajectory to „enter the gate”, i.e. smarter way of turn and go straight for distance defined by unique robot origin position. This is a bit which we will surely fix ASAP.
But enjoy the terrain and huge and narrow spaces. Yes, this time we want also to fly, communicate among robots and map 3D properly … and win! … so there is not much time to waste.
BTW we scored 1 point and Robotika is leading all Simple Cave X boards — well, two of them with zeros. But see what robots have seen:
The nearest deadline is 31st March 2020 (7 days) to submit new robot models. Here is preview of Freyja and Kloubák K2 is work in progress:

31st March 2020 — Robotika in the 'Video Friday' feature on the IEEE Spectrum website

Today I received mail from Kara: I thought you might like to see an interesting article featuring Robotika in the ‘Video Friday’ feature on the IEEE Spectrum website.
There are plenty of robotic videos, including one from SubT Urban System Cerberus — you can see their flying ball from Flyability autonomously navigating downstairs in Alpha Course.
Yeah, you can find there also video of our first attempt in Virtual Cave Circuit mentioned above.

14th April 2020 — Flying in the Cave and return home

The last week PavelJ finished the first experiment with virtual drone X3. It uses the same map as MOBoS back in Olympia and visual odometry instead of wheel odometry.
Maybe even more interesting it is under the hood, i.e. lidarview video. Note, that the drone has only RGBD camera, so it has to turn left in order to confirm that there is no other exit.
p.s. the schedule and release of qualification world is still unknown (due to the Virus), but the original plan was early April (see video).
p.s.2 another video: SubT Robotika - First longer flight … i.e. 5 minutes of exploration including detection of backpack.

21st April 2020 — New Cave Artifacts: Rope and Helmet

Today should be released Cave Qualification World which will contain also two new (still unofficial) artifacts:
The release 2020-04-21 is already listed but docker images are not build yet …
BTW I did not realize that SubT Virtual moved not only to GitHub, but also changed from Mercurial to Git! At least some bits are easier now
OT Problems with Cloudsim #339 — Malcom Stagg/Sodium 24 probably found the root cause related to Tunnel and Urban Virtual simulator problems:
CloudSim uses WeaveNet to provide networking and network isolation to the containers. This works as expected for unicast packets, but WeaveNet NPC has some counter-intuitive behavior that it does not block multicast packets from being sent to all hosts (even other competitors), as detailed in this issue: weaveworks/weave#3272. Ignition Transport uses multicast UDP packets for topic advertisements among other things, so all topic advertisements from any running robot were unexpectedly being sent to all hosts, where most of the topics would get filtered out on the receiving end. I was able to confirm this was the case by running two simulations simultaneously and logging all the topics before they were filtered out, and I found the isolation between those two simulations was indeed broken.
I also wrote some test code: which confirmed that when enough topic advertisements are received (on the order of several thousand), even though most are eventually filtered out, the infrastructure containers stop working correctly, and topic data, especially tf data, begins to become lost. This can be seen in the ign_saturation test cases. I was able to reproduce the issue of my robots either not moving or spinning in circles outside the entrance on my local computer. Anyone feel free to use/update this test code btw. There are also some test cases there which might be helpful to ensure things are working alright despite some common network impairments.
Based on this strong evidence, I believe the Urban Circuit issues were caused by the excessive rate of multicast Ignition Transport packets unexpectedly being delivered to all hosts, resulting from the WeaveNet issue combined with the large number of simulations and robots running at the same time.

22nd April 2020 — Robotika is the first qualified team!

… in less than 24 hours!
It is 23 hours after official DARPA SubT Challenge Cave Circuit Announcements (private access) … i.e. officially releasing qualification world for Cave Circuit, Cave Artifacts Specification and new Qualification Guide. At first I overlooked but other team members highlighted the point 4:
All Virtual teams will need to qualify using the Cave Circuit qualification scenario, i.e., no qualification waivers will be issued for Cave Circuit.
So this time you should see all teams on Cave Qualification Leaderboard before they can compete in Virtual Cave Circuit. The good news is that all you need is score one point. This means that there could be more competitors now and it reminds me old time Eurobot 2001 - Space Odyssey.
Another important note for both System and Virtual is Schedule Shift of the Cave Circuit: First, due to the circumstances and restrictions surrounding COVID-19, Cave Circuit will be no earlier than October 2020. If I count right it means half a year.

9th May 2020 — mdnet0. - [Msg] Total score: 3

Murphy is really a Joker!
My friends did quite good job on on the new Robotika docker image, in particular it has base image with Torch and TensorFlow for CudaDNN experiments now, and when I ran that on Cave Qualification World on CloudSim I could see (there is a new feature that you can see some simulation outputs online):
[Msg] SimTime[646 392000000] OnNewArtifact Msg=type: 13
pose {
  position {
    x: 63.76
    y: -8.27
    z: 2.03

[Msg]   [Total]: 1
[Msg] Total score: 3
[Dbg] [] Range: 16.0115, Exp: 2.5, TX: 20, RX: -50.1108
[Msg] SimTime[646 392000000] OnNewArtifact Msg=pose {
  position {
    x: 92.75
    y: -0.56
    z: 3.05

[Msg]   [Total]: 0
[Msg] Total score: 3
I was excited because then we could easily lead again the Leaderboard, but … Murphy works even on weekends so the simulation is somehow stuck now, sigh.
So if you check it now you will see this picture with leading Kankanwadi.
Note, that all other teams already participated in Tunnel and Urban circuits. Missing are only two leaders from urban circuit: MTRI and Coordinated Robotics, and also CYNET-ai is not there yet, but they probably work now on NASA Space Robotics Challenge Phase 2.
p.s. small update …

30th July 2020 — Cave Circuit Rules and Schedule Released

Today DARPA announced the schedule for Virtual Cave Circuit on the community forum:

Competition Rules for the Cave Circuit are now available on the Resources page, along with an update to the Qualification Guide.
Some major updates:
  • The SubT Credit cost of all robots have been reduced by half, which will allow for larger robot teams including the recently released robot models.
  • Teams are encouraged to explore increased robot team diversity, as robot teams may now only have a maximum of five models of a given type.
  • Teams can now submit multiple Cave Circuit submissions within the competition window – only the last submission will be scored.
We are also announcing the schedule for the Cave Circuit Virtual Competition:
  • 02 AUG — Robot Model Submission Deadline
  • 15 SEP — Qualification Deadline
  • 08 OCT — Competition Submission Opens
  • 15 OCT — Competition Submission Deadline
  • 17 NOV — Showcase and Awards Ceremony
We look forward to seeing your results on the leaderboard as you practice!

This means that there are only 77 days left till final submission on 2020-10-15. And it could be interesting to have say 10 robots … cool!
p.s. I noted that the last blog update here was more than two months ago! There was not much of visible progress on the surface, but … in meantime there were 4(?) CloudSim releases with new platforms including our robots Freja and Kloubák K2. BTW the Kloubák K3 platform is on title page of Forbes magazine … and yes, there is also info about new virtual platforms …

4th August 2020 — Virtual Live!

Today I have one good and several bad news …
The good news is that Virtual Circuit probably is not going to be black box anymore! I was starting simulation test for communication between robots and the teambase … and I found PLAY button, which you can press while simulation is running. And you can see this:
Note, that this is not pure video but full online 3D world browser — basically your Gazebo window. I am so used to the command line SSH interface that this is like „new world” for me.
Cool! I like it … no more secrets!
And now the bad news — we are no longer leading the Cave Qualification table:
You can tell, that Kevin (Coordinated Robotics) switched from System to Virtual. And that is also the 2nd bad news — System teams (including DARPA sponsored teams) are encouraged to participate in Virtual, and soon we may see also the other Czech team (CTU-CRAS), which is currently submitting model of their threaded robot (see PR #520) … so the fight will be hard, but it could be interesting to watch.

2nd September 2020 — Freyja in Practice Worlds

Today I had a lot of fun watching multiple simulations of robot Freyja in the Virtual World on CloudSim. I some cases it would be nice to terminate the simulation (see #361) when the robot is upside-down, but as long as there are other machines available it is OK.
The situation will be much worse when all qualified teams (at the moment 13) will try to push and test last moment changes.
Robotika is still on the first page, but it is no longer leading the board in the Cave Qualification World:
Yesterday was the CloudSim code freeze for qualification with the last release 2020-09-01. Luckily our PR fixing Freyja lights was accepted but the docker images are probably still not uploaded:
Just few minutes ago Angela wrote on community forum:
The SubT Virtual Testbed repository is under a code freeze until the qualification deadline (15 SEP). Please make sure to update your Catkin install and Docker images so your local development environment matches the resources on Cloudsim.
Maybe one more detail to mention — why test in Practice Worlds? I asked Viktor and he confirmed that:
Question: Is there a plan (similar to Urban Circuit) to use one of the Practice Worlds also as a Competition World (with differently distributed artifacts)?
Answer: Yes, one of the three Cave Circuit Practice Worlds will be included as a Cave Circuit Competition World with artifacts relocated. You are encouraged to use the Practice Worlds on Cloudsim to prepare your team!

16th September 2020 — 17 Qualified Teams (29 days)

This is the screenshot taken today from Cave Qualification Leaderboard. Today is the deadline for qualification where the team has to get at least one point so qualify. The list is not final/official because the teams have to fill also some registration forms etc. I guess that by the end of week DARPA will announce the final official list.
Note, that I suppose that OR_Hello_World is a test from organisers.