We’ve been working on a self-driving RC car known as Markku.ai at our Tampere office - aka Tammerforce - since last year.
It started as a way to compete with Futurice’s Helsinki HQ gained traction and slowly became an essential part of how we talk show to our clients how AI and machine learning work in a concrete way you can see and touch.
Often Artificial Intelligence and Machine Learning are talked about like something “that just happens magically in the cloud and will solve all your problems”. Our playful approach with its utilising toy cars makes the buzzwords more real, something you can get excited about and, most importantly, learn by doing.
Why Markku and what is all this?
We named our car Markku to honour Markku Alén, the Finnish rally legend. He coined the term Maximum Attack to describe his own approach to competition, meaning: drive as fast as possible, without limits. We altered the term ever so slightly to Maximum AIttack, which is also our Twitter handle.
To learn more about Markku.ai, you can visit the page, but to put it briefly, it’s a car based on the open-source Donkeycar project. We modified it and published several of our own 3D models for the car casing, among other things, as open-source to give back to the community. The technique we use is called supervised learning, but you can also set it up for reinforcement learning.
You can use Markku to run a miniature version of a complete machine learning project:
- Define a problem worth solving (learn to drive)
- Gather the data (drive laps manually, get images & telemetry data)
- Train a model (car aims to learn from the data)
- Deploy to production (let the car drive on its own and see how the model works)
If we do it, we might as well overdo it
After deciding to have the competition between our Tampere and Helsinki offices, we started thinking about the schedule and the venue. Our Tampere office could fit the track and teams easily, but we decided it would be great to have the race at a public venue.
Then some of our clients, Valmet being the first, expressed an interest in participating as well. We decided to make it public. It all came together at a meeting with Särkänniemi amusement park (who we’ve been working with), when we decided the race should be arranged at the amusement park. Eventually, we agreed on using the bumper car track as the main arena. It made perfect sense.
A total of eight teams ended up enrolling and we realized we were probably organizing the first-ever public self-driving car competition in Finland.
The list of teams was pretty convincing:
- Markku.ai / Futurice Tampere
- Futurice UK
- Nokian Tyres
- Kongsberg Maritime
- Castor / Tampere University
- Aalto University
Enter: the TV crew
Having made the decision to organize the event/competition, we wanted to make it as epic as possible. What could we add to the mix to take it over the top?
There’s a Finnish TV show “Teknavi” (think of Top Gear but from the North) which, in addition to driving fast cars, focuses on technology. What’s more, it happens to feature the one and only Markku Alén as a host! We decided to call them to see if they’d be interested in doing a story about the race.
One thing lead to another and soon Mr Alén and Markku the Car - plus team - were having lunch at Tampere’s scenic Näsinneula restaurant to discuss self-driving vehicles and the future of competitive driving. This resulted in a deal to shoot the opening episode of Teknavi’s next season at Särkänniemi on the day of the event.Embedded content: https://twitter.com/futurice/status/1120997085229256706
The circle from Maximum Attack to Maximum AIttack was about to be complete.
Behind the scenes
When the big day finally dawned, the sun was shining and the amusement park had a nice crowd and enjoying the summer and having fun. Alas, we were busy installing the track, electricity, seats for the audience and, of course, all the cars and computers. It was quite a handful. There was a lingering sense of uncertainty and fear about how the event would go. Everyone knew that having autonomous cars running around the track had a huge, single point of failure: the cars were autonomous. Any number of variables in the physical world, from the bright sunshine and glossy metallic floor of the venue to the audience and TV crew having their feet near the track, could throw the cars off.
We had the cold sweats on a hot day.
At the exact moment television cameras turned on and our MC Janne Roihu started blasting his live commentary out of the speakers, everyone realized it’s showtime and started focusing on their own responsibilities. From the first hot lap to the final wheel-to-wheel heat, everything went better than expected. There were winners and losers, technical problems, crashes and everything else that you’d expect, want and demand from a proper motorsports event. The audience were enjoying themselves and the racing teams were doing their best to win. In the end, we had one winning team and a bunch of disappointed competitors. But the Teknavi episode looks great, as you can see from this teaser of the episode.
Despite all the horror scenarios we came up with before the big day, it was an an entertaining event and everyone learned quite a bit - some about AI, others about organizing racing events and some about both.
The weather was good, most cars got over the finish line and, based on an ad hoc spectator poll, the audience liked what they saw.
Seeing the eight teams really get their hand dirty with AI and succeeding in building a small autonomous vehicle was the best part. The most important lesson everyone learned was how hard the physical world is for computer vision and machine learning. And the fact that even hard things, like building autonomous robots, can be accomplished on limited budget and schedule!
Telling the whole story of Markku.ai and/or why an innovation consultancy like Futurice builds autonomous RC cars is not easy to squeeze into few sentences, but we did our best. Just follow this link and learn a little bit more about the subject!
Ps. We also have quite a lot of open positions for developers, also in Tampere. Take a look at our Careers page for details :).