diff --git a/.gitignore b/.gitignore index 681e8c50..9c0025cd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ .build +.vscode *.aux *.glo diff --git a/CHANGELOG.md b/CHANGELOG.md index dbb47df5..85312a0b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,7 @@ # Changelog -[Current Draft]: https://github.com/RoboCupAtHome/RuleBook/compare/2023.2..HEAD +[Current Draft]: https://github.com/RoboCupAtHome/RuleBook/compare/2024.2..HEAD +[2024.2]: https://github.com/RoboCupAtHome/RuleBook/compare/2024.1..2024.2 [2024.1]: https://github.com/RoboCupAtHome/RuleBook/compare/2023.2..2024.1 [2023.2]: https://github.com/RoboCupAtHome/RuleBook/compare/2023.1..2023.2 [2023.1]: https://github.com/RoboCupAtHome/RuleBook/compare/2019.v1..2023.1 @@ -10,6 +11,24 @@ All notable changes to this project will be documented in this file. ## Rulebook [Current Draft] +* [#887](https://github.com/RoboCupAtHome/RuleBook/pull/887): Remove Social Standard Platform League. + * The League does have a low number of participants. + * Former SSPL Teams can participate in the OPL and thus modify the Robot. +* [#903](https://github.com/RoboCupAtHome/RuleBook/pull/903): `Carry my luggage` to `Help Me Carry` +* [#908](https://github.com/RoboCupAtHome/RuleBook/pull/908): Remove the possibility of doing other task during gpsr slot + +## Rulebook [2024.2] - 2024-05-03 +Updated release based on German Open feedback. +* [#862](https://github.com/RoboCupAtHome/RuleBook/pull/862): Storing Groceries +* [#863](https://github.com/RoboCupAtHome/RuleBook/pull/863): Receptionist +* [#864](https://github.com/RoboCupAtHome/RuleBook/pull/864): Carry my Luggage +* [#865](https://github.com/RoboCupAtHome/RuleBook/pull/865): GPSR +* [#866](https://github.com/RoboCupAtHome/RuleBook/pull/866): Restaurant +* [#867](https://github.com/RoboCupAtHome/RuleBook/pull/867): Stickler for the Rules +* [#868](https://github.com/RoboCupAtHome/RuleBook/pull/868): EGPSR +* [#869](https://github.com/RoboCupAtHome/RuleBook/pull/869): Serve Breakfast +* [#870](https://github.com/RoboCupAtHome/RuleBook/pull/870): Scoresheet cleanup + ## Rulebook [2024.1] - 2024-03-05 * split document into Rulebook and Organization document [(PR)](https://github.com/RoboCupAtHome/RuleBook/pull/831) * RoboCup@Home Rulebook: Rules and Regulations for the competition. diff --git a/README.md b/README.md index dd88b5cf..ef2fe55a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -RuleBook for RoboCup @Home 2024 +RuleBook for RoboCup @Home 2025 =============================== [![CI](https://github.com/RoboCupAtHome/RuleBook/actions/workflows/ci.yml/badge.svg)](https://github.com/RoboCupAtHome/RuleBook/actions/workflows/ci.yml) @@ -9,7 +9,7 @@ RuleBook for RoboCup @Home 2024 [Organization guidelines](https://robocupathome.github.io/RuleBook/organization/master.pdf) [Score sheets](https://robocupathome.github.io/RuleBook/scoresheets/master.pdf) -The current version for 2024 is **final**; only minor (language) updates and clarifications may be made from now on. +The current version for 2025 is **draft** [Changelog](CHANGELOG.md) @@ -48,6 +48,13 @@ The RoboCup @Home Organizing Committee is always looking for volunteers to assis Contributions and improvements to the rulebook are always welcome in the form of pull requests. +### Building + +The easiest way is to utilize the `docker.io/texlive/texlive:TL2022-historic` image to build everything. + +For convenience, you should execute `build.sh` to make the PDFs with a container runtime. (This requires either `docker` or `podman` to be installed) + + ### Recorded data Data is recorded from the robots during the competition. It is available through the following links: diff --git a/build.sh b/build.sh new file mode 100755 index 00000000..7eaf2b37 --- /dev/null +++ b/build.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +IMAGE=docker.io/texlive/texlive:TL2022-historic + +if command -v podman >/dev/null 2>&1 +then + podman run --rm --net=none -w /data/ -v`pwd`:/data -e TERM=xterm-256color $IMAGE make all +else + docker run --rm --user="$(id -u):$(id -g)" --net=none -w /data/ -v`pwd`:/data -e TERM=xterm-256color $IMAGE make all +fi + diff --git a/Roadmap.tex b/documents/Roadmap.tex similarity index 89% rename from Roadmap.tex rename to documents/Roadmap.tex index 9e13b092..5996cd53 100644 --- a/Roadmap.tex +++ b/documents/Roadmap.tex @@ -11,7 +11,7 @@ %%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \input{./setup/packages.tex} \input{./setup/config.tex} -\input{./roadmap/documentinfo.tex} +\input{./pages/roadmap/documentinfo.tex} % footertext \newcommand{\footline}{RoboCup@Home Roadmap / \rulebookVersion} \input{./setup/styling.tex} @@ -38,12 +38,12 @@ \begin{document} -\input{./roadmap/titlepage} +\input{./pages/roadmap/titlepage} \setcounter{page}{0} \pagenumbering{roman} \pagestyle{empty} -\input{./roadmap/acknowledgments} +\input{./pages/roadmap/acknowledgments} \clearpage \pagestyle{plain} @@ -53,7 +53,7 @@ \setcounter{page}{1} \pagenumbering{arabic} -\input{CompetitionConcepts} +\input{roadmap/CompetitionConcepts} diff --git a/documents/organization.tex b/documents/organization.tex index d0b2644d..9b23b344 100644 --- a/documents/organization.tex +++ b/documents/organization.tex @@ -11,7 +11,7 @@ %%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \input{./setup/packages.tex} \input{./setup/config.tex} -\input{./organization/documentinfo.tex} +\input{./pages/organization/documentinfo.tex} % footertext \newcommand{\footline}{RoboCup@Home Organization document / \rulebookVersion} \input{./setup/styling.tex} @@ -34,12 +34,12 @@ \begin{document} - \input{organization/titlepage} + \input{pages/organization/titlepage} \setcounter{page}{0} \pagenumbering{roman} \pagestyle{empty} - \input{organization/about} + \input{pages/organization/about} \input{pages/acknowledgments} \clearpage @@ -50,9 +50,9 @@ \setcounter{page}{1} \pagenumbering{arabic} - \input{organization/Introduction} - \input{organization/GeneralRules} - \input{organization/Setup} + \input{pages/organization/Introduction} + \input{pages/organization/GeneralRules} + \input{pages/organization/Setup} \printabx \printidx diff --git a/documents/rulebook.tex b/documents/rulebook.tex index e0ea8162..b3eab022 100644 --- a/documents/rulebook.tex +++ b/documents/rulebook.tex @@ -11,7 +11,7 @@ %%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \input{./setup/packages.tex} \input{./setup/config.tex} -\input{./rulebook_pages/documentinfo.tex} +\input{./pages/rulebook/documentinfo.tex} % footertext \newcommand{\footline}{RoboCup@Home Rulebook / \rulebookVersion} \input{./setup/styling.tex} @@ -38,12 +38,12 @@ \begin{document} -\input{./rulebook_pages/titlepage} +\input{./pages/rulebook/titlepage} \setcounter{page}{0} \pagenumbering{roman} \pagestyle{empty} -\input{rulebook_pages/about} +\input{pages/rulebook/about} \input{pages/acknowledgments} \clearpage @@ -54,11 +54,11 @@ \setcounter{page}{1} \pagenumbering{arabic} -\input{rulebook_pages/Introduction} +\input{pages/rulebook/Introduction} -%\input{CompetitionConcepts} +%\input{roadmap/CompetitionConcepts} -\input{rulebook_pages/GeneralRules} +\input{pages/rulebook/GeneralRules} %\input{Setup} @@ -79,7 +79,7 @@ \chapter{Tests in Stage I} % Uncomment to get aesthetic improvement \cleardoublepage -\input{tasks/CarryMyLuggage} +\input{tasks/HelpMeCarry} \newpage \input{tasks/GPSR} \newpage @@ -117,7 +117,7 @@ \chapter{Tests in Stage II} %%% FINALS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\input{tests/Finals} +\input{tasks/Finals} \printabx diff --git a/documents/scoresheets.tex b/documents/scoresheets.tex index 0af19a79..3c08bbcc 100644 --- a/documents/scoresheets.tex +++ b/documents/scoresheets.tex @@ -89,7 +89,7 @@ \pagestyle{plain} -\input{registration_form.tex} +\input{pages/scoresheets/registration_form.tex} \renewcommand{\shortScoresheet}{false} @@ -104,9 +104,9 @@ %%% STAGE I %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% STAGE 1 TESTS GO HERE %%% -\renewcommand{\currentTest}{Carry my Luggage} +\renewcommand{\currentTest}{Help Me Carry} \begin{scoresheet} -\input{scoresheets/CarryMyLuggage} +\input{scoresheets/HelpMeCarry} \end{scoresheet} \renewcommand{\currentTest}{General Purpose Service Robot} diff --git a/latexdockercmd.sh b/latexdockercmd.sh deleted file mode 100755 index dd9228b7..00000000 --- a/latexdockercmd.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -IMAGE=texlive/texlive:TL2022-historic -docker run --rm --user="$(id -u):$(id -g)" --net=none -w /data/ -v`pwd`:/data -e TERM=xterm-256color $IMAGE make all diff --git a/Appendices.tex b/pages/Appendices.tex similarity index 89% rename from Appendices.tex rename to pages/Appendices.tex index ac944216..fa8ed84a 100644 --- a/Appendices.tex +++ b/pages/Appendices.tex @@ -4,7 +4,7 @@ \input{pages/example_skills} \newpage -\input{general_rules/arena_decorations.tex} +\input{pages/general_rules/arena_decorations.tex} \end{appendices} diff --git a/pages/example_skills.tex b/pages/example_skills.tex index f1a69f94..fdca6351 100644 --- a/pages/example_skills.tex +++ b/pages/example_skills.tex @@ -2,7 +2,7 @@ \chapter{Example Skills} \label{chap:example-skills} The following section presents a list of \iterm{Example Skills} with an high degree of difficulty which can be exploited during the \textit{Open Demonstrations} (See~\refsec{sec:open-demonstrations}. -Other skills not on this list (yet) may be added as well. If you want to do so, please let the TC know via email (tc@robocupathome.org) for their inclusion on the RuleBook so all teams may also show this skill. +Other skills not on this list (yet) may be added as well. If you want to do so, please let the TC know via email (rc-home-tc@lists.robocup.org) for their inclusion on the RuleBook so all teams may also show this skill. Please note that these examples are to illustrate the level of complexity and applicability that should be shown. For instance, \enquote{Handle a pan} is listed in the category of \textit{Complex manipulation}, but it is extensive to handling pans, pots, woks and any other cookware with handles. diff --git a/general_rules/AudienceInteraction.tex b/pages/general_rules/AudienceInteraction.tex similarity index 100% rename from general_rules/AudienceInteraction.tex rename to pages/general_rules/AudienceInteraction.tex diff --git a/general_rules/ContinueRules.tex b/pages/general_rules/ContinueRules.tex similarity index 100% rename from general_rules/ContinueRules.tex rename to pages/general_rules/ContinueRules.tex diff --git a/general_rules/ExternalDevices.tex b/pages/general_rules/ExternalDevices.tex similarity index 100% rename from general_rules/ExternalDevices.tex rename to pages/general_rules/ExternalDevices.tex diff --git a/general_rules/ManipulationChallenge.tex b/pages/general_rules/ManipulationChallenge.tex similarity index 100% rename from general_rules/ManipulationChallenge.tex rename to pages/general_rules/ManipulationChallenge.tex diff --git a/general_rules/OpenChallenge.tex b/pages/general_rules/OpenChallenge.tex similarity index 100% rename from general_rules/OpenChallenge.tex rename to pages/general_rules/OpenChallenge.tex diff --git a/general_rules/Organization.tex b/pages/general_rules/Organization.tex similarity index 95% rename from general_rules/Organization.tex rename to pages/general_rules/Organization.tex index 12c3c6bb..6be00e0f 100644 --- a/general_rules/Organization.tex +++ b/pages/general_rules/Organization.tex @@ -34,7 +34,6 @@ \subsection{Schedule} \item \textbf{Participation is default:} Teams have to inform the OC in advance if they are skipping a Test Block. Without such indication, they may receive a penalty when not attending (see~\refsec{rule:not_attending}). - \item \textbf{GPSR Block: } During the GPSR slot teams are allowed to perform one Stage 1 test of their choice instead, to allow more attempts for newer or specialized teams. Note that participation in GPSR is mandatory to advance to Stage 2. \end{enumerate} % Please add the following required packages to your document preamble: @@ -79,7 +78,7 @@ \subsection{Schedule} \\\hhline{~---~} \cell{Block 1\\\footnotesize(9:00--11:00)} - & \cell{Carry my Luggage} + & \cell{Help Me Carry} & \cell{Serve Breakfast} & \cell{Restaurant} & \cellcolor{white} diff --git a/general_rules/PenaltiesBonuses.tex b/pages/general_rules/PenaltiesBonuses.tex similarity index 100% rename from general_rules/PenaltiesBonuses.tex rename to pages/general_rules/PenaltiesBonuses.tex diff --git a/general_rules/Procedure.tex b/pages/general_rules/Procedure.tex similarity index 100% rename from general_rules/Procedure.tex rename to pages/general_rules/Procedure.tex diff --git a/general_rules/Robots-OPL.tex b/pages/general_rules/Robots-OPL.tex similarity index 100% rename from general_rules/Robots-OPL.tex rename to pages/general_rules/Robots-OPL.tex diff --git a/general_rules/Robots-SPL.tex b/pages/general_rules/Robots-SPL.tex similarity index 100% rename from general_rules/Robots-SPL.tex rename to pages/general_rules/Robots-SPL.tex diff --git a/general_rules/Robots.tex b/pages/general_rules/Robots.tex similarity index 95% rename from general_rules/Robots.tex rename to pages/general_rules/Robots.tex index df5c6daf..619d5933 100644 --- a/general_rules/Robots.tex +++ b/pages/general_rules/Robots.tex @@ -26,9 +26,9 @@ \subsection{Appearance and Safety} \end{enumerate} The compliance with these rules will be verified during \RobotInspection{} (see \ref{sec:robot_inspection}). -\input{general_rules/Robots-SPL} +\input{pages/general_rules/Robots-SPL} -\input{general_rules/Robots-OPL} +\input{pages/general_rules/Robots-OPL} diff --git a/general_rules/Scenario.tex b/pages/general_rules/Scenario.tex similarity index 100% rename from general_rules/Scenario.tex rename to pages/general_rules/Scenario.tex diff --git a/general_rules/TeamRegistration.tex b/pages/general_rules/TeamRegistration.tex similarity index 100% rename from general_rules/TeamRegistration.tex rename to pages/general_rules/TeamRegistration.tex diff --git a/general_rules/arena_decorations.tex b/pages/general_rules/arena_decorations.tex similarity index 100% rename from general_rules/arena_decorations.tex rename to pages/general_rules/arena_decorations.tex diff --git a/general_rules/vizbox.tex b/pages/general_rules/vizbox.tex similarity index 100% rename from general_rules/vizbox.tex rename to pages/general_rules/vizbox.tex diff --git a/introduction/Awards.tex b/pages/introduction/Awards.tex similarity index 98% rename from introduction/Awards.tex rename to pages/introduction/Awards.tex index 4bae2a65..dfeaa19f 100644 --- a/introduction/Awards.tex +++ b/pages/introduction/Awards.tex @@ -45,7 +45,7 @@ \subsection{Best Human-Robot Interface Award} \subsection{Best Poster Award} \label{award:poster} -To foster scientific knowledge exchange and reward the teams' efforts to present their research contributions, all scientific posters of each league are evaluated and have the chance of receiving the \DSPLPosterAward, the \OPLPosterAward, or the \SSPLPosterAward, respectively. +To foster scientific knowledge exchange and reward the teams' efforts to present their research contributions, all scientific posters of each league are evaluated and have the chance of receiving the \DSPLPosterAward or the \OPLPosterAward respectively. Candidate posters must present innovative and state-of-the-art research within a field with a direct application to \AtHome, and demonstrate successful and clear results in an easy-to-understand way. In addition to being attractive and well-rated in the \PS{} (see~\refsec{sec:poster_teaser_session}), the described research must have impact in the team's performance during the competition. diff --git a/introduction/Competition.tex b/pages/introduction/Competition.tex similarity index 100% rename from introduction/Competition.tex rename to pages/introduction/Competition.tex diff --git a/introduction/Infrastructure.tex b/pages/introduction/Infrastructure.tex similarity index 100% rename from introduction/Infrastructure.tex rename to pages/introduction/Infrastructure.tex diff --git a/introduction/Leagues.tex b/pages/introduction/Leagues.tex similarity index 59% rename from introduction/Leagues.tex rename to pages/introduction/Leagues.tex index 076e14d2..b8cec27c 100644 --- a/introduction/Leagues.tex +++ b/pages/introduction/Leagues.tex @@ -7,11 +7,10 @@ \section{Leagues} \label{sec:leagues} -\AtHome{} is divided into three Leagues. One of these grants complete freedom to all competitors with respect to the robot used, while two of them are \SPLs{}, namely all competitors use the same robot. The official leagues and their names are: +\AtHome{} is divided into two Leagues. One of these grants complete freedom to all competitors with respect to the robot used, while in the other all competitors use the same robot. The official leagues and their names are: \begin{itemize} \item \OPL \item \DSPL - \item \SSPL \end{itemize} \begin{wrapfigure}[21]{r}{0.30\textwidth} @@ -22,14 +21,6 @@ \section{Leagues} \caption{Toyota HSR} \label{fig:toyota_hsr} \end{center} - - \vspace{-20pt} - \begin{center} - \includegraphics[width=0.20\textwidth]{images/softbank_pepper.png} - \vspace{-10pt} - \caption{Softbank / Aldebaran Pepper} - \label{fig:softbank_pepper} - \end{center} \end{wrapfigure} Each league focuses on a different aspect of service robotics by targeting specific abilities. @@ -39,13 +30,6 @@ \subsection{Domestic Standard Platform League (DSPL)} As a consequence, the DSPL focuses on \AmI, \CV, \OM, safe indoor \NAV{} and \MAP, and \TP. The robot used in the DSPL is the \HSR, shown in Figure \ref{fig:toyota_hsr}. -\subsection{Social Standard Platform League (SSPL)} - -The SSPL takes robots away from a traditional passive servant role, as the robot is now the one who actively looks for interaction. -From a party waiter in a domestic environment to a hostess in a museum or shopping mall, in SSPL we look for the next user who may require the robot's services. -Hence, this league focuses on \HRI, \NLP, \PerDet{} and \PerRec, \AB, and safe outdoor \NAV{} and \MAP. -The robot to be used in the SSPL is the \PEPPER, shown in Figure \ref{fig:softbank_pepper}. - \subsection{Open Platform League (OPL)} The OPL has had the same modus operandi since the foundation of \AtHome. diff --git a/introduction/Organization.tex b/pages/introduction/Organization.tex similarity index 87% rename from introduction/Organization.tex rename to pages/introduction/Organization.tex index a6802497..a3e3ddea 100644 --- a/introduction/Organization.tex +++ b/pages/introduction/Organization.tex @@ -8,20 +8,20 @@ \section{Organization} \AtHome{} is organized into three subcommittees. The current members of the committees are listed at \url{https://athome.robocup.org/committees/}. -\subsection{Executive Committee --- ec@robocupathome.org} +\subsection{Executive Committee --- rc-home-ec@lists.robocup.org} \label{sec:ec} The \EC{} consists of members of the board of trustees, and representatives of each activity area, and supervises both the TC and OC. The committee is responsible for the long-term planning of the league and cast the final vote in all decisions within the competition, including those pertaining to any of the committees and any other affair that requires a qualified vote. Additionally, the EC must act when any of the committees fail, as it responds to the Trustee board and directs the league accordingly. -\subsection{Technical Committee --- tc@robocupathome.org} +\subsection{Technical Committee --- rc-home-tc@lists.robocup.org} \label{sec:tc} The \TC{} is responsible for the rules of the league; its main focus is writing the rulebook and refereeing. The members of the EC are always members of the TC as well. -\subsection{Organizing Committee --- oc@robocupathome.org} +\subsection{Organizing Committee --- rc-home-oc@lists.robocup.org} \label{sec:oc} The \OC{} is responsible for the organization of the competition, namely it creates the schedule and provides information about the scenarios. diff --git a/organization/GeneralRules.tex b/pages/organization/GeneralRules.tex similarity index 67% rename from organization/GeneralRules.tex rename to pages/organization/GeneralRules.tex index 6607ee8f..706f297c 100644 --- a/organization/GeneralRules.tex +++ b/pages/organization/GeneralRules.tex @@ -12,25 +12,25 @@ \chapter{General Rules and Regulations} Every rule in this section can be considered to implicitly include the term \emph{\enquote{unless stated otherwise}}. This means that additional or contrary rules, in particular with respect to the specification of tests, have a higher priority than those mentioned in the general rules and regulations. -\input{general_rules/TeamRegistration} +\input{pages/general_rules/TeamRegistration} -\input{general_rules/vizbox} +\input{pages/general_rules/vizbox} -%\input{general_rules/Scenario} +%\input{pages/general_rules/Scenario} -\input{general_rules/Robots} +\input{pages/general_rules/Robots} -\input{general_rules/ExternalDevices} +\input{pages/general_rules/ExternalDevices} -\input{general_rules/Organization} +\input{pages/general_rules/Organization} -\input{general_rules/Procedure} +\input{pages/general_rules/Procedure} -%\input{general_rules/ContinueRules.tex} +%\input{pages/general_rules/ContinueRules.tex} -\input{general_rules/PenaltiesBonuses} +\input{pages/general_rules/PenaltiesBonuses} -\input{general_rules/OpenChallenge} +\input{pages/general_rules/OpenChallenge} % Local Variables: % TeX-master: "Rulebook" diff --git a/organization/Introduction.tex b/pages/organization/Introduction.tex similarity index 64% rename from organization/Introduction.tex rename to pages/organization/Introduction.tex index d2f1db3b..ae0dacd2 100644 --- a/organization/Introduction.tex +++ b/pages/organization/Introduction.tex @@ -7,15 +7,15 @@ \chapter{Introduction} \label{chap:introduction} -\input{introduction/Organization} +\input{pages/introduction/Organization} -\input{introduction/Infrastructure} +\input{pages/introduction/Infrastructure} -\input{introduction/Leagues} +\input{pages/introduction/Leagues} -%\input{introduction/Competition} +%\input{pages/introduction/Competition} -\input{introduction/Awards} +\input{pages/introduction/Awards} % Local Variables: % TeX-master: "Rulebook" diff --git a/organization/Setup.tex b/pages/organization/Setup.tex similarity index 100% rename from organization/Setup.tex rename to pages/organization/Setup.tex diff --git a/organization/about.tex b/pages/organization/about.tex similarity index 100% rename from organization/about.tex rename to pages/organization/about.tex diff --git a/organization/documentinfo.tex b/pages/organization/documentinfo.tex similarity index 100% rename from organization/documentinfo.tex rename to pages/organization/documentinfo.tex diff --git a/organization/titlepage.tex b/pages/organization/titlepage.tex similarity index 100% rename from organization/titlepage.tex rename to pages/organization/titlepage.tex diff --git a/CompetitionConcepts.tex b/pages/roadmap/CompetitionConcepts.tex similarity index 100% rename from CompetitionConcepts.tex rename to pages/roadmap/CompetitionConcepts.tex diff --git a/roadmap/acknowledgments.tex b/pages/roadmap/acknowledgments.tex similarity index 100% rename from roadmap/acknowledgments.tex rename to pages/roadmap/acknowledgments.tex diff --git a/roadmap/documentinfo.tex b/pages/roadmap/documentinfo.tex similarity index 100% rename from roadmap/documentinfo.tex rename to pages/roadmap/documentinfo.tex diff --git a/roadmap/titlepage.tex b/pages/roadmap/titlepage.tex similarity index 100% rename from roadmap/titlepage.tex rename to pages/roadmap/titlepage.tex diff --git a/rulebook_pages/GeneralRules.tex b/pages/rulebook/GeneralRules.tex similarity index 64% rename from rulebook_pages/GeneralRules.tex rename to pages/rulebook/GeneralRules.tex index 2c9c5f96..10b97b05 100644 --- a/rulebook_pages/GeneralRules.tex +++ b/pages/rulebook/GeneralRules.tex @@ -12,26 +12,26 @@ \chapter{General Rules and Regulations} Every rule in this section can be considered to implicitly include the term \emph{\enquote{unless stated otherwise}}. This means that additional or contrary rules, in particular with respect to the specification of tests, have a higher priority than those mentioned in the general rules and regulations. -%\input{general_rules/TeamRegistration} +%\input{pages/general_rules/TeamRegistration} -%\input{general_rules/vizbox} +%\input{pages/general_rules/vizbox} -\input{general_rules/Scenario} +\input{pages/general_rules/Scenario} -%\input{general_rules/Robots} +%\input{pages/general_rules/Robots} -%\input{general_rules/ExternalDevices} +%\input{pages/general_rules/ExternalDevices} -%\input{general_rules/Organization} +%\input{pages/general_rules/Organization} -%\input{general_rules/Procedure} +%\input{pages/general_rules/Procedure} -\input{general_rules/ContinueRules} -\input{general_rules/PenaltiesBonuses} +\input{pages/general_rules/ContinueRules} +\input{pages/general_rules/PenaltiesBonuses} -%\input{general_rules/OpenChallenge} +%\input{pages/general_rules/OpenChallenge} -%\input{general_rules/ManipulationChallenge} +%\input{pages/general_rules/ManipulationChallenge} % Local Variables: % TeX-master: "Rulebook" % End: diff --git a/rulebook_pages/Introduction.tex b/pages/rulebook/Introduction.tex similarity index 88% rename from rulebook_pages/Introduction.tex rename to pages/rulebook/Introduction.tex index 7d150914..289ee5fb 100644 --- a/rulebook_pages/Introduction.tex +++ b/pages/rulebook/Introduction.tex @@ -21,15 +21,15 @@ \section{RoboCup@Home} The focus is on, but is not limited to, the following domains: human-robot interaction and cooperation, navigation and mapping in dynamic environments, computer vision and object recognition under natural light conditions, object manipulation, adaptive behaviors, behavior integration, ambient intelligence, standardization and system integration. The competition is co-located with the RoboCup symposium. -%\input{introduction/Organization} +%\input{pages/introduction/Organization} -%\input{introduction/Infrastructure} +%\input{pages/introduction/Infrastructure} -%\input{introduction/Leagues} +%\input{pages/introduction/Leagues} -\input{introduction/Competition} +\input{pages/introduction/Competition} -%\input{introduction/Awards} +%\input{pages/introduction/Awards} % Local Variables: % TeX-master: "Rulebook" diff --git a/rulebook_pages/about.tex b/pages/rulebook/about.tex similarity index 100% rename from rulebook_pages/about.tex rename to pages/rulebook/about.tex diff --git a/rulebook_pages/documentinfo.tex b/pages/rulebook/documentinfo.tex similarity index 100% rename from rulebook_pages/documentinfo.tex rename to pages/rulebook/documentinfo.tex diff --git a/rulebook_pages/titlepage.tex b/pages/rulebook/titlepage.tex similarity index 100% rename from rulebook_pages/titlepage.tex rename to pages/rulebook/titlepage.tex diff --git a/registration_form.tex b/pages/scoresheets/registration_form.tex similarity index 100% rename from registration_form.tex rename to pages/scoresheets/registration_form.tex diff --git a/scoresheets/CarryMyLuggage.tex b/scoresheets/HelpMeCarry.tex similarity index 95% rename from scoresheets/CarryMyLuggage.tex rename to scoresheets/HelpMeCarry.tex index fa52bf6b..5465f837 100644 --- a/scoresheets/CarryMyLuggage.tex +++ b/scoresheets/HelpMeCarry.tex @@ -3,16 +3,16 @@ \begin{scorelist} \scoreheading{Main Goal} + \scoreitem{300}{Following the person to the car} \scoreitem{15}{Perceiving the correct beg (visualize on screen or say which one)} \scoreitem{100}{Picking up the correct bag} - \scoreitem{300}{Following the person to the car} \scoreitem{50}{Avoiding the crowd of people obstructing the path} \scoreitem{50}{Avoiding the small object on the ground} \scoreitem{50}{Avoiding the hard-to-see object} \scoreitem{50}{Avoiding the area blocked with retractable barriers} \scoreheading{Bonus rewards} - \scoreitem{100}{Re-entering the arena} + \scoreitem{200}{Re-reaching the starting location} \scoreitem{300}{Joining and staying in the queue on the way to the arena} diff --git a/scoresheets/SPR.tex b/scoresheets/SPR.tex index 16260fba..e559c4a7 100644 --- a/scoresheets/SPR.tex +++ b/scoresheets/SPR.tex @@ -12,7 +12,7 @@ \scoreitem{ 5}{Answering all 5 riddle game question} \ifDSPL{ - \scoreheading{[DSPL only] Blind man's bluff game} % Max 130 + \scoreheading{[DSPL] Blind man's bluff game} % Max 130 \scoreitem[10]{ 5}{Understanding question on the first attempt} % 50 \scoreitem[10]{ 2}{Understanding question on the second attempt} % -- (20) \scoreitem[10]{ 2}{Correctly answered a question} % 20 @@ -21,7 +21,7 @@ } \ifNotDSPL{ - \scoreheading{[OPL \& SSPL] Blind man's bluff game} % Max 130 + \scoreheading{[OPL] Blind man's bluff game} % Max 130 \scoreitem[ 5]{10}{Understanding question on the first attempt} % 50 \scoreitem[ 5]{ 5}{Understanding question on the second attempt} % -- (25) \scoreitem[ 5]{ 5}{Correctly answered a question} % 25 diff --git a/setup/active_version.tex b/setup/active_version.tex index 7bbb1c49..1fc98e20 100644 --- a/setup/active_version.tex +++ b/setup/active_version.tex @@ -1,6 +1,6 @@ -\newcommand{\YEAR}{2024} -%\newcommand{\STATE}{Draft} -\newcommand{\STATE}{Final} +\newcommand{\YEAR}{2025} +\newcommand{\STATE}{Draft} +%\newcommand{\STATE}{Final} % % Local Variables: % TeX-master: "../Rulebook" diff --git a/setup/macros.tex b/setup/macros.tex index 52ac3331..87ae03e1 100644 --- a/setup/macros.tex +++ b/setup/macros.tex @@ -25,7 +25,6 @@ \def\SPL{\iaterm{Standard Platform League}{SPL}} \def\SPLs{\iaterm{Standard Platform Leagues}{SPLs}} \def\DSPL{\iaterm{Domestic Standard Platform League}{DSPL}} -\def\SSPL{\iaterm{Social Standard Platform League}{SSPL}} \def\EC{\iaterm{executive committee}{EC}} \def\TC{\iaterm{technical committee}{TC}} @@ -56,7 +55,6 @@ \def\HSR{\iterm{Toyota HSR}} \def\MountingBracket{\iterm{Mounting Bracket}} -\def\PEPPER{\iterm{Softbank Pepper}} \def\SetupDays{\iterm{Setup Days}} \def\PS{\iterm{Poster Session}} @@ -75,7 +73,6 @@ \def\HRIAward{\iterm{Best Human-Robot Interface Award}} \def\DSPLPosterAward{\iterm{Best DSPL Poster Award}} -\def\SSPLPosterAward{\iterm{Best SSPL Poster Award}} \def\OPLPosterAward{\iterm{Best OPL Poster Award}} \def\OCAward{\iterm{Best Open Challenge Award}} diff --git a/setup/macros_leagues.tex b/setup/macros_leagues.tex index 18ada772..7e5eaccd 100644 --- a/setup/macros_leagues.tex +++ b/setup/macros_leagues.tex @@ -25,12 +25,6 @@ \newcommand{\leagueFullName}{Domestic Standard Platform League} }{} -%% Import team from the Social Standard Platform League %%%%%%%%% %% -\ifthenelse{\equal{\league}{SSPL}}{ - \newcommand\teamsListFile{teams/SSPL.tex} - \newcommand{\leagueFullName}{Social Standard Platform League} -}{} - %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %% Per league macros %% @@ -42,7 +36,7 @@ } \newcommand{\ifNotDSPL}[1]{ - \ifthenelse{\equal{\league}{} \OR \equal{\league}{OPL} \OR \equal{\league}{SSPL}}{#1}{} + \ifthenelse{\equal{\league}{} \OR \equal{\league}{OPL}}{#1}{} } @@ -52,27 +46,9 @@ } \newcommand{\ifNotOPL}[1]{ - \ifthenelse{\equal{\league}{} \OR \equal{\league}{DSPL} \OR \equal{\league}{SSPL}}{#1}{} -} - - -%% Open Standard Platform League %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% -\newcommand{\ifSSPL}[1]{ - \ifthenelse{\equal{\league}{} \OR \equal{\league}{SSPL}}{#1}{} -} - -\newcommand{\ifNotSSPL}[1]{ - \ifthenelse{\equal{\league}{} \OR \equal{\league}{OPL} \OR \equal{\league}{DSPL}}{#1}{} + \ifthenelse{\equal{\league}{} \OR \equal{\league}{DSPL}}{#1}{} } -% \newcommand{\ifLeague}[2]{ -% \ifNotSSPL{#1} -% \ifSSPL{#2} -% } - - - - %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %% List of teams import macro %% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% diff --git a/tests/Finals.tex b/tasks/Finals.tex similarity index 97% rename from tests/Finals.tex rename to tasks/Finals.tex index e710b0e8..28755439 100644 --- a/tests/Finals.tex +++ b/tasks/Finals.tex @@ -16,8 +16,7 @@ \section{Structure and Theme} The objectives for each league for this year are: \begin{itemize} - \item \emph{OPL/DSPL}: The robot helps a person in preparing dinner. - \item \emph{SSPL}: The robot helps a person in preparing dinner. + \item The robot helps a person in preparing dinner. \end{itemize} diff --git a/tasks/CarryMyLuggage.tex b/tasks/HelpMeCarry.tex similarity index 64% rename from tasks/CarryMyLuggage.tex rename to tasks/HelpMeCarry.tex index 27c24124..dc7cac74 100644 --- a/tasks/CarryMyLuggage.tex +++ b/tasks/HelpMeCarry.tex @@ -1,13 +1,13 @@ -\section{Carry My Luggage} +\section{Help Me Carry} \label{test:carry-my-luggage} -The robot helps the operator to carry some luggage to a car which is parked outside. +The robot's owner needs help carrying something from the car to the starting location. -\noindent \textbf{Main Goal:} The robot helps the operator to carry a bag to a car parked outside.\\ +\noindent \textbf{Main Goal:} The robot helps the operator to carry a bag from a car parked outside.\\ \noindent \textbf{Optional Goals:} \begin{enumerate}[nosep] - \item Re-entering the arena - \item Following the queue on the way back to the arena + \item Re-reaching the starting location + \item Following the queue on the way back \end{enumerate} \subsection*{Focus} @@ -17,17 +17,24 @@ \subsection*{Setup} \begin{itemize}[nosep] \item \textbf{Locations}: \begin{itemize} - \item The test takes place both inside and outside the \Arena{}. - \item The robot starts at a predefined location in the living room. + \item The test is performed outside the arena in a public space. + \item The robot starts at a predefined location. \end{itemize} - \item \textbf{People}: The operator is standing in front of the robot and is pointing at the bag to be carried outside. - \item \textbf{Objects}: At least two bags are placed near the operator (within a 2m distance and visible to the robot). + \item \textbf{People}: The operator is standing in front of the robot. + \item \textbf{Objects}: + \begin{itemize}[nosep] + \item At least two bags are placed near the car. + \item A small object on the ground. + \item A hard-to-see object. + \item Retractable barriers. + \end{itemize} + + \item \textbf{Uncontrolled environment:} There are no restrictions on other people walking by or standing around throughout the complete task. \end{itemize} \subsection*{Procedure} \begin{enumerate}[nosep] - \item \textbf{Picking up the bag:} The robot picks up the bag pointed at by the operator. - \item \textbf{Following the operator:} The robot should inform the operator when it is ready to follow them. The operator walks naturally towards the car; after reaching the car, the operator takes the bag back and thanks the robot. + \item \textbf{Following the operator:} The robot should inform the operator when it is ready to follow them. The operator walks naturally towards the car; after reaching the car, the operator points at the bag. \item \textbf{Obstacles:} The robot will face 4 obstacles along its way (in arbitrary order): \begin{enumerate*}[label=(\alph*)] \item a small object on the ground, @@ -35,16 +42,14 @@ \subsection*{Procedure} \item a crowd of people obstructing the path outside, and \item a small area blocked using retractable barriers. \end{enumerate*} - + \item \textbf{Picking up the bag:} The robot picks up the bag pointed at by the operator. + \item \textbf{Bag delivery:} The robot takes the bag to the starting location. It may place the bag on the floor. \item \textbf{Optional goals:} \begin{enumerate} - \item \textbf{Re-entering the arena}: The robot returns to the arena, going back in through the entrance. - - \item \textbf{Following the queue:} After the robot has reached the car, a few of the people that formed the crowd obstructing the robot return to the arena in a queue. The robot can decide to join the queue on its way back to the arena, in a manner that appears natural to the people in the queue. + \item \textbf{Following the queue:} After the robot has reached the car, a few of the people that formed the crowd obstructing the robot return to the starting location in a queue. The robot can decide to join the queue on its way back, in a manner that appears natural to the people in the queue. \end{enumerate} - \end{enumerate} @@ -63,16 +68,6 @@ \subsection*{Additional Rules and Remarks} \item Touching the robot (e.g., pulling the robot's hand) \end{enumerate} Note: Penalties for human assistance are only applied if the robot continues to score after the interaction. Penalties can be applied multiple times up to a total of 250 points. - %\begin{table}[h] - % \begin{tabular}{m{0.8\linewidth} c} - % \textbf{Action} & \textbf{Reduction} \\\hline - % Handing over the bag to the robot & 100pts \\ - % Finding the operator while following them: & \\ - % \hspace{0.5cm}- Natural interaction (e.g. waving and calling) & 100pts \\ - % \hspace{0.5cm}- Non-natural interaction (e.g. raising both hands and jumping) & 200pts \\ - % \hspace{0.5cm}- Touching the robot (e.g. pulling the robot's hand) & 400pts \\\hline - % \end{tabular} - %\end{table} \end{enumerate} @@ -81,12 +76,13 @@ \subsection*{Referee Instructions} The referees need to: \begin{itemize}[nosep] \item Select one volunteer to act as the operator. - \item Select three to four people to obstruct the robot's path outside and form the queue on the way back to the arena. + \item Select three to four people to obstruct the robot's path outside and form the queue on the way back. \item Choose positions for the bags and assign a bag to the operator. \item Choose the order of the obstacles that the robot will face outside while following the operator. \item Designate a location outside as a car location. - \item Designate a location for the queue to form returning into the arena. The queue is composed of the same people that form the crowd. - \item Mind the robot when it goes outside the \Arena{}. + \item Designate a location for the queue to form. The queue is composed of the same people that form the crowd. + \item Mind the robot when it moves around. + \item Instruct the Operator to follow the robots instructions, step over the small obstacle and closely around the hard to see object \end{itemize} \subsection*{OC Instructions} @@ -95,7 +91,8 @@ \subsection*{OC Instructions} \begin{itemize}[nosep] \item Select and announce the robot's starting point. \item Select which bags will be used in the test. + \item Organize retractable barriers. \end{itemize} \subsection*{Score Sheet} -\input{scoresheets/CarryMyLuggage.tex} +\input{scoresheets/HelpMeCarry.tex} diff --git a/tasks/CleanUp.tex b/tasks/old/CleanUp.tex similarity index 100% rename from tasks/CleanUp.tex rename to tasks/old/CleanUp.tex diff --git a/tests/CocktailParty.tex b/tasks/old/CocktailParty.tex similarity index 99% rename from tests/CocktailParty.tex rename to tasks/old/CocktailParty.tex index 4df409ac..d906ca3d 100644 --- a/tests/CocktailParty.tex +++ b/tasks/old/CocktailParty.tex @@ -1,4 +1,4 @@ -\section{Cocktail Party [SSPL only]} +\section{Cocktail Party} The robot has to learn and recognize previously unknown people, and fetch orders. diff --git a/tests/EEGPSR.tex b/tasks/old/EEGPSR.tex similarity index 100% rename from tests/EEGPSR.tex rename to tasks/old/EEGPSR.tex diff --git a/tasks/Farewell.tex b/tasks/old/Farewell.tex similarity index 98% rename from tasks/Farewell.tex rename to tasks/old/Farewell.tex index f1871e2d..fa352882 100644 --- a/tasks/Farewell.tex +++ b/tasks/old/Farewell.tex @@ -4,7 +4,7 @@ \section{Farewell [Party Host]} \subsection*{Description} Some guests are tired, and they call the robot to retrieve their coat. One guest is a medical doctor and needs to leave urgently. It's raining outside and there is only one umbrella, so the robot takes the guests one by one to their cab and returns - with the (optional for SSPL) umbrella.\\ + with the umbrella.\\ \textbf{Main goal:} diff --git a/tasks/FindMyDisk.tex b/tasks/old/FindMyDisk.tex similarity index 100% rename from tasks/FindMyDisk.tex rename to tasks/old/FindMyDisk.tex diff --git a/tasks/FindMyMates.tex b/tasks/old/FindMyMates.tex similarity index 100% rename from tasks/FindMyMates.tex rename to tasks/old/FindMyMates.tex diff --git a/tasks/HandMeThat.tex b/tasks/old/HandMeThat.tex similarity index 100% rename from tasks/HandMeThat.tex rename to tasks/old/HandMeThat.tex diff --git a/tests/HelpMeCarry.tex b/tasks/old/HelpMeCarry.tex similarity index 81% rename from tests/HelpMeCarry.tex rename to tasks/old/HelpMeCarry.tex index 93b147d5..4fc4af78 100644 --- a/tests/HelpMeCarry.tex +++ b/tasks/old/HelpMeCarry.tex @@ -5,12 +5,7 @@ \subsection{Goal} The robot must help bringing some objects into the arena from outside. \subsection{Focus} -This test focuses on safe, robust navigation, people following and navigation in unknown environments. - -\begin{itemize}[leftmargin=3cm] - \item[DSPL \& OPL] Test focuses also in Object Detection and Manipulation. - \item[SSPL] Test focuses also in People Detection and Human-Robot Interaction. -\end{itemize} +This test focuses on safe, robust navigation, people following and navigation in unknown environments as well as in Object Detection and Manipulation. \subsection{Setup} The operator (the robot's owner) has a set of bags (and possibly other objects) that need to be carried from a place outside the arena back inside. @@ -44,24 +39,13 @@ \subsection{Task} \end{enumerate} \setcounter{enumi}{\theenumTemp} - \item {[SSPL only]} \textbf{Look for help} \\ - The robot is asked to find a person in a given room and ask them to assist carrying the groceries (e.g.~\enquote{Look for Louise in the Kitchen and ask her to help us}). - \begin{enumerate} - \item \textbf{Entering the house:} While on its way back to the house, the robot deals with different obstacles along it's path. - \begin{itemize}[leftmargin=3cm] - \item[\textbf{1st section}] While going back to the house, a person crosses robot's path. - \item[\textbf{2nd section}] While going back, a person steps in front of the robot and asks it for the time. - \end{itemize} - - \item \textbf{Find a person:} After reaching the designated room, the robot needs to find a person (there is only one person in the room, the name is meaningless). - \end{enumerate} \item \textbf{Memorizing the \emph{new} operator:} The robot has to memorize the operator that will help. During this phase, the robot may instruct the operator to follow a certain setup procedure. \item \textbf{Guiding the operator:} When the robot signals that it is ready to start guiding, the robot guiding the operator to the car. The robot must clearly announce when the destination (the car) is reached. \begin{itemize}[leftmargin=3cm] - \item[DSPL \& OPL] \textbf{Closed door:} Along it's path to the car, the robot will find a closed door (most likely the entrance to the house) that will need to be opened to reach the destination. - \item[SSPL only] \textbf{Distracted operator:} After leaving the house, the operator is distracted by another person. The robot must re-gain the operator's attention, remind the task, and continue guiding the operator's to the car. + \item \textbf{Closed door:} Along it's path to the car, the robot will find a closed door (most likely the entrance to the house) that will need to be opened to reach the destination. + \end{itemize} \end{enumerate} @@ -77,13 +61,10 @@ \subsection{Obstacles} \item \textbf{Small object:} Small object (e.g.~apple, glass, lego brick, etc). - \item {[DSPL and OPL]} \textbf{Movable Object:} Something that can be moved or pushed away + \item \textbf{Movable Object:} Something that can be moved or pushed away (e.g.~coat rack, rolling chair, lamp, etc). The robot must clearly state it is about to push the object. - - \item {[SSPL Only]} \textbf{\textit{Smart} obstacle:} A person to whom the robot may kindly ask to step aside. - The person can be standing, lying, or sitting (chair or floor). - The robot must look at the person and make clear who is interacting with. + \end{itemize} %% Possible extensions: %% - DONE: allow the operator to tell for each item where it should go diff --git a/tests/OpenChallenge.tex b/tasks/old/OpenChallenge.tex similarity index 78% rename from tests/OpenChallenge.tex rename to tasks/old/OpenChallenge.tex index 84dd8b94..2b89ed6e 100644 --- a/tests/OpenChallenge.tex +++ b/tasks/old/OpenChallenge.tex @@ -75,23 +75,23 @@ \subsubsection{Team-team-interaction:} \item A team not participating in Stage 2 receives no bonus points for this test. \end{enumerate} -\paragraph*{Inter-league collaboration}: -\label{rule:OC-inter-league-collaboration} -Inter-league collaboration must be announced to the OC at least one day before the test. Teams participating in multiple @Home Leagues does receive no bonus for cooperation. Standard Platform robots are allowed to take part in the Open Challenge of the Open Platform League, but Open Platform robots can \emph{not} participate in any Standard Platform League's test. In the same sense, DSPL robots are not allowed in SSPL and vice versa. - -For sake of clarity, please consider the following example: Let be A, B two teams participating in RoboCup @Home where -\begin{itemize} - \item Team A participates in SSPL. - \item Team B participates in both SSPL and OPL. - \item Team A and B have qualified into Stage II. -\end{itemize} -Then, by applying the \textit{Inter-league collaboration Rule} (See~\refsec{rule:OC-inter-league-collaboration}) the following statements can be concluded: -\begin{itemize} - \item B OPL can not participate in A SSPL's open challenge. - \item B OPL can not participate in B SSPL's open challenge. - \item A SSPL can participate in B OPL's open challenge. Team A and B get a bonus because A <> B. - \item B SSPL can participate in B OPL's open challenge. There is no bonus because B = B. -\end{itemize} +% \paragraph*{Inter-league collaboration}: +% \label{rule:OC-inter-league-collaboration} +% Inter-league collaboration must be announced to the OC at least one day before the test. Teams participating in multiple @Home Leagues does receive no bonus for cooperation. Standard Platform robots are allowed to take part in the Open Challenge of the Open Platform League, but Open Platform robots can \emph{not} participate in any Standard Platform League's test. + +% For sake of clarity, please consider the following example: Let be A, B two teams participating in RoboCup @Home where +% \begin{itemize} +% \item Team A participates in SSPL. +% \item Team B participates in both SSPL and OPL. +% \item Team A and B have qualified into Stage II. +% \end{itemize} +% Then, by applying the \textit{Inter-league collaboration Rule} (See~\refsec{rule:OC-inter-league-collaboration}) the following statements can be concluded: +% \begin{itemize} +% \item B OPL can not participate in A SSPL's open challenge. +% \item B OPL can not participate in B SSPL's open challenge. +% \item A SSPL can participate in B OPL's open challenge. Team A and B get a bonus because A <> B. +% \item B SSPL can participate in B OPL's open challenge. There is no bonus because B = B. +% \end{itemize} diff --git a/tests/PnG.tex b/tasks/old/PnG.tex similarity index 100% rename from tests/PnG.tex rename to tasks/old/PnG.tex diff --git a/tests/SPR.tex b/tasks/old/SPR.tex similarity index 97% rename from tests/SPR.tex rename to tasks/old/SPR.tex index dd48d4ae..911591fb 100644 --- a/tests/SPR.tex +++ b/tasks/old/SPR.tex @@ -35,7 +35,7 @@ \subsection{Task} The game will end when the 10th question has been made, following a similar distribution of questions as in the riddle game. The robot must answer the question without asking confirmation. Questions may be repeated once. \setcounter{enumi}{\theenumTempSPR} - \item {[OPL \& SSPL]} \textbf{Blind man's bluff game: Circling Crowd.} The crowd will reposition, making a circle around the robot. A random person from the crowd surrounding the robot will ask a question. The robot may + \item {[OPL]} \textbf{Blind man's bluff game: Circling Crowd.} The crowd will reposition, making a circle around the robot. A random person from the crowd surrounding the robot will ask a question. The robot may \begin{itemize} \item Turn towards the person who asked the question and answer the question \item Directly answer the question without turning diff --git a/tasks/ServingDrinks.tex b/tasks/old/ServingDrinks.tex similarity index 100% rename from tasks/ServingDrinks.tex rename to tasks/old/ServingDrinks.tex diff --git a/tasks/SmoothieChef.tex b/tasks/old/SmoothieChef.tex similarity index 100% rename from tasks/SmoothieChef.tex rename to tasks/old/SmoothieChef.tex diff --git a/tasks/TakeOutGarbage.tex b/tasks/old/TakeOutGarbage.tex similarity index 100% rename from tasks/TakeOutGarbage.tex rename to tasks/old/TakeOutGarbage.tex diff --git a/tasks/TidyUp.tex b/tasks/old/TidyUp.tex similarity index 100% rename from tasks/TidyUp.tex rename to tasks/old/TidyUp.tex diff --git a/tests/TourGuide.tex b/tasks/old/TourGuide.tex similarity index 98% rename from tests/TourGuide.tex rename to tasks/old/TourGuide.tex index b57b487f..9d0d17f2 100644 --- a/tests/TourGuide.tex +++ b/tasks/old/TourGuide.tex @@ -1,4 +1,4 @@ -\section{Tour guide [SSPL only]} +\section{Tour guide} The robot guides spectators to the audience area and answer their questions after explaining what's @Home about. \subsection{Focus} @@ -28,7 +28,7 @@ \subsection{Task} \item \textbf{Guiding the spectators:} The robot must gently ask the spectators to follow it to any of the @Home audience areas and guide them there. Should the people not be willing to follow the robot, it must thank them and start looking for another group of spectators.\\ - \item \textbf{Explaining the league:} Once at the @Home audience area, the robot must ask the spectators to take seat. The robot proceeds to \textit{briefly} introduce RoboCup@Home and explain the Social Standard Platform League's objectives. \\ + \item \textbf{Explaining the league:} Once at the @Home audience area, the robot must ask the spectators to take seat. The robot proceeds to \textit{briefly} introduce RoboCup@Home and explain the League's objectives. \\ \item \textbf{Answering questions:} At the end of the speech, the robot asks for questions from the spectators regarding what it just explained, answering at least two of them. The robot is allowed to rephrase questions before answering them.\\ diff --git a/tasks/WhatisThat.tex b/tasks/old/WhatisThat.tex similarity index 100% rename from tasks/WhatisThat.tex rename to tasks/old/WhatisThat.tex diff --git a/tasks/WhereIsThis.tex b/tasks/old/WhereIsThis.tex similarity index 100% rename from tasks/WhereIsThis.tex rename to tasks/old/WhereIsThis.tex diff --git a/teams/SSPL.tex b/teams/SSPL.tex deleted file mode 100644 index 7239a927..00000000 --- a/teams/SSPL.tex +++ /dev/null @@ -1,24 +0,0 @@ -% Teams in stage 1 (all participating teams. If split in two groups, compile two versions of the rulebool/score sheets: one for group A, one for group B -\newcommand{\TEAMSSTAGEONE}{ - KameRider SSPL, - LiU@HomeWreckers, - LyonTech, - SinfonIA Pepper Team, - Uchile Pepper, - UTS Unleashed! -} - -% All teams in stage 2: best 6 (in case of 12 or less teams in stage 1), or best 50% (in case of more than 12 teams in stage 1) -\newcommand{\TEAMSSTAGETWO}{ - Team 1, - Team 2, - Team 3, - Team 4 -} - -\input{teams/finals.tex} - -% Local Variables: -% TeX-master: "../rulebook" -% End: - diff --git a/teams/finals.tex b/teams/finals.tex index 43b8f815..d5f1f682 100644 --- a/teams/finals.tex +++ b/teams/finals.tex @@ -1,8 +1,5 @@ % All teams in the finals: best 2 teams of each league (possibly 3 if the difference between #2 and #3 is less than 1%) \newcommand{\TEAMSFINALS}{ - % SSPL - \textbf{[SSPL]} Team 2, - \textbf{[SSPL]} Team 1, % DSPL \textbf{[DSPL]} Team 2, \textbf{[DSPL]} Team 1, diff --git a/teams/teams.tex b/teams/teams.tex index 02a856fa..998c074f 100644 --- a/teams/teams.tex +++ b/teams/teams.tex @@ -1,31 +1,36 @@ % Teams in stage 1 (all participating teams. If split in two groups, compile two versions of the rulebool/score sheets: one for group A, one for group B \newcommand{\TEAMSSTAGEONE}{ - Austin Villa@Home, - Australian Centre for Robotic Vision, - CARL@Home, - CATIE Robotics, + Chief Scientist Office, + EPFL@Home, eR@sers, + FBOT@Home, + Gentlebots, Hibikino-Musashi@Home, - homer@UniKoblenz, - KameRider OPL, - KameRider SSPL, - LiU@HomeWreckers, + KIARO, + LAR@Home, + LASR, + LCASTOR, LyonTech, - ORIon, + NimbRo@Home, Pumas, PUMAS-DSPL, RoboCanes-VISAGE, RoboFEI@Home, - RT Lions, - SinfonIA Pepper Team, - Team Northeastern, - Team Tidyboy, + RoBorregos + rUNSWeep, + Serious Cybernetics Corporation (SCC), + Sinfonia Uniandes, + SKUBA, + SOBITS, + SocRob@Home, + SUTURO-VaB, + Team of Bielefeld (ToBi), Tech United Eindhoven, + Tidyboy-DSPL, + Tidyboy-OPL, Tinker, - Uchile Pepper, - UNSW@Home, - UTS Unleashed!, - Walking Machine + TRAIL, + UT Austin Villa@Home, } % All teams in stage 2: best 10 (in case of 20 or less teams in stage 1), or best 50% (in case of more than 20 teams in stage 1) diff --git a/tests/GPSR.tex b/tests/GPSR.tex deleted file mode 100644 index 92751c97..00000000 --- a/tests/GPSR.tex +++ /dev/null @@ -1,89 +0,0 @@ -\section{General Purpose Service Robot} - -% -% MAURICIO @2017 -% Short instructions as in 2012 rulebook -% -This test evaluates the abilities of the robot that are required throughout the set of tests in stage I of this and previous years' RuleBooks. In this test the robot has to solve multiple tasks upon request. That is, the test is not incorporated into a (predefined) story and there is neither a predefined order of tasks nor a predefined set of actions. The actions that are to be carried out by the robot are chosen randomly by the referees from a larger set of actions. These actions are organized in three categories with different complexity. Scoring thereby depends on the complexity class. - -% -% MAURICIO @2017 -% Same focus as in 2012 rulebook. There should be no problem since this is SOLVED -% -\subsection{Focus} -This test particularly focuses on the following aspects: -\begin{itemize} - \item No predefined order of actions to carry out (to get away from state machine-like behavior programming). - \item Increased complexity in speech recognition. - \item Environmental (high-level) reasoning. - \item Efficient and fast task execution (speed). -\end{itemize} - - -% -% MAURICIO @2017 -% Test has been shorten based in 2012 one, however, categories have changed -% to bypass NLP and avoid problems agreed by TC. -% -% All extra explanations have been sent to corresponding appendix. -% -\subsection{Task} - -\begin{enumerate} - \item \textbf{Entering and command retrieval:} The robot enters the arena and drives to a designated position where it has to wait for further commands. - - \item \textbf{Command generation:} A command is generated randomly, depending on the command category chosen by the team (see below). Commands are generated by the generator which is made publicly available at https://github.com/kyordhel/GPSRCmdGen. \\ - - \item \textbf{Command categories:} The team may choose from the following three categories: - \begin{enumerate} - \item \textbf{Category I:} Tasks with a low difficulty degree. - \item \textbf{Category II:} Tasks with a moderate difficulty degree. - \item \textbf{Category III:} Tasks with a high difficulty degree or with incomplete/erroneous information. - \end{enumerate} - - \item \textbf{Task assignment:} The robot is given the command by the operator and may directly start to work on the task assignment. - - \item \textbf{Returning to the operator:} After accomplishing the assigned task, the robot has to move back to the operator to retrieve the next command (i.e., go back to 1. without the need of re-entering the arena). The robot can work on at most three commands. After the third command, it has to leave the arena. - - \item \textbf{Exiting the arena:} After accomplishing the assigned task, the robot has to leave the arena. - - The robot must prove it has understood the given command by repeating it (Please see the remarks about this in section~\ref{sec:gpsr_remarks}). -\end{enumerate} - -\subsection{Additional rules and remarks} -\label{sec:gpsr_remarks} -\begin{enumerate} - \item \textbf{Referees:} Since the score system in this test involves a subjective evaluation of the robot's behavior, the referees are EC/TC members. - - \item \textbf{Category selection:} For every of the three commands given to the robot, the team chooses the desired command category. - - \item \textbf{Operator:} - \begin{itemize} - \item The person operating the robot is one of the referees (default operator). - \item If the robot appears to consistently not be able to understand the operator, the referees ask the team to use a custom operator or bypassing speech recognition (\refsec{rule:asrcontinue}). - \end{itemize} - - \item \textbf{Retrieving the command:} The robot must show it has understood the given command by repeating the command (i.e.~stating all the required information to accomplish the task). - \\ - \textit{Note:} Referees must have sufficient evidence proving the robot is actively trying to execute the commanded tasks to score. Robots skipping command execution will not receive points for understanding the command. - - \item \textbf{Incremental scoring:} Scoring depends on the category chosen by the team leader and the previous successfully accomplished command. Thereby, scoring for a second and third command depends on how well the robot solved (not understood) a first and second command respectively. Referees determine how well the command was accomplished and its impact on the incremental scoring of subsequent commands. -\end{enumerate} - -\subsection{Referee and OC instructions} -\textbf{2h before test:} -\begin{itemize} - \item Specify and announce the entrance and exit door - \item Specify and announce the command retrieval point -\end{itemize} - -\subsection {Audio Data Recollection} -Teams are encouraged to submit to the TC the audio data recorded during the test, specially that which was captured during speech recoginition. If so, teams are urged to provide it with annotation of what the user said and what was recognized. Audio files are expected to be mono, one per microphone (in the case array recordings), of a sample rate equal to or higher than 16 kHz, and with a sample size of at least 16 bits. Depending on the quality of the recordings and their annothations, an official certificate that formalizes these efforts may be provided to submitting teams. - -\newpage -\subsection{Score sheet} -\input{scoresheets/GPSR.tex} - -% Local Variables: -% TeX-master: "Rulebook" -% End: diff --git a/tests/Restaurant.tex b/tests/Restaurant.tex deleted file mode 100644 index ad3c6116..00000000 --- a/tests/Restaurant.tex +++ /dev/null @@ -1,140 +0,0 @@ -\section{Restaurant} -The robots are tested in a real environment such as a real restaurant or a shopping mall. -There are \emph{two} robots helping clients in the restaurant at the same time. - -\subsection{Focus} -This test focuses on online mapping, safe navigation in previously unknown environments, gesture detection, human-robot interaction, and manipulation in a real environment. - -The robot will need to create its own map from the environment and then move within it to handle human requests, such as delivering drinks or snacks, while people are walking around. -As this test is performed with 2 robots (2 teams, each with their own 1 robot) in parallel, the robots will also have to avoid each other. - -\subsection{Setup} -\begin{enumerate} - \item \textbf{Location:} A real restaurant fully equipped with a \enquote{Professional Barman} i.e.~the operator and at least three tables with \enquote{Professional Clients}. -\end{enumerate} - -\subsection{Task} -\begin{enumerate} - \item \textbf{Start:} The robot starts at a designated starting position. After the start signal is given, the robot may look around to keep an \textit{eye} on the tables. - The location of the tables is not taught to the robot via some training phase. - - \item \textbf{Calling:} A guest will ask for the robot's attention by waving \emph{and} calling it out using voice. - The robot must state out loud that it has detected the call. - % A robot must also indicate roughly where it has detected the call (e.g.~\enquote{to my left}) - In case both robots notice the same call, the \textit{Professional Barman} will tell one of the robots to take the order. - The barman will say the robot's name followed by \enquote{Take the order} e.g.~\enquote{R2D2, take the order}. - The other robot will simply have to wait for another call. - If the robot \textit{not} commanded to take the order still goes, it will be commanded to wait (e.g.~\enquote{C3PO, Wait}). - In case the robot keeps going after that, the emergency button will be used to stop the robot. - -% \item \textbf{Parallel orders:} It may occur that two guests want to order something at the same time and thus wave at the same time. -% The referees will arange these two guests such that each is clearly visible to (in front of) one of the robots. - - \item \textbf{Ordering}: The robot must ask the person what he or she wants to order. See Orders below for details about ordering. - \item \textbf{Avoiding random person:} At any time while going to any of the tables or to the \textit{Kitchen}, a person may step on the robot's path. - It is expected of the robot to avoid that person or stop and wait for it to move away. - - \item \textbf{Delivering phase:} - \begin{enumerate} - \item \textbf{Repeating the order:} Once again in the kitchen, the robot recites the orders for each table (e.g.~\textit{\enquote{Hamburger with fries for table A and Orange juice for table B}}, to the \textit{Professional Barman}. - The \textit{Professional Barman} will serve the order and place it into a tray on the Kitchen-bar. - If the barman cannot understand the order that the robot repeats, he cannot hand out the order and no points can be awarded for reciting the order. - - \item \textbf{Grabbing a beverage:} The robot must grab a can of the appropriate drink from a set of cans on the Kitchen-bar. - - \item \textbf{Grabbing a combo:} The robot must carry a tray with the ordering from the kitchen-bar. - Teams must indicate beforehand whether the robot is able to grasp the plate itself, whether it needs a tray or whether the plate needs to be handed to the robot. - - \item \textbf{Delivery:} The robot must place the order on the table. - If the robot is not able to do this, the robot is allowed to hand over the order, but the client is not allowed to shift his/her chair or stand up. - The robot must help the client, not the other way around. - \end{enumerate} - - \item \textbf{Next customer, please:} When the robot is in the kitchen, the \textit{Professional Barman} will ask the robot to either find a new client to serve or to stop the test. - The barman will either tell the robot \enquote{R2D2, Wait} to make it wait for another client or \enquote{R2D2, Stop the test} to end the test for that robot. -\end{enumerate} - -\textbf{Orders:} The menu offers Beverages and Combos. An order may be a Beverage or Combo. Some guest(s) will order a Combo while another will order a Beverage. - A Combo is a combination of two of the food items from the set of objects~\ref{rule:scenario_objects}, e.g.~\enquote{noodles with peanuts} or \enquote{noodles and peanuts}. - Guests also prefer to state their order in a natural way, as they would in a restaurant operated by humans. - -\begin{figure}[tbp] - \centering - \includegraphics[width=0.5\columnwidth]{images/restaurant.png} - \caption{Restaurant test: example setup.} - \label{fig:restaurant} -\end{figure} - -\subsection{Additional rules and remarks} - -\begin{itemize} - \item \textbf{Safety!} This test takes place in a public area. That is, there may be people standing, sitting or walking around the area throughout the test. The robot is expected to not even slightly touch anything and is immediately stopped in case of danger. - - \item \textbf{Referees and guidance:} For safety reasons, the referees in this test are TC members. One of the referees follows the robot and is always in reach of the emergency button. - - \item \textbf{Start:} There is no fixed start signal in this test, it starts when both robots are ready (though within a reasonable time). - - \item \textbf{Order:} The way the user provides information to the robot is up to the robot's team. A natural interaction is preferred. - - \item \textbf{Location:} This test can be arranged in any real restaurant or shopping mall. If this is not possible, the test can be conducted in an arbitrary room containing the appropriate locations. - The only requirement is that this room is not part of the arena and that the teams do not know the room beforehand. - The exact location, including the object and delivery locations, will be defined by the technical committee on site (and in corporation with the local organization). - In addition, to avoid unnecessary time investment for navigation, the distances between tables and the \enquote{Kitchen Bar} will be minimal. - - \item \textbf{Disturbances from outside:} If a person from the audience (severely) interferes with the robot in a way that makes it impossible to solve the task, the teams may repeat the test immediately. - - \item \textbf{Learning tables:} Of course, it can only be sure that a robot correctly remembered where an order is suppposed to be delivered when it is able to go there after grabbing the order. - - \item \textbf{Instruction:} The robot interacts with the operators, not the team. That is, the team is only allowed to (very!) briefly instruct the \textit{Professional Barman} - \begin{itemize} - \item How to the tell the robot the order has been served - \end{itemize} - It is not allowed to the team to instruct the clients on how to get robot's attention. It shall be done in a natural way like when interacting with a human waiter. - - \item \textbf{Kitchen-bar:} The \textit{Kitchen-bar} will be a table located at the restaurant's kitchen, next to the place where the robot started. - The robot may ask on which side of the robot the Kitchen-bar is, e.g.~on its left or right side. It may ask this at any time, but it is better if the robot infers this itself. - It has the following setup. - \begin{itemize} - \item \textbf{Barman:} A \textit{Professional Barman} (member of the TC) will be at the other side of the Kitchen-bar to take the order provided by the robot and serve it in the official tray. - \item \textbf{Beverages:} Beverages will be located on the Kitchen-bar next to the \textit{Professional Barman}. - \end{itemize} - -\end{itemize} - -% \subsection{Data recording} -% Please record the following data (See~\refsec{rule:datarecording}): -% \begin{itemize} -% \item Audio -% \item Commands -% \item Mapping data -% \item Images -% \item Plans -% \end{itemize} - -\subsubsection{Referee instructions} - -The referee needs to -\begin{itemize} - \item Prepare orders for each client in advance, so that there can be no confusion. These orders must also be available at the kitchen. -\end{itemize} - -% \subsubsection{OC instructions} - -% \textbf{2 hours before the test} -% \begin{itemize} -% \item -% \item -% \end{itemize} -% \textbf{During the test} -% \begin{itemize} -% \item -% \item -% \end{itemize} - -\newpage -\subsection{Score sheet} -\input{scoresheets/Restaurant.tex} - -% Local Variables: -% TeX-master: "Rulebook" -% End: diff --git a/tests/StoringGroceries.tex b/tests/StoringGroceries.tex deleted file mode 100644 index 4fd693f4..00000000 --- a/tests/StoringGroceries.tex +++ /dev/null @@ -1,125 +0,0 @@ -\section{Storing Groceries [DSPL \& OPL]} -The robot helps by storing newly bought groceries in the cupboard next to the objects of the same kind that are already there; for instance by placing fresh apples near other apples. - -\subsection{Goal} -The robot has to correctly identify and manipulate objects at different heights, grouping them by category and likelihood. - -\subsection{Focus} -This test focuses on the detection and recognition of objects and their features, as well as object manipulation. - -% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Setup -% -% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{minipage}{0.70\textwidth} - \subsection{Setup} - \begin{enumerate} - \item \textbf{Location:} This test can take place either inside or outside the arena. The testing area must have a bookcase or cupboard, and a nearby table. The maximum distance between the Table and the Cupboard is 2 meters. - \item \textbf{Start position:} The robot starts between the cupboard and the table in a random orientation, but facing towards the Cupboard. - \item \textbf{Cupboard:} The cupboard has 5 shelves between 0.0m and 1.80m from the ground and contains several objects grouped by category or likeliness (See~\ref{rule:scenario_objects}). The cupboard has at least one free space for starting a new set. - \begin{itemize} - \item \textbf{Door:} The cupboard has a single door, which is closed initially. - This door encloses some of the objects, covering up to one half of the cupboard (e.g.~the left or bottom half), as indicated by the hatched area in Figure~\ref{fig:storing_groceries_shelf}. - \end{itemize} - \item \textbf{Table:} The table has at least 5 objects (but no more than 10). If not all objects fit on the table, they will be added as the robot frees up space. - \end{enumerate} -\end{minipage}\hfill -\begin{minipage}{0.25\textwidth} - \begin{figure}[H] - \centering - \includegraphics[width=\textwidth]{images/storing_groceries.png}% - \vspace{-10pt} - %\caption{Example shelf where objects will be placed.} - \caption{Shelf} - \label{fig:storing_groceries_shelf} - \end{figure} -\end{minipage} - -% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Task -% -% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\subsection{Task} -\begin{enumerate} - \item \textbf{Evaluating the situation:} The robot inspects its surrounding and analyzing the best course of action. In any order, the robot has to: - \begin{itemize} - \item \textit{Inspect the cupboard} (locating and categorizing existing groceries). - \item \textit{Open the cupboard's door.} If the robot can't open the door, it may ask the Referee to do it. - \item \textit{Inspect the table} (analyze the newly bought groceries, i.e.~objects). - \end{itemize} - - \item \textbf{Moving objects:} The robot moves as many objects as possible in the given time - (only the first five score) - from the Table to the Cupboard, allocating similar objects all together. - Stacking is allowed. - \begin{itemize} - \item Objects of the same type (i.e.~identical known objects or akin alike objects) must be placed one next to the other. - \item If the Cupboard has no object of the same type, then objects must be grouped by category (e.g.~drinks with drinks, snacks with snacks, etc) - \item If the Cupboard has no similar object, the robot must clearly state its decision on how to solve the problem. For instance, the robot can start a new set in a free space for either all unknown objects or all objects sharing a particular feature (color, shape, function, etc.). - \item Moving two objects at a time (2-handed manipulation) is allowed. - \end{itemize} - - \textbf{Note:} Either before or after grasping an object the robot may announce the name of the object found. - \item \textbf{Repeat:} This repeats until the time is up or all groceries are stored. -\end{enumerate} - - - -% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Additional Rules -% -% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\subsection{Additional rules and remarks} -\begin{enumerate} - \item \textbf{Bypassing Manipulation:} Bypassing object manipulation via the CONTINUE rule (see~\refsec{rule:asrcontinue}) is not allowed during this test. - \item \textbf{No setup:} There is no setup time. - \item \textbf{Startup:} The robot can be started with a simple voice command or via a start button (see~\refsec{rule:start_signal}). - \item \textbf{Single try:} The robot must be able to start from the first attempt. There is no restart for this test. If the robot is unable to start it must be removed immediately. - \item \textbf{Collisions:} Slightly touching the cupboard is tolerated (but not advised). Crushing objects or any other form of a major collision terminates the test immediately (see~\refsec{rule:safetyfirst}). - \item \textbf{Clear area:} The robot may assume that the direct vicinity of the cupboard and table are clear, and that the robot can move slightly backwards for its task. - \item \textbf{Objects:} The 10 objects are evenly distributed in random fashion including - 3 known objects, - 3 alike objects, - 2 unknown objects, and - 2 special objects (bowl, cloth, dish, etc.). - \item \textbf{Table} The table's rough location will be announced beforehand, having it's position either left, right, or behind the robot. - % \item \textbf{Timing:} The robot has to successfully place the first object within the first two minutes, otherwise the test is ended. If the robot opens the cupboard door by on its own, one additional minute is added to the 2-minutes limit. The maximum time for this test is 5 minutes. -\end{enumerate} - -% \subsection{Data recording} -% Please record the following data (See~\refsec{rule:datarecording}): -% \begin{itemize} -% \item Images -% \item Plans -% \end{itemize} - -\subsection{OC instructions} - -\textbf{2 hours before the test} -\begin{itemize} - \item Announce the startup location for robots. - % This test is about manipulation and object recognition, NOT about finding furniture - % Finding a table is done in the Restaurant task - \item Announce which table will be used in the test. - \item Announce a rough location for the table. -\end{itemize} - -\subsection{Referee instructions} -The referee needs to -\begin{itemize} - \item Place the objects in the cupboard and a few of the same class on the table. New items can be placed when there is room or the robot asks for more objects. - \item Close the door of the cupboard. - \item Put objects on the table and the corresponding objects in the cupboard: 3 known objects, 2 alike and 5 unknown objects. -\end{itemize} - - -\newpage -\subsection{Score sheet} -\input{scoresheets/StoringGroceries.tex} - -% Local Variables: -% TeX-master: "Rulebook" -% End: