Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
895b781
[Receptionist] updates for the challenge
Julislz Dec 16, 2024
79cfe5a
Revert "Bump j2kun/chktex-action from 2.0.0 to 2.1.0"
LeroyR Jan 6, 2025
00a4974
improved storing groceries
LeroyR Nov 25, 2024
81857cb
Revert "improved storing groceries"
LeroyR Jan 6, 2025
125735b
Added xelatex as latex compiler
SparkRibeiro21 Jan 7, 2025
2aaa250
Updated CleanTable.tex
SparkRibeiro21 Jan 7, 2025
3fc48c3
Small corrections to CleanTable.tex
SparkRibeiro21 Jan 7, 2025
8d748ff
Updated scoresheet/CleanTable.tex
SparkRibeiro21 Jan 7, 2025
a900068
[Receptionist] feedback implementation
Julislz Jan 10, 2025
2390b6d
[Receptionist] changed hobby to interest, adjusted scores
Julislz Jan 12, 2025
0ede20a
[Receptionist] changed some wording, added set up day infos and adjus…
Julislz Jan 12, 2025
ef1a078
[Receptionist] corrected grammar
Julislz Jan 13, 2025
f4fccfc
Merge pull request #936 from RoboCupAtHome/updates_clean_table_2025
SparkRibeiro21 Jan 13, 2025
773a739
[Receptionist] feedback of TC meeting
Julislz Jan 13, 2025
efaeb66
Update CHANGELOG.md
LeroyR Jan 14, 2025
0d73bc7
remove serve breakfast
LeroyR Jan 6, 2025
3a7500c
update changelog
LeroyR Jan 6, 2025
019bda2
improved storing groceries
LeroyR Nov 25, 2024
4411699
update changelog
LeroyR Jan 6, 2025
5a5fdeb
Update CHANGELOG.md
LeroyR Jan 14, 2025
7077fe2
[Receptionist] updates for the challenge
Julislz Dec 16, 2024
0c3efad
[Receptionist] feedback implementation
Julislz Jan 10, 2025
606d4f6
[Receptionist] changed hobby to interest, adjusted scores
Julislz Jan 12, 2025
ae2bfea
[Receptionist] changed some wording, added set up day infos and adjus…
Julislz Jan 12, 2025
2539b76
[Receptionist] corrected grammar
Julislz Jan 13, 2025
e76fe7f
[Receptionist] feedback of TC meeting
Julislz Jan 13, 2025
761cff0
[Receptionist] removed penalties, changed wording, removed duplicate...
Julislz Jan 16, 2025
5211114
[Receptionist] removed penalties and listed duplicate, changes some w…
Julislz Jan 16, 2025
6cf794a
[Receptionist] grammar correction
Julislz Jan 20, 2025
f54b80e
[Receptionist] higher score for door opening
Julislz Jan 20, 2025
2c6b904
Update tasks/Receptionist.tex
SparkRibeiro21 Jan 20, 2025
dd556ab
Update tasks/Receptionist.tex
SparkRibeiro21 Jan 20, 2025
16acc25
Update tasks/Receptionist.tex
SparkRibeiro21 Jan 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: LaTeX linter (chktex)
uses: j2kun/chktex-action@v2.1.0
uses: j2kun/chktex-action@v2.0.0
# Provide this output for context, but don't fail builds
continue-on-error: true
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: LaTeX linter (chktex)
uses: j2kun/chktex-action@v2.1.0
uses: j2kun/chktex-action@v2.0.0
# Provide this output for context, but don't fail builds
continue-on-error: true
env:
Expand Down
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,16 @@ All notable changes to this project will be documented in this file.

## Rulebook [Current Draft]

