THIRD PLACE IN THE WORLD CUP

We have officially won our third place match against the CIT Brain team. It was an incredibly close game. It even caused multiple issues with the simulation, forcing restarts of the simulation. Due to this the game had to be delayed by 5 hours. We had to wait even longer and we struggled with containing our excitement and anxiousness about the game.

When the game started it was explained that there were a few technical issues that would be explained throughout the stream and we still had no idea what had happened.

In the first half we played a bit too aggressively according to the referee and one of our robots got a yellow card, another one got a warning. We got scared of losing one of our strikers… Our aggressive play did help us to score a first goal though.
The simulator crashing after the first half saved us though. For the second half all cards were reset, but to make up for it, the CIT Brains got the kick off again.

We hoped that one of the major advantages of the simulation would be, that we would not have to struggle with hardware issues. However, we managed to actually do have hardware issues… and of course they were in this important game!
Our feet got stuck in each other and we didn’t manage to get them apart again. Luckily our robot was reset to outside of the field soon after and our hardware issues were solved again.

Watching the game, it felt like a real soccer game considering how much we screamed at the referee. Throughout a few questionable decisions happened, including putting the ball only centimeters in front of our goal. Our goalie positioned on its goal line, but was removed, because the goalie was now considered too close to the goal. Since our goal was without a goalie now, it was easy for CIT Brains to score.

They scored again later with another questionable referee decision.

Their luck did not hold though, because very close before the end of the match, the referee awarded a penalty kick to us and removed the goalie in a similar fashion to our earlier issues. We finally managed to equalize to a score of 2-2.

As there was no time left for the organizers to simulate and show a game including overtime, they decided to skip overtime. We instead immediately went to the penalty shoot out.

We got scared there, because from our tests we knew our penalty kicks can sometimes go inside the goal, but most of the time we would not hit the goal. However, the CIT Brains commentator told the viewers they had not tested their penalty behavior. So we got our hopes up again. During the first penalty kick, their robot took the ball and tried to dribble it into our goal. They were then removed from the playing area.

We managed to kick the ball after the referee allowed us to kick it, but the ball stopped moving right in front of the goal line.

For the following kicks the CIT Brain robot just stopped moving and we only got the ball very close to the goal line multiple times.

Our saving grace was our fourth shot.We finally managed to get past the goal line with the ball and scored a goal.

As the CIT Brains did not shoot in their fifth shoot, we managed to win the game with a final score of 3-2.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Demonstration Game against Adult Size Sweaty

Today we had the opportunity to play against the adult size team Sweaty. They are currently the favorite to win the world championship of their league. As it was easy for us to change our software to play on the bigger field with a larger ball, we offered to play on the regular field of the adult size. We only used two robots, instead of our usual three or four, as that was necessary to play on the large field.

We were scared when we saw the size comparison between the robots, but early on already we seemed like the favorite to win the match, when we moved into the field and positioned correctly. Sadly, the Sweaty team did not move from the sidelines. They explained that there was probably a connection issue with the referee and the robots didn’t know they were allowed to start playing.

In the end we were able to score six goals on the large field.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Semi Final

We played against Starkit in the semi final. They had shown an amazing performance in the previous games of the RoboCup and we were very excited to get to play against them. We fixed a few of our bugs last night, but did not make any major changes anymore. As we can not change our strategy in the middle of the game, it had to be rock solid.

We had to have our code uploaded at 12:30 and our game started at 20:30. This gave us a lot of time to just sit there anxiously and wait for the game.

In our earlier game today, we had issues, because it ran longer than we expected and our saved files went over the allowed size, which meant we lost them all. To ensure this could not happen again, we halved the amount of images we record. This could not break anything… right? RIGHT?
Well… it did.
Luckily we ran a test game and noticed it. This could have prevented our robots from moving at all and given a free win to Starkit.

This made us even more anxious about everything and if you were close to us, you probably heard us cheering, when we started moving at the very beginning.

In the beginning of the game Starkit robots immediately passed the ball between each other and managed to outplay us. Initially we managed to defend well against their amazing offense plays, but they were unstoppable.

Our goalie especially decided to do a few questionable moves. They were close to the ball, but decided to not kick the ball away from our goal, but rather run to the goal and try to ensure our safety from there. The Starkit robots didn’t give us enough time and managed to score again.

In another situation our goalie even ran to the enemy half one time to keep the ball further away from our goal. They managed to get past all of the opponents robots, but then decided the ball is safe enough now. They ran back to our goal and gave the Starkit robots the opportunity to score again.

The Starkit robots in the end managed to score seven goals against us. However, our robots didn’t lose their spirits. They did their best to keep up and did manage to get two goals for us.

We are really proud of what our robots managed to achieve. We are also excited to get to play in the third place match tomorrow against the CIT-Brains. If you want to watch it, it will be streamed at 10 here:
https://www.twitch.tv/robocuphumanoidfielda

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

New Record in the Quarter Final – Bit-Bots reach the Semi Final

