Zero Robotics. Zero Robotics is an international high school programming competition where students control robotic SPHERES (Synchronised Position Hold Engage and Reorient Experimental Satellites) aboard the International Space Station. Each year teams of students work to produce code capable of performing in a game that can be deployed on the SPHERES.  This game generally contains elements such as docking with objects, moving objects, and destroying targets within a bounded area while monitoring fuel usage.

Initial stages of the competition occur online (with virtual SPHERES) with free team registration in the United States, Australia and for ESA member countries and limited registration for international teams.  Teams are traditionally monitored by adult mentors and code submitted through the MIT website. Finalists compete in a live championship aboard the ISS. An astronaut conducts the final competition while communicating to teams through a live feed.

History
The Zero Robotics competition was created by NASA Astronaut Gregory Chamitoff when he was working with the SPHERES and realised that the coding interface would be suitable for high school students.  Drawing inspiration from FIRST Robotics, Zero Robotics became a competition that emphasised building science, technology, engineering, and maths skills with a component of cooperation between schools and nations.  Its inaugural competition was held in 2009, expansion to the entire US in 2010 and internationally in 2013. It currently includes schools from the US, Russia, ESA affiliated states and Australia.

Tournaments 
The Zero Robotics competition is divided into two types of tournaments.
 High School Tournament: Among students aged between 14 and 18 years. The tournament takes place between September and December each year. This is an international event open to teams from the USA, Australia, Russia, ESA member states and select international teams.
 Middle School Summer Program. This is dedicated to younger students. It is a five-week program in which students learn to program through a simplified graphical interface. The program will take place in locations "to be determined" based on where there is a strong geographic presence of the team members.

Additionally some countries, notably Australia and Italy, choose to hold preliminary competitions to fit better into the school year and/or filter the schools going onto the International Competition.

Objectives of tournaments 
Participants compete together to win a technically challenging game, motivated by a problem of current interest to DARPA, NASA and MIT. Depending on the challenge, students must program their satellites to complete certain objectives (to avoid obstacles, collect virtual objects, destroy targets, etc.) while preserving the primary resources (fuel, energy charges, etc.) and complete the challenge within certain limits of time and space for writing code. The student's software must be able to control factors such as the speed of the satellite, the rotation, the direction of travel, and many others, to be able to find the perfect algorithm to achieve the purpose and meet the challenges in the shortest possible time than their opponents.

The difficulty lies in the fact that the programs are autonomous in the sense that submitted code will last for the duration of the competition (and across multiple matches) and you can not control or modify their execution.  Additionally there is a limit on the programmable memory of the SPHERES, limiting the available coding practices.

Physics 
Participants in Zero Robotics are encouraged to learn and/or improve their knowledge related to basic physics, since optimal algorithms require precise control over forces influencing the speed of the SPHERES. However, students report that "good results [can be obtained] by working exclusively through imposition of the satellite coordinates".

Programming 
Participants in the challenge Zero Robotics learn to program in either C / C++, or MATLAB, or (in the middle school competition) Scratch.  Within these languages there are different APIs to enforce the main parameters of the movements of the satellite. A specialised IDE is offered online on the official website of the competition where students are able submit and save their code.

Past Winners High School Tournament

2018 ECO-SPHERES ISS Finals

1. Alliance: Naughty Dark Spaghetti

 The Dark Team of LSA, IIS "Avogadro" - Liceo Scientifico, Italy
 Stuy-Naught, Stuyvesant High School, NY, USA
 Spaghetti Code, Cedarburg High School, WI, USA

2. Alliance: Hit or Miss

 Proof Robotics, Proof School, CA, USA
 Crab Nebula, Liceo Cecioni, Italy
 Rock Rovers, Council Rock High School South, PA, USA

2018 ECO-SPHERES Virtual Finals

Alliance: NoSleepGang

 Valak, Colegiul National ”Octavian Goga” Sibiu, Romania
 SpaceXD, Parramatta High School, Australia
 Scholar Spacemen, Sydney Boys High School, Australia

2017 LifeSphere ISS Finals

 2016 SpaceSpheres ISS Finals

 2015 SpySpheres ISS Finals

 2014 CoronaSphere ISS Finals

Alliance: LakeElevenVADARS
 
Team Lake, Clear Lake High School, TX, USA
Corà's Eleven Liceo G.B.Brocchi, Italy
VADARS South Charleston High School, WV, USA

2013 CosmoSPHERES ISS Finals

Alliance: y0b0tics! Gru Eagle

y0b0tics!, NJ
The Grew Cru, TX
Cosmic Eagles, MA

2012 RetroSPHERES ISS Finals

Alliance: Mira Loma

Mira Loma Matadors, CA
y0b0tics!, NJ
Green Wrenches, WA

2011 AsteroSPHERES ISS Finals

Alliance: Rocket

River Hill High School, MD
Storming Robots, NJ
Rock ledge High School, FL

Past Winners High School Tournament (EU)

2013 CosmoSPHERES ISS Finals

Alliance: C.O.F.F.E.E.

Sunday Programmers, Italy
Nemesis Colegio Retamar,  Spain
Hello World American, France

2012 RetroSPHERES ISS Finals

Alliance B.E.E.R.

Kathe in Space, Germany
Sunday Programmers,  Italy
Herder-Berlin, Germany

References 

Annual events
Robotics competitions
Programming contests