* [#935](https://github.com/RoboCupAtHome/RuleBook/pull/935): Add additional task to storing groceries
* Use both doors
* add refilling storage containers (pouring)
* add grasping from shopping bag
* increase time limit to 7 minutes
* [#936](https://github.com/RoboCupAtHome/RuleBook/pull/936): Extend Clean The Table
* Put drink items into Trash
* Wipe the Table under Drinks
* misc scoring changes
* [#933](https://github.com/RoboCupAtHome/RuleBook/pull/933): Remove serve breakfast task to free up time during stage one
* [#920](https://github.com/RoboCupAtHome/RuleBook/pull/920): DSPL: Allow a mounted microphone on hsr.
* [#922](https://github.com/RoboCupAtHome/RuleBook/pull/922): Remove Bonus for perceived social intelligence as the survey was too hard to conduct in Robocup settings.
* [#917](https://github.com/RoboCupAtHome/RuleBook/pull/917) revert: split document into Rulebook and Organization document
Expand Down
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ BUILD_DIR:=$(ROOT_DIR)/.build
SILENT = @
MSG = echo
HASRUBBER:=$(shell which rubber)
XELATEX:=$(shell which xelatex)

## COLORS
RESET = tput sgr0
Expand Down Expand Up @@ -52,6 +53,9 @@ ifdef HASRUBBER
else
$(SILENT) latexmk -Werror -shell-escape -silent -pdf -interaction=nonstopmode -outdir=$${BUILD_DIR} $$<
endif
ifdef XELATEX
$(SILENT) xelatex $$<
endif

## Generate Summary Rule
$$(RULENAME)_summary: | $$(RULENAME)
Expand Down
36 changes: 16 additions & 20 deletions documents/rulebook.tex
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@



\makeindex % generate index
\makeabbex % generate abbreviations
\makeindex{} % generate index
\makeabbex{} % generate abbreviations



Expand All @@ -45,11 +45,11 @@
\pagestyle{empty}
\input{pages/rulebook/about}
\input{pages/acknowledgments}
\clearpage
\clearpage{}

\pagestyle{plain}
\tableofcontents
\clearpage
\tableofcontents{}
\clearpage{}

\setcounter{page}{1}
\pagenumbering{arabic}
Expand All @@ -71,30 +71,26 @@ \chapter{Tests in Stage I}\label{chap:stage_I}
\testtocentry{test:carry-my-luggage}
\testtocentry{test:gpsr}
\testtocentry{test:receptionist}
\testtocentry{test:serve-breakfast}
\testtocentry{test:storing-groceries}



% Uncomment to get aesthetic improvement
\cleardoublepage
\cleardoublepage{}
\input{tasks/HelpMeCarry}
\newpage
\newpage{}
\input{tasks/GPSR}
\newpage
\newpage{}
\input{tasks/Receptionist}
\newpage
\input{tasks/ServeBreakfast}
\newpage
\newpage{}
\input{tasks/StoringGroceries}




%%% STAGE II
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{Tests in Stage II}
\label{chap:stage_II}
\chapter{Tests in Stage II}\label{chap:stage_II}

\testtocentry{test:clean-the-table}
\testtocentry{test:egpsr}
Expand All @@ -103,13 +99,13 @@ \chapter{Tests in Stage II}


% Uncomment to get aesthetic improvement
\cleardoublepage
\cleardoublepage{}
\input{tasks/CleanTable}
\newpage
\newpage{}
\input{tasks/EGPSR}
\newpage
\newpage{}
\input{tasks/Restaurant}
\newpage
\newpage{}
\input{tasks/SticklerForRules}


Expand All @@ -119,7 +115,7 @@ \chapter{Tests in Stage II}
\input{tasks/Finals}


\printabx
\printidx
\printabx{}
\printidx{}

\end{document}
30 changes: 12 additions & 18 deletions documents/scoresheets.tex
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@
\input{./setup/packages_scoresheets.tex}

\usepackage{fullpage}
\parindent 0cm
\parskip 0.2cm
\topmargin -1cm
\oddsidemargin -1cm
\evensidemargin -1cm
\textwidth 18cm
\textheight 26cm
\setlength{\parindent}{0cm}
\setlength{\parskip}{0.2cm}
\setlength{\topmargin}{-1cm}
\setlength{\oddsidemargin}{-1cm}
\setlength{\evensidemargin}{-1cm}
\setlength{\textwidth}{18cm}
\setlength{\textheight}{26cm}

\input{./setup/active_version.tex}
\graphicspath{{\YEAR/}{./images/}}
Expand All @@ -43,7 +43,7 @@
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%
%% L E A G U E S %%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%
\loadTeamsListFile
\loadTeamsListFile{}

%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%
%% H E A D I N G S %%
Expand Down Expand Up @@ -75,14 +75,13 @@
{%
\vspace*{.27cm}
\Huge{RoboCup@Home}\\[1.23ex]
\ifthenelse{\equal{\league}{}}{}{\huge{\leagueFullName}\\[1.23ex]}
\Large Forms \& Score Sheets\\[2ex]
}
\hrulefill\par
\vfill
~~ Version: \YEAR \quad \svnRevision ~~ \\
~~ Last Build Date: \today \quad Time: \the\time ~~ \\
~~ \svnChangeData ~~ %\\
Version: \YEAR{} \quad \svnRevision{}\\
Last Build Date: \today \quad Time: \the\time{}\\
\svnChangeData{}%\\
%\vfill
\end{center}
\end{titlepage}
Expand Down Expand Up @@ -119,11 +118,6 @@
\input{scoresheets/Receptionist}
\end{scoresheet}

\renewcommand{\currentTest}{Serve the Breakfast}
\begin{scoresheet}
\input{scoresheets/ServeBreakfast}
\end{scoresheet}

\renewcommand{\currentTest}{Storing Groceries}
\begin{scoresheet}
\input{scoresheets/StoringGroceries}
Expand Down Expand Up @@ -169,4 +163,4 @@

\end{document}

\grid
\grid{}
Binary file added images/container_dry.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
50 changes: 22 additions & 28 deletions pages/general_rules/Scenario.tex
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Scenario}
\label{sec:scenario}
\section{Scenario}\label{sec:scenario}

Most competition tests take place in the \RoboCup\AtHome\Arena, but some tests may take place outside, in a previously unknown public place.
In this section, the \Arena{} and its contents are described, in particular the furnishing and other information that is common between tests and leagues.
Expand All @@ -22,8 +21,7 @@ \subsection{RoboCup@Home Arena}
Note that what is considered \emph{normal} may vary greatly based on the culture and location where \RoboCup{} is hosted.
Decorations may include, but are not limited to, plants, mirrors, paintings, posters, plates, picture frames, wall clocks, candles with holders, and books.

\subsection{Walls, Doors, and Floor}
\label{rule:scenario_walls}
\subsection{Walls, Doors, and Floor}\label{rule:scenario_walls}

The indoor home setting will be surrounded by high and low \Term{walls}{Arena walls}, which are built up using standard fair construction material.

Expand All @@ -35,8 +33,7 @@ \subsection{Walls, Doors, and Floor}
\end{enumerate}


\subsection{Furniture}
\label{rule:scenario_furniture}
\subsection{Furniture}\label{rule:scenario_furniture}

The \Arena{} is furnished with typical objects common for the host country.
The minimal configuration consists of:
Expand All @@ -61,10 +58,9 @@ \subsection{Furniture}
A typical \Arena{} setup is shown in~\reffig{fig:scenario_arena}.
\begin{figure}[tbp]
\centering
\subfloat[Typical Arena]{\label{fig:scenario_arena}\includegraphics[height=46mm]{images/typical_arena.jpg}} ~
\subfloat[Typical Arena]{\label{fig:scenario_arena}\includegraphics[height=46mm]{images/typical_arena.jpg}}
\subfloat[Typical objects]{\label{fig:scenario_objects}\includegraphics[height=46mm]{images/typical_objects.jpg}}
\caption{An example of a \RoboCup\AtHome scenario}
\label{fig:arena}
\caption{An example of a \RoboCup\AtHome{} scenario}\label{fig:arena}
\end{figure}

\subsubsection{Cupboard}
Expand All @@ -77,8 +73,7 @@ \subsubsection{Fridge}
At least one powered and functioning fridge is required in the \Arena.
The fridge must not be smaller than \SI{120}{\centi\meter}.

\subsection{Changes to the \Arena}
\label{rule:scenario_changes}
\subsection{Changes to the \Arena}\label{rule:scenario_changes}

Since robots should be able to function in the real world, the \Arena{} is not fixed and might change without further notice.
\begin{enumerate}
Expand All @@ -102,11 +97,10 @@ \subsection{Changes to the \Arena}
\def\NumLocations{20\ }
\def\NumNames{20\ }

\subsection{Objects}
\label{rule:scenario_objects}
\subsection{Objects}\label{rule:scenario_objects}

Some tests in the RoboCup@Home league involve recognizing and manipulating objects (see Figure~\reffig{fig:scenario_objects}).
The TC will compile a list of at least \NumObjects objects for this purpose; the list will contain a picture of the each object, as well as its official name and \ObjectCategory{} (for instance, an \textit{Apple} belongs to the \textit{Fruits} category).
The TC will compile a list of at least \NumObjects{} objects for this purpose; the list will contain a picture of the each object, as well as its official name and \ObjectCategory{} (for instance, an \textit{Apple} belongs to the \textit{Fruits} category).
Most objects are likely to be lightweight and easy to grasp with one hand.
Every \ObjectCategory{} has an assigned \PredefinedLocation, where objects of that category can usually be found during tests (for example, an \textit{Fruits} can be found on the \textit{Kitchen Table}); assignments are announced during the \SetupDays{} (see~\refsec{chap:setup_and_preparation}).

Expand All @@ -127,13 +121,14 @@ \subsection{Objects}

The minimal configuration of \KnownObjects{} consists of:
\begin{itemize}
\item \textbf{\iterm{Tableware}:} Dish, bowl, cup (or mug), and napkin (see Figure \ref{fig:scenario_container_bowl}).
\item \textbf{\iterm{Tableware}:} Dish, bowl, cup (or mug), and napkin (see Figure~\ref{fig:scenario_container_bowl}).
\item \textbf{\iterm{Cutlery}:} Fork, knife, and spoon.
\item \textbf{\iterm{Trash Bags}:} Big plastic trash bags, preferably with a handle.
\item \textbf{\iterm{Bags}:} Lightweight and with stiff, vertical handles (see Figure \ref{fig:scenario_container_bag}).
\item \textbf{\iterm{Bags}:} Lightweight and with stiff, vertical handles (see Figure~\ref{fig:scenario_container_bag}).
\item \textbf{\iterm{Dry Food Container}:} Dry food containers (see Figure~\ref{fig:scenario_container_dry}).
\item \textbf{\iterm{Disks or books}:} A set of discs (LP, CD, DVD, or BluRay) or books.
\item \textbf{\iterm{Coat rack}:} A rack or pole to hang coats and other clothes.
\item \textbf{\iterm{Trays}:} A transport object such as a tray or basket, intended for bimanual manipulation (see Figure \ref{fig:scenario_container_tray}).
\item \textbf{\iterm{Trays}:} A transport object such as a tray or basket, intended for bimanual manipulation (see Figure~\ref{fig:scenario_container_tray}).
\item \textbf{\iterm{Pourable}:} An object whose content can be poured (such as a cereal box).
\item \textbf{\iterm{Heavy object}:} Weight between 1.0kg and 1.5kg.
\item \textbf{\iterm{Tiny object}:} A lightweight object that is not bigger than \SI{5}{\centi\meter} (such as paper, a teabag, or a pen).
Expand All @@ -145,16 +140,18 @@ \subsection{Objects}
\begin{figure}[H]
\centering
\subfloat[Cereal bowls]{
\label{fig:scenario_container_bowl}\includegraphics[width=0.33\textwidth]{images/container_bowl.png}}~
\includegraphics[width=0.33\textwidth]{images/container_bowl.png}\label{fig:scenario_container_bowl}}
\subfloat[Bright-colored paper bags]{
\label{fig:scenario_container_bag}\includegraphics[width=0.33\textwidth]{images/container_paper_bag.png}}~
\includegraphics[width=0.33\textwidth]{images/container_paper_bag.png}\label{fig:scenario_container_bag}}
\subfloat[Serving tray]{
\label{fig:scenario_container_tray}\includegraphics[width=0.33\textwidth]{images/container_tray.png}}
\includegraphics[width=0.33\textwidth]{images/container_tray.png}\label{fig:scenario_container_tray}}
\subfloat[Dry food Container]{
\includegraphics[width=0.33\textwidth]{images/container_dry.png}\label{fig:scenario_container_dry}}
\caption{Example of object containers}
\label{fig:scenario_containers}
\end{figure}

During the competition, objects can be requested based on their \ObjectCategory, physical attributes, or a combination of both.
During the competition, objects can be requested based on their \ObjectCategory{}, physical attributes, or a combination of both.
Relevant attributes to be used are:
\begin{itemize}
\item Color (such as red, blue, black with white dots, etc.).
Expand All @@ -172,23 +169,20 @@ \subsection{Objects}
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\subsection{Predefined Rooms and Locations}
\label{rule:scenario_locations}
\subsection{Predefined Rooms and Locations}\label{rule:scenario_locations}

Some tests in the RoboCup@Home league involve a \PredefinedLocation{} where people or objects can be found.
There will also be at least two \Term{doors}{Arena doors}, named an \Entrance{} and an \Exit, which lead in and out of the \Arena{}, respectively.
Room names, predefined locations, and location classes are announced during the \SetupDays{} (see~\refsec{chap:setup_and_preparation}).

\subsection{Predefined Person Names}
\label{rule:scenario_names}
\subsection{Predefined Person Names}\label{rule:scenario_names}

Some tests in the RoboCup@Home league involve memorizing a person's name.
All people in the \Arena{} have an assigned \PredefinedName{} chosen by the TC.
The list of names contains \SI{25}{\percent} male, \SI{25}{\percent} female, and \SI{50}{\percent} gender-neutral names taken from the list of most commonly used names in the United States.
Predefined names are announced during the \SetupDays{} (see~\refsec{chap:setup_and_preparation}).

\subsection{Wireless network}
\label{rule:scenario_wifi}
\subsection{Wireless network}\label{rule:scenario_wifi}

For wireless communication, an \ArenaNetwork{} is provided.
The actual infrastructure depends on the local organization.
Expand All @@ -204,7 +198,7 @@ \subsection{Wireless network}
\item Each VLAN is also connected to the Internet.
\end{itemize}

Teams broadcasting unauthorized (aka rogue) wireless networks will be disqualified from the competition and their devices may be temporarily confiscated by the OC; this includes smartphones and concealed SSIDs.
Teams broadcasting unauthorized (aka rogue) wireless networks will be disqualified from the competition and their devices may be temporarily confiscated by the OC, this includes smartphones and concealed SSIDs.
It is thus advised to verify your devices for any breaches of this nature.


Expand Down
14 changes: 9 additions & 5 deletions scoresheets/CleanTable.tex
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
\begin{scorelist}[timelimit=10]
\scoreheading{Main Goal}
\scoreitem{15}{Navigate to the table to pick up items}
\scoreitem[2]{40}{Picking tableware (cup, bowl) for transportation to the dishwasher}
\scoreitem{50}{Picking up a plate for transportation to the dishwasher}
\scoreitem[3]{50}{Picking tableware (cup, bowl, plate) for transportation to the dishwasher}
\scoreitem[2]{80}{Picking up cutlery (spoon, fork) for transportation to the dishwasher}
\scoreitem[2]{50}{Picking up a drink for transportation to the trash bin}
\scoreitem[5]{50}{Placing the tableware and cutlery inside the dishwasher}
\scoreitem[5]{50}{Placing an item correctly (cleanable, convenient like a human would) in the dishwasher}
\scoreitem[5]{75}{Placing an item correctly (cleanable, convenient like a human would) in the dishwasher}
\scoreitem[2]{50}{Placing a drink inside the trash bin}

\scoreheading{Bonus Rewards}
\scoreitem{100}{Pulling out the dishwasher rack}
Expand All @@ -14,12 +15,15 @@
\scoreitem{200}{Closing the dishwasher door}
\scoreitem{100}{Picking up the dishwasher tab for transportation to the dishwasher}
\scoreitem{200}{Placing the dishwasher tab inside the dishwasher's hatch intended for the tab}
\scoreitem[2]{50}{Wiping the area where the drink was}

\scoreheading{Deus Ex Machina Penalties}
\penaltyitem[2]{40}{Handing tableware over to the robot}
\penaltyitem{50}{Handing plate over to the robot}
\penaltyitem[3]{50}{Handing tableware over to the robot}
\penaltyitem[2]{80}{Handing cutlery over to the robot}
\penaltyitem[2]{50}{Handing a drink over to the robot}
\penaltyitem[5]{50}{Having a human place an object in the dishwasher}
\penaltyitem[2]{50}{Having a human place a drink inside the trash bin}
\penaltyitem[2]{25}{A human pointing at the trash bin}
%\setTotalScore{1000}
\end{scorelist}

Expand Down
Loading