After the exciting game yesterday against the 01. RFC Berlin, we got to play in the quarter final. The drawing for us was to play against the Nubots. They had managed to score another goal in one of their group games, but we were reasonably confident that we could win the game. However, we were still anxious about having a breaking bug in our software that would prevent us from playing and winning against the Nubots.

When the game started, we were very happy, when our robots started walking, as this assured us that we should be able to play normally. The Nubots put up a fight in the beginning, but we managed to score a goal regardless.

Unfortunately, the referee didn’t count the goal for us, but instead gave a goalkick to the Nubots. We started to get anxious again, because the referee obviously had a bug there.

However, our robots were less phased than us and just waited their time until they were allowed to touch the ball again and confidently ran to the opposite goal and scored again. This time the referee did score the goal for us and we were up 1-0.

The Nubots didn’t put up any defense after this and we managed to score goal after goal. After the first half we were already up 7-0. As the time went on, we got excited about potentially beating the impressive 15-0 score that MRL had scored in a previous group match.

The second half progressed and we managed to beat their result with a single extra goal and finished the game 16-0 according to the official result. If the first goal had been counted for us, we would have maybe managed to win 17-0.

After the game we were told we had more time available than usual, because time is added after a goal in the knock out games, to account for some of the time the robots are not allowed to kick the ball after scoring a goal.

We are now looking forward to playing against Starkit in the semi final tonight at 20:30 (Berlin time).

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

The objectively most exciting game so far

We just won our final group game and are still short of breath, because our hearts have been racing the whole time.
We already knew this would be an exciting game, because the 01. RFC Berlin defeated the IT Androids with the same score as us: 9-0.
However the IT Androids did not put up as much as a fight, as Berlin did.

Our excitement increased even more, when we found out, that our game was postponed, because the simulation had not finished yet. This was the first game of the competition where this was necessary.
We speculated it was because the simulation was more complex with our robots colliding more than the other robots have so far. So we knew we were in for an exciting game.

Already at the start of the game, the Berlin robots pushed us deep into our side of the field by playing the ball into our penalty area. However our robots managed to win the ensuing tackle against the other robots and their robot got penalized. We used the time we won and got the ball back to the middle of the field. However, this did not save us yet and their robots managed to push back again.
They even attempted a shot on the goal, but our heroic goalie managed to save the day and kept the ball out of the net. This was not the end of their attack. They even managed to convince the referee to give them a penalty kick.

They kicked the ball and it would have gone in, but the referee blew their (imaginary) whistle, because they had kicked the ball, while the referee had not allowed it yet.
That was our saving grace in this case. The attacker had to leave the field for 30 seconds and our robots got the opportunity to attack.
Just like the Berlin robots didn’t have much luck, we were also stopped by their good defense and couldn’t get the ball to pass the goal line.

After an exciting time of the ball being played by both teams in the middle of the field, we got our lucky break. Two of the Berlin robots got sent to the side of the field and our attacker managed to get past the only defender that was left. We used that opportunity and finally managed to rush to the goal and score.

Our robot in the middle of the field used the opportunity and cheered for their teammate who managed to get us the lead for the game.

However, the Berlin robots didn’t give up, they still managed to get close to scoring again. The referee saved us again, when they penalized their robots, because they again acted too early or tried to push us close to our goal.

We managed to carry our 1-0 lead into the second half and after a while it seemed like we had broken the spirit of one of the Berlin robots. After getting a penalty it just stopped moving in the middle of a step. The members of the 01. RFC Berlin told us this was due to a bug and the robot just crashed.
Our robots used this opportunity and managed to win the tackles in the opponents penalty area to score our second goal of the match.

With a 2:0 lead, our heart rates went slightly down again and we were happy about our lead.
However, the robot that had stopped moving, started to move again and the blue robots of the 01. RFC Berlin managed to get very close to scoring a goal and only centimeters saved us.

We managed to still play forward and save a few more close calls and achieved a final score of 4-0.

In the end, both our robotic and also our human members were exhausted, but also celebrated our great game.
We thank 01. RFC Berlin for the great game and we hope to meet you in the final again. (With the same result hopefully ;))

If you want to watch the game in realtime, a video of it is available here:
https://www.twitch.tv/videos/1067256488?t=01h24m36s

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Our first group game

We just had our first official game which we played against THMOS. We went in confident, but there are always surprises that can stop us. For example in the last few days we had an issue where we had a single “,” too much, which crashed our entire robot. As there is no way to fix any problems once the simulation has started, surprises can always happen.

However we got lucky and our software worked really well. Our opponents did not get as lucky. They had an issue where their robot just fell over at the start and slid off the map.

We managed to score a convincing 12:0 victory and are excited for our next games.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

RoboCup 2021 Starts

We are very excited that the RoboCup 2021 will have the first official games in our league tommorow. We will already be able to cheer our and the other robots in test games today. These games will be the end of the two setup days we had in which we got to test our software in depth again and and fix most of the bugs that we noticed.

