Skip to content

Commit

Permalink
Shared autonomy challenge (#149)
Browse files Browse the repository at this point in the history
* Shared autonomy challenge added to technical challenges

* Updated shared autonomy challenge to take into consideration comments of others

* Revised shared autonomy challenge in accordance with comments

* Updated draft with feedback from last meeting.

* Shared autonomy wrap-up

* Update shared_autonomy_challenge.tex

Addressed latest comments: mentioned manual placement by team and again emphasized that CC rules apply unless over-ridden.

* Small changes made to address issues raised on Github.
  • Loading branch information
jpha226 authored Mar 20, 2024
1 parent 424fe57 commit 4bae3c0
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 13 deletions.
2 changes: 2 additions & 0 deletions SPL-Challenges.tex
Original file line number Diff line number Diff line change
Expand Up @@ -118,5 +118,7 @@ \section{Introduction}
\subsection{Code Publication}
Every team participating in a challenge must publish the corresponding code used in that competition according to Appendix A.7 of the SPL rule book, unless a specific challenge states otherwise.


\include{challenges/shared_autonomy_challenge}

\end{document}
32 changes: 19 additions & 13 deletions challenges/shared_autonomy_challenge.tex
Original file line number Diff line number Diff line change
Expand Up @@ -27,50 +27,56 @@ \subsubsection{Limitations for Human Operation}
%
\item The human operator may not receive other forms of game perception beyond what the operated robot can stream to it. This limitation includes 1) the human operator watching the challenge live feed on YouTube and 2) other team members with a view of the field communicating game information. However, due to the difficulty of prevention, teams will not be penalized if third-party spectators are overheard remarking on the game and then the human operator bases decisions on those remarks.
%
\item Teams are free to determine the operator interface subject to (1) the operator may not look at the field, (2) no teammate is allowed to communicate game information to the operator. The intention is that the operator may only have game information streamed from the human-operated robot and game controller. The referee has discretion to bar unanticipated modes of communication that go against the spirit of this intention.
\item Teams are free to determine the operator interface subject to (1) the operator may not look at the field, (2) no teammate is allowed to communicate game information to the operator. The intention is that the operator may only have game information streamed from the human-operated robot and game controller. The referee has the discretion to bar unanticipated modes of communication that go against the spirit of this intention.
%
\item The human-operated robot is not permitted to directly score goals on offense and may not take the goal keeper role on defense.
\item The human-operated robot is not permitted to score goals directly on offense and may not take the goalkeeper role on defense.
\end{itemize}

\subsubsection{Limitations for Autonomy in the Human-Operated Robot}

For the human-operated robot, teams are encouraged to automate parts of control that would be difficult for human control. For example, the human operator may provide walk velocity commands that the robot then implements with a walk engine or the operator may request a kick and a kick engine generates the kick on the robot. The human operator may also set higher level controls such as desired location to walk to. However, in the spirit of a mixed human-robot team, the human-operated robot must implement some form of command from the human operator. That is, it is not permissible to participate in the challenge with two fully autonomous robots or to \textit{only} have the human operator augmenting the robot's perception and localization.

For the human-operated robot, teams are encouraged to automate parts of control that would be difficult for human control. For example, the human operator may provide walk velocity commands that the robot then implements with a walk engine, or the operator may request a kick, and a kick engine generates the kick on the robot. The human operator may also set higher-level controls, such as the desired location to walk to. However, in the spirit of a mixed human-robot team, the human-operated robot must implement some form of a command from the human operator. That is, it is not permissible to participate in the challenge with two fully autonomous robots or to \textit{only} have the human operator augmenting the robot's perception and localization.

\subsubsection{Number and duration of attempts}
Each match will give each team one attempt to play offense while the other team defends. An attempt will last 90 seconds or until the attacking team scores. The defending team is not permitted to score. It is illegal to score directly off of kick off. Matches end in wins, losses, or draws depending on games scored.
Each match will give each team one attempt to play offense while the other team defends. An attempt will last 90 seconds or until the attacking team scores. The defending team is not permitted to score goals. If the defending team shoots the ball and it crosses the opponent’s goal line (so that in normal games, a goal would be scored), then a goal kick will be awarded to the attacking team. Effectively, we will treat the entire end line of the attacking team's side of the field as an out-of-bounds line. It is illegal to score directly off of kick off. Matches end in wins, losses, or draws depending on points scored, as described next.

\subsubsection{Scoring matches}
Points will be awarded during matches on the basis of scoring goals and team coordination. To emphasize scoring on attempts, the attacking team receives two points for each successful goal scored. Teams may also receive additional points for passing where a qualifying pass consists of one robot on a team kicking the ball a distance of more than one (1) meter and then the teammate of the kicking robot making contact with the ball before a robot on the other team kicks or dribbles the ball. Here, a kick (or dribble) is taken to be any contact between a robot's foot while lifted off the ground with the ball. The intention is that incidental contact from the opponent does not disqualify a pass but that intentional contact does. For each qualifying pass, a team receives an additional point. The defending team may also score points via passes.
Points will be awarded during matches on the basis of scoring goals and team coordination. To emphasize scoring on attempts, the attacking team receives two points for each successful goal scored. Teams may also receive additional points for passing where a qualifying pass consists of one robot on a team kicking the ball a distance of more than one (1) meter and then the teammate of the kicking robot making contact with the ball before a robot on the other team kicks or dribbles the ball. Here, a kick (or dribble) is taken to be any contact between a robot's foot while lifted off the ground with the ball. The intention is that incidental contact from the opponent does not disqualify a pass but that intentional contact does. For each qualifying pass, a team receives an additional point. The defending team may also score points via passes. Matches will be decided based on points and not on goals scored.

\subsubsection{Attempt Set-up}
All robots will be manually placed in their \textit{set} location by their team in order to speed up the time between attempts. Attacking robots will be placed on one side of the field and the defending robots will be on the other side. The attacking team will try to score on the side where the defense starts. For defense, one robot will be designated as the goal keeper and one as a field player. The goal keeper must be the autonomous robot. The human-operated field player must be within the penalty area line to start.
All robots will be manually placed in their \textit{set} location by their team in order to speed up the time between attempts. Attacking robots will be placed on one side of the field and the defending robots will be on the other side. The attacking team will try to score on the side where the defense starts. For defense, one robot will be designated as the goalkeeper and one as a field player. The goalkeeper must be the autonomous robot. The human-operated field player must be within the penalty area line to start.


\subsubsection{GameController and Penalties}
All robots have to communicate with the GameController. All rules from normal game play in the Champions Cup (including penalties) still apply unless explicitly changed here. The game controller operator will communicate the attempt time verbally at 30 second intervals to human operators.
All robots have to communicate with the GameController. All rules from normal gameplay in the Champions Cup (including penalties) still apply unless explicitly changed here. The game controller operator will communicate the attempt time verbally at 30-second intervals to human operators.

\subsubsection{Network Conditions}
No guarantees are made about the conditions of the wireless network at the competition venue. No limits are placed on communication between the robot and the operator, however, attempts to jam the other team should not be taken.

\subsubsection{Overall Challenge Scoring}
All participating teams will complete at least three matches and additional matches may be held as the main competition schedule allows. For purposes of deciding an overall challenge winner, the ranking will be based on the following in this order:

\subsubsection{Overal Challenge Scoring}
All participating teams will complete at least three matches and additional matches may be held as the main competition schedules allows. For purposes of deciding an overall challenge winner, ranking will be based on the following in this order:
\begin{enumerate}
\item Overall matches won.
\item Highest score.
\item Total successful passes.
\item Goals scored.
\end{enumerate}
If a tie remains after all of these metrics are considered then the winner will be determined by additional matches between the teams tied for top rank.

If a tie remains after all of these metrics are considered, then the winner will be determined by additional matches between the teams tied for top rank. The TC will determine a method for selecting opponents such that teams are appropriately matched in terms of strength.

\subsubsection{Code Release and Research Dissemination}
To foster sharing of novel research and enable future development, all participating teams must:
To foster the sharing of novel research and enable future development, all participating teams must:
\begin{enumerate}
\item Prior to the first day of the challenge, submit up to two (2) .pdf slides presenting the team's approach to the competition. At a minimum, the slides should describe 1) the interface for the human operator, 2) the type of command the operator provides to the robot, and 3) the strategy for coordinating the human-operated and autonomous robot.
\item Prior to the first day of the challenge, submit up to two (2) .pdf slides presenting the team's approach to the competition. At a minimum, the slides should describe 1) the interface for the human operator, 2) the type of command the operator provides to the robot, and 3) the strategy for coordinating the human-operated and autonomous robot. To protect innovation during the competition, these slides will not be shared until after the first day of the challenge.
%
\item Release the code they develop for the human-operated robot (both robot code and interface code).
\end{enumerate}

\subsection{Miscellaneous Notes}

\begin{itemize}
\item Teams are given wide flexibility in interface implementation with the goal to inspire innovation in how the challenge is addressed. For instance, a team could stream images from the human-operated robot but may face low bandwidth at the venue (Note, the rules do not specify that any special effort will be made to provide stronger bandwidth for the challenge). Due to bandwidth constraints, teams may prefer to process images on board robot and send high level state info back to operator. However, this forces the operator to work with the robots imprecise state estimation. The choice is left as a research challenge for teams.
\item Teams are given wide flexibility in interface implementation with the goal of inspiring innovation in how the challenge is addressed. For instance, a team could stream images from the human-operated robot but may face low bandwidth at the venue (Note, the rules do not specify that any special effort will be made to provide stronger bandwidth for the challenge). Due to bandwidth constraints, teams may prefer to process images on board robot and send high level state info back to operator. However, this forces the operator to work with the robots imprecise state estimation. The choice is left as a research challenge for teams.
\item Similarly, no specification is given on what control interface can be presented to the human operator. Teams may choose to directly command walk directions and kicks or to use a mixed autonomy mode where the operator gives high level directives that the human-operated robot implements. The only limitation is that the input from the operator must be some sort of command, i.e., it is not sufficient to only augment the robot's perception or localization.
\item Finally, the hardware of the interface (e.g., keyboard, joystick, virtual reality headset) is left up to the discretion of teams.
\item The defending team is not permitted to score because doing so may be too easy to counterattack with long kicks due to the field size and the limited size of teams.
Expand Down

0 comments on commit 4bae3c0

Please sign in to comment.