by Edoardo Foiadelli, Gabriele Marra, Alessandro Lisi, Nishani Vijayakumaran, Paolo Danilo Secci
The Space Hackathon 2.0 was a student challenge organized by Leanspace, a newspace company building the digital infrastructure of the space industry, during the annual Space Tech Expo Europe, held in Bremen on November the 15th and 16th 2022.
More than 20 university-lead teams signed up for the challenge whilst five were selected.
The challenge’s goal was to build a mission planning application, powered by the Leanspace platform, to manage a virtual 100 satellite EO constellation. We had 2 days to build it and 2 days to manage it.
Over the course of 2 days, our app needed to handle live imagery requests from the public. These requests were given with specific coordinates, to take a picture from space with the best accuracy possible, and download the photo as fast as possible.
First place went to the PoliSpace team, composed of Edoardo Foiadelli, Gabriele Marra, Alessandro Lisi, Nishani Vijayakumaran and Paolo Secci, consisting of 80,000 euro to spend with the International Space University.
Second place went to Epitec, which won an exclusive trip to the OHB facility in Munich, and third place was won by Aimtub, which won tickets to a VIP networking event at IAC in Baku.
The Hackathon 2.0 was judged by Guillaume Tanier, the CEO of Leanspace, Nicolas Peter, Prof. in Space Policy and International Affairs and Head of ISU Space Policy and Entrepreneurship Lab, Guido Baraglia, Head of EMEA Aerospace at Amazon Web Services, and Dr. Riccardo Benvenuto, Constellation Programme Director at ConstellR.
Nicolas Peter, commenting on the event, suggested that “The Leanspace Hackathon is a unique event that brings motivated and talented youth from all around Europe to work on real challenges. It is an accelerator to develop solutions that can make a difference in the sector.”
The PoliSpace Team
PoliSpace is a non-profit student association part of the Politecnico di Milano. The goal of PoliSpace is to implement the theoretical framework provided by the university (often too theoretical for a field like space) with practical experience, offering students the possibility to participate in hands-on projects like this Hackathon.
Our team consisted of three software engineers (Gabriele Marra, Paolo Danilo Secci, Alessandro Lisi) and two space engineers (Nishani Vijayakumaran, Edoardo Foiadelli). Every team member had a slightly different skill set, which allowed us to work together, combining our strengths without interfering with each other’s work. The software engineers developed a completely automated system to handle all the requests and communicate with the satellites, while the space engineers defined a working algorithm to determine the best satellite for each request.
The 4-day hackathon was divided into 2 days of application building and 2 days of testing and operations at the annual Space Tech Expo. After a brief kickoff meeting with the Leanspace personnel and an explanation of their products on the Leanspace platform, the teams started immediately to gather ideas and organize the work.
Our ground segment needed to operate a virtual constellation of 100 satellites capable of imaging the Earth and distributed on different orbital planes. Leveraging Leanspace’s cloud infrastructure and APIs, we obtained access to 15 ground stations around the globe necessary to communicate with the spacecraft by issuing essential commands at the right time.
The goal was to build a mission planning application, powered by the Leanspace platform, to manage a virtual 100 satellite EO constellation. We had 2 days to build it and 2 days to manage it.
The main challenge was picking the right satellite to take a good shot of the target coordinates, together with two ground stations. But why do we need two ground stations? We needed a before-target uplink station on the same ground track to send the command, and a second after-target station to download the resulting picture. This was needed because the satellite could be not-reachable when it was above the target.
During the first two days of the competition, our goal was to conceive a strategy to propagate the satellite orbits, which means being able to predict their future positions. After that, we thought about identifying the best combination of an uplink ground station, downlink ground station, and satellite that could satisfy the request. The objective was to obtain a picture as close as possible to the target while downloading it as fast as possible to maximize the accuracy and minimize the overall delivery time. All the teams were provided with the same constellation of satellites, the same set of ground stations, and access to the Leanspace platform and tools. Each group was requested to develop its own strategy and application to handle requests and provide a front-end web app for the operator.
Not everything went as planned: as in any real-life situation, some new and unexpected problems occurred.
But it was only in the last two days of the Hackathon that the “real” challenge took place. Every team had to use (and improve in the meantime) its own application to process the incoming imagery requests relative to different locations in real time. Based on the accuracy level and delay with which each request was satisfied, each team received a certain amount of points. Depending on the robustness (and correctness) of the strategy adopted, the satellite identification could be too inaccurate, out of timing, or even completely wrong. For this purpose, also negative scores could be given if the accuracy and timing were totally out of range.
In parallel to processing the requests, the teams continued to improve the application, identifying bugs and refining the strategy.
The strategy that our team identified was simple and yet robust: in order to obtain the maximum points, we decided to automate the entire process as much as possible. To identify the correct satellite, we propagated the orbits and kept only the satellites able to receive the command in time; then, we predicted the expected points given the accuracy and the delay between the request being issued and the download of the final picture. Finally, we ordered the results to maximize the points or minimize the time.
We implemented our solution in Python to exploit some useful libraries already available: our code was able to automatically retrieve and handle all new requests. Every request was individually managed: after extracting the latitude and longitude, our algorithm instantly outputted the best satellite and all the relevant information to complete the request. The system was able to schedule the command upload through the right ground station, as well as the download of the image, at the right time. The entire system profoundly relied on the Leanspace APIs, allowing us to perform complex tasks with only a few web requests instead of weeks of development. Without the Leanspace APIs we would have not been able to achieve these results in only two days.
In the end, the hard work of the first two days was rewarded: at the beginning of the last phase, our team could rely on process automation. After a quick phase of troubleshooting, the application smoothly started elaborating and processing the requests.
However, not everything went as planned: as in any real-life situation, some new and unexpected problems occurred. For example, we detected some bugs in the Hackathon simulator that have been promptly solved by the LeanSpace team. But the thorns on our side were the “unforeseen events”, special requests with a very high score value, introduced to keep the competition open and keep us on our toes. These particular targets were manually released by the LeanSpace team and available to all the groups, and only the fastest team to complete the tasks could obtain a very high score.
These four days were incredibly useful to gain contacts and expand our network.
Unfortunately, our system was designed to process all the requests based on the standard score system (accounting for both accuracy and timing): we couldn’t quickly change the code, prioritizing the timing while dealing with these special requests. Even trying to manually identify the best satellite and ground station combination, we just managed to almost win two special requests, but we never really won any. The scored points only counted for only 50% of the competition: the rest consisted of a final presentation and a proposal for a graphical user interface that an operator could use to utilize our application and monitor the constellation. We decided to introduce only a few technical details in our final presentation: we preferred to provide a high-level overview of our solution. We focused more on the automatization achieved, describing the performances of our systems and a list of strengths of our solution. The judges appreciated our WebApp for its simplicity while maintaining a certain level of completeness: we displayed all the information about the constellation, the requests, and the ground stations. We dedicated most of the screen space to the real-time view of the satellites: a realistic 3D model of the Earth with all the 100 satellites orbiting around. Inside the menu, the operator can select what to show on screen: from a single satellite to the whole constellation, from the predicted future orbits to the next visibility windows.
What did we learn?
What did we bring home in the end? Even if the hackathon lasted only 4 days, we had the opportunity (and the need) to develop knowledge quickly, create a product, and present it to an external audience while interacting with “strangers” team members with different technical backgrounds. One of the most important lessons we learned is the importance of communication: under stress and pressure, having the patience to listen to your teammate’s point of view is fundamental. Furthermore, how the work is presented to the audience is of great relevance too: we learned that it is important to find a way to highlight the worthiness of your product and the efforts necessary to realize it.
From a student perspective, these four days were incredibly useful to gain contacts and expand our network, talk with professional figures and company representatives. We had a couple of sleepless nights and a few lunches eating carbonara pasta in front of our computers, but we also came out of this hackathon with a series of fantastic achievements: the pride to win the first prize, the chance to meet top-quality opponents and advisors, and of course, that priceless snapshot of Area 51 (but that’s another story). We are looking forward to the next hackathon and the next challenge!
The full video of the hackathon can be found here.
Gabriele Marra is a software engineer and computer science student at the Politecnico di Milano. He’s currently a member of the Software team of PoliSpace’s CubeSat 6S mission. He has worked as a freelance software engineer since 2021 and is passionate about technology and science.
Alessandro Lisi is a software engineer, music producer, and computer science Student at the Politecnico di Milano. He has been a freelance software engineer for the past few years, and he’s currently leading the development of a metaverse videogame. Focusing on embedded systems software design and AI, during his master’s degree collaborated on projects with Poli mOve and Ferrari. He is passionate about creative ideas and music.
Paolo Secci is a computer engineering student at the Politecnico di Milano. He is currently an RF/Software Engineer of PoliSpace’s S6 cube satellite mission. In the past, he worked as an intern for Gucci Digital, as a member of the “Zero” Agile team tasked with the development of gucci.com and its e-commerce information system. His programming repertoire boasts skills heavy in Data Analysis, Artificial Intelligence, and Full-Stack Web Development. Paolo is a proud lover of surfing, tacos, and soccer.
Vijayakumaran Nishani is a space engineering student at the Politecnico di Milano. She has been part of the PoliSpace association since its foundation, contributing to it as an executive member. She has recently joined the PoliSpace’s CubeSat 6S team in the AIT division. Passionate about Space and Japanese culture, she loves to challenge herself continuously to learn something new.
Edoardo Foiadelli is a space engineering student at the Politecnico di Milano. He is an active member of PoliSpace, taking part in its projects with several space companies. He performed an internship in Electrical AIT at OHB, where he followed the environmental test campaign of the H2SAT. After this experience, he joined PoliSpace’s CubeSat 6S team as System Engineer, creating the AIT division. In his free time, he likes to run, bouldering, or mountaineering in the Orobic Alps, the beautiful mountains near Bergamo.
PoliSpace is the first space association of Politecnico di Milano. Its main objective is to fill the gap between industry and academia in the Italian landscape. Its goals are to propose, endorse and supervise space-related projects, and to spread aerospace culture with a global perspective. PoliSpace provides students with internship and job opportunities through a rich network of companies and industries.