All the games will be livestreamed on Twitch:
https://www.twitch.tv/robocuphumanoidfielda/
https://www.twitch.tv/robocuphumanoidfieldb/

Our first test game will be today at 17:40 (Berlin timezone) versus MRL-HSL. It will be livestreamed on the first of the two links above and we would be happy to watch it with you.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Second place in the Brazil Open

This Saturday was a really exciting day for us. It was the day the Brazil Open ended and all the results were officially announced.
We met up online to experience the award ceremony together and slowly the results table got filled in. Since the table filled in from the last place to the first, we got more excited with every slot that got filled that did not include our name.

Before we talk in more detail about the results though, let me recap what the Brazil Open was about. Due to COVID-19 we could not participate in the regular kind of tournament where our robots get to play soccer with each other. Thus the organizers of the Brazil Open had to be creative and to figure out a way how the teams could still compete.

Thus the competition they created consisted of two parts.
One task was to create a 10 minute video where we present ourselves, our robots and our research. You can watch this video here:

The other part of the competition was to detect robots in images. Points were provided in this task for accuracy in detections as well as for the speed of how many images per second we were able to process.
We were given a list of images by the organizers, that we could use to train our system. These images were hosted on the ImageTagger that we have developed.

Now that you know a bit more about the competition, we can now take a look at the results.

The first column are the team names, followed by the robot detection points and the video points.

As you can see, we achieved the shared second place for the robot detection challenge. We used a neural network architecture called YOLOv4-tiny and were able to detect 94% of the robots correctly. We also managed to process 35 images per second. Team RoboFEI was less precise, but managed to beat us in processing speed.

Our video achieved the highest score in the RoboCup Brazil Open for humanoid robots. This brought our total points to 80,875 points.

We are really happy with our results and had a lot of fun in this competition. We want to thank the organizers for hosting this competition and we want to congratulate the ITAndroids on winning it!

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Brazil Open

We currently can not participate with our robots in person due to COVID-19. Of course this does not stop us from continuing to work on our robots. When we found out about the Brazil Open we immediately applied.

To hold the competition even without our robots directly competing the organizers have decided that each team has to present a video where the team presents it self. The video is up to 10 minutes long and presents the team itself as well as their research.
Additionally the teams get to compete with their vision systems. The organizers selected tens of thousands of images of robots to train our systems to detect robots in images. The images were selected from the ImageTagger we have developed.

We already had a lot of fun and are even more excited to compare our results to the results of the other teams. The videos of the teams will be presented on the YouTube channel of the competition tomorrow (Thursday) 13:15 (CEST) and on Friday 14:00 (CEST).
The results from the vision competition will be published when all teams have competed, which at the latest should be on Saturday.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Third place in the Running Robot Competition 2020

Last year we got the opportunity to participate in the Running Robot Competition in China. Since we enjoyed getting to participate in it last year, we wanted to attend again this year.

The Running Robot Competition is not a part of the RoboCup tournaments we usually participate in. It is a tournament where Robots have to go through a course, overcoming multiple obstacles to reach their goal. These obstacles are for example having to wait until a barrier has moved out of the way and only then walk past it, or having to climb a few stairs.

Due to Covid-19 we did not get the opportunity to participate in person, but we were glad to participate over the internet. For this purpose, the organizers prepared a simulation environment.

We discussed a few options on how to solve this.
Starting from a more conventional approach to solve the challenges. In this approach, we would start with developing a vision that can e.g. see the yellow and black from the barrier and as soon as it reaches a certain angle, we would program the robot to start walking.

However we wanted to use this opportunity to learn about something that most of our team had less experience with. This is why we decided to use reinforcement learning for our approach.

Reinforcement learning is an approach where we use neural networks so the robot can learn how to overcome the obstacles without us telling it how to solve them. This can lead to more efficient ways of solving the problem than we would have thought of. This could include finding a bug in the physics of the simulator to achieve normally impossible things or something as simple as walking another way that we did not think of.

We used only the robot’s camera image as an input to the reinforcement learning algorithm. Based on this information the robot had to figure out what it had to do now. Does it have to wait for the barrier to rise or is it already up and it can start walking?
This sounds trivial for us as a human, but the robot starts out with no concept of a barrier being an obstacle. In the beginning, it does not know the difference between the ground which it can step on and an obstacle that it should avoid.

To ease the robot to learn these things, we provided points as a reward to the robot if it came closer to the goal and deducted points if it walked into an obstacle like the barrier.

The robot could control the direction in which it walked. We used the same program to let the robot walk as we use on our soccer-playing robots. However since a different robot was used in this competition, we had to change a few parameters. However, we were able to use a script from our existing walking to let the robot learn the best way to walk in this new simulation.

With this approach, we were able to solve the first obstacles. Due to a misunderstanding, we had less time and were not able to solve the full course.

However we still had a lot of fun in developing our approach to solve the problems the Running Robot Competition presented. We also had the opportunity to learn a lot about reinforcement learning.

As you probably have figured out from reading the headline already, we did not only have a lot of fun during the competition, we even managed to finish in third place in the competition!

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail