-
Notifications
You must be signed in to change notification settings - Fork 62
First version of Pick and Place Challenge 2026 #994
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
SparkRibeiro21
wants to merge
12
commits into
master
Choose a base branch
from
TidytheKitchen2026_v0_tr
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
98e14fd
First version of TidytheKitchen 2026 task
SparkRibeiro21 523a9e8
Fixed typos and improved English
SparkRibeiro21 ac29a4b
Updated name of task from -Tidy the Kitchen- to -Pick and Place Chall…
SparkRibeiro21 7af40f3
Merge branch 'master' into TidytheKitchen2026_v0_tr
SparkRibeiro21 225355b
Merge branch 'master' into TidytheKitchen2026_v0_tr
SparkRibeiro21 92c6755
Fixed merge issues
SparkRibeiro21 3bf86ff
Fix undefined references in rulebook
SparkRibeiro21 a1557e4
Update documents/rulebook.tex
SparkRibeiro21 db0eba9
Update documents/rulebook.tex
SparkRibeiro21 446a0b9
Update documents/rulebook.tex
SparkRibeiro21 16b4fea
Update documents/rulebook.tex
SparkRibeiro21 aaffa04
update changelog
LeroyR File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,41 @@ | ||
| \begin{scorelist}[timelimit=10] | ||
| \scoreheading{Main Goal} | ||
| \scoreitem{25}{Navigate to the table to pick up items} | ||
| \scoreitem[8]{50}{Picking up an object (except cutlery and plate) for transportation} | ||
| \scoreitem[2]{80}{Picking up cutlery for transportation} | ||
| \scoreitem[1]{100}{Picking up the plate for transportation} | ||
|
|
||
| \scoreitem[3]{50}{Placing the tableware and cutlery inside the dishwasher} | ||
| \scoreitem[3]{75}{Placing an item correctly (cleanable, convenient like a human would) in the dishwasher} | ||
| \scoreitem[1]{50}{Placing a snack inside the trash bin} | ||
| \scoreitem[3]{15}{Perceiving objects in shelf and say on which layer the object should be placed} | ||
| \scoreitem[3]{15}{Placing an object in the cabinet} | ||
| \scoreitem[3]{50}{Placing an object next to similar objects in the cabinet} | ||
| \scoreitem[4]{50}{Placing breakfast items on the table} | ||
|
|
||
| \scoreheading{Bonus Rewards} | ||
| \scoreitem[2]{100}{Pulling and pushing the dishwasher rack} | ||
| \scoreitem[2]{200}{Opening and 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[3]{50}{Picking up an object from the shopping bag} | ||
| \scoreitem[2]{200}{Pouring cereal and milk into the bowl} | ||
|
|
||
| \scoreheading{Penalties} | ||
| \penaltyitem[11]{50}{Throwing or dropping an object while placing it} | ||
| \penaltyitem[2]{100}{Spilling cereal and milk while pouring} | ||
|
|
||
| \scoreheading{Deus Ex Machina Penalties} | ||
| \penaltyitem[8]{50}{Handing any object (except cutlery and plate) over to the robot} | ||
| \penaltyitem[2]{80}{Handing cutlery over to the robot} | ||
| \penaltyitem{100}{Handing the plate over to the robot} | ||
| \penaltyitem[11]{50}{Having a human place an object in the correct place} | ||
| \penaltyitem[11]{25}{A human pointing at a target location} | ||
|
|
||
| %\setTotalScore{1000} | ||
| \end{scorelist} | ||
|
|
||
|
|
||
| % Local Variables: | ||
| % TeX-master: "Rulebook" | ||
| % End: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,139 @@ | ||
| \section{Pick and Place Challenge} | ||
| \label{test:pick-and-place-challenge} | ||
| The robot tidies up the kitchen table after a dinner. | ||
| The tableware and cutlery must be placed inside the dishwasher. | ||
| The snacks must be placed inside the trash bin. | ||
| All other objects must be stored in a cabinet with shelves. Objects are sorted on the shelves based on similarity, for instance, an apple is stored next to other fruits. | ||
| The robot has to set the table for breakfast for one person.\\ | ||
|
|
||
| \noindent \textbf{Main goals:} | ||
| Tidy up all the objects on the dinner table. Tableware and cutlery have to be placed correctly inside the dishwasher, snacks have to be placed inside the trash bin and all other objects have to be placed in the cabinet, grouping them by category or similarity. | ||
| Place the breakfast items on a table (bowl, spoon, cereal box, and milk). \\ | ||
|
|
||
| \noindent \textbf{Optional goals:} | ||
| \begin{enumerate}[nosep] | ||
| \item Opening and closing the dishwasher door | ||
| \item Pulling and pushing the dishwasher rack | ||
| \item Placing a dishwasher tab inside the dishwasher | ||
| \item Picking objects from a shopping bag | ||
| \item Pour milk and cereal into the breakfast bowl | ||
| \end{enumerate} | ||
|
|
||
| \subsection*{Focus} | ||
| \emph{Object perception}, \emph{manipulation in narrow spaces}, and \emph{task planning}. | ||
|
|
||
| % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| % Setup | ||
| % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| \subsection*{Setup} | ||
| \begin{itemize}[nosep] | ||
| \item \textbf{Locations:} | ||
| \begin{itemize} | ||
| \item \textbf{Start Location:} Before the test, the robot waits outside the Arena and navigates to the testing area when the door is open. | ||
| \item \textbf{Test location:} This test takes place in the kitchen. | ||
| \end{itemize} | ||
| \item \textbf{People:} | ||
| \begin{itemize} | ||
| \item No people are involved in the test, unless the robot requires human assistance. | ||
| \end{itemize} | ||
| \item \textbf{Furniture:} | ||
| \begin{itemize} | ||
| \item \textbf{Dishwasher:} A dishwasher is located close to the dining table. The dishwasher is closed by default, any help the robot may need to open or close the doors or racks must be requested by the robot during the task. | ||
| \item \textbf{Trash bin:} A trash bin is located in the kitchen. | ||
| \item \textbf{Shopping Bag:} There is a shopping bag on the ground next to the table. | ||
| \item \textbf{Cabinet:} The cabinet contains objects arranged in groups, either by category or likeness, on different shelves. | ||
| \end{itemize} | ||
| \item \textbf{Objects:} | ||
| \begin{itemize} | ||
| \item \textbf{Table setting:} The table has a total of seven objects arranged arbitrarily or in a typical setting after a meal. The cutlery and tableware objects may be randomly stacked as is common after a meal. | ||
| The object distribution is as follows: | ||
| \begin{itemize}[nosep] | ||
| \item\textit{Cutlery}: One piece of cutlery (fork, knife, or spoon). | ||
| \item\textit{Tableware}: Any two objects (except cutlery), at least one of which is a plate (cup, plate). | ||
| \item\textit{Snacks}: One snack from the object set. | ||
| \item\textit{Other objects}: Any three additional objects from the object set, excluding cutlery, tableware, and snacks. | ||
| \end{itemize} | ||
| \item \textbf{Shopping Bag:} Any three additional objects from the object set, excluding cutlery, tableware, and snacks. | ||
| \item \textbf{Breakfast items:} The breakfast items are a bowl, a spoon, milk and cereal. | ||
| The object distribution is as follows: | ||
| \begin{itemize}[nosep] | ||
| \item\textit{Bowl and Spoon}: On top of the dishwasher. | ||
| \item\textit{Milk and Cereal}: Inside the cabinet, next to their respective category. | ||
| \end{itemize} | ||
| \item \textbf{Cabinet objects:} The objects are placed in a doorless cabinet. Each side of a shelf contains objects arranged in groups, either by category or likeliness. | ||
| \item \textbf{Dishwasher tab:} The tab can be found on top of the dishwasher and should be placed inside the tab slot in the dishwasher. | ||
| \end{itemize} | ||
| \end{itemize} | ||
|
|
||
|
|
||
| % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| % Procedure | ||
| % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| \subsection*{Procedure} | ||
| \begin{enumerate}[nosep] | ||
| \item \textbf{Test start:} The robot moves to the kitchen when the arena door is open. | ||
| \item \textbf{Table clean up:} The robot tidies up the table by putting: the cutlery and tableware items inside the dishwasher, the snack in the trash bin and the other objects in the cabinet, grouping them by category or similarity. | ||
| \item \textbf{Serve breakfast:} The robot sets the table for breakfast by placing the bowl, spoon, cereal and milk on the table in a typical setting for a meal. | ||
| \item \textbf{Sequence:} The robot is free to determine the order and method for performing the pick-and-place tasks. There is no predefined sequence, the robot may execute them in any way it finds optimal. | ||
| \end{enumerate} | ||
|
|
||
|
|
||
| % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| % Additional Rules | ||
| % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||
| \subsection*{Additional Rules and Remarks} | ||
| \begin{enumerate}[nosep] | ||
| \item \textbf{Safe placing:} Objects must be placed with care, namely the robot should place rather than throw or drop objects. | ||
| \item \textbf{Dishwasher door:} The dishwasher door is closed by default. | ||
| The robot may ask for help to open or close the door or racks at any time during the task. If the robot fails to open/close the door/rack, it must clearly state this and request the referee to open/close the door/rack. | ||
| \item \textbf{Correct dishwasher item placement:} The items should be placed in the rack correctly, namely in the location and in a manner as a person would put them. | ||
| \item \textbf{Incorrect cabinet category categorization:} The score is reduced if an object is stored in the cabinet, but not next to similar objects; this reduction is applied per incorrectly stored object. | ||
| \item \textbf{New category:} Objects that do not semantically belong to any of the categories represented on the shelves should be grouped together in an empty part of the shelf. | ||
| \item \textbf{Correct serve breakfast item placement:} The table must be set in a typical setting for a meal. The spoon must be placed next to the bowl, and the cereal and milk must be placed next to each other. | ||
| \item \textbf{Pouring:} A significant amount of the milk and cereal must be poured, Pouring a couple of drops of milk or bits of cereal is not enough. | ||
| \item \textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular: | ||
| \begin{itemize}[nosep] | ||
| \item pointing to an object or telling the robot where an object is | ||
| \item telling or pointing out to the robot where to place an object | ||
| \item handing an object over to the robot | ||
| \item moving an object instead of the robot | ||
| \end{itemize} | ||
| \item \textbf{Communicating Perception}: The robot must clearly communicate its perception to the referee. | ||
| Pointing at the object or attempting to pick it up is sufficient. When using visualization, make sure the robot | ||
| tells the referee where to look and makes the visualization easily accessible. | ||
| If the team wants to utilize bounding boxes make sure \textbf{only} one object with a bounding box is shown | ||
| at a time so the referee is easily able to check and verify. Also make sure the surrounding scene is visible, i.e. | ||
| just showing a cropped bounding box is not enough. | ||
| \end{enumerate} | ||
|
|
||
| \subsection*{OC Instructions} | ||
|
|
||
| During the \SetupDays: | ||
| \begin{itemize} | ||
| \item Provide official cutlery and tableware for training. | ||
| \item Provide official objects for training. | ||
| \end{itemize} | ||
| At least two hours before the test: | ||
| \begin{itemize} | ||
| \item Announce which table and cabinet will be used in the test. | ||
| \item Select which bags will be used in the test. | ||
| \end{itemize} | ||
|
|
||
|
|
||
| \subsection*{Referee Instructions} | ||
|
|
||
| The referee needs to: | ||
| \begin{itemize} | ||
| \item Place objects on the table (one piece of cutlery, two pieces of tableware, one snack, and three other objects). | ||
| \item Place objects in the shopping bag (three objects). | ||
| \item Place objects in the cabinet, grouping them by category or likeliness. | ||
| \item Place the bowl and spoon on top of the dishwasher. | ||
| \item Place the milk and cereal inside the cabinet next to their respective category. | ||
| \end{itemize} | ||
|
|
||
| \subsection*{Score sheet} | ||
| \input{scoresheets/PickAndPlaceChallenge.tex} | ||
|
|
||
| % Local Variables: | ||
| % TeX-master: "Rulebook" | ||
| % End: | ||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.