├── .gitattributes ├── .github ├── ISSUE_TEMPLATE │ ├── bug.md │ ├── question.md │ └── suggestion.md ├── code_of_conduct.md ├── contributing.md ├── dependabot.yml ├── pull_request_template.md └── workflows │ ├── ci.yml │ └── release.yml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── LICENSE.CC-BY-SA-4.0 ├── LICENSE.GPL-2.0 ├── Makefile ├── README.md ├── build.sh ├── citation.bib ├── documents ├── organization.tex ├── roadmap.tex ├── rulebook.tex └── scoresheets.tex ├── images ├── asrsetup.pdf ├── asrsetup.svg ├── container_bowl.png ├── container_dry.png ├── container_paper_bag.png ├── container_tray.png ├── continue.png ├── door_occlusion.svg ├── door_occlusion.svg.png ├── find_my_disk.png ├── go_to_the_coach_find_james_and_answer_a_question.png ├── help_me_carry_bag.png ├── help_me_carry_car.png ├── icon_award.pdf ├── icon_clock.pdf ├── icon_score.pdf ├── icon_whistle.pdf ├── logo_AtHomeWiki.pdf ├── logo_RoboCupAtHome.jpg ├── logo_RoboCupFed.jpg ├── navigation.png ├── no.png ├── person_recognition_crowd.jpg ├── person_recognition_operator.jpg ├── restaurant.png ├── softbank_pepper.png ├── spr_ppl_layout.png ├── standard_QR_codes.tex ├── toyota_hsr.png ├── typical_arena.jpg ├── typical_objects.jpg └── yes.png ├── latexmkrc ├── pages ├── Appendices.tex ├── acknowledgments.tex ├── example_skills.tex ├── general_rules │ ├── AudienceInteraction.tex │ ├── ContinueRules.tex │ ├── ExternalDevices.tex │ ├── ManipulationChallenge.tex │ ├── OpenChallenge.tex │ ├── Organization.tex │ ├── PenaltiesBonuses.tex │ ├── Procedure.tex │ ├── Robots-OPL.tex │ ├── Robots-SPL.tex │ ├── Robots.tex │ ├── Scenario.tex │ ├── TeamRegistration.tex │ ├── arena_decorations.tex │ └── vizbox.tex ├── introduction │ ├── Awards.tex │ ├── Competition.tex │ ├── Infrastructure.tex │ ├── Leagues.tex │ └── Organization.tex ├── organization │ ├── GeneralRules.tex │ ├── Introduction.tex │ ├── Setup.tex │ ├── about.tex │ ├── documentinfo.tex │ └── titlepage.tex ├── roadmap │ ├── CompetitionConcepts.tex │ ├── acknowledgments.tex │ ├── documentinfo.tex │ └── titlepage.tex ├── rulebook │ ├── GeneralRules.tex │ ├── Introduction.tex │ ├── about.tex │ ├── documentinfo.tex │ └── titlepage.tex ├── safety_first.tex └── scoresheets │ └── registration_form.tex ├── scoresheets ├── CleanTable.tex ├── EGPSR.tex ├── Finals.tex ├── GPSR.tex ├── GiveMeAHand.tex ├── HelpMeCarry.tex ├── OpenChallenge.tex ├── PosterSession.tex ├── Receptionist.tex ├── Restaurant.tex ├── StoringGroceries.tex └── old │ ├── CleanUp.tex │ ├── CocktailParty.tex │ ├── Farewell.tex │ ├── FinalsExec.tex │ ├── FinalsJury.tex │ ├── FindMyDisk.tex │ ├── FindMyMates.tex │ ├── HandMeThat.tex │ ├── PnG.tex │ ├── SPR.tex │ ├── ServeBreakfast.tex │ ├── ServingDrinks.tex │ ├── SetTable.tex │ ├── SmoothieChef.tex │ ├── SticklerForRules.tex │ ├── TakeOutGarbage.tex │ ├── TidyUp.tex │ ├── TourGuide.tex │ └── WhereIsThis.tex ├── setup ├── abbrevix.ist ├── abbrevix.tex ├── active_version.tex ├── config.tex ├── macros.tex ├── macros_leagues.tex ├── macros_open_demonstrations.tex ├── macros_scoresheets.tex ├── packages.tex ├── packages_scoresheets.tex └── styling.tex ├── styles ├── bar.sty └── tweaklist.sty ├── tasks ├── CleanTable.tex ├── EGPSR.tex ├── Finals.tex ├── GPSR.tex ├── GiveMeAHand.tex ├── HelpMeCarry.tex ├── Receptionist.tex ├── Restaurant.tex ├── StoringGroceries.tex └── old │ ├── CleanUp.tex │ ├── CocktailParty.tex │ ├── EEGPSR.tex │ ├── Farewell.tex │ ├── FindMyDisk.tex │ ├── FindMyMates.tex │ ├── HandMeThat.tex │ ├── HelpMeCarry.tex │ ├── OpenChallenge.tex │ ├── PnG.tex │ ├── SPR.tex │ ├── ServeBreakfast.tex │ ├── ServingDrinks.tex │ ├── SetTable.tex │ ├── SmoothieChef.tex │ ├── SticklerForRules.tex │ ├── TakeOutGarbage.tex │ ├── ThemedFinals.tex │ ├── TidyUp.tex │ ├── TourGuide.tex │ ├── WhatisThat.tex │ └── WhereIsThis.tex └── teams ├── DSPL.tex ├── OPL.tex ├── finals.tex └── teams.tex /.gitattributes: -------------------------------------------------------------------------------- 1 | #* text=auto 2 | *.tex diff=tex 3 | *.jpg binary 4 | *.png binary 5 | *.pdf binary 6 | *.svg binary 7 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug 3 | about: Report a problem with the Rulebook. 4 | title: '' 5 | labels: Bug 6 | assignees: '' 7 | --- 8 | 9 | ## Describe the bug 10 | A clear and concise description of what the bug is. 11 | If it is a compile error, please provide a full traceback of the error that you received (if any), regardless of how long it is. 12 | 13 | ## To Reproduce 14 | Steps to reproduce the behavior 15 | 1. Go to '...' 16 | 2. Click on '....' 17 | 3. Scroll down to '....' 18 | 4. See error 19 | 20 | ## Expected behavior 21 | A clear and concise description of what you expected to happen. 22 | 23 | ## System (please complete the following information): 24 | - OS: [e.g. OSX, Linux] 25 | - LaTeX version: 26 | 27 | ## Additional context 28 | Add any other context about the problem here. 29 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/question.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Question 3 | about: Ask about something you don't understand. 4 | title: 'Q: [3-5 words encapsulating your question]' 5 | labels: Question 6 | assignees: '' 7 | 8 | --- 9 | 10 | 11 | ### Before posting your question 12 | 13 | Before posting your question, please make sure you have: 14 | 1. Searched within existing [issues](https://github.com/RoboCupAtHome/RuleBook/issues?q=is%3Aissue+label%3AQuestion) for related questions. 15 | 2. Searched for your question in the [F.A.Q.](https://github.com/RoboCupAtHome/RuleBook/wiki/FAQ:-Frequently-Asked-Questions) 16 | 17 | ## Quick guide 18 | 19 | 1. Ask only **one question per issue** 20 | 2. Make the **title short and descriptive** 21 | 1. Start with *Q:* 22 | 2. Use the acronym of the related test (if any) 23 | 3. Avoid obvious words like: *question, about, doubt, wrong, example*, etc. 24 | 3. Make the body of the issue concise but explicative 25 | 4. (If you are a contributor already) Add the label of the related test(s), or *General Rules* for questions affecting all of the rulebook 26 | 5. Close the issue once your question has been answered 27 | 28 | === 29 | 30 | ## Summary 31 | Summary of the question here (one concise paragraph). 32 | 33 | ## Details 34 | Any additional details and examples relevant to your question. 35 | Please link to the branch/file/line-number or at least to the relevant section of the rules. 36 | Do not refer to date/build/page. 37 | Always double check your spelling and grammar :) -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/suggestion.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Idea 3 | about: Suggest an idea for the rulebook. 4 | title: '' 5 | labels: Idea 6 | assignees: '' 7 | --- 8 | 9 | ## Is your idea/suggestion related to a problem? Please describe. 10 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 11 | 12 | ## Describe the solution you'd like 13 | A clear and concise description of what you want to happen. 14 | 15 | ## Describe alternatives you've considered 16 | A clear and concise description of any alternative solutions you've considered. 17 | 18 | ## Additional context 19 | Add any other context about the suggestion here. -------------------------------------------------------------------------------- /.github/code_of_conduct.md: -------------------------------------------------------------------------------- 1 | ## RoboCup Federation Code of Conduct 2 | 3 | Approved April 2019 4 | 5 | The RoboCup Federation (RCF) coordinates a variety of competitions, conferences, workshops, educational outreach activities, and online discussions pertaining to advancing the state of the art in AI and robotics research. 6 | 7 | RoboCup has a rich past record of fostering inclusion and respect for all participants and remains dedicated to providing a respectful and inclusive experience for everyone. Respectful behavior is always, and has always been, assumed and expected of community members in all interactions. 8 | 9 | Competition participants and attendees are expected to interact with others in a respectful and courteous manner, and to abide by standard academic practices of giving appropriate credit for other peoples' ideas. 10 | 11 | Abusive, racist, sexist, homophobic, intimidating, harassing, or threatening behavior towards any other event participant or directed at any organizer, student volunteer, sponsor, event staff, or spectators, will not be tolerated. RoboCup disapproves of offensive actions, aggressive acts, or comments that intimidate or disparage others. RoboCup will not tolerate any kind of harassment, including but not limited to: 12 | * Verbal attacks, accusations, bullying, or offensive comments Aggressive or intimidating behavior 13 | * Sustained disruption during presentations and other events 14 | * Unwelcome sexual attention 15 | * Inappropriate physical contact 16 | * Deliberate intimidation or stalking either in person or online Sexual and racist images or materials in public spaces 17 | * Ignoring, encouraging, or advocating any of the above behaviors 18 | 19 | RoboCup also disapproves of, and will not tolerate acts of plagiarism. 20 | 21 | All persons, organizations and entities that attend RoboCup events are subject to the standards of conduct set forth above. RoboCup expects all community members to formally endorse this code of conduct, and to actively prevent and discourage any undesired behaviors. Everyone should feel empowered to politely engage when themselves or others are disrespected, and to raise awareness and understanding of this code of conduct. RoboCup event participants asked to stop their unacceptable behavior are expected to comply immediately. Sponsors are also subject to this code of conduct in their participation in RoboCup events. 22 | 23 | All RoboCup agents and/or representatives are empowered to take all necessary action to prevent and/or stop any conduct that violates this code including but not limited to demanding that the violator be removed either temporarily or permanently from the current event and/or future events (without refund) or calling in local law enforcement officials to assist in the matter. 24 | 25 | To report any behavior that violates this code of conduct, please immediately report the conduct complained of to a RoboCup representative at the conference or event, or contact (by email or in person) the RoboCup president or any RoboCup trustee. The following email address may also be used: conduct@robocup.org. Complaints will be reviewed by a subcommittee of the board of trustees, and may be referred to law enforcement when warranted. -------------------------------------------------------------------------------- /.github/contributing.md: -------------------------------------------------------------------------------- 1 | Thanks for considering contributing! The league only exists with the support of the community. 2 | 3 | ## How Can I Contribute? 4 | 5 | ### Do you have an idea to improve the rules? 6 | 7 | Please open [a new GitHub issue](https://github.com/RoboCupAtHome/RuleBook/issues) describing your idea. 8 | 9 | ### Did you write a fix for a bug? 10 | 11 | Contributions to the rulebook must be in the form of pull requests and meet the conventions and policies described in the [contribution guidelines](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines:-Contributing). For guidelines about the workflow check [here](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines:-Workflow). 12 | 13 | ### I want to help maintain the league website 14 | 15 | We're always looking for volunteers to help in tasks such as organizing and categorizing publications, team videos, memories, scores, press, and writing examples and extended rule explanations. 16 | Please contact the Organizing Committee. 17 | 18 | ### Do you want to develop a utility for the competition? 19 | 20 | Great! The league has benefited from contributions like the [command generator](https://github.com/kyordhel/GPSRCmdGen) and [VizBox](https://github.com/RoboCupAtHome/vizbox). If you have a specific idea for a new tool for teams or for refereeing, please [open a new GitHub issue](https://github.com/RoboCupAtHome/RuleBook/issues) describing your proposal. 21 | 22 | ### Do you want to help run the competition? 23 | 24 | The RoboCup @Home Organizing Committee is always looking for volunteers to help run the event. Please contact the committee. 25 | 26 | 27 | ## Contribution Naming Conventions 28 | 29 | ### Files 30 | TeX files describing test files are named using a *Letter-case separated words* convention in which the first letter of each word is capital. When using acronyms, the next word can be separated with an underscore. All other file names are specified in lowercase (with the exception of acronyms), and separating words with underscores. 31 | 32 | The following practices must also be followed: 33 | - Spaces in filenames must be avoided. 34 | - The format for date designations is YYYYMMDD (to ensure chronological order over years). 35 | - File names should be as short as possible (max 25 characters + extension). 36 | - Special characters such as ~ ! @ # $ % ^ & * ( ) ` ; < > ? , [ ] { } ' " and | should be avoided. 37 | - When using a sequential numbering system, three leading zeros are added for clarity. 38 | 39 | ### Branches 40 | Branch names use always small caps (except by acronyms) with words separated with the underscore character. 41 | 42 | The name of a branch strongly depends on the introduced change type and the function of the change. Branch names must always be short and descriptive, avoiding sequences and special characters. The following branch types are set: 43 | - **```year/```** Used for tests mainly, and other changes targeting an specific year. 44 | - ```2020/taking_the_bus``` 45 | - ```2025/IKEA_assembly``` 46 | - **```feature/```** Used to introduce new features and general rules in the rulebook, as well as changes that affect many tests, or modify the scoring. 47 | - ```feature/description_of_new_stuff``` 48 | - ```feature/eegpsr_example_scoresheet``` 49 | - **```fix/```** Used to address or solve an specific issue 50 | - ```fix/#185_remove_exact_numbers``` 51 | - ```fix/#500``` 52 | 53 | **Important Remark:** Branches shall never be merged into ```master```, nor ```master``` shall merge into any branches. Pull Requests are mandatory for merging, and rebase for updating. Also, squash commits are not permitted. -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: "github-actions" 4 | directory: "/" 5 | schedule: 6 | interval: "daily" 7 | -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | ** Note: Your contribution is expected to meet the conventions and policies described in the [contribution guidelines](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines:-Contributing) ** 2 | 3 | ## Description 4 | 5 | Closes issue # 6 | 7 | Changes proposed in this pull request: 8 | - 9 | - 10 | - 11 | 12 | ## Other comments 13 | If this request is marked as a draft, please describe your plans or any specific feedback you would like -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | 3 | on: [push, pull_request] 4 | 5 | jobs: 6 | lint: 7 | runs-on: ubuntu-latest 8 | steps: 9 | - uses: actions/checkout@v4 10 | - name: LaTeX linter (chktex) 11 | uses: j2kun/chktex-action@v2.0.0 12 | # Provide this output for context, but don't fail builds 13 | continue-on-error: true 14 | env: 15 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 16 | 17 | build: 18 | name: build-${{ matrix.document }} 19 | runs-on: ubuntu-latest 20 | container: texlive/texlive:TL2022-historic 21 | needs: [lint] 22 | strategy: 23 | fail-fast: false 24 | matrix: 25 | document: [rulebook, scoresheets] 26 | 27 | steps: 28 | - uses: actions/checkout@v4 29 | 30 | - name: Take ownership of the checkout directory (Git CVE-2022-24765) 31 | run: chown --recursive --reference=/ . 32 | 33 | - name: Allow for file ownership conflicts with Docker and GitHub Actions 34 | run: git config --global --add safe.directory '*' 35 | 36 | - name: LaTeX compilation 37 | run: 38 | TERM=xterm make ${{ matrix.document }} 39 | 40 | - name: Upload build result 41 | uses: actions/upload-artifact@v4 42 | with: 43 | name: ${{ matrix.document }} 44 | path: .build/${{ matrix.document }}.pdf 45 | 46 | deploy-pdfs: 47 | name: deploy-pdfs 48 | runs-on: ubuntu-latest 49 | permissions: 50 | contents: write 51 | needs: [build] 52 | steps: 53 | - uses: actions/checkout@v4 54 | with: 55 | ref: gh-pages 56 | 57 | - name: Download rulebook 58 | uses: actions/download-artifact@v4 59 | with: 60 | name: rulebook 61 | path: ${{ runner.temp }}/rulebook 62 | - name: Download scoresheets 63 | uses: actions/download-artifact@v4 64 | with: 65 | name: scoresheets 66 | path: ${{ runner.temp }}/scoresheets 67 | 68 | - name: Preparations for GitHub Pages 69 | if: github.ref_name == github.event.repository.default_branch 70 | env: 71 | ARTIFACTS_PATH: ${{ runner.temp }} 72 | run: | 73 | # Make sure directories exist 74 | cd "${GITHUB_WORKSPACE}" 75 | mkdir -p rulebook 76 | mkdir -p scoresheets 77 | FILENAME=${GITHUB_REF_NAME} 78 | # Strip out any extra slashes in the rest 79 | FILENAME=${FILENAME//\//\_}.pdf 80 | mv ${ARTIFACTS_PATH}/rulebook/rulebook.pdf rulebook/${FILENAME} 81 | mv ${ARTIFACTS_PATH}/scoresheets/scoresheets.pdf scoresheets/${FILENAME} 82 | - name: Commit and push to GitHub Pages 83 | if: github.ref_name == github.event.repository.default_branch 84 | uses: stefanzweifel/git-auto-commit-action@v5 85 | with: 86 | branch: gh-pages 87 | commit_author: "Continuous Deployment " 88 | commit_message: "[github actions] deploy" 89 | commit_user_name: "Continuous Deployment" 90 | commit_user_email: "git@robocupathome.org" 91 | file_pattern: "./*.pdf" 92 | repository: ${{ github.workspace }} 93 | skip_checkout: true 94 | skip_fetch: true 95 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release 2 | 3 | on: 4 | push: 5 | tags: 6 | - '*' 7 | 8 | jobs: 9 | lint: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: actions/checkout@v4 13 | - name: LaTeX linter (chktex) 14 | uses: j2kun/chktex-action@v2.0.0 15 | # Provide this output for context, but don't fail builds 16 | continue-on-error: true 17 | env: 18 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 19 | 20 | build: 21 | needs: [lint] 22 | runs-on: ubuntu-latest 23 | container: texlive/texlive:TL2022-historic 24 | steps: 25 | - uses: actions/checkout@v4 26 | 27 | - name: Take ownership of the checkout directory (Git CVE-2022-24765) 28 | run: chown --recursive --reference=/ . 29 | 30 | - name: Allow for file ownership conflicts with Docker and GitHub Actions 31 | run: git config --global --add safe.directory '*' 32 | 33 | - name: LaTeX compilation Rulebook 34 | run: 35 | TERM=xterm make rulebook 36 | - name: LaTeX compilation Score sheets 37 | run: 38 | TERM=xterm make scoresheets 39 | 40 | - name: Create Release 41 | id: create-release 42 | uses: softprops/action-gh-release@v2 43 | with: 44 | draft: false 45 | prerelease: false 46 | generate_release_notes: false 47 | token: ${{ secrets.GITHUB_TOKEN }} 48 | files: | 49 | .build/rulebook.pdf 50 | .build/scoresheets.pdf 51 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .build 2 | .vscode 3 | 4 | *.aux 5 | *.glo 6 | *.idx 7 | *.log 8 | *.toc 9 | *.ist 10 | *.acn 11 | *.acr 12 | *.alg 13 | *.bbl 14 | *.blg 15 | *.dvi 16 | *.glg 17 | *.gls 18 | *.ilg 19 | *.ind 20 | *.lof 21 | *.lot 22 | *.maf 23 | *.mtc 24 | *.mtc1 25 | *.out 26 | *.synctex.gz 27 | *.and 28 | *.adx 29 | *.tex~ 30 | *.pdf 31 | .temp_* 32 | *.backup 33 | *.rubbercache 34 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The content of this project itself is licensed under the Creative Commons 2 | Attribution Share Alike 4.0 International license, and the underlying source code 3 | used to format and display that content is licensed under the GPL v2 license. 4 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .SUFFIXES: 2 | ROOT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) 3 | BUILD_DIR:=$(ROOT_DIR)/.build 4 | 5 | ## TOOLS 6 | SILENT = @ 7 | MSG = echo 8 | HASRUBBER:=$(shell which rubber) 9 | XELATEX:=$(shell which xelatex) 10 | 11 | ## COLORS 12 | RESET = tput sgr0 13 | YELLOW = tput setaf 3; tput bold 14 | 15 | TEXFILES=$(shell find -name "*.tex") 16 | # Use all documents/*.tex files 17 | SOURCES=$(wildcard documents/*.tex) 18 | _S0 := $(subst .tex,,$(SOURCES)) 19 | TEXRULES := $(subst documents/,, $(_S0)) 20 | 21 | ################################################# 22 | # Rules 23 | ################################################# 24 | .PHONY: all clean ${TEXRULES} lint 25 | all: $(TEXRULES) 26 | clean: 27 | rm -rf .build 28 | 29 | .build: 30 | mkdir -p .build 31 | 32 | # Same as github lint action 33 | lint: 34 | $(SILENT) ${YELLOW}; $(MSG) "Running chktex"; $(RESET) 35 | $(SILENT) chktex ${TEXFILES} 36 | 37 | 38 | ################################################# 39 | # Generate rules for sources 40 | ################################################# 41 | define latex_rules 42 | main_file := $(1) 43 | 44 | ## documents/foo.tex -> foo 45 | _SCARP0 := $$(subst .tex,,$$(main_file)) 46 | RULENAME := $$(subst documents/,, $$(_SCARP0)) 47 | 48 | ## Generates rules for pdfs 49 | $$(RULENAME): $$(main_file) | .build 50 | $(SILENT) ${YELLOW}; $(MSG) "Building $$<"; $(RESET) 51 | ifdef HASRUBBER 52 | $(SILENT) rubber --unsafe --pdf --force $$< 53 | else 54 | $(SILENT) latexmk -Werror -shell-escape -silent -pdf -interaction=nonstopmode -outdir=$${BUILD_DIR} $$< 55 | endif 56 | ifdef XELATEX 57 | $(SILENT) xelatex $$< 58 | endif 59 | 60 | ## Generate Summary Rule 61 | $$(RULENAME)_summary: | $$(RULENAME) 62 | $(SILENT) tail -n1 .build/$$(|).log 63 | endef 64 | 65 | $(foreach source, $(SOURCES), $(eval $(call latex_rules, $(source)))) -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | IMAGE=docker.io/texlive/texlive:TL2022-historic 4 | 5 | if command -v podman >/dev/null 2>&1 6 | then 7 | podman run --rm --net=none -w /data/ -v`pwd`:/data -e TERM=xterm-256color $IMAGE make rulebook scoresheets 8 | else 9 | docker run --rm --user="$(id -u):$(id -g)" --net=none -w /data/ -v`pwd`:/data -e TERM=xterm-256color $IMAGE make rulebook scoresheets 10 | fi 11 | 12 | -------------------------------------------------------------------------------- /citation.bib: -------------------------------------------------------------------------------- 1 | @misc{rulebook_2025, 2 | author = {Hart, Justin and Moriarty, Alexander and Pasternak, Katarzyna 3 | and Kummert, Johannes and Leonetti, Matteo and Contreras, Luis 4 | and Hawkin, Alina and Hassouna, Vanessa and Ruegemer, Leroy 5 | and Mitzutani, Akinobu and Ribeiro, Tiago}, 6 | title = {RoboCup@Home 2025: Rules and Regulations}, 7 | year = {2025}, 8 | howpublished = {\url{https://github.com/RoboCupAtHome/RuleBook/releases/tag/2025.1}}, 9 | } 10 | -------------------------------------------------------------------------------- /documents/organization.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: organization.tex 2023-10-21 PetervDooren $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: introduction to RoboCupAtHome 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \documentclass[11pt, twoside, openright, a4paper, chapterprefix]{scrbook} 9 | \usepackage[inner=2.5cm, outer=2.5cm, top=4cm, bottom=4cm]{geometry} 10 | 11 | %%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 12 | \input{./setup/packages.tex} 13 | \input{./setup/config.tex} 14 | \input{./pages/organization/documentinfo.tex} 15 | % footertext 16 | \newcommand{\footline}{RoboCup@Home Organization document / \rulebookVersion} 17 | \input{./setup/styling.tex} 18 | 19 | 20 | %%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 21 | \input{./setup/active_version.tex} 22 | \graphicspath{{\YEAR/}{./images/}} 23 | \input{./setup/macros.tex} 24 | \input{./setup/abbrevix.tex} 25 | 26 | 27 | \makeindex % generate index 28 | \makeabbex % generate abbreviations 29 | 30 | 31 | %\newcommand{\sectionbreak}{\clearpage} 32 | %\newcommand{\subsectionbreak}{\clearpage} 33 | 34 | 35 | \begin{document} 36 | 37 | \input{pages/organization/titlepage} 38 | 39 | \setcounter{page}{0} 40 | \pagenumbering{roman} 41 | \pagestyle{empty} 42 | \input{pages/organization/about} 43 | \input{pages/acknowledgments} 44 | \clearpage 45 | 46 | \pagestyle{plain} 47 | \tableofcontents 48 | \clearpage 49 | 50 | \setcounter{page}{1} 51 | \pagenumbering{arabic} 52 | 53 | \input{pages/organization/Introduction} 54 | \input{pages/organization/GeneralRules} 55 | \input{pages/organization/Setup} 56 | 57 | \printabx 58 | \printidx 59 | 60 | \end{document} 61 | -------------------------------------------------------------------------------- /documents/roadmap.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: Rulebook.tex 2014-12-12 balkce $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: introduction to RoboCupAtHome 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \documentclass[11pt, twoside, openright, a4paper, chapterprefix]{scrbook} 9 | \usepackage[inner=2.5cm, outer=2.5cm, top=4cm, bottom=4cm]{geometry} 10 | 11 | %%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 12 | \input{./setup/packages.tex} 13 | \input{./setup/config.tex} 14 | \input{./pages/roadmap/documentinfo.tex} 15 | % footertext 16 | \newcommand{\footline}{RoboCup@Home Roadmap / \rulebookVersion} 17 | \input{./setup/styling.tex} 18 | 19 | 20 | %%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 21 | \input{./setup/active_version.tex} 22 | \graphicspath{{\YEAR/}{./images/}} 23 | \input{./setup/macros.tex} 24 | \input{./setup/abbrevix.tex} 25 | 26 | 27 | 28 | \makeindex % generate index 29 | \makeabbex % generate abbreviations 30 | 31 | 32 | 33 | 34 | 35 | %\newcommand{\sectionbreak}{\clearpage} 36 | %\newcommand{\subsectionbreak}{\clearpage} 37 | 38 | 39 | \begin{document} 40 | 41 | \input{./pages/roadmap/titlepage} 42 | 43 | \setcounter{page}{0} 44 | \pagenumbering{roman} 45 | \pagestyle{empty} 46 | \input{./pages/roadmap/acknowledgments} 47 | \clearpage 48 | 49 | \pagestyle{plain} 50 | \tableofcontents 51 | \clearpage 52 | 53 | \setcounter{page}{1} 54 | \pagenumbering{arabic} 55 | 56 | \input{pages/roadmap/CompetitionConcepts} 57 | 58 | 59 | 60 | \printabx 61 | \printidx 62 | 63 | \end{document} 64 | -------------------------------------------------------------------------------- /documents/rulebook.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: Rulebook.tex 2014-12-12 balkce $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: introduction to RoboCupAtHome 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \documentclass[11pt, twoside, openright, a4paper, chapterprefix]{scrbook} 9 | \usepackage[inner=2.5cm, outer=2.5cm, top=4cm, bottom=4cm]{geometry} 10 | 11 | %%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 12 | \input{./setup/packages.tex} 13 | \input{./setup/config.tex} 14 | \input{./pages/rulebook/documentinfo.tex} 15 | % footertext 16 | \newcommand{\footline}{RoboCup@Home Rulebook / \rulebookVersion} 17 | \input{./setup/styling.tex} 18 | 19 | 20 | %%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 21 | \input{./setup/active_version.tex} 22 | \graphicspath{{\YEAR/}{./images/}} 23 | \input{./setup/macros.tex} 24 | \input{./setup/abbrevix.tex} 25 | 26 | 27 | 28 | \makeindex{} % generate index 29 | \makeabbex{} % generate abbreviations 30 | 31 | 32 | 33 | 34 | 35 | %\newcommand{\sectionbreak}{\clearpage} 36 | %\newcommand{\subsectionbreak}{\clearpage} 37 | 38 | 39 | \begin{document} 40 | 41 | \input{./pages/rulebook/titlepage} 42 | 43 | \setcounter{page}{0} 44 | \pagenumbering{roman} 45 | \pagestyle{empty} 46 | \input{pages/rulebook/about} 47 | \input{pages/acknowledgments} 48 | \clearpage{} 49 | 50 | \pagestyle{plain} 51 | \tableofcontents{} 52 | \clearpage{} 53 | 54 | \setcounter{page}{1} 55 | \pagenumbering{arabic} 56 | 57 | \input{pages/rulebook/Introduction} 58 | 59 | \input{pages/roadmap/CompetitionConcepts} 60 | 61 | \input{pages/rulebook/GeneralRules} 62 | 63 | \input{pages/organization/Setup} 64 | 65 | 66 | 67 | %%% STAGE I 68 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 69 | \chapter{Tests in Stage I}\label{chap:stage_I} 70 | 71 | \testtocentry{test:carry-my-luggage} 72 | \testtocentry{test:gpsr} 73 | \testtocentry{test:receptionist} 74 | \testtocentry{test:storing-groceries} 75 | 76 | 77 | 78 | % Uncomment to get aesthetic improvement 79 | \cleardoublepage{} 80 | \input{tasks/HelpMeCarry} 81 | \newpage{} 82 | \input{tasks/GPSR} 83 | \newpage{} 84 | \input{tasks/Receptionist} 85 | \newpage{} 86 | \input{tasks/StoringGroceries} 87 | 88 | 89 | 90 | 91 | %%% STAGE II 92 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 93 | \chapter{Tests in Stage II}\label{chap:stage_II} 94 | 95 | \testtocentry{test:clean-the-table} 96 | \testtocentry{test:egpsr} 97 | \testtocentry{test:restaurant} 98 | \testtocentry{test:give-me-a-hand} 99 | 100 | 101 | % Uncomment to get aesthetic improvement 102 | \cleardoublepage{} 103 | \input{tasks/CleanTable} 104 | \newpage{} 105 | \input{tasks/EGPSR} 106 | \newpage{} 107 | \input{tasks/Restaurant} 108 | \newpage{} 109 | \input{tasks/GiveMeAHand} 110 | 111 | 112 | 113 | %%% FINALS 114 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 115 | \input{tasks/Finals} 116 | 117 | 118 | \printabx{} 119 | \printidx{} 120 | 121 | \end{document} 122 | -------------------------------------------------------------------------------- /images/asrsetup.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/asrsetup.pdf -------------------------------------------------------------------------------- /images/container_bowl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/container_bowl.png -------------------------------------------------------------------------------- /images/container_dry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/container_dry.png -------------------------------------------------------------------------------- /images/container_paper_bag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/container_paper_bag.png -------------------------------------------------------------------------------- /images/container_tray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/container_tray.png -------------------------------------------------------------------------------- /images/continue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/continue.png -------------------------------------------------------------------------------- /images/door_occlusion.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 24 | 26 | 29 | 33 | 34 | 39 | 47 | 54 | 55 | 58 | 62 | 63 | 64 | 83 | 85 | 86 | 88 | image/svg+xml 89 | 91 | 92 | 93 | 94 | 95 | 100 | 107 | Hatch 109 | 110 | 117 | Border 119 | 120 | 121 | 122 | -------------------------------------------------------------------------------- /images/door_occlusion.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/door_occlusion.svg.png -------------------------------------------------------------------------------- /images/find_my_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/find_my_disk.png -------------------------------------------------------------------------------- /images/go_to_the_coach_find_james_and_answer_a_question.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/go_to_the_coach_find_james_and_answer_a_question.png -------------------------------------------------------------------------------- /images/help_me_carry_bag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/help_me_carry_bag.png -------------------------------------------------------------------------------- /images/help_me_carry_car.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/help_me_carry_car.png -------------------------------------------------------------------------------- /images/logo_RoboCupAtHome.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/logo_RoboCupAtHome.jpg -------------------------------------------------------------------------------- /images/logo_RoboCupFed.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/logo_RoboCupFed.jpg -------------------------------------------------------------------------------- /images/navigation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/navigation.png -------------------------------------------------------------------------------- /images/no.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/no.png -------------------------------------------------------------------------------- /images/person_recognition_crowd.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/person_recognition_crowd.jpg -------------------------------------------------------------------------------- /images/person_recognition_operator.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/person_recognition_operator.jpg -------------------------------------------------------------------------------- /images/restaurant.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/restaurant.png -------------------------------------------------------------------------------- /images/softbank_pepper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/softbank_pepper.png -------------------------------------------------------------------------------- /images/spr_ppl_layout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/spr_ppl_layout.png -------------------------------------------------------------------------------- /images/standard_QR_codes.tex: -------------------------------------------------------------------------------- 1 | \chapter{QR code examples} 2 | \label{chap:qr-code-examples} 3 | \begin{figure}[tbp] 4 | \centering 5 | \subfloat[\enquote{continue}]{\label{fig:qr_continue}\includegraphics[width=0.5\columnwidth]{continue.png}} ~ 6 | \subfloat[\enquote{yes}]{\label{fig:qr_yes}\includegraphics[width=0.5\columnwidth]{yes.png}} ~ 7 | \end{figure} 8 | 9 | \begin{figure}[tbp] 10 | \centering 11 | \subfloat[\enquote{no}]{\label{fig:qr_no}\includegraphics[width=0.5\columnwidth]{no.png}} ~ 12 | \subfloat[\enquote{Go to the coach, find James and answer a question.}]{\label{fig:qr_command}\includegraphics[width=0.5\columnwidth]{go_to_the_coach_find_james_and_answer_a_question.png}} 13 | 14 | \caption{Various QR codes} 15 | \label{fig:qr_continue} 16 | \end{figure} -------------------------------------------------------------------------------- /images/toyota_hsr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/toyota_hsr.png -------------------------------------------------------------------------------- /images/typical_arena.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/typical_arena.jpg -------------------------------------------------------------------------------- /images/typical_objects.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/typical_objects.jpg -------------------------------------------------------------------------------- /images/yes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/images/yes.png -------------------------------------------------------------------------------- /latexmkrc: -------------------------------------------------------------------------------- 1 | $pdf_previewer = "start okular"; 2 | 3 | add_cus_dep('glo', 'gls', 0, 'run_makeglossaries'); 4 | add_cus_dep('acn', 'acr', 0, 'run_makeglossaries'); 5 | 6 | sub run_makeglossaries { 7 | my ($base_name, $path) = fileparse( $_[0] ); #handle -outdir param by splitting path and file, ... 8 | pushd $path; # ... cd-ing into folder first, then running makeglossaries ... 9 | 10 | if ( $silent ) { 11 | my $return = system "makeglossaries -q '$base_name'"; 12 | } 13 | else { 14 | my $return = system "makeglossaries '$base_name'"; 15 | }; 16 | 17 | popd; # ... and cd-ing back again 18 | return $return; 19 | } 20 | 21 | add_cus_dep('glo', 'gls', 0, 'run_makeind'); 22 | add_cus_dep('acn', 'acr', 0, 'run_makeind'); 23 | sub run_makeind { 24 | my ($base_name, $path) = fileparse( $_[0] ); #handle -outdir param by splitting path and file, ... 25 | pushd $path; # ... cd-ing into folder first, then running makeglossaries ... 26 | my $dest = $$Pdest; 27 | 28 | if ( $silent ) { 29 | my $return = system "makeindex -q -o \"$dest\" '$base_name'"; 30 | } 31 | else { 32 | my $return = system "makeindex -o \"$dest\" '$base_name'"; 33 | }; 34 | 35 | popd; # ... and cd-ing back again 36 | return $return; 37 | } 38 | 39 | 40 | # Compile the nomenclature (package 'nomencl') 41 | add_cus_dep( 'nlo', 'nls', 0, 'makenlo2nls' ); 42 | sub makenlo2nls { 43 | my ($base_name, $path) = fileparse( $_[0] ); 44 | pushd $path; 45 | my $dest = $$Pdest; 46 | system( "makeindex -s nomencl.ist -o \"$dest\" \"$base_name\"" ); 47 | popd; 48 | return $return; 49 | } 50 | -------------------------------------------------------------------------------- /pages/Appendices.tex: -------------------------------------------------------------------------------- 1 | \begin{appendices} 2 | \renewcommand*{\chapterformat}{\LARGE{Appendix \thechapter}} 3 | \renewcommand{\chaptermark}[1]{\markboth{\appendixname \ \thechapter. \ #1}{}} 4 | 5 | \input{pages/example_skills} 6 | \newpage 7 | \input{pages/general_rules/arena_decorations.tex} 8 | 9 | \end{appendices} 10 | 11 | \renewcommand*{\chapterformat}{\LARGE{Chapter \thechapter}} 12 | \renewcommand{\chaptermark}[1]{\markboth{\chaptername \ \thechapter. \ #1}{}} 13 | 14 | % Local Variables: 15 | % TeX-master: "Rulebook" 16 | % End: 17 | -------------------------------------------------------------------------------- /pages/acknowledgments.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: acknowledgments.tex 404 2013-02-15 08:51:20Z sugiura $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: Acknowledgments for the RoboCupAtHome RuleBook 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | 9 | \section*{Acknowledgments} 10 | \label{sec:acknowledgments} 11 | We would like to thank the members of the Technical Committee who put up the rules and the Organizing Committee who organizes the competition. 12 | People that have been working on this rulebook as members of one of the league's committees (in alphabetical order): 13 | \begin{center} 14 | \begin{minipage}{0.8\textwidth} 15 | \begin{multicols}{3}% 16 | \footnotesize 17 | \noindent% 18 | Adam Golding\\ 19 | Akinobu Mizutani\\ 20 | Alex Mitrevski\\ 21 | Alexander Moriarty\\ 22 | Alina Hawkin\\ 23 | Caleb Rascon\\ 24 | Fagner Pimentel\\ 25 | Florian Lier\\ 26 | Hiroyuki Okada\\ 27 | Johannes Kummert\\ 28 | Juan Diego Pena Narvaez\\ 29 | Juan Jose Garcia\\ 30 | Justin Hart\\ 31 | Katarzyna Pasternak\\ 32 | Komei Sugiura\\ 33 | Leander von Seelstrang\\ 34 | Leroy Ruegemer\\ 35 | Loy van Beek\\ 36 | Luca Iocchi\\ 37 | Luca Lach\\ 38 | Luis Contreras\\ 39 | Matteo Leonetti\\ 40 | Mauricio Matamoros\\ 41 | Maxime St-Pierre\\ 42 | Peter van Dooren\\ 43 | Raphael Memmesheimer\\ 44 | Riccardo Polvara\\ 45 | Sammy Pfeiffer\\ 46 | Sebastian Meyer zu Borgsen\\ 47 | Sven Wachsmuth\\ 48 | Tatsuya Matsushima\\ 49 | Tijn van der Zant\\ 50 | Vanessa Hassouna\\ 51 | Yuma Yoshimoto\\ 52 | Yuqian Jiang 53 | \end{multicols} 54 | \end{minipage} 55 | \end{center} 56 | 57 | \noindent We would also like to thank all the people who contributed to the RoboCup@Home league with their feedback and comments. 58 | People that have been working on this rulebook as members of the league (in alphabetical order): 59 | \begin{center} 60 | \begin{minipage}{0.8\textwidth} 61 | \begin{multicols}{2}% 62 | \footnotesize 63 | \noindent% 64 | Lars Janssen\\ 65 | Mark Finean\\ 66 | Matthijs van der Burgh\\ 67 | Syed Ali Raza\\ 68 | \end{multicols} 69 | \end{minipage} 70 | \end{center} 71 | 72 | 73 | % Local Variables: 74 | % TeX-master: "../Rulebook" 75 | % End: 76 | -------------------------------------------------------------------------------- /pages/example_skills.tex: -------------------------------------------------------------------------------- 1 | \chapter{Example Skills} 2 | \label{chap:example-skills} 3 | 4 | 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}. 5 | 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. 6 | 7 | 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. 8 | 9 | \section{Skills by category} 10 | 11 | \subsection{Complex manipulation} 12 | \begin{itemize} 13 | \item Cook a meal. 14 | \item Manipulating panels/switches/knobs. 15 | \item Use/open a fridge/stove/blender/microwave/washing machine. 16 | \item Iron clothes. 17 | \item Move a movable object (pole, chair, table). 18 | \item Pouring liquids/powders. 19 | \item Operate a water tap. 20 | \item Handle a pan. 21 | \end{itemize} 22 | 23 | \subsection{Complex vision} 24 | \begin{itemize} 25 | \item Read text from a newspaper. 26 | \item Handle glass/shiny-metallic objects. 27 | \item Recognize moods, activities, age, gender. 28 | % \item Recognize clothes, dressing-styles, fashionable people. 29 | \item Label unknown objects. 30 | \end{itemize} 31 | 32 | \subsection{Complex navigation} 33 | \begin{itemize} 34 | \item Navigate in (very) crowded environments. 35 | \item Navigate difficult terrain. 36 | \item Climb stairs. 37 | \item Push a wheelchair. 38 | \end{itemize} 39 | 40 | \subsection{Robot-Human Interaction} 41 | \begin{itemize} 42 | \item Collaborative robot-human manipulation. 43 | \item Maintaining a conversation. 44 | \item Learning actions on-the-fly. 45 | \item Learning objects from humans e.g.~\enquote{This object is a ...} with an open vocabulary. 46 | \item Following a human by grasping its hand. 47 | \item Explain the robot abstract concepts (why people love sunny days). 48 | \item Arrange unknown random people for a nice photo (no occlusions). 49 | % \item ask the robot for the answer to the universe, meaning of life and everything else 50 | \end{itemize} 51 | 52 | \subsection{Complex action planning} 53 | \begin{itemize} 54 | \item Separate clothes for laundry (e.g.~by color) 55 | \item Arrange a dish-washer. 56 | \item Take a cup from the cupboard whose location has changed, is closed, or the path to it is blocked (e.g.~by a chair). 57 | \item Light the way out with a lamp during a general power off. 58 | \item Arrange unknown random people for a nice photo (no occlusions). 59 | \item 60 | \end{itemize} 61 | 62 | \subsection{Mapping} 63 | \begin{itemize} 64 | \item Learn/create a (3D) map on the fly. 65 | \item Semantically annotate a map on the fly 66 | \item The robot enters a completely changed arena (furniture moved or even changed), 67 | explores it and is told to go to e.g.~a table that is moved or added. 68 | \end{itemize} 69 | 70 | 71 | % Local Variables: 72 | % TeX-master: "Rulebook" 73 | % End: 74 | -------------------------------------------------------------------------------- /pages/general_rules/AudienceInteraction.tex: -------------------------------------------------------------------------------- 1 | \section{Audience Interaction} 2 | \label{sec:rules:audience} 3 | Only some tests require direct interaction with the audience. In order to make all tests more appealing (see \ref{sec:concepts:appeal}) and engaging, informing the audience about what is happening is important. 4 | 5 | \subsection{Visualization} 6 | \label{sec:rules:audience:visualization} 7 | All scenarios will have a screen, visible to the audience, that the teams can use to display, e.g., a robot's state, world model, and current plan. An example of such a visualization is the \VizBox{} by Loy van Beek (\url{https://github.com/LoyVanBeek/vizbox}). Using and enhancing the capabilities of the \VizBox{} or developing another open source visualization is greatly appreciated and considered a contribution to the \RoboCup\AtHome{} community. -------------------------------------------------------------------------------- /pages/general_rules/ExternalDevices.tex: -------------------------------------------------------------------------------- 1 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % External Devices 4 | % 5 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 6 | \section{External devices} 7 | \label{rule:robot_external_devices} 8 | 9 | Everything that a team uses during a test and is not part of the robot is considered an \ExternalDevice. 10 | All \ExternalDevices{} must be authorized by the \TC{} during the \RobotInspection{} test (see~\refsec{sec:robot_inspection}). 11 | The TC specifies whether an \ExternalDevice{} can be used freely or under referee supervision, and determines its impact on scoring. 12 | 13 | Note that the use of wireless devices, such as hand microphones and headsets, is not allowed, with the exception of \ExternalComputing{} as specified below. 14 | Please also note that the competition organizers do not guarantee or take any responsibility regarding the availability or reliability of the network or the internet connection in the \Arena{}. 15 | Teams can thus use \ExternalComputing{} resources at their own risk. 16 | 17 | \subsection{On-site External Computing} 18 | 19 | Computing resources that are not physically attached to the robot are considered \ExternalComputing{} resources. 20 | The use of up to five \ExternalComputing{} resources is allowed, but only in the \ArenaNetwork{} (see~\refsec{rule:scenario_wifi}) and with a prior approval of the TC. 21 | Teams must inform the TC about the use of any \ExternalComputing{} at least one month before the competition. 22 | Note, however, that robots must be able to operate safely even if \ExternalComputing{} is unavailable. 23 | 24 | \ExternalComputing{} devices must be placed in the \ECRA{}, which is announced by the TC during the \SetupDays. 25 | A switch connected to the \Arena{} wireless network will be available to teams in the ECRA. 26 | During a \Testblock, at most two laptops and two people from different teams are allowed in the ECRA simultaneously, one member each of the teams up next. 27 | No peripherals, such as screens, mice, keyboards, and so forth, are allowed to be used. 28 | 29 | During a \Testslot, everyone must stay at least \SI{1}{\meter} away from the ECRA. 30 | Interacting with anything in the ECRA after the referee has given the start signal for a test will result in the test being stopped with a score of zero. 31 | 32 | If a laptop is used as \ExternalComputing, a team can only place it in the ECRA if their \Testslot{} is up next and must remove the device immediately after the test. 33 | 34 | \subsection{On-line external computing} 35 | \label{rule:robot_external_computing_online} 36 | 37 | Teams are allowed to use \ExternalComputing{} through the internet connection of the \ArenaNetwork{}; this includes cloud services or online APIs. 38 | These must be announced to and approved by the TC one month prior to the competition. 39 | 40 | % Local Variables: 41 | % TeX-master: "../Rulebook" 42 | % End: 43 | -------------------------------------------------------------------------------- /pages/general_rules/ManipulationChallenge.tex: -------------------------------------------------------------------------------- 1 | \section{Manipulation Challenge} 2 | \label{sec:rules:manipulationChallenge} 3 | 4 | In cooperation with MathWorks and together with the RoboCup@Work league, an additional technical manipulation challenge is offered to \AtHome{} teams starting from 2022. The objective is to use a manipulator, programmed in MATLAB and Simulink, for sorting objects that lie on a table into separate bins near the manipulator. This year, the challenge is simulation-based, using Gazebo as a simulation environment. The overall winner of the challenge will receive a research grant of up to \$5,000; all other participants will receive a certificate of participation. 5 | 6 | Teams already registered for RoboCup@Home can participate in the challenge without any additional cost. Note that the challenge does not contribute points towards the overall score of the @Home competition; however, the best @Home team that participates in the challenge may receive a separate certificate for the achievement (even if they are not the overall winner of the challenge). More details about the challenge are provided on the official page: \url{arm.robocup.org}. This includes information about the registration procedure, the competition timeline, and, most importantly, the rules of the challenge. 7 | -------------------------------------------------------------------------------- /pages/general_rules/OpenChallenge.tex: -------------------------------------------------------------------------------- 1 | \section{Open Challenge} 2 | \label{sec:rules:openchallenge} 3 | 4 | On the first two competition days after the end of the regular test blocks, teams will have an opportunity to present an \OpenChallenge{} in which they demonstrate their novel research and approaches. 5 | 6 | \subsection{Procedure} 7 | \label{sec:rules:ocprocedure} 8 | \begin{enumerate} 9 | \item \textbf{Participation:} Teams have to announce whether they want to perform an \OpenChallenge{} to the \abb{OC} during the \SetupDays{}. 10 | \item \textbf{Time:} Each team gets a 10 minute time slot for the \OpenChallenge; of these, 8 minutes are for presenting and 2 minutes are for questions by the audience. 11 | \item \textbf{Arena Changes:} The team can rearrange the arena when their time slot starts, but all changes need to be reverted as soon as their time slot ends. 12 | \item \textbf{Focus:} While the demonstrations are intended to share research insights, we still want to see robots performing; in particular, the \OpenChallenge{} should not be turned into a pure academic lecture. 13 | \item \textbf{Leagues:} Ideally, the open challenges of all \AtHome{} leagues will be scheduled consecutively so that everyone has an opportunity to see all demonstrations; however, in case more than 12 participants across the leagues register for the \OpenChallenge, each league will hold their \OpenChallenge{} concurrently. 14 | \item \textbf{Award:} The \OpenChallenge{} does not contribute any points towards the official competition score, but participating teams are eligible to receive the \OCAward{} (see \ref{award:oc}). 15 | \end{enumerate} 16 | -------------------------------------------------------------------------------- /pages/general_rules/PenaltiesBonuses.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | \newcommand{\penaltybig}{500~} 3 | \newcommand{\penaltysmall}{250~} 4 | 5 | \section{Special penalties and bonuses}\label{sec:special_awards} 6 | 7 | \subsection{Penalty for not attending}\label{rule:not_attending} 8 | \begin{enumerate} 9 | \item \textbf{Automatic schedule:} All teams are automatically scheduled for all tests. 10 | 11 | \item \textbf{Announcement:} If a team cannot participate in a test (for any reason), the team leader has to announce this to the OC at least \timing{60 minutes} before the test slot begins. 12 | 13 | \item \textbf{Penalties:} A team that is not present at the start position when their scheduled test starts, the team is not allowed to participate in the test anymore. 14 | If the team has not announced that it is not going to participate, it gets a penalty of \scoring{\penaltysmall points}. 15 | \end{enumerate} 16 | 17 | \subsection{Extraordinary penalties}\label{rule:extraordinary_penalties} 18 | \begin{enumerate} 19 | \item \textbf{Penalty for cheating:} If a team member is found cheating or breaking Fair Play, the team will be automatically disqualified of the running test, and a penalty of \scoring{\penaltybig points} is handed out. 20 | The \iaterm{Technical Committee}{TC} may also disqualify the team for the entire competition. 21 | 22 | \item \textbf{Penalty for faking robots:} If a team starts a test, but it does not solve any of the partial tasks (and is obviously not trying to do so), a penalty of \scoring{\penaltysmall points} is handed out. 23 | The decision is made by the referees and the monitoring TC member. 24 | 25 | \item \textbf{Extra penalty for collision:} In case of major, (grossly) negligent collisions the \iaterm{Technical Committee}{TC} may disqualify the team for a test (the team receives \scoring{0 points}), or for the entire competition. 26 | 27 | \item \textbf{Not showing up as referee or jury member:} If a team does not provide a referee or jury member (being at the \Arena{} on time), the team receives a penalty of \scoring{\penaltysmall points}, and will be remembered for qualification decisions in future competitions.\\ 28 | Jury members missing a performance to evaluate are excluded from the jury, and the team is disqualified from the test (receives \scoring{0 points}). 29 | 30 | \item \textbf{Modifying or altering standard platform robots:} If any unauthorized modification is found on a Standard Platform League robot, the responsible team will be immediately disqualified for the entire competition while also receiving a penalty of \scoring{\penaltybig points} in the overall score. This behavior will be remembered for qualification decisions in future competitions.\\ 31 | \end{enumerate} 32 | 33 | \subsection{Bonus for outstanding performance}\label{rule:outstanding_performance} 34 | \begin{enumerate} 35 | \item For every regular test in \iterm{Stage~I} and \iterm{Stage~II}, the @Home \iaterm{Technical Committee}{TC} can decide to give an extra bonus for \iterm{outstanding performance} of up to 10\% of the maximum test score. 36 | 37 | \item This is to reward teams that do more than what is needed to solely score points in a test but show innovative and general approaches to enhance the scope of @Home. 38 | 39 | \item If a team thinks that it deserves this bonus, it should announce (and briefly explain) this to the \iaterm{Technical Committee}{TC} beforehand. 40 | 41 | \item It is the decision of the \iaterm{Technical Committee}{TC} if (and to which degree) the bonus score is granted. 42 | \end{enumerate} 43 | 44 | % Local Variables: 45 | % TeX-master: "../Rulebook" 46 | % End: 47 | -------------------------------------------------------------------------------- /pages/general_rules/Robots-OPL.tex: -------------------------------------------------------------------------------- 1 | \subsection{Robot Specifications for the Open Platform League } 2 | Robots competing in the RoboCup@Home Open Platform League must comply with security specifications in order to avoid causing any harm while operating. 3 | 4 | \subsubsection{Size and Weight} 5 | \label{rule:robots_size} 6 | 7 | \begin{enumerate} 8 | \item \textbf{Dimensions:} The dimensions of a robot should not exceed the limits of an average door (\SI{200}{\centi\meter} by \SI{70}{\centi\meter} in most countries). 9 | The TC may allow the qualification and registration of larger robots, but, due to local restrictions, it cannot be guaranteed that the robots can actually enter the \Arena{}. 10 | In doubt, please contact the \LOC. 11 | \item \textbf{Weight:} There are no specific weight restrictions; however, the weight of the robot and the pressure it exerts on the floor should not exceed local regulations for the construction of offices and/or buildings which are used for living in the country where the competitions is being held. 12 | \item \textbf{Transportation:} Team members are responsible for quickly moving the robot out of the \Arena. 13 | If the robot cannot move by itself (for any reason), the team members must be able to transport the robot away quickly and easily. 14 | \end{enumerate} 15 | 16 | \subsubsection{Appearance} 17 | \label{rule:robots_appearance} 18 | 19 | OPL robots should have an appearance that resembles a safe and finished product rather than an early stage prototype. 20 | This, in particular, means that the robot's internal hardware (electronics and cables) should be completely covered so that safety is ensured. 21 | Please note that covering the robot's internal hardware with a t-shirt is not forbidden, but is not advised. 22 | 23 | \subsubsection{Emergency Stop Button} 24 | \label{rule:robots_emergency_button} 25 | 26 | \begin{enumerate} 27 | \item \textbf{Accessibility and visibility:} Every robot has to provide an easily accessible and visible \EmergencyStop{} button. 28 | \item \textbf{Color:} The \EmergencyStop{} must be coloured red and be the only red button on the robot. 29 | The TC may ask the team to tape over or remove any other red buttons present on the robot. 30 | \item \textbf{Robot behavior:} When the \EmergencyStop{} button is pressed, the robot and all its parts must stop moving immediately. 31 | \end{enumerate} 32 | 33 | \subsubsection{Start Button} 34 | \label{rule:start_button} 35 | 36 | \begin{enumerate} 37 | \item \textbf{Requirements:} As explained in~\refsec{rule:start_signal}, teams that aren't able to carry out the default start signal (opening the door) have to provide a \StartButton{} that can be used to start tests. 38 | Teams need to announce this to the TC before every test that involves a start signal, including the \RobotInspection{}. 39 | \item \textbf{Definition:} The \StartButton{} can be any \enquote{one-button procedure} that can be easily executed by a referee (such as releasing the \EmergencyStop{}, a green button, or a software button in a graphical user interface). 40 | \end{enumerate} 41 | 42 | \noindent\textbf{Note:} All robot requirements will be tested during the \RobotInspection{} (see~\ref{sec:robot_inspection}). 43 | 44 | % \subsubsection{Audio output plug} 45 | % \label{rule:roobt_audio_out} 46 | 47 | % \begin{enumerate} 48 | % \item \textbf{Mandatory plug:} Either the robot or some external device connected to it \emph{must} have a \iterm{speaker output plug}. It is used to connect the robot to the sound system so that the audience and the referees can hear and follow the robot's speech output. 49 | % \item \textbf{Inspection:} The output plug needs to be presented to the TC during the \iterm{Robot Inspection} test (see~\refsec{sec:robot_inspection}). 50 | % \item \textbf{Audio during tests:} Audio (and speech) output of the robot during a test have to be understood at least by the referees and the operators. 51 | % \begin{compactitem} 52 | % \item It is the responsibility of the teams to plug in the transmitter before a test, to check the sound system, and to hand over the transmitter to next team. 53 | % \item Do not rely on the sound system! For fail-safe operation and interacting with operators make sure that the sound system is not needed, e.g., by having additional speakers directly on the robot. 54 | % \end{compactitem} 55 | % \end{enumerate} 56 | -------------------------------------------------------------------------------- /pages/general_rules/Robots-SPL.tex: -------------------------------------------------------------------------------- 1 | \subsection{Standard Platform Leagues} 2 | 3 | Standardized platforms allow teams to compete under equal conditions by eliminating all hardware-dependent variables from the tasks; therefore, \emph{unauthorized} modifications and alterations to the robots are strictly forbidden. 4 | This includes, but is not limited to, attaching, connecting, plugging, gluing, and taping components into and onto the robot, as well as, modifying or altering the robot structure. 5 | Not complying with this rule leads to an immediate disqualification and penalization of the team (see~\refsec{rule:extraordinary_penalties}). 6 | Robots are, however, allowed to \enquote{wear} clothes, have stickers (such as a sticker exhibiting the logo of a sponsor), or be painted (provided that the robot provider has approved that). 7 | 8 | All modifications to the robots will be examined during the \RobotInspection{} (see \ref{sec:robot_inspection}). 9 | Note that the EC and TC members may request re-inspection of an SPL robot at any time during the competition. 10 | 11 | \subsubsection{Authorized DSPL Modifications} 12 | \label{rule:osl_dspl} 13 | 14 | In the \DSPL{}, teams may use an external laptop, which is safely located in the official \MountingBracket{} provided by Toyota and is connected to the \HSR{} via an Ethernet cable. 15 | Any laptop fitting inside the \MountingBracket{} is allowed to be used, regardless of its technical specification. 16 | Furthermore, teams are allowed to attach the following devices to either the \HSR{} or the laptop in the \MountingBracket: 17 | \begin{itemize} 18 | \item \textbf{Audio}: A USB audio output device, such as a USB speaker or a sound card dongle. 19 | \item \textbf{Microphone}: A USB or AUX external microphone. Wireless microphones are not allowed. 20 | \item \textbf{Wi-Fi adapter}: A USB-powered IEEE 802.11ac (or newer) compliant device. 21 | \item \textbf{Ethernet Switch}: A USB-powered IEEE 802.3ab (or newer) compliant device. 22 | \end{itemize} 23 | In all cases, a maximum of three such devices can be attached, such that they may not increase the robot's dimensions. 24 | For this purpose, using short cables and attaching the devices to the laptop in the \MountingBracket{} is advised. 25 | -------------------------------------------------------------------------------- /pages/general_rules/Robots.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | \section{Robots} 3 | \label{rule:robots} 4 | 5 | \subsection{Number of Robots} 6 | \label{rule:robots_number} 7 | 8 | \begin{enumerate} 9 | \item \textbf{Registration:} The maximum \term{number of robots} per team is \emph{two} (2). 10 | \item \textbf{Regular Tests:} Only one robot is allowed per test. For different test runs, different robots can be used. 11 | \item \textbf{\FINAL:} In the \FINAL, both robots can be used simultaneously. 12 | \end{enumerate} 13 | 14 | \subsection{Appearance and Safety} 15 | \label{rule:robot_appearance} 16 | 17 | Robots should have a product-like appearance and be safe to operate. 18 | The following rules apply to all robots: 19 | \begin{enumerate} 20 | \item \textbf{Cover:} The robot's internal hardware (electronics and cables) should be covered so that safety is ensured. The use of (visible) duct tape is strictly prohibited. 21 | \item \textbf{Loose cables:} Loose cables hanging out of the robot are not permitted. 22 | \item \textbf{Safety:} The robot must not have sharp edges or elements that might harm people. 23 | \item \textbf{Annoyance:} The robot must not be continuously making loud noises or use blinding lights. 24 | \item \textbf{Marks:} The robot may not exhibit any kind of artificial marks or patterns. 25 | \item \textbf{Driving:} To be safe, the robots should be careful when driving. Obstacle avoidance is mandatory. 26 | \end{enumerate} 27 | The compliance with these rules will be verified during \RobotInspection{} (see \ref{sec:robot_inspection}). 28 | 29 | \input{pages/general_rules/Robots-SPL} 30 | 31 | \input{pages/general_rules/Robots-OPL} 32 | 33 | 34 | 35 | % Local Variables: 36 | % TeX-master: "../Rulebook" 37 | % End: 38 | -------------------------------------------------------------------------------- /pages/general_rules/arena_decorations.tex: -------------------------------------------------------------------------------- 1 | \chapter{Arena decorations} 2 | \label{chap:arena-decorations-appendix} 3 | The following is a list or suggestions, not strict requirements, for decorating a RoboCup@Home arena: 4 | \begin{itemize} 5 | \item Side table 6 | \item Table lamp 7 | \item Bowl 8 | \item Vase 9 | \item Plant 10 | \item Table runner 11 | \item Coffee/tea maker 12 | \item Pillows in various colors 13 | \item Mirror 14 | \item Paintings 15 | \item Posters 16 | \item World map 17 | \item Towels 18 | \item Towelhangers 19 | \item Closet/shelf 20 | \item Standing lamp 21 | \item Bedspread 22 | \item Basket with lid 23 | \item (Storage)Basket 24 | \item Serving tray 25 | \item Cups 26 | \item Mugs 27 | \item (Wine)Glasses 28 | \item Plates 29 | \item Cutlery 30 | \item Various utensils 31 | \item Picture frames 32 | \item Wallclock 33 | \item Bedside alarm clock 34 | \item Candles with holders 35 | \item Books 36 | \end{itemize} 37 | -------------------------------------------------------------------------------- /pages/general_rules/vizbox.tex: -------------------------------------------------------------------------------- 1 | \section{Audience interaction} 2 | \label{rule:vizbox} 3 | 4 | Part of making \RoboCup\AtHome{} appealing is to show the audience what robots should do and what they are actually doing during tasks. 5 | In particular, providing information about what a robot is doing to the audience is important for the advancement of the league. 6 | To this end, robots in \AtHome{} are expected to run the \RoboCup\AtHome{} \href{https://github.com/LoyVanBeek/vizbox}{VizBox}\footnote{\url{https://github.com/LoyVanBeek/vizbox}}, which is a web server to be run on a robot during a task. 7 | The page it serves can be displayed on a screen and is visible to the audience via a secondary computer in or around the \Arena{}, which is connected to the web server via the wireless network. 8 | The \iterm{VizBox} can: 9 | \begin{itemize} 10 | \item display images of what a robot can see, such as camera images, or a visualization of the robot's world model, the robot's map, or anything else that clarifies what the robot is trying to do 11 | \item show an outline of the current tasks and the robot's current state in it 12 | \item display subtitles of the conversation between a robot and an operator 13 | \end{itemize} 14 | Additionally, the \iterm{VizBox} offers a way to input text commands to the robot so that automatic speech recognition can be bypassed, if necessary. 15 | 16 | The documentation of the component is maintained in the \iterm{VizBox} repository. 17 | All teams should ideally run the same VizBox code, as the audience should be shown a consistent presentation; however, opening a pull request to share any changes is much appreciated so that all teams can benefit from them. 18 | -------------------------------------------------------------------------------- /pages/introduction/Competition.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% author(s): RoboCupAtHome Technical Committee(s) 4 | %% description: Introduction - Competition 5 | %% 6 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 7 | \section{Competition} 8 | The competition consists of two \emph{Stages} and a \FINAL. 9 | Each stage consists of a series of \iterm{Tests} that are being held in a daily life environment. 10 | The best teams from \SONE{} advance to \STWO, which consists of more difficult tests. 11 | The competition ends with the \FINAL, where only the two highest-ranked teams of each league compete to select the winner. 12 | -------------------------------------------------------------------------------- /pages/introduction/Infrastructure.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% author(s): RoboCupAtHome Technical Committee(s) 4 | %% description: Introduction - Infrastructure 5 | %% 6 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 7 | \section{Infrastructure} 8 | \label{sec:introduction:infrastructure} 9 | 10 | \paragraph{RoboCup@Home Mailing List} 11 | \label{sec:introduction:mailinglist} 12 | The official \AtHome{} mailing list can be found at\\ 13 | \href{mailto:robocup-athome@lists.robocup.org}{\small\texttt{robocup-athome@lists.robocup.org}}. 14 | You can subscribe to the mailing list at: {\small\url{https://lists.robocup.org/mm/lists/robocup-athome.lists.robocup.org/}} 15 | 16 | \paragraph{RoboCup@Home Web Page} 17 | \label{sec:introduction:webpage} 18 | The official \AtHome{} website that also hosts this rulebook can be found at {\small\url{https://athome.robocup.org/}} 19 | 20 | \paragraph{RoboCup@Home Rulebook Repository} 21 | \label{sec:introduction:repo} 22 | The official \AtHome{} \RR{} is where rules are publicly discussed before applying changes. 23 | The entire \AtHome{} community is welcome and encouraged to actively participate in creating and discussing the rules. 24 | The \RR{} is hosted at {\small\url{https://github.com/RoboCupAtHome/RuleBook/}} 25 | 26 | \paragraph{RoboCup@Home Telegram Group} 27 | \label{sec:introduction:telegramgroup} 28 | The official \AtHome{} \TG{} is a communication channel for the \AtHome{} community where rules are discussed, announcements are made, and questions are answered. 29 | Beyond supporting the technical aspects of the competition, the group is a meeting point to stay in contact with the community, foster knowledge exchange, and strengthen relationships. 30 | The \TG{} can be reached at {\small\url{https://t.me/RoboCupAtHome}} 31 | 32 | \paragraph{RoboCup@Home Wiki} 33 | \label{sec:introduction:wiki} 34 | The official \AtHome{} \WIKI{} is meant to be a central place to collect information on all topics related to the \AtHome{} league. 35 | The wiki was set up to simplify and unify the exchange of relevant information; this includes, but is not limited to, hardware, software, media, data, and more. 36 | The \WIKI{} can be reached at {\small\url{https://github.com/RoboCupAtHome/AtHomeCommunityWiki/wiki}} 37 | -------------------------------------------------------------------------------- /pages/introduction/Leagues.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% author(s): RoboCupAtHome Technical Committee(s) 4 | %% description: Introduction - Leagues 5 | %% 6 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 7 | \section{Leagues} 8 | \label{sec:leagues} 9 | 10 | \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: 11 | \begin{itemize} 12 | \item \OPL 13 | \item \DSPL 14 | \end{itemize} 15 | 16 | \begin{wrapfigure}[21]{r}{0.30\textwidth} 17 | \vspace{-30pt} 18 | \begin{center} 19 | \includegraphics[width=0.25\textwidth]{images/toyota_hsr.png} 20 | \vspace{-10pt} 21 | \caption{Toyota HSR} 22 | \label{fig:toyota_hsr} 23 | \end{center} 24 | \end{wrapfigure} 25 | Each league focuses on a different aspect of service robotics by targeting specific abilities. 26 | 27 | \subsection{Domestic Standard Platform League (DSPL)} 28 | 29 | The main goal of the DSPL is to assist humans in a domestic environment, paying special attention to elderly people and people suffering from illness or disability. 30 | As a consequence, the DSPL focuses on \AmI, \CV, \OM, safe indoor \NAV{} and \MAP, and \TP. 31 | The robot used in the DSPL is the \HSR, shown in Figure \ref{fig:toyota_hsr}. 32 | 33 | \subsection{Open Platform League (OPL)} 34 | 35 | The OPL has had the same modus operandi since the foundation of \AtHome. 36 | With no hardware constrains, OPL is the league for teams who want to test their own robot designs and configurations, as well as for old at-homers. 37 | In this league, robots are tested to their limits without having in mind any concrete design restriction, although the scope is similar to the DSPL. 38 | -------------------------------------------------------------------------------- /pages/introduction/Organization.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% author(s): RoboCupAtHome Technical Committee(s) 4 | %% description: Introduction - Organization 5 | %% 6 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 7 | \section{Organization} 8 | 9 | \AtHome{} is organized into three subcommittees. The current members of the committees are listed at \url{https://athome.robocup.org/committees/}. 10 | 11 | \subsection{Executive Committee --- rc-home-ec@lists.robocup.org} 12 | \label{sec:ec} 13 | 14 | The \EC{} consists of members of the board of trustees, and representatives of each activity area, and supervises both the TC and OC. 15 | 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. 16 | Additionally, the EC must act when any of the committees fail, as it responds to the Trustee board and directs the league accordingly. 17 | 18 | \subsection{Technical Committee --- rc-home-tc@lists.robocup.org} 19 | \label{sec:tc} 20 | 21 | The \TC{} is responsible for the rules of the league; its main focus is writing the rulebook and refereeing. 22 | The members of the EC are always members of the TC as well. 23 | 24 | \subsection{Organizing Committee --- rc-home-oc@lists.robocup.org} 25 | \label{sec:oc} 26 | 27 | The \OC{} is responsible for the organization of the competition, namely it creates the schedule and provides information about the scenarios. 28 | The \LOC{}, on the other hand, is responsible for the set up and organization of the competition venue. 29 | -------------------------------------------------------------------------------- /pages/organization/GeneralRules.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: general_rules.tex 420 2013-04-08 15:30:35Z holz $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: description of the GENERAL RULES 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \chapter{General Rules and Regulations} 9 | \label{chap:rules} 10 | 11 | These are the general rules and regulations for the competition in the \RoboCup\AtHome{} league. 12 | Every rule in this section can be considered to implicitly include the term \emph{\enquote{unless stated otherwise}}. 13 | 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. 14 | 15 | \input{pages/general_rules/TeamRegistration} 16 | 17 | \input{pages/general_rules/vizbox} 18 | 19 | %\input{pages/general_rules/Scenario} 20 | 21 | \input{pages/general_rules/Robots} 22 | 23 | \input{pages/general_rules/ExternalDevices} 24 | 25 | \input{pages/general_rules/Organization} 26 | 27 | \input{pages/general_rules/Procedure} 28 | 29 | %\input{pages/general_rules/ContinueRules.tex} 30 | 31 | \input{pages/general_rules/PenaltiesBonuses} 32 | 33 | \input{pages/general_rules/OpenChallenge} 34 | 35 | % Local Variables: 36 | % TeX-master: "Rulebook" 37 | % End: 38 | -------------------------------------------------------------------------------- /pages/organization/Introduction.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% author(s): RoboCupAtHome Technical Committee(s) 4 | %% description: Introduction 5 | %% 6 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 7 | \chapter{Introduction} 8 | \label{chap:introduction} 9 | 10 | \input{pages/introduction/Organization} 11 | 12 | \input{pages/introduction/Infrastructure} 13 | 14 | \input{pages/introduction/Leagues} 15 | 16 | %\input{pages/introduction/Competition} 17 | 18 | \input{pages/introduction/Awards} 19 | 20 | % Local Variables: 21 | % TeX-master: "Rulebook" 22 | % End: 23 | -------------------------------------------------------------------------------- /pages/organization/about.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: about.tex 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: About for the RoboCupAtHome organization guidelines 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | 9 | \section*{About this document} 10 | These are the organization guidelines of the RoboCup@Home competition \YEAR. It contains the procedures surrounding the Robocup@Home competition. Both those leading up to the event and those in place during the competition. This document excludes the tests the robot are expected to perform and the scores associated with them. Those can be found in the \Rulebook. 11 | This document has been written by the \YEAR ~RoboCup@Home Technical Committee. 12 | 13 | \section*{How to cite this document} 14 | If you refer to RoboCup@Home and this document in particular, please cite:\\ 15 | 16 | \noindent Justin Hart, Alexander Moriarty, Katarzyna Pasternak, Johannes Kummert, 17 | Alina Hawkin, Vanessa Hassouna, Juan Diego Pena Narvaez, Leroy Ruegemer, 18 | Leander von Seelstrang, Peter Van Dooren, Juan Jose Garcia, Akinobu Mitzutani, 19 | Yuqian Jiang, Tatsuya Matsushima, Riccardo Polvara 20 | \enquote{Robocup@Home \YEAR: Competition organization document,} 21 | \url{https://github.com/RoboCupAtHome/RuleBook/releases/download/2024.1/organization.pdf}, \YEAR. 22 | 23 | \begin{center} 24 | \begin{minipage}{0.8\textwidth} 25 | \footnotesize% 26 | \verbatiminput{citation_organization.bib} 27 | \end{minipage} 28 | \end{center} 29 | 30 | \pagebreak -------------------------------------------------------------------------------- /pages/organization/documentinfo.tex: -------------------------------------------------------------------------------- 1 | %%% DOCUMENTINFO %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | \hypersetup{ 3 | pdftitle = {RoboCup@Home Rules and Regulations on the organization of the competition}, 4 | pdfsubject = {RoboCup@Home Organization}, 5 | pdfauthor = {RoboCup@Home Technical Committee}, 6 | pdfkeywords = {RoboCup, @Home, Rules, Competition}, 7 | colorlinks = true, 8 | anchorcolor = blue, 9 | linkcolor = blue, 10 | urlcolor = blue, 11 | } 12 | -------------------------------------------------------------------------------- /pages/organization/titlepage.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: titlepage.tex 428 2013-04-30 10:01:14Z holz $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: Title page for the RoboCupAtHome RuleBook 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \begin{titlepage} 9 | \begin{center} 10 | { 11 | \includegraphics[width=.25\textwidth]{images/logo_RoboCupFed.jpg} 12 | \hfill 13 | \includegraphics[width=.25\textwidth]{images/logo_RoboCupAtHome.jpg}\\[1.23ex] 14 | } 15 | \vspace{2.7 cm} 16 | \hrulefill\par 17 | {% 18 | \vspace*{.27cm} 19 | \Huge{RoboCup@Home}\\[1.23ex] 20 | \Large Rules \& Regulations on the organization of the competition \\[2ex] 21 | } 22 | \hrulefill\par 23 | \vfill 24 | ~~ Version: \YEAR ~~Rev-\svnRevision ~~ \\ 25 | ~~ Last Build Date: \today \quad Time: \the\time ~~ \\ 26 | ~~ Last Revision Date: \svnChangeData ~~ %\\ 27 | %\vfill 28 | \end{center} 29 | \end{titlepage} 30 | % Local Variables: 31 | % TeX-master: "../Rulebook" 32 | % End: 33 | -------------------------------------------------------------------------------- /pages/roadmap/acknowledgments.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: acknowledgments.tex 404 2013-02-15 08:51:20Z sugiura $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: Acknowledgments for the RoboCupAtHome RuleBook 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | 9 | 10 | 11 | \section*{About this document} 12 | This document presents the vision behind the RoboCup@Home competition. It also plots out the way the competition will evolve in the future. 13 | This document has been written by the \YEAR ~RoboCup@Home Technical Committee. 14 | 15 | \section*{How to cite this document} 16 | If you refer to RoboCup@Home and this document in particular, please cite:\\ 17 | 18 | \noindent Justin Hart, Mauricio Matamoros, Alexander Moriarty, Hiroyuki Okada, 19 | Matteo Leonetti, Alex Mitrevski, Katarzyna Pasternak, and Fagner Pimentel 20 | \enquote{Robocup@Home \YEAR: Roadmap,} 21 | \url{https://athome.robocup.org/rules/\YEAR_roadmap.pdf}, \YEAR. 22 | 23 | \begin{center} 24 | \begin{minipage}{0.8\textwidth} 25 | \footnotesize% 26 | \verbatiminput{citation.bib} 27 | \end{minipage} 28 | \end{center} 29 | 30 | \section*{Acknowledgments} 31 | \label{sec:acknowledgments} 32 | We would like to thank the members of the Technical Committee who put up the rules and the Organizing Committee who organizes the competition. 33 | People that have been working on this document as members of one of the league's committees (in alphabetical order): 34 | \begin{center} 35 | \begin{minipage}{0.8\textwidth} 36 | \begin{multicols}{3}% 37 | \footnotesize 38 | \noindent% 39 | Adam Golding\\ 40 | Akinobu Mizutani\\ 41 | Alex Mitrevski\\ 42 | Alexander Moriarty\\ 43 | Caleb Rascon\\ 44 | Fagner Pimentel\\ 45 | Florian Lier\\ 46 | Hiroyuki Okada\\ 47 | Johannes Kummert\\ 48 | Justin Hart\\ 49 | Katarzyna Pasternak\\ 50 | Komei Sugiura\\ 51 | Loy van Beek\\ 52 | Luca Iocchi\\ 53 | Luca Lach\\ 54 | Luis Contreras\\ 55 | Matteo Leonetti\\ 56 | Mauricio Matamoros\\ 57 | Maxime St-Pierre\\ 58 | Peter van Dooren\\ 59 | Raphael Memmesheimer\\ 60 | Sammy Pfeiffer\\ 61 | Sebastian Meyer zu Borgsen\\ 62 | Sven Wachsmuth\\ 63 | Tijn van der Zant\\ 64 | Yuma Yoshimoto 65 | \end{multicols} 66 | \end{minipage} 67 | \end{center} 68 | 69 | \noindent We would also like to thank all the people who contributed to the RoboCup@Home league with their feedback and comments. 70 | People that have been working on this document as members of the league (in alphabetical order): 71 | \begin{center} 72 | \begin{minipage}{0.8\textwidth} 73 | \begin{multicols}{2}% 74 | \footnotesize 75 | \noindent% 76 | Lars Janssen\\ 77 | Mark Finean\\ 78 | Matthijs van der Burgh\\ 79 | Syed Ali Raza\\ 80 | \end{multicols} 81 | \end{minipage} 82 | \end{center} 83 | 84 | 85 | % Local Variables: 86 | % TeX-master: "../Rulebook" 87 | % End: 88 | -------------------------------------------------------------------------------- /pages/roadmap/documentinfo.tex: -------------------------------------------------------------------------------- 1 | %%% DOCUMENTINFO %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | \hypersetup{ 3 | pdftitle = {RoboCup@Home Roadmap}, 4 | pdfsubject = {RoboCup@Home Roadmap}, 5 | pdfauthor = {RoboCup@Home Executive Committee}, 6 | pdfkeywords = {RoboCup, @Home, Competition}, 7 | colorlinks = true, 8 | anchorcolor = blue, 9 | linkcolor = blue, 10 | urlcolor = blue, 11 | } 12 | -------------------------------------------------------------------------------- /pages/roadmap/titlepage.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: titlepage.tex 428 2013-04-30 10:01:14Z holz $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: Title page for the RoboCupAtHome RuleBook 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \begin{titlepage} 9 | \begin{center} 10 | { 11 | \includegraphics[width=.25\textwidth]{images/logo_RoboCupFed.jpg} 12 | \hfill 13 | \includegraphics[width=.25\textwidth]{images/logo_RoboCupAtHome.jpg}\\[1.23ex] 14 | } 15 | \vspace{2.7 cm} 16 | \hrulefill\par 17 | {% 18 | \vspace*{.27cm} 19 | \Huge{RoboCup@Home}\\[1.23ex] 20 | \Large Roadmap \\[2ex] 21 | } 22 | \hrulefill\par 23 | \vfill 24 | ~~ Version: \YEAR ~~Rev-\svnRevision ~~ \\ 25 | ~~ Last Build Date: \today \quad Time: \the\time ~~ \\ 26 | ~~ Last Revision Date: \svnChangeData ~~ %\\ 27 | %\vfill 28 | \end{center} 29 | \end{titlepage} 30 | % Local Variables: 31 | % TeX-master: "../Rulebook" 32 | % End: 33 | -------------------------------------------------------------------------------- /pages/rulebook/GeneralRules.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: general_rules.tex 420 2013-04-08 15:30:35Z holz $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: description of the GENERAL RULES 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \chapter{General Rules and Regulations} 9 | \label{chap:rules} 10 | 11 | These are the general rules and regulations for the competition in the \RoboCup\AtHome{} league. 12 | Every rule in this section can be considered to implicitly include the term \emph{\enquote{unless stated otherwise}}. 13 | 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. 14 | 15 | \input{pages/general_rules/TeamRegistration} 16 | 17 | \input{pages/general_rules/vizbox} 18 | 19 | \input{pages/general_rules/Scenario} 20 | 21 | \input{pages/general_rules/Robots} 22 | 23 | \input{pages/general_rules/ExternalDevices} 24 | 25 | \input{pages/general_rules/Organization} 26 | 27 | \input{pages/general_rules/Procedure} 28 | 29 | \input{pages/general_rules/ContinueRules} 30 | \input{pages/general_rules/PenaltiesBonuses} 31 | 32 | \input{pages/general_rules/OpenChallenge} 33 | 34 | %\input{pages/general_rules/ManipulationChallenge} 35 | % Local Variables: 36 | % TeX-master: "Rulebook" 37 | % End: 38 | -------------------------------------------------------------------------------- /pages/rulebook/Introduction.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% author(s): RoboCupAtHome Technical Committee(s) 4 | %% description: Introduction 5 | %% 6 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 7 | \chapter{Introduction} 8 | \label{chap:introduction} 9 | 10 | 11 | \section{RoboCup} 12 | 13 | \RoboCup{} is an international joint project to promote AI, robotics, and related fields. 14 | It is an attempt to foster AI and intelligent-robotics research by providing standard problems where a wide range of technologies can be integrated and examined. More information can be found at \url{http://www.robocup.org/}. 15 | 16 | \section{RoboCup@Home} 17 | 18 | The \textsc{RoboCup@Home} league aims to develop service and assistive robot technology with high relevance for future personal domestic applications. 19 | It is the largest international annual competition for autonomous service robots and is part of the RoboCup initiative. 20 | A set of benchmark tests is used to evaluate the abilities and performance of different robots in a realistic, non-standardized home environment setting. 21 | 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. 22 | The competition is co-located with the RoboCup symposium. 23 | 24 | \input{pages/introduction/Organization} 25 | 26 | \input{pages/introduction/Infrastructure} 27 | 28 | \input{pages/introduction/Leagues} 29 | 30 | \input{pages/introduction/Competition} 31 | 32 | \input{pages/introduction/Awards} 33 | 34 | % Local Variables: 35 | % TeX-master: "Rulebook" 36 | % End: 37 | -------------------------------------------------------------------------------- /pages/rulebook/about.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: about.tex 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: About for the RoboCupAtHome RuleBook 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | 9 | \section*{About this rulebook} 10 | This is the official rulebook of the RoboCup@Home competition \YEAR. 11 | The rulebook has been written by the \YEAR ~RoboCup@Home Technical Committee. 12 | 13 | \section*{How to cite this rulebook} 14 | If you refer to RoboCup@Home and this rulebook in particular, please cite:\\ 15 | 16 | \noindent Justin Hart, Alexander Moriarty, Katarzyna Pasternak, Johannes Kummert, Matteo Leonetti, Luis Contreras, 17 | Alina Hawkin, Vanessa Hassouna, Leroy Ruegemer, Akinobu Mitzutani, Tiago Ribeiro 18 | \enquote{Robocup@Home \YEAR: Rule and regulations,} 19 | \url{https://github.com/RoboCupAtHome/RuleBook/releases/download/2024.1/rulebook.pdf}, \YEAR. 20 | 21 | \begin{center} 22 | \begin{minipage}{0.8\textwidth} 23 | \footnotesize% 24 | \verbatiminput{citation.bib} 25 | \end{minipage} 26 | \end{center} 27 | 28 | \pagebreak -------------------------------------------------------------------------------- /pages/rulebook/documentinfo.tex: -------------------------------------------------------------------------------- 1 | %%% DOCUMENTINFO %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | \hypersetup{ 3 | pdftitle = {RoboCup@Home Rules and Regulations}, 4 | pdfsubject = {RoboCup@Home Rulebook}, 5 | pdfauthor = {RoboCup@Home Technical Committee}, 6 | pdfkeywords = {RoboCup, @Home, Rules, Competition}, 7 | colorlinks = true, 8 | anchorcolor = blue, 9 | linkcolor = blue, 10 | urlcolor = blue, 11 | } 12 | -------------------------------------------------------------------------------- /pages/rulebook/titlepage.tex: -------------------------------------------------------------------------------- 1 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: titlepage.tex 428 2013-04-30 10:01:14Z holz $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: Title page for the RoboCupAtHome RuleBook 6 | %% 7 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \begin{titlepage} 9 | \begin{center} 10 | { 11 | \includegraphics[width=.25\textwidth]{images/logo_RoboCupFed.jpg} 12 | \hfill 13 | \includegraphics[width=.25\textwidth]{images/logo_RoboCupAtHome.jpg}\\[1.23ex] 14 | } 15 | \vspace{2.7 cm} 16 | \hrulefill\par 17 | {% 18 | \vspace*{.27cm} 19 | \Huge{RoboCup@Home}\\[1.23ex] 20 | \Large Rules \& Regulations \\[2ex] 21 | } 22 | \hrulefill\par 23 | \vfill 24 | ~~ Version: \YEAR ~~Rev-\svnRevision ~~ \\ 25 | ~~ Last Build Date: \today \quad Time: \the\time ~~ \\ 26 | ~~ Last Revision Date: \svnChangeData ~~ %\\ 27 | %\vfill 28 | \end{center} 29 | \end{titlepage} 30 | % Local Variables: 31 | % TeX-master: "../Rulebook" 32 | % End: 33 | -------------------------------------------------------------------------------- /pages/safety_first.tex: -------------------------------------------------------------------------------- 1 | The speed of the robots should ensure safe operation. This means that the robot is not allowed to go faster than the local speed limits. During operation in an environment with humans it may not exceed a walking pace of humans (6 kph, 3.7 mph). 2 | 3 | At any time when operating the robot inside and outside the scenario the owners have to stop the robot immediately if there is a remote possibility of dangerous behavior towards people and/or objects. If a referee, member of the Technical or Organizational committee, an Executive or Trustee of the federation tells the team to stop the robot, there will be no discussion and the robot has to be stopped \emph{immediately}. 4 | 5 | If the team does not comply, the team and its members can be excluded from the ongoing competition immediately by a decision of the RoboCup@Home Technical Committee. Furthermore, the team and its members can be banned from future competitions for a period not less than a year by a decision of the RoboCup Federation Trustee Board. 6 | 7 | % Local Variables: 8 | % TeX-master: "../Rulebook" 9 | % End: 10 | -------------------------------------------------------------------------------- /pages/scoresheets/registration_form.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: registration_form.tex 574 2014-04-07 13:49:59Z holz $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: introduction to RoboCupAtHome 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \newpage 9 | 10 | \begin{minipage}[t]{0.8\textwidth}% 11 | 12 | \vspace{0pt} 13 | {\huge \textbf{Registration Form} } 14 | 15 | \vspace{5 em} 16 | 17 | \newcommand{\rightRule}{\rule{0.7\linewidth}{.2pt}} 18 | 19 | \begin{tabular}{ @{} l l l} 20 | 21 | \textbf{Team name:} & \rightRule \\[.9 em]% 22 | 23 | \textbf{Team leader name:} & \rightRule \\[.9 em]% 24 | 25 | % \textbf{Weight \& dimensions (robot 1):} & \rightRule \\[.9 em]% 26 | 27 | % \textbf{Weight \& dimensions (robot 2):} & \rightRule \\[.9 em]% 28 | 29 | % \textbf{External devices:} & \rightRule \\[.9 em]% 30 | 31 | \end{tabular} 32 | 33 | \vspace{1 em} 34 | 35 | \end{minipage} 36 | \hfill 37 | \begin{minipage}[t]{0.15\textwidth}% 38 | \vspace{0pt} 39 | \includegraphics[width=\textwidth]{images/logo_RoboCupAtHome.jpg}% 40 | \end{minipage}\\ 41 | 42 | \vspace{1 em} 43 | 44 | \noindent\textbf{Safety first!} 45 | 46 | \noindent The speed of the robots should ensure safe operation. 47 | This means that the robot is not allowed to go faster than the local speed limits. 48 | During operation in an environment with humans it may not exceed a walking pace of humans (6 kph, 3.7 mph). 49 | 50 | At any time when operating the robot inside and outside the scenario the 51 | owners have to stop the robot immediately if there is a remote possibility 52 | of dangerous behavior towards people and/or objects. If a referee, member 53 | of the Technical or Organizational committee, an Executive or Trustee of 54 | the federation tells the team to stop the robot, there will be no discussion 55 | and the robot has to be stopped \emph{immediately}. 56 | 57 | If the team does not comply, the team and its members can be excluded from 58 | the ongoing competition immediately by a decision of the RoboCup@Home Technical 59 | Committee. 60 | Furthermore, the team and its members can be banned from future competitions 61 | for a period not less than a year by a decision of the RoboCup Federation 62 | Trustee Board. 63 | 64 | \vspace{1cm} 65 | 66 | \begin{tabular}{|l|c|c|} 67 | \hline 68 | ~ & {\bf Robot 1} & {\bf Robot 2}\\ 69 | \hline 70 | \hline 71 | Size of the robot&\hspace{4cm} & \hspace{4cm} \\ 72 | \hline 73 | Emergency button(s) &\hspace{4cm} & \hspace{4cm} \\ 74 | \hline 75 | Start button &\hspace{4cm} & \hspace{4cm} \\ 76 | \hline 77 | Collision avoidance &\hspace{4cm} & \hspace{4cm} \\ 78 | \hline 79 | Voice of the robot &\hspace{4cm} & \hspace{4cm} \\ 80 | \hline 81 | Robot speaker system &\hspace{4cm} & \hspace{4cm} \\ 82 | \hline 83 | Use of external devices &\hspace{4cm} & \hspace{4cm} \\ 84 | \hline 85 | ASR Bypassing method&\hspace{4cm} & \hspace{4cm} \\ 86 | \hline 87 | Other safety issues &\hspace{4cm} & \hspace{4cm} \\ 88 | \hline 89 | Custom containers.&\hspace{4cm} & \hspace{4cm} \\ 90 | \hline 91 | \end{tabular}\\[1cm] 92 | 93 | {\bf External Devices:} 94 | \vspace{2cm} 95 | 96 | \vfill 97 | 98 | \noindent I have read and fully understood the \enquote{Safety First} statement and agree to it. 99 | Furthermore, I agree to obey the rules in the official RoboCup@Home RuleBook. 100 | 101 | \vspace{2em} 102 | 103 | 104 | %team evaluation sheet 105 | \begin{tabular}{@{} @{\extracolsep{\fill}} l l @{}} 106 | \rule{0.25\linewidth}{.2pt} \hspace{0.05\linewidth} & \rule{0.25\linewidth}{.2pt} \hspace{0.05\linewidth} 107 | \\ 108 | \textit{Date \& time}% 109 | & \textit{Team leader} 110 | \end{tabular} 111 | 112 | % Local Variables: 113 | % TeX-master: "../rulebook" 114 | % End: 115 | -------------------------------------------------------------------------------- /scoresheets/CleanTable.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=10] 2 | \scoreheading{Main Goal} 3 | \scoreitem{15}{Navigate to the table to pick up items} 4 | \scoreitem[4]{50}{Picking up the cup, bowl and drinks for transportation} 5 | \scoreitem[2]{80}{Picking up cutlery (spoon, fork) for transportation} 6 | \scoreitem[1]{100}{Picking up the plate for transportation} 7 | \scoreitem[5]{50}{Placing the tableware and cutlery inside the dishwasher} 8 | \scoreitem[5]{75}{Placing an item correctly (cleanable, convenient like a human would) in the dishwasher} 9 | \scoreitem[2]{50}{Placing a drink inside the trash bin} 10 | 11 | \scoreheading{Bonus Rewards} 12 | \scoreitem[2]{100}{Pulling and pushing the dishwasher rack} 13 | \scoreitem[2]{200}{Opening and closing the dishwasher door} 14 | \scoreitem{100}{Picking up the dishwasher tab for transportation to the dishwasher} 15 | \scoreitem{200}{Placing the dishwasher tab inside the dishwasher's hatch intended for the tab} 16 | \scoreitem[2]{50}{Wiping the area where the drink was} 17 | 18 | \scoreitem{50}{Autonomously Picking any Object} 19 | \scoreitem{50}{Autonomously Placing any Object} 20 | 21 | \scoreheading{Deus Ex Machina Penalties} 22 | \penaltyitem[3]{50}{Handing cup, bowl and drinks over to the robot} 23 | \penaltyitem[2]{80}{Handing cutlery over to the robot} 24 | \penaltyitem{100}{Handing the plate over to the robot} 25 | \penaltyitem[5]{50}{Having a human place an object in the dishwasher} 26 | \penaltyitem[2]{50}{Having a human place a drink inside the trash bin} 27 | \penaltyitem[2]{25}{A human pointing at the trash bin} 28 | %\setTotalScore{1000} 29 | \end{scorelist} 30 | 31 | 32 | % Local Variables: 33 | % TeX-master: "Rulebook" 34 | % End: 35 | -------------------------------------------------------------------------------- /scoresheets/EGPSR.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=10] 2 | \scoreheading{Main Goal (can be repeated unlimited times)} 3 | \scoreitem[3]{150}{Find and clearly state an encountered problem} 4 | \scoreitem[3]{650}{Solve a problem} 5 | 6 | \scoreheading{Penalties} 7 | \penaltyitem[1]{100}{Find repeated problem category} 8 | \penaltyitem[1]{300}{Solving repeated problem category for the 2nd time} 9 | \penaltyitem[1]{500}{Solving repeated problem category for the 3rd (or more) time} 10 | \scoreitem{0}{\textit{These Penalties are applied before any percentage based Deus Ex Machina Penalties}} 11 | 12 | \scoreheading{Deus Ex Machina Penalties} 13 | \penaltyitem[3]{150}{Asking for location of a problem} 14 | \penaltyitem[3]{650}{ 15 | Instructing a human to perform parts of the task will apply a \\ 16 | percentage penalty according to similar penalties in other \\ 17 | Stage II tests. 18 | } 19 | 20 | \end{scorelist} 21 | 22 | \ifShortScoresheet{}{ 23 | \textbf{Referee Information:} 24 | Note each problem (category, item, location) and mark if they are stated by the robot in remarks 25 | }% 26 | 27 | 28 | 29 | % Local Variables: 30 | % TeX-master: "Rulebook" 31 | % End: 32 | 33 | -------------------------------------------------------------------------------- /scoresheets/Finals.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=10,attempts=1,outstanding=False,continue=False, specialpenbonus=False] 2 | \scoreheading{Main Goal (can be repeated unlimited times)} 3 | \scoreitem[3]{150}{Find and clearly state an encountered EGPSR problem} 4 | \scoreitem[3]{650}{Solve a EGPSR problem} 5 | \scoreitem[1]{600}{Opening the Door of the Apartment} 6 | \scoreitem[1]{600}{Closing the Dishwasher} 7 | \scoreitem[1]{300}{Closing a Cabinet Door} 8 | \scoreitem[1]{0}{Custom Task} 9 | \scoreitem[1]{0}{Custom Task} 10 | \scoreitem[1]{0}{Custom Task} 11 | 12 | \scoreheading{Penalties} 13 | \penaltyitem[1]{100}{Find repeated EGPSR problem category} 14 | \penaltyitem[1]{300}{Solving repeated EGPSR problem category for the 2nd time} 15 | \penaltyitem[1]{500}{Solving repeated EGPSR problem category for the 3rd (or more) time} 16 | 17 | \scoreheading{Deus Ex Machina Penalties} 18 | \penaltyitem[3]{150}{Asking for location of a problem} 19 | \penaltyitem[1]{50}{Restart (only applies if the robot continues scoring afterwards)} 20 | \penaltyitem[3]{650}{ 21 | Instructing a human to perform parts of the task will apply a \\ 22 | percentage penalty according to similar penalties in other \\ 23 | Stage II tests. 24 | } 25 | 26 | \end{scorelist} 27 | 28 | \ifShortScoresheet{}{ 29 | \textbf{Referee Information:} 30 | Note each problem (category, item, location) and mark if they are stated by the robot in remarks 31 | }% 32 | 33 | % Local Variables: 34 | % TeX-master: "../rulebook" 35 | % End: 36 | -------------------------------------------------------------------------------- /scoresheets/GPSR.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=5] 2 | \scoreheading{Main Goal} 3 | \scoreitem[3]{400}{Executing the task associated with each command} 4 | 5 | \scoreheading{Bonus Rewards} 6 | \scoreitem[3]{100}{Understanding a command given by a non-expert operator} 7 | 8 | \scoreheading{Deus Ex Machina Penalties} 9 | \penaltyitem[3]{50}{Using a custom operator} 10 | \penaltyitem[3]{50}{Bypassing speech recognition} 11 | \penaltyitem[3]{400}{Instructing a human to perform parts of the task will apply a percentage penalty according to similar penalties in other Stage I tests.} 12 | \end{scorelist} 13 | -------------------------------------------------------------------------------- /scoresheets/GiveMeAHand.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=10] 2 | 3 | \scoreheading{Regular Rewards} 4 | \scoreitem{100}{Approach a calling operator} 5 | \scoreitem[5]{50}{Approach the human's hand without contact} 6 | \scoreitem[5]{100}{Receive an object from the operator} 7 | \scoreitem[5]{50}{Use natural interaction to clarify ambiguous delivery locations} 8 | \scoreitem[5]{100}{Place an object at the correct location} 9 | 10 | \scoreheading{Penalties} 11 | \penaltyitem[5]{50}{Initiating unattended interaction (e.g., talking to the open air)} 12 | \penaltyitem[5]{75}{Place an object at the wrong location or by guessing the intended location} 13 | 14 | \scoreheading{Deus Ex Machina Penalties} 15 | \penaltyitem[5]{75}{Instruct the user how to hand over an object} 16 | \end{scorelist} 17 | 18 | 19 | % Local Variables: 20 | % TeX-master: "Rulebook" 21 | % End: 22 | -------------------------------------------------------------------------------- /scoresheets/HelpMeCarry.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=5] 2 | \scoreheading{Main Goal} 3 | \scoreitem{300}{Following the person to the car} 4 | \scoreitem{15}{Perceiving the correct beg (visualize on screen or say which one)} 5 | \scoreitem{100}{Picking up the correct bag} 6 | \scoreitem{50}{Avoiding the crowd of people obstructing the path} 7 | \scoreitem{50}{Avoiding the small object on the ground} 8 | \scoreitem{50}{Avoiding the hard-to-see object} 9 | \scoreitem{50}{Avoiding the area blocked with retractable barriers} 10 | 11 | \scoreheading{Bonus rewards} 12 | \scoreitem{200}{Re-reaching the starting location} 13 | \scoreitem{300}{Joining and staying in the queue on the way to the arena} 14 | 15 | 16 | \scoreheading{Penalties} 17 | \penaltyitem{50}{Dropping the bag} 18 | 19 | \scoreheading{Deus Ex Machina Penalties} 20 | \penaltyitem{50}{Rediscovering the operator by natural interaction} 21 | \penaltyitem{100}{Rediscovering the operator by unnatural interaction} 22 | \penaltyitem{150}{Rediscovering the operator by asking them to come back} 23 | \penaltyitem{200}{Rediscovering the operator by direct contact} 24 | 25 | 26 | 27 | 28 | % No longer necessary, computes automatically 29 | % \setTotalScore{1000} 30 | \end{scorelist} 31 | 32 | 33 | % Local Variables: 34 | % TeX-master: "Rulebook" 35 | % End: 36 | -------------------------------------------------------------------------------- /scoresheets/OpenChallenge.tex: -------------------------------------------------------------------------------- 1 | \paragraph{Instructions:} 2 | \begin{compactenum} 3 | \item Please watch all demonstrations carefully. 4 | \item At the end of the demonstration you may ask questions. 5 | \item After demonstration and questions, please fill in the evaluation sheet below. 6 | \item Is not allowed to evaluate your own team. 7 | \item You may use the space below \enquote{Remarks:} to take notes for yourself. 8 | \item Enter your team's name (\enquote{Team name}) and your name (\enquote{referee name}) on top of the sheet. 9 | \item Sign the form using either \enquote{Referee} or \enquote{Team leader} slots at the bottom. 10 | \end{compactenum} 11 | 12 | \paragraph{Evaluation sheet} 13 | \begin{center} 14 | \begingroup 15 | \newcommand\tableTEAMS{} 16 | \def\do#1{\appto\tableTEAMS{#1 & & & & \\\hline}}% 17 | % \def\do#1{\appto\tableTEAMS{#1 & & \\\hline}}% 18 | \expandafter\docsvlist\expandafter{\TEAMSSTAGETWO} 19 | \begin{tabular}{|l|c|c|c|c|} 20 | % \begin{tabular}{|l|c|c|} 21 | \hline 22 | \multicolumn{1}{|c|}{\multirow{3}{*}{Team}} 23 | & Novelty/Scientific & Difficulty of the & \multirow{2}{*}{Success} & Overall \\ 24 | & contribution & presented task & & demo \\ 25 | & (0-100) & (0-100) & (0-100) & (0-100) \\ 26 | % & Novelty/Scientific & Success of & Overall \\ 27 | % & contribution & the Demo & demo \\ 28 | % & (0-100) & (0-100) & (0-100) \\ 29 | % & Novelty/Scientific & Success of \\ 30 | % & contribution & the Demo \\ 31 | % & (0-100) & (0-100) \\ 32 | \hline 33 | \hline 34 | \tableTEAMS 35 | \end{tabular} 36 | \endgroup 37 | \end{center} 38 | 39 | % Local Variables: 40 | % TeX-master: "../rulebook" 41 | % End: 42 | -------------------------------------------------------------------------------- /scoresheets/PosterSession.tex: -------------------------------------------------------------------------------- 1 | \paragraph{Instructions:} 2 | \begin{compactenum} 3 | \item Please watch all posters carefully. 4 | \item There will be a team member for questions about the poster. 5 | \item After viewing the poster and asking your questions you may have, please fill in the evaluation sheet below. 6 | \item Is not allowed to evaluate your own team. 7 | \item You may use the space below \enquote{Remarks:} to take notes for yourself. 8 | \item Enter your team's name (\enquote{Team name}) and your name (\enquote{referee name}) on top of the sheet. 9 | \item Sign the form using either \enquote{Referee} or \enquote{Team leader} slots at the bottom. 10 | \end{compactenum} 11 | 12 | \paragraph{Evaluation sheet} 13 | \begin{center} 14 | \begingroup 15 | \newcommand\tableTEAMS{} 16 | \def\do#1{\appto\tableTEAMS{#1 & \\\hline}}% 17 | \expandafter\docsvlist\expandafter{\TEAMSSTAGEONE} 18 | \begin{tabular}{|l|c|} 19 | \hline 20 | \multirow{2}{*}{Team} & Overall score \\ 21 | & of poster (0-10) \\ 22 | \hline 23 | \hline 24 | \tableTEAMS 25 | \end{tabular} 26 | \endgroup 27 | \end{center} 28 | 29 | % Local Variables: 30 | % TeX-master: "../rulebook" 31 | % End: 32 | -------------------------------------------------------------------------------- /scoresheets/Receptionist.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[startbutton=false,timelimit=6] 2 | \scoreheading{Main Goal} 3 | \scoreitem[2]{100}{Offer a free seat to the new guest} 4 | \scoreitem[2]{30}{Show the guest around (navigate to the beverage area and living room)} 5 | \scoreitem[2]{15}{Look in the direction of navigation or at the navigation goal} 6 | \scoreitem[2]{20}{Tell position of favorite drink} 7 | \scoreitem[2]{75}{Look at the person talking} 8 | \scoreitem[1]{180}{Introduce both guests to each other} 9 | 10 | 11 | \scoreheading{Bonus Rewards} 12 | \scoreitem[2]{200}{Open the entrance door for a guest} 13 | \scoreitem[1]{50}{State a similarity between an interest between two or more persons} 14 | \scoreitem[4]{30}{Describe the first guest to the second guest before reaching the living room (per correct visual attribute)} 15 | 16 | 17 | \scoreheading{Penalties} 18 | \penaltyitem[6]{20}{Wrong guest information was memorized (continue with wrong name, drink or interest)} 19 | \penaltyitem[4]{30}{Describe the first guest to the second guest before reaching the living room (per incorrect visual attribute)} 20 | \penaltyitem[1]{120}{Introduce the wrong persons} 21 | 22 | \scoreheading{Deus Ex Machina} 23 | \penaltyitem[2]{75}{Alternative HRI} 24 | \penaltyitem[2]{200}{Not recognizing people} 25 | 26 | 27 | 28 | \end{scorelist} 29 | 30 | 31 | % Local Variables: 32 | % TeX-master: "Rulebook" 33 | % End: 34 | 35 | -------------------------------------------------------------------------------- /scoresheets/Restaurant.tex: -------------------------------------------------------------------------------- 1 | \small\begin{scorelist}[timelimit=15] 2 | \scoreheading{Regular Rewards} 3 | \scoreitem[2]{100}{Detect calling or waving customer} 4 | \scoreitem[2]{100}{Reach a customer's table without prior guidance/training} 5 | 6 | \scoreitem[2]{200}{Understand and confirm the order received to the customer} 7 | \scoreitem[2]{100}{Communicate the order to the barman} 8 | 9 | \scoreitem[2]{100}{Return to the customer table with the order} 10 | \scoreitem[2]{200}{Serve the order to the customer} 11 | 12 | \scoreheading{Bonus Rewards} 13 | \scoreitem[2]{200}{Use an unattached tray to transport} 14 | 15 | \scoreheading{Regular Penalties} 16 | \penaltyitem[2]{200}{Being guided to a table} 17 | \penaltyitem[2]{80}{Not making eye-contact when taking an order} 18 | \penaltyitem[2]{80}{Not reaching the bar (barman has to move from behind the bar to interact with the robot)} 19 | 20 | \scoreheading{Deus ex Machina Penalties} 21 | \penaltyitem[4]{50}{Asking the Barman to handover object to the robot} 22 | \penaltyitem[4]{50}{Guest needing to take the object from a tray or the robot's hand} 23 | \penaltyitem[2]{100}{Being told/pointed where is a table/\textit{Kitchen-bar}} 24 | 25 | \end{scorelist} 26 | 27 | % Local Variables: 28 | % TeX-master: "Rulebook" 29 | % End: 30 | -------------------------------------------------------------------------------- /scoresheets/StoringGroceries.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=7] 2 | \scoreheading{Main Goal} 3 | \scoreitem{15}{Navigating to the table} 4 | \scoreitem[5]{15}{Perceiving object and categorizing it correctly} 5 | \scoreitem[5]{50}{Picking up an object for transportation to the cabinet} 6 | \scoreitem[5]{15}{Perceiving objects in shelf and saying on which layer the currently handled object should be placed} 7 | \scoreitem[5]{15}{Placing an object in the cabinet} 8 | \scoreitem[5]{50}{Placing an object next to similar objects on the cabinet} 9 | \scoreitem[1]{200}{Opening the first cabinet door} 10 | \scoreitem[1]{100}{Opening the second cabinet door} 11 | \scoreitem{300}{Pouring cereal into the container} 12 | 13 | \scoreheading{Bonus Rewards} 14 | 15 | \scoreitem[5]{50}{Picking up an object from the shopping bag} 16 | \scoreitem{70}{Picking up a tiny object} 17 | \scoreitem{30}{Placing a tiny object} 18 | \scoreitem{70}{Picking up a heavy object} 19 | \scoreitem{30}{Placing a heavy object} 20 | 21 | \scoreitem{50}{Autonomously Picking any Object} 22 | \scoreitem{50}{Autonomously Placing any Object} 23 | 24 | \scoreheading{Deus Ex Machina Penalties} 25 | \penaltyitem[10]{-15}{Perceiving object and categorizing it wrongly} 26 | \penaltyitem[5]{-50}{A human handing an object over to the robot} 27 | \penaltyitem[5]{-15}{A human placing an object in the cabinet} 28 | \penaltyitem[5]{-50}{A human placing an object in the cabinet next to similar objects} 29 | \penaltyitem[5]{-25}{A human pointing at a target location} 30 | \penaltyitem{-200}{A human opening the first cabinet door} 31 | \penaltyitem{-100}{A human opening the second cabinet door} 32 | \penaltyitem{-100}{Spilling cereal while pouring} 33 | \penaltyitem{-100}{Leaving cereal in the box} 34 | \penaltyitem{-300}{A human pouring cereal in the bowl} 35 | \end{scorelist} 36 | 37 | 38 | % Local Variables: 39 | % TeX-master: "Rulebook" 40 | % End: 41 | -------------------------------------------------------------------------------- /scoresheets/old/CleanUp.tex: -------------------------------------------------------------------------------- 1 | 2 | \begin{table}[h] 3 | \begin{tabular}{m{0.85\linewidth} c} 4 | \textbf{Maximum time}: & 5 minutes \\ 5 | \end{tabular} 6 | \end{table} 7 | 8 | \small\begin{scorelist} 9 | \scoreheading{Regular Rewards} 10 | \scoreitem[6]{100}{Place an object at the appropriate location} 11 | \scoreheading{Bonus Rewards} 12 | \scoreitem{200}{Moving a \emph{tiny} object} 13 | \scoreitem{200}{Moving a \emph{heavy} object} 14 | \scoreheading{Regular Penalties} 15 | \penaltyitem[6]{50}{Place an object at the wrong location} 16 | \scoreheading{Deus ex Machina Penalties} 17 | \penaltyitem[6]{60}{Physically interacting with object} 18 | \penaltyitem[6]{40}{Guiding the robot near an object to be moved} 19 | \penaltyitem[6]{30}{Telling where an object can be found} 20 | \penaltyitem[6]{30}{Telling robot which category an object is or where to place it} 21 | \penaltyitem[6]{20}{Pointing out object to be moved} 22 | \end{scorelist} 23 | 24 | % Local Variables: 25 | % TeX-master: "Rulebook" 26 | % End: 27 | -------------------------------------------------------------------------------- /scoresheets/old/CocktailParty.tex: -------------------------------------------------------------------------------- 1 | The maximum time for this test is 5 minutes. 2 | 3 | \begin{scorelist} 4 | \scoreheading{Taking the orders} % 90 = 30 + 30 + 15 + 15 5 | \scoreitem[2]{15}{Detecting calling person} 6 | \scoreitem{30}{Finding sitting \& distracted person} 7 | \scoreitem[3]{ 5}{Understanding and repeating the correct person's name} 8 | \scoreitem[3]{ 5}{Understanding and repeating the correct drink's name} 9 | 10 | \scoreheading{Placing orders} % 105 = 15 + 90 11 | \scoreitem[3]{ 5}{Repeat the correct name \& drink to the Barman } 12 | \scoreitem[3]{30}{Provide an accurate description of the guest to the Barman} 13 | 14 | \scoreheading{Missing beverage} % 40 15 | \scoreitem{20}{Realize the missing drink} 16 | \scoreitem{20}{Provide 3 available alternatives to the Barman} 17 | \scoreitem{ 5}{Understanding and repeating the alternatives to the Barman} 18 | 19 | \scoreheading{Correcting the order} % 35 = 20 + 5 + 5 + 5 20 | \scoreitem{20}{Find the guest without calling them} 21 | \scoreitem{10}{Find the guest by calling them} 22 | \scoreitem{ 5}{Repeat the correct list of alternate drinks to the guest} 23 | \scoreitem{ 5}{Understanding and repeating the corrected order} 24 | \scoreitem{ 5}{Place the corrected order} % Speed bonus 25 | 26 | \scoreheading{Penalties} 27 | \scoreitem[-1]{20}{Talk to something that is not a human} 28 | 29 | \setTotalScore{270} 30 | \end{scorelist} 31 | 32 | 33 | % Local Variables: 34 | % TeX-master: "Rulebook" 35 | % End: 36 | -------------------------------------------------------------------------------- /scoresheets/old/Farewell.tex: -------------------------------------------------------------------------------- 1 | 2 | The maximum time for this test is 5 minutes. 3 | 4 | \begin{scorelist} 5 | \scoreheading{Main Goal} 6 | \scoreitem[2]{200}{Each guest successfully guided to thier cab} 7 | \scoreitem{200}{Identifying the medical doctor} 8 | 9 | \scoreheading{Bonus rewards} 10 | \scoreitem[2]{100}{Delivering the right coat} 11 | \scoreitem[2]{100}{Entertaining guest with conversation while ushering person to the cab} 12 | 13 | \scoreheading{Deus Ex Machina} 14 | \penaltyitem[2]{30}{Tell the robot which guest is leaving} 15 | \penaltyitem[2]{120}{Guiding the robot to the cab} 16 | \penaltyitem[2]{120}{Guiding the robot back to the house} 17 | \penaltyitem{200}{Tell robot which person is a medical doctor} 18 | \penaltyitem[2]{100}{Handover the coat} 19 | 20 | 21 | % No longer necessary, computes automatically 22 | % \setTotalScore{1000} 23 | \end{scorelist} 24 | 25 | 26 | % Local Variables: 27 | % TeX-master: "Rulebook" 28 | % End: 29 | -------------------------------------------------------------------------------- /scoresheets/old/FinalsExec.tex: -------------------------------------------------------------------------------- 1 | \paragraph{Instructions:} 2 | \begin{compactenum} 3 | \item Please watch all demonstrations carefully. 4 | \item At the end of the demonstration you may ask questions. 5 | \item After demonstration and questions, please fill in the evaluation sheet below. 6 | \item You may use the space below \enquote{Remarks:} to take notes for yourself. 7 | \item Enter your your name (\enquote{referee name}) on top of the sheet. 8 | \item Sign the form using the \enquote{Referee} slot at the bottom. 9 | \end{compactenum} 10 | 11 | \paragraph{Criteria:} 12 | \begin{compactitem} 13 | \item Scientific contribution 14 | \item Contribution to @Home 15 | \item Relevance for @Home / Novelty of approaches 16 | \item Presentation and performance in the finals 17 | \end{compactitem} 18 | 19 | 20 | 21 | \paragraph{Evaluation sheet} 22 | \begin{center} 23 | 24 | \begingroup 25 | \newcommand\tableTEAMS{} 26 | \def\do#1{\appto\tableTEAMS{#1 & & & & \\\hline}}% 27 | \expandafter\docsvlist\expandafter{\TEAMSFINALS} 28 | 29 | \begin{tabular}{|l|c|c|c|c|} 30 | \hline 31 | \multirow{3}{*}{Team} 32 | & Efficacy of & Elegance of & Innovation/contribution & Difficulty/Success of \\ 33 | & solution to main objective & solution to main objective & of additional tasks & overall demonstration \\ 34 | & (0-10) & (0-10) & (0-10) & (0-10) \\ 35 | \hline 36 | \hline 37 | \tableTEAMS 38 | \end{tabular}\\ 39 | \endgroup 40 | 41 | \end{center} 42 | 43 | 44 | 45 | % Local Variables: 46 | % TeX-master: "../rulebook" 47 | % End: 48 | -------------------------------------------------------------------------------- /scoresheets/old/FinalsJury.tex: -------------------------------------------------------------------------------- 1 | \paragraph{Instructions:} 2 | \begin{compactenum} 3 | \item Please watch all demonstrations carefully. 4 | \item At the end of the demonstration you may ask questions. 5 | \item After demonstration and questions, please fill in the evaluation sheet below. 6 | \item You may use the space below \enquote{Remarks:} to take notes for yourself. 7 | \item Enter your your name (\enquote{referee name}) on top of the sheet. 8 | \item Sign the form using the \enquote{Referee} slot at the bottom. 9 | \end{compactenum} 10 | 11 | 12 | \paragraph{Evaluation sheet} 13 | \begin{center} 14 | 15 | \begingroup 16 | \newcommand\tableTEAMS{} 17 | \def\do#1{\appto\tableTEAMS{#1 & & & & \\\hline}}% 18 | \expandafter\docsvlist\expandafter{\TEAMSFINALS} 19 | 20 | \begin{tabular}{|l|c|c|c|c|} 21 | \hline 22 | \multirow{3}{*}{Team} 23 | & Originality and & Relevance/usefulness to & Elegance of & Success of \\ 24 | & presentation${}^\star$ & everyday life & overall demonstration & overall demonstration \\ 25 | & (0-10) & (0-10) & (0-10) & (0-10) \\ 26 | \hline 27 | \hline 28 | \tableTEAMS 29 | \end{tabular}\\ 30 | ${}^\star$ Story telling is to be rewarded 31 | \endgroup 32 | \end{center} 33 | 34 | % Local Variables: 35 | % TeX-master: "../rulebook" 36 | % End: 37 | -------------------------------------------------------------------------------- /scoresheets/old/FindMyDisk.tex: -------------------------------------------------------------------------------- 1 | The maximum time for this test is 5 minutes. 2 | 3 | \begin{scorelist} 4 | \scoreheading{Main Goal} 5 | \scoreitem{600}{Provide an accurate description of the desired disk} 6 | \scoreitem{600}{Desired disk is found} 7 | 8 | \scoreheading{Bonus rewards} 9 | \scoreitem{800}{Help operator to find a second disk} 10 | 11 | % \scoreheading{Deus ex Machina Penalties} 12 | % \penaltyitem[2]{1000}{Pointing at correct item .} 13 | 14 | \end{scorelist} 15 | 16 | 17 | % Local Variables: 18 | % TeX-master: "Rulebook" 19 | % End: 20 | -------------------------------------------------------------------------------- /scoresheets/old/FindMyMates.tex: -------------------------------------------------------------------------------- 1 | 2 | The maximum time for this test is 5 minutes. 3 | 4 | \begin{scorelist} 5 | \scoreheading{Main Goal} 6 | \scoreitem[2]{100}{Report a guest location} 7 | \scoreitem[2]{50}{Provide location unique feature} 8 | \scoreitem[2]{150}{Provide description of a guest} 9 | 10 | \scoreheading{Bonus rewards} 11 | \scoreitem{150}{Report the 3rd guest location} 12 | \scoreitem{250}{Provide description of a 3rd guest} 13 | 14 | \scoreheading{Deus Ex Machina} 15 | \penaltyitem[2]{-75}{Person has to wave the robot in order to be found} 16 | \penaltyitem[2]{-75}{Person has to tell the robot where he/she is sitting/standing} 17 | \penaltyitem[2]{-150}{Person has to approach the robot (e.g. walk and stand in front of it)} 18 | 19 | % No longer necessary, computes automatically 20 | % \setTotalScore{1000} 21 | \end{scorelist} 22 | 23 | 24 | % Local Variables: 25 | % TeX-master: "Rulebook" 26 | % End: 27 | -------------------------------------------------------------------------------- /scoresheets/old/HandMeThat.tex: -------------------------------------------------------------------------------- 1 | 2 | The maximum time for this test is 10 minutes. 3 | 4 | \begin{scorelist} 5 | \scoreheading{Main Goal} 6 | \scoreitem[5]{400}{Correctly determine each item} 7 | \penaltyitem[5]{-150}{Correctly determine an item on the second attempt} 8 | \penaltyitem[5]{-300}{Correctly determine an item on the third or fourth attempt} 9 | \penaltyitem[5]{-400}{Correctly determine an item on a subsequent attempt} 10 | \penaltyitem[5]{-100}{Asking 1 clarifying question} 11 | \penaltyitem[5]{-200}{Asking 2 clarifying questions} 12 | \penaltyitem[5]{-350}{Asking 3 or more clarifying questions} 13 | 14 | % \scoreheading{Group 1} 15 | % \scoreitem{500}{Name/touch the object being pointed} 16 | % \penaltyitem[3]{-150}{Asking clarifying question} 17 | % \penaltyitem[2]{-200}{Incorrect guess} 18 | % \penaltyitem{-100}{Guessing on the fifth attemp} 19 | 20 | % \vspace{-0.75\baselineskip}% 21 | % \scoreheading{Group 2} 22 | % \scoreitem{500}{Name/touch the object being pointed} 23 | % \penaltyitem[3]{-150}{Asking clarifying question} 24 | % \penaltyitem[2]{-200}{Incorrect guess} 25 | % \penaltyitem{-100}{Guessing on the fifth attemp} 26 | 27 | % \vspace{-0.75\baselineskip}% 28 | % \scoreheading{Group 3} 29 | % \scoreitem{500}{Name/touch the object being pointed} 30 | % \penaltyitem[3]{-150}{Asking clarifying question} 31 | % \penaltyitem[2]{-200}{Incorrect guess} 32 | % \penaltyitem{-100}{Guessing on the fifth attemp} 33 | 34 | % \vspace{-0.75\baselineskip}% 35 | % \scoreheading{Group 4} 36 | % \scoreitem{500}{Name/touch the object being pointed} 37 | % \penaltyitem[3]{-150}{Asking clarifying question} 38 | % \penaltyitem[2]{-200}{Incorrect guess} 39 | % \penaltyitem{-100}{Guessing on the fifth attemp} 40 | 41 | % \vspace{-0.75\baselineskip}% 42 | % \scoreheading{Group 5} 43 | % \scoreitem{500}{Name/touch the object being pointed} 44 | % \penaltyitem[3]{-150}{Asking clarifying question} 45 | % \penaltyitem[2]{-200}{Incorrect guess} 46 | % \penaltyitem{-100}{Guessing on the fifth attemp} 47 | 48 | \scoreheading{Deus ex Machina Penalties} 49 | \penaltyitem[5]{400}{Being told the name of the object} 50 | 51 | % No longer necessary, computes automatically 52 | % \setTotalScore{1000} 53 | \end{scorelist} 54 | 55 | 56 | % Local Variables: 57 | % TeX-master: "Rulebook" 58 | % End: 59 | -------------------------------------------------------------------------------- /scoresheets/old/PnG.tex: -------------------------------------------------------------------------------- 1 | The maximum time for this test is \textbf{10 minutes}. 2 | 3 | \begin{scorelist} 4 | \scoreheading{Opening the dishwasher} %50 pts 5 | \scoreitem{50}{Autonomously opening the dishwasher} 6 | 7 | \scoreheading{Filling the dishwasher (direct)} %200 pts 8 | \scoreitem[3]{40}{Safely placing a tableware item in the dishwasher's rack} 9 | \scoreitem[2]{40}{Safely placing a cutlery item in the dishwasher's basket} 10 | 11 | \scoreheading{Filling the dishwasher (tray)} %200 pts 12 | \scoreitem[3]{30}{Safely placing a tableware item in the tray} 13 | \scoreitem[2]{35}{Safely placing a cutlery item in the tray} 14 | \scoreitem{40}{Placing the tray into the dishwasher} 15 | 16 | \scoreheading{Placing the cascade-pod} %40 pts 17 | \scoreitem{40}{Placing the cascade-pod in the dishwasher's soap compartment} 18 | \scoreitem{20}{Placing the cascade-pod in the dishwasher (somewhere else)} 19 | 20 | \scoreheading{Cleaning the table} %50 pts 21 | \scoreitem{50}{Successfully cleaning the spot} 22 | \scoreitem[-1]{20}{Receiving operator's assistance to find the spot} 23 | \scoreitem[-1]{20}{Smudging the spot while trying to clean it} 24 | 25 | \scoreheading{Leave the arena} %10 pts 26 | \scoreitem{10}{Autonomously leave the arena before the time elapses} 27 | 28 | \setTotalScore{350} 29 | \end{scorelist} 30 | 31 | % Local Variables: 32 | % TeX-master: "Rulebook" 33 | % End: 34 | -------------------------------------------------------------------------------- /scoresheets/old/SPR.tex: -------------------------------------------------------------------------------- 1 | The maximum time for this test is 5 minutes. 2 | 3 | \begin{scorelist} 4 | 5 | \scoreheading{Crowd} % Max 15 points 6 | \scoreitem{ 5}{State crowd's size} 7 | \scoreitem{10}{State crowd's male/female count} 8 | 9 | \scoreheading{Riddle game} % Max 55 points 10 | \scoreitem[ 5]{5}{Understanding question} 11 | \scoreitem[ 5]{5}{Correctly answered a question} 12 | \scoreitem{ 5}{Answering all 5 riddle game question} 13 | 14 | \ifDSPL{ 15 | \scoreheading{[DSPL] Blind man's bluff game} % Max 130 16 | \scoreitem[10]{ 5}{Understanding question on the first attempt} % 50 17 | \scoreitem[10]{ 2}{Understanding question on the second attempt} % -- (20) 18 | \scoreitem[10]{ 2}{Correctly answered a question} % 20 19 | \scoreitem[10]{ 5}{Turned towards person asking the question} % 50 20 | \scoreitem{10}{Answering all 10 blind man's bluff questions} % 10 21 | } 22 | 23 | \ifNotDSPL{ 24 | \scoreheading{[OPL] Blind man's bluff game} % Max 130 25 | \scoreitem[ 5]{10}{Understanding question on the first attempt} % 50 26 | \scoreitem[ 5]{ 5}{Understanding question on the second attempt} % -- (25) 27 | \scoreitem[ 5]{ 5}{Correctly answered a question} % 25 28 | \scoreitem[ 5]{10}{Turned towards person asking the question} % 50 29 | \scoreitem{ 5}{Answering all 5 blind man's bluff questions} % 5 30 | } 31 | 32 | \setTotalScore{200} 33 | \end{scorelist} 34 | 35 | \ifShortScoresheet{}{ 36 | \textbf{Crowd setup ground truth} 37 | \begin{figure}[!htb] 38 | \centering 39 | \begin{minipage}{.3\textwidth} 40 | \begin{center} 41 | \begin{tabular}{|l||l|l|l|l|} 42 | \hline 43 | Name & 44 | \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Stand}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Sit}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Lay}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Arm pose}}\\\hline 45 | × & × & × & × & ×\\\hline 46 | × & × & × & × & ×\\\hline 47 | × & × & × & × & ×\\\hline 48 | × & × & × & × & ×\\\hline 49 | × & × & × & × & ×\\\hline 50 | × & × & × & × & ×\\\hline 51 | \end{tabular} 52 | \end{center} 53 | \end{minipage} 54 | \begin{minipage}{.3\textwidth} 55 | \begin{center} 56 | \begin{tabular}{|l||l|l|l|l|} 57 | \hline 58 | Name & 59 | \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Stand}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Sit}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Lay}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Arm pose}}\\\hline 60 | × & × & × & × & ×\\\hline 61 | × & × & × & × & ×\\\hline 62 | × & × & × & × & ×\\\hline 63 | × & × & × & × & ×\\\hline 64 | × & × & × & × & ×\\\hline 65 | × & × & × & × & ×\\\hline 66 | \end{tabular} 67 | \end{center} 68 | \end{minipage} 69 | \begin{minipage}{.3\textwidth} 70 | \begin{center} 71 | \begin{tabular}{|l||l|l|l|l|} 72 | \hline 73 | Name & 74 | \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Stand}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Sit}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Lay}} & \parbox[t]{2mm}{\rotatebox[origin=c]{90}{Arm pose}}\\\hline 75 | × & × & × & × & ×\\\hline 76 | × & × & × & × & ×\\\hline 77 | × & × & × & × & ×\\\hline 78 | × & × & × & × & ×\\\hline 79 | × & × & × & × & ×\\\hline 80 | × & × & × & × & ×\\\hline 81 | \end{tabular} 82 | \end{center} 83 | \end{minipage} 84 | \end{figure} 85 | } 86 | % Local Variables: 87 | % TeX-master: "Rulebook" 88 | % End: 89 | -------------------------------------------------------------------------------- /scoresheets/old/ServeBreakfast.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=5] 2 | \scoreheading{Main Goal} 3 | \scoreitem{15}{Initial navigation to pick up area} 4 | \scoreitem[4]{15}{Perceiving object and categorizing it correctly (visualize or say)} 5 | \scoreitem[4]{50}{Picking up breakfast items for transportation to the table} 6 | \scoreitem[4]{50}{Placing breakfast items on the table} 7 | \scoreitem{300}{Pouring cereal into the bowl} 8 | 9 | \scoreheading{Bonus Rewards} 10 | \scoreitem{300}{Pouring milk into the bowl} 11 | \scoreitem{100}{Placing a spoon next to the bowl} 12 | 13 | \scoreheading{Penalties} 14 | \penaltyitem[4]{30}{Throwing or dropping an object on the table} 15 | \penaltyitem{100}{Spilling cereal while pouring} 16 | \penaltyitem{100}{Spilling milk while pouring} 17 | 18 | \scoreheading{Deus Ex Machina Penalties} 19 | \penaltyitem[4]{5}{Pointing at an object} 20 | \penaltyitem[4]{50}{Handing an object over to the robot} 21 | \penaltyitem[4]{50}{A human placing an object on the table} 22 | \penaltyitem{300}{A human pouring cereal in the bowl} 23 | 24 | %\setTotalScore{1000} 25 | \end{scorelist} 26 | 27 | 28 | % Local Variables: 29 | % TeX-master: "Rulebook" 30 | % End: 31 | -------------------------------------------------------------------------------- /scoresheets/old/ServingDrinks.tex: -------------------------------------------------------------------------------- 1 | The maximum time for this test is \textbf{5 minutes}. 2 | 3 | \begin{scorelist} 4 | \scoreheading{Main Goal} 5 | \scoreitem[3]{50}{Approaching guest without a drink and take order} 6 | \scoreitem[3]{80}{Picking up correct drink from the bar} 7 | \scoreitem[3]{70}{Delivering a drink to the right person} 8 | 9 | \scoreheading{Bonus rewards} 10 | \scoreitem{200}{Informing a guest of drink unavailability upon request} 11 | \scoreitem[2]{100}{Correcting the bartender} 12 | 13 | \scoreheading{Regular Penalties} 14 | \penaltyitem{50}{Approaching guest with a drink and take order (per wrong guest)} 15 | \penaltyitem{50}{Approaching the host to take an order} 16 | 17 | \scoreheading{Deus Ex Machina Penalties} 18 | \penaltyitem[3]{30}{Guest waves to the robot to place order} 19 | \penaltyitem[3]{50}{Guest approaches the robot to place order} 20 | \penaltyitem[3]{30}{Drink handed over to the robot (bypass picking)} 21 | \penaltyitem[3]{30}{Drink taken by a guest (bypass drink handover)} 22 | 23 | 24 | \end{scorelist} 25 | 26 | 27 | % Local Variables: 28 | % TeX-master: "Rulebook" 29 | % End: 30 | -------------------------------------------------------------------------------- /scoresheets/old/SetTable.tex: -------------------------------------------------------------------------------- 1 | The maximum time for this test is 10 minutes. 2 | 3 | \begin{scorelist} 4 | \scoreheading{Main Goal} 5 | \scoreitem{100}{Open the drawer or cupboard door} 6 | \scoreitem[2]{50}{Pick up plate and cup} 7 | \scoreitem[3]{150}{Pick up knife, spoon, and fork} 8 | \scoreitem{50}{Pick up napkin} 9 | \scoreitem[5]{100}{Correctly place each item} 10 | 11 | \penaltyitem[5]{25}{Pointing at object} 12 | \penaltyitem[5]{50}{Pointing at destination} 13 | 14 | \scoreheading{Bonus rewards} 15 | \scoreitem{500}{Layplace mat before objects} 16 | \scoreitem{250}{Placing all objects correctly} 17 | \scoreitem{50}{Closing the door or drawer} 18 | 19 | %\setTotalScore{1000} 20 | \end{scorelist} 21 | 22 | 23 | % Local Variables: 24 | % TeX-master: "Rulebook" 25 | % End: 26 | -------------------------------------------------------------------------------- /scoresheets/old/SmoothieChef.tex: -------------------------------------------------------------------------------- 1 | The maximum time for this test is 10 minutes. 2 | 3 | \begin{scorelist} 4 | \scoreheading{Main Goal} 5 | \scoreitem[3]{200}{Placing all three fruits in the blender} 6 | \scoreitem{300}{Pouring a teaspoon of sugar in the blender} 7 | \scoreitem{300}{Pouring milk in the blender} 8 | 9 | \scoreheading{Bonus Rewards} 10 | \scoreitem{400}{Pouring sugar in the blender without spilling} 11 | \scoreitem{400}{Pouring milk in the blender without spilling} 12 | 13 | \scoreheading{Regular Penalties} 14 | \penaltyitem[3]{200}{Placing an incorrect fruit into the blender} 15 | 16 | \scoreheading{Deus Ex Machina Penalties} 17 | \penaltyitem{150}{Starting the test in front of the kitchen counter} 18 | \penaltyitem{200}{Handing an object over to the robot} 19 | \penaltyitem{250}{Telling the robot which ingredient comes next} 20 | \penaltyitem{250}{Using a custom operator} 21 | % No longer necessary, computes automatically 22 | % \setTotalScore{1000} 23 | \end{scorelist} 24 | 25 | 26 | % Local Variables: 27 | % TeX-master: "Rulebook" 28 | % End: 29 | -------------------------------------------------------------------------------- /scoresheets/old/SticklerForRules.tex: -------------------------------------------------------------------------------- 1 | \begin{scorelist}[timelimit=10] 2 | 3 | \scoreheading{Regular Rewards} 4 | \scoreitem[4]{100}{Identify a guest breaking a house rule (indicating the rule by voice).} 5 | \scoreitem[4]{100}{Making eye-contact, politely clarify to the guest what action he should take.} 6 | \scoreitem[4]{200}{Confirm that the guest is following the rule.} 7 | 8 | \scoreheading{Bonus Rewards} 9 | \scoreitem[4]{100}{Making eye-contact, politely clarify to the guest what rule is being broken.} 10 | 11 | \scoreheading{Regular Penalties} 12 | \penaltyitem[4]{100}{Talking to a guest about a rule they are not breaking} 13 | 14 | \scoreheading{Deus ex Machina Penalties} 15 | \penaltyitem[4]{50}{A human directs the robot towards a guest who is breaking a rule} 16 | \penaltyitem[4]{100}{A human tells the robot which rule is being broken} 17 | 18 | \end{scorelist} 19 | 20 | 21 | 22 | % Local Variables: 23 | % TeX-master: "Rulebook" 24 | % End: 25 | -------------------------------------------------------------------------------- /scoresheets/old/TakeOutGarbage.tex: -------------------------------------------------------------------------------- 1 | \begin{table}[h] 2 | \begin{tabular}{m{0.85\linewidth} c} 3 | \textbf{Maximum time}: & 5 minutes \\ 4 | \end{tabular} 5 | \end{table} 6 | 7 | \small\begin{scorelist} 8 | \scoreheading{Regular Rewards} 9 | \scoreitem[2]{300}{Move a bag inside the designated zone} 10 | \scoreheading{Bonus Rewards} 11 | \scoreitem[2]{100}{Opening the bin lid} 12 | \scoreitem{200}{Carry both bags at once} 13 | \scoreheading{Regular Penalties} 14 | \penaltyitem[2]{100}{Placing bag outside collection zone} 15 | \penaltyitem[2]{50}{Tipping a bin / tearing a bag} 16 | \scoreheading{Deus ex Machina Penalties} 17 | \penaltyitem[2]{250}{Receiving the bag via handover} 18 | \end{scorelist} 19 | 20 | 21 | % Local Variables: 22 | % TeX-master: "Rulebook" 23 | % End: 24 | -------------------------------------------------------------------------------- /scoresheets/old/TidyUp.tex: -------------------------------------------------------------------------------- 1 | 2 | The maximum time for this test is 5 minutes. 3 | 4 | \begin{scorelist} 5 | \scoreheading{Main Goal} 6 | \scoreitem[5]{100}{Moving an object to the appropriate location} 7 | \penaltyitem[5]{-30}{Request object locations by speech} 8 | \penaltyitem[5]{-40}{Request object locations by gesture} 9 | \penaltyitem[5]{-20}{Request object locations by guiding} 10 | \penaltyitem[5]{-30}{Request object interaction by a human} 11 | 12 | \scoreheading{Bonus Rewards} 13 | \scoreitem{100}{Taking out the garbage} 14 | \scoreitem{200}{Moving a \emph{tiny} object to the appropriate location} 15 | \scoreitem{200}{Moving a \emph{heavy} object to the appropriate location} 16 | \end{scorelist} 17 | 18 | 19 | % Local Variables: 20 | % TeX-master: "Rulebook" 21 | % End: 22 | -------------------------------------------------------------------------------- /scoresheets/old/TourGuide.tex: -------------------------------------------------------------------------------- 1 | The maximum time for this test is \textbf{10 minutes}. 2 | 3 | \begin{scorelist} 4 | \scoreheading{Engaging spectators} % Max 50 5 | \scoreitem{30}{Find an spectator (or group)} 6 | \scoreitem{20}{Greet an spectator (handshake)} 7 | \scoreitem{10}{Greet and get greet by an spectator (bowing or waving)} 8 | 9 | \scoreheading{Guiding spectators} % Max 50 10 | \scoreitem{10}{Convince spectator to follow} 11 | \scoreitem{40}{Reach the audience area} 12 | 13 | \scoreheading{Q\&A Session} % Max 210 14 | % \scoreitem{10}{Finish talk without loosing spectators attention} 15 | \scoreitem{10}{Finish talk without loosing spectators} 16 | \scoreitem[2]{70}{Each correctly understood question} 17 | \scoreitem[2]{30}{Each correctly answered question} 18 | 19 | \scoreheading{Bilingual interaction} % Max 80 20 | \scoreitem{10}{Bilingual engaging} 21 | \scoreitem[2]{25}{Questions in $3^{rd}$ language} 22 | \scoreitem[2]{10}{Question answered also in $3^{rd}$ language} 23 | 24 | \setTotalScore{390} 25 | \end{scorelist} 26 | 27 | 28 | % Local Variables: 29 | % TeX-master: "Rulebook" 30 | % End: 31 | -------------------------------------------------------------------------------- /scoresheets/old/WhereIsThis.tex: -------------------------------------------------------------------------------- 1 | 2 | The maximum time for this test is 10 minutes. 3 | 4 | \begin{scorelist} 5 | \scoreheading{Main Goal} 6 | \scoreitem[3]{100}{Describing and show the requested location accurately} 7 | \scoreitem[3]{200}{Monitoring operator's navigation, intervening when necessary} 8 | \scoreitem[3]{100}{Describing the areas of the \Arena{} traversed during navigation} 9 | 10 | \scoreheading{Bonus rewards} 11 | \scoreitem[3]{100}{Leading non-expert operator} 12 | \scoreitem{300} {Giving instructions to returning operator based on previous instructions} 13 | \scoreitem{200} {Natural interaction while guiding} 14 | 15 | \scoreheading{Deus Ex Machina Penalties} 16 | \penaltyitem[3]{50} {Bypassing speech recognition} 17 | \penaltyitem[3]{150} {Helping the robot find the operator} 18 | 19 | 20 | \end{scorelist} 21 | 22 | % Local Variables: 23 | % TeX-master: "Rulebook" 24 | % End: 25 | -------------------------------------------------------------------------------- /setup/abbrevix.ist: -------------------------------------------------------------------------------- 1 | %% 2 | %% This is file `mcgillpage.ist', 3 | %% generated with the docstrip utility. 4 | %% 5 | %% 6 | %% This is a MAKEINDEX style file which should be used to 7 | %% generate the formatted index for use with the ufthesis 8 | %% document class. This style file can be used to display 9 | %% an index without any displayed page numbers. 10 | 11 | %% Input Style Formats 12 | keyword "\\indexentry" % Index command 13 | arg_open '{' % argument opening delimiter 14 | arg_close '}' % argument closing delimiter 15 | range_open '(' % page range opening delimiter 16 | range_close ')' % page range closing delimiter 17 | level '!' % index level delimiter 18 | actual '@' % actual key designator 19 | encap '|' % page number encapsulator 20 | quote '"' % quote symbol 21 | escape '\\' % symbol that escapes quote 22 | page_compositor "-" % composite page delimiter 23 | 24 | %% Output Style Formats 25 | preamble 26 | "\n \\renewcommand{\\RSpset}[1]{\\RSnopnum{#1}} 27 | \n \\IndexSet \n\n \\begin{theindex} \n\n" 28 | postamble 29 | "\n\n \\end{theindex} \n" 30 | item_0 "\n \\indxspace \n \\item " 31 | item_1 "\n \\subitem " 32 | item_2 "\n \\subsubitem " 33 | delim_0 "\\hfill " 34 | delim_1 "\\hfill " 35 | delim_2 "\\hfill " 36 | encap_prefix "\\" 37 | encap_infix "{" 38 | encap_suffix "}" 39 | %% The next lines will produce some warnings when 40 | %% running MakeIndex as they try to cover two different 41 | %% versions of the program: 42 | lethead_prefix "{\\bfseries\\hfil " 43 | lethead_suffix "\\hfil}\\nopagebreak\n" 44 | lethead_flag 0 45 | heading_prefix "{\\bfseries\\hfil " 46 | heading_suffix "\\hfil}\\nopagebreak\n" 47 | headings_flag 0 48 | %% 49 | %% 50 | %% End of file 51 | -------------------------------------------------------------------------------- /setup/abbrevix.tex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoboCupAtHome/RuleBook/69990211a716cf71ff1020bbdc1b6917501888cf/setup/abbrevix.tex -------------------------------------------------------------------------------- /setup/active_version.tex: -------------------------------------------------------------------------------- 1 | \newcommand{\YEAR}{2025} 2 | %\newcommand{\STATE}{Draft} 3 | \newcommand{\STATE}{Final} 4 | % 5 | % Local Variables: 6 | % TeX-master: "../Rulebook" 7 | % End: 8 | -------------------------------------------------------------------------------- /setup/config.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: config.tex 2019-01-08 09:00:00 kyordhel $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: Package configuration for the RoboCupAtHome rulebook 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \setlist{noitemsep} 9 | 10 | %%% SubfigureSetup %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 | %\renewcommand{\subfigtopskip}{5pt} % default is 10pt 12 | %\renewcommand{\subfigbottomskip}{5pt} % default is 10pt 13 | %\renewcommand{\subfigcapskip}{3pt} % default is 10pt 14 | %\renewcommand{\subfigcapmargin}{7pt} % default is 10pt 15 | 16 | %%% TweakList-Setup %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 17 | \renewcommand{\itemhook}{% % modify itemize-spacing 18 | \setlength{\topsep}{2pt}% 19 | \setlength{\partopsep}{1pt}% 20 | \setlength{\itemsep}{-1pt}% 21 | } 22 | \renewcommand{\enumhook}{% % modify enumerate-spacing 23 | \setlength{\topsep}{2pt}% 24 | \setlength{\partopsep}{1pt}% 25 | \setlength{\itemsep}{-1pt}% 26 | } 27 | \renewcommand{\descripthook}{% % modify description-spacing 28 | \setlength{\topsep}{2pt}% 29 | \setlength{\partopsep}{1pt}% 30 | \setlength{\itemsep}{-1pt}% 31 | } 32 | 33 | \setkomafont{title}{\normalfont} 34 | \setkomafont{sectioning}{\normalfont\bfseries} 35 | \addtokomafont{caption}{\small} 36 | \setkomafont{captionlabel}{\small\bfseries} 37 | \setkomafont{descriptionlabel}{\normalfont\bfseries} 38 | \renewcommand*{\chapterformat}{\LARGE{Chapter \thechapter}} -------------------------------------------------------------------------------- /setup/macros_leagues.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: macros_leagues.tex 399 2017-06-04 13:36:00Z matamoros $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: Macros for the RoboCupAtHome rulebook 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \ifdefined\league 9 | \else% 10 | % Provided for compatibility with older versions 11 | \newcommand\teamsListFile{teams/teams.tex} 12 | \newcommand{\league}{} 13 | \newcommand{\leagueFullName}{} 14 | \fi 15 | 16 | %% Import team from the Open Standard Platform League %%%%%%%%%%% %% 17 | \ifthenelse{\equal{\league}{OPL}}{ 18 | \newcommand\teamsListFile{teams/OPL.tex} 19 | \newcommand{\leagueFullName}{Open Platform League} 20 | }{} 21 | 22 | %% Import team from the Domestic Standard Platform League %%%%%%% %% 23 | \ifthenelse{\equal{\league}{DSPL}}{ 24 | \newcommand\teamsListFile{teams/DSPL.tex} 25 | \newcommand{\leagueFullName}{Domestic Standard Platform League} 26 | }{} 27 | 28 | 29 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 30 | %% Per league macros %% 31 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 32 | 33 | %% Domestic Standard Platform League %%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 34 | \newcommand{\ifDSPL}[1]{ 35 | \ifthenelse{\equal{\league}{} \OR \equal{\league}{DSPL}}{#1}{} 36 | } 37 | 38 | \newcommand{\ifNotDSPL}[1]{ 39 | \ifthenelse{\equal{\league}{} \OR \equal{\league}{OPL}}{#1}{} 40 | } 41 | 42 | 43 | %% Open Platform League %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 44 | \newcommand{\ifOPL}[1]{ 45 | \ifthenelse{\equal{\league}{} \OR \equal{\league}{OPL}}{#1}{} 46 | } 47 | 48 | \newcommand{\ifNotOPL}[1]{ 49 | \ifthenelse{\equal{\league}{} \OR \equal{\league}{DSPL}}{#1}{} 50 | } 51 | 52 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 53 | %% List of teams import macro %% 54 | %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 55 | 56 | \newcommand{\loadTeamsListFile}{% 57 | \input{\teamsListFile} 58 | } 59 | 60 | % \expandafter\expandafter\newcommand\TEAMSSTAGEONE{\csname TEAMS\league \endcsname} 61 | 62 | % Local Variables: 63 | % TeX-master: "../Rulebook" 64 | % End: -------------------------------------------------------------------------------- /setup/macros_open_demonstrations.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: macros_open_demonstrations.tex 391 2013-02-14 07:57:07Z sugiura $ 4 | %% author(s): holz 5 | %% description: simple macros for specifications of open challenges 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | 9 | \newcommand{\OpenDemonstrationTask}[2] { 10 | \begin{enumerate}% 11 | \item \textbf{Setup and demonstration:} The team has a maximum of \timing{#1 minutes} for setup, presentation and demonstration.% 12 | \item \textbf{Interview and cleanup:} After the demonstration, there is 13 | another \timing{#2 minutes} where the team answers % 14 | questions by the jury members.\\% 15 | During the interview time, the team has to undo its changes to the environment.% 16 | \end{enumerate}% 17 | } 18 | 19 | \newcommand{\OpenDemonstrationChanges}{ 20 | \subsection{Changes to the environment} 21 | \begin{enumerate} 22 | \item \textbf{Making changes:} As in the other open demonstrations, teams are allowed to make modifications to the arena as they like, 23 | but under the condition that they are reversible. 24 | \item \textbf{Undoing changes:} In the interview and cleanup team, changes need to be made undone by the team. 25 | The team has to leave the arena in the \emph{very same} condition they entered it. 26 | \end{enumerate} 27 | } 28 | % Local Variables: 29 | % TeX-master: "../Rulebook" 30 | % End: 31 | -------------------------------------------------------------------------------- /setup/packages.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: packages.tex 385 2013-02-12 21:53:10Z holz $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: List of packages for the RoboCupAtHome rulebook 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | % \usepackage{soul} 9 | 10 | \usepackage[utf8x]{inputenc} 11 | \usepackage[english]{babel} 12 | \usepackage{amsmath,amssymb,amsfonts} 13 | % \usepackage[nice]{nicefrac} 14 | \usepackage{siunitx} 15 | \usepackage{graphicx} 16 | \usepackage{multicol} 17 | \usepackage{verbatim} 18 | \usepackage{fancyhdr} 19 | 20 | % \usepackage{color} 21 | \usepackage{xcolor} 22 | \usepackage{colortbl} 23 | % \usepackage{epsfig} 24 | \usepackage{makeidx} % This one causes scoresheets not to setle 25 | % \usepackage{lscape} 26 | % \usepackage{picinpar} 27 | 28 | \usepackage{./styles/tweaklist} 29 | 30 | \usepackage{enumerate} 31 | \usepackage{paralist} 32 | \usepackage{multirow} 33 | \usepackage{hhline} 34 | \usepackage{pgffor} 35 | % \usepackage{array} 36 | 37 | \usepackage{nameref} 38 | \usepackage{varioref} 39 | \usepackage{hyperref} 40 | \usepackage[noabbrev,nameinlink]{cleveref} 41 | \usepackage{booktabs} 42 | \usepackage{tabularx} 43 | \usepackage{xspace} 44 | \usepackage{csquotes} 45 | \usepackage[inline]{enumitem} 46 | 47 | %\usepackage{times} 48 | %\usepackage{helvet} 49 | %\usepackage{courier} 50 | 51 | % \usepackage{url} 52 | \usepackage{caption} 53 | % \usepackage{epstopdf} 54 | \usepackage{subfig} 55 | \usepackage{float} 56 | \usepackage{wrapfig} 57 | % \usepackage{xfrac} 58 | 59 | % \usepackage[titletoc]{appendix} 60 | % \usepackage{enumitem} 61 | % \usepackage{mathtools} 62 | % \usepackage{gensymb} 63 | 64 | \usepackage[ 65 | type={CC}, 66 | modifier={by-sa}, 67 | version={4.0}, 68 | ]{doclicense} 69 | 70 | % Required by scoresheets 71 | \usepackage{calc} 72 | \usepackage{ifthen} 73 | \usepackage{environ} 74 | \usepackage{wasysym} 75 | \usepackage{chngpage} 76 | 77 | % Local Variables: 78 | % TeX-master: "../Rulebook" 79 | % End: 80 | -------------------------------------------------------------------------------- /setup/packages_scoresheets.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: packages_scoresheets.tex 385 2013-02-12 21:53:10 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: List of packages for the RoboCupAtHome rulebook 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | \usepackage[utf8x]{inputenc} 9 | \usepackage[english]{babel} 10 | \usepackage{calc} 11 | \usepackage{ifthen} 12 | \usepackage{pgffor} 13 | \usepackage{xspace} 14 | \usepackage{environ} 15 | \usepackage{wasysym} 16 | \usepackage{tabularx} 17 | \usepackage{multicol} 18 | \usepackage{multirow} 19 | 20 | % Used by macros.tex 21 | \usepackage{chngpage} 22 | \usepackage{csquotes} 23 | \usepackage{enumerate} 24 | \usepackage{fancyhdr} 25 | \usepackage{graphicx} 26 | \usepackage{hyperref} 27 | \usepackage{paralist} 28 | 29 | % Hack to avoid importing makeidx 30 | \newcommand{\see}{} -------------------------------------------------------------------------------- /setup/styling.tex: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %% 3 | %% $Id: styling.tex 2019-01-08 09:00:00 kyordhel $ 4 | %% author(s): RoboCupAtHome Technical Committee(s) 5 | %% description: Styling for the RoboCupAtHome rulebook 6 | %% 7 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 | 9 | 10 | %%% HEADINGS & PAGE STYLE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 | \pagestyle{fancy} 12 | \renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter. \ #1}{}} 13 | \renewcommand{\sectionmark}[1]{\markright{\thesection \ #1}{}\renewcommand{\currentTest}{#1}} 14 | \fancyhf{} 15 | \fancyhead[LE,RO]{\thepage} 16 | \fancyhead[RE]{\sffamily\rightmark} 17 | \fancyhead[LO]{\sffamily\leftmark} 18 | \fancyfoot[C]{\scriptsize \sffamily \footline{}} 19 | \fancypagestyle{plain}{ 20 | \fancyhf{} 21 | \fancyhead[LE,RO]{\thepage} 22 | \fancyhead[RE]{\sffamily\rightmark} 23 | \fancyhead[LO]{\sffamily\leftmark} 24 | \fancyfoot[C]{\scriptsize \sffamily \footline{}} 25 | \renewcommand{\headrulewidth}{0.5 pt} 26 | } 27 | \fancypagestyle{empty}{ 28 | \fancyhf{} 29 | \fancyhead{} 30 | \fancyfoot[C]{\scriptsize \sffamily \footline{}} 31 | \renewcommand{\headrulewidth}{0 pt} 32 | } -------------------------------------------------------------------------------- /styles/tweaklist.sty: -------------------------------------------------------------------------------- 1 | \def\enumhook{} 2 | \def\enumhooki{} 3 | \def\enumhookii{} 4 | \def\enumhookiii{} 5 | \def\enumhookiv{} 6 | \def\itemhook{} 7 | \def\itemhooki{} 8 | \def\itemhookii{} 9 | \def\itemhookiii{} 10 | \def\itemhookiv{} 11 | \def\descripthook{} 12 | \def\enumerate{% 13 | \ifnum \@enumdepth >\thr@@\@toodeep\else 14 | \advance\@enumdepth\@ne 15 | \edef\@enumctr{enum\romannumeral\the\@enumdepth}% 16 | \expandafter 17 | \list 18 | \csname label\@enumctr\endcsname 19 | {\usecounter\@enumctr\def\makelabel##1{\hss\llap{##1}}% 20 | \enumhook \csname enumhook\romannumeral\the\@enumdepth\endcsname}% 21 | \fi} 22 | \def\itemize{% 23 | \ifnum \@itemdepth >\thr@@\@toodeep\else 24 | \advance\@itemdepth\@ne 25 | \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% 26 | \expandafter 27 | \list 28 | \csname\@itemitem\endcsname 29 | {\def\makelabel##1{\hss\llap{##1}}% 30 | \itemhook \csname itemhook\romannumeral\the\@itemdepth\endcsname}% 31 | \fi} 32 | \renewenvironment{description} 33 | {\list{}{\labelwidth\z@ \itemindent-\leftmargin 34 | \let\makelabel\descriptionlabel\descripthook}} 35 | {\endlist} 36 | 37 | -------------------------------------------------------------------------------- /tasks/EGPSR.tex: -------------------------------------------------------------------------------- 1 | \section{Enhanced General Purpose Service Robot}\label{test:egpsr} 2 | The robot is asked to maintain the household by cleaning up the arena and assisting people. 3 | 4 | 5 | \noindent \textbf{Main Goal:} Solve different problems in the arena.\\ 6 | 7 | 8 | \subsection*{Focus} 9 | \emph{Task planning}, \emph{object/people detection and recognition}, \emph{object feature recognition}, \emph{object manipulation} 10 | 11 | 12 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 13 | % Setup 14 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 15 | \subsection*{Setup} 16 | The arena is in its default state apart from problems set up for the robot to solve: 17 | \begin{enumerate} 18 | \item \textbf{Problems:} 19 | \begin{itemize} 20 | \item \textbf{Trash:} Objects on the floor are to be thrown in the trash. 21 | \item \textbf{Objects:} Objects that are not in their default location should be returned there (see~\ref{rule:scenario_objects}). 22 | \item \textbf{Persons:} Some persons in the arena will have requests for the robot. They will raise their hand if the robot is in the same room. 23 | \end{itemize} 24 | \end{enumerate} 25 | 26 | 27 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 28 | % Procedure 29 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 30 | \subsection*{Procedure} 31 | \begin{enumerate}[nosep] 32 | \item \textbf{Test start:} The robot enters when the arena door is open. 33 | \item \textbf{Finding Problems:} The robot has to find problems to solve on its own. 34 | \end{enumerate} 35 | 36 | 37 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 38 | % Additional Rules 39 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 40 | \subsection*{Additional rules and remarks} 41 | \begin{enumerate}[nosep] 42 | \item \textbf{Number of Problems:} The number of problems depends on the arena size the minimum count of generated problems is 8. 43 | \item \textbf{Repeating Problem Category:} Solving the same Category of Problem incurs a penalty. 44 | \item \textbf{Solving more:} You can continue solving problems to compensate for penalties. 45 | \item \textbf{Partial Scoring:} The main task allows partial scoring (per \emph{solved} problem). 46 | \begin{enumerate}[nosep] 47 | \item \textbf{Scores:} Score reduction is applied as a percentage depending on the solution. 48 | \item \textbf{Penalties:} The Repetition penalty is applied before any partial penalties 49 | \item \textbf{Example:} If Picking up trash off the floor is valued as 60\% of the solution. Requesting handover should be a $ 650 \times 0.6 = 390 $ points penalty for the first pick and $ \left( 650 - 300 \right) \times 0.6 = 210 $ for the second pick. 50 | \end{enumerate} 51 | \item \textbf{Command Generator:} Problems and commands will be generated using the official command generator\footnote{\url{https://github.com/RoboCupAtHome/CommandGenerator}}. 52 | \item \textbf{Finding People:} Finding a person and stating they need help counts as finding the problem. 53 | \item \textbf{Understanding Commands:} Understanding and correctly repeating the command given by a person can be counted towards partially solving a problem. 54 | \end{enumerate} 55 | 56 | \subsection*{Referee instructions} 57 | \begin{itemize} 58 | \item Setup the problems in the arena. 59 | \item Provide commands to volunteers. 60 | \end{itemize} 61 | 62 | \subsection*{OC instructions} 63 | 64 | At least two hours before the test: 65 | \begin{itemize} 66 | \item Generate the problems and commands (don't reveal them to the teams!). 67 | \item Recruit volunteers to assist during the test. 68 | \end{itemize} 69 | 70 | 71 | \subsection*{Score sheet} 72 | \input{scoresheets/EGPSR.tex} 73 | 74 | % Local Variables: 75 | % TeX-master: "Rulebook" 76 | % End: 77 | -------------------------------------------------------------------------------- /tasks/Finals.tex: -------------------------------------------------------------------------------- 1 | \chapter{Finals} 2 | 3 | The competition ends with the Finals on the last day, where the two teams with the highest total score compete. 4 | 5 | Even though each league has its own first, second and third place, the \iterm{Finals} are meant to show the best of all leagues to the jury members as well as the audience and, thus, warrants a single schedule slot. 6 | 7 | \section{Scoring} 8 | The final score and ranking are determined by the jury evaluations and by the previous performance (in Stages I and II) of the team, in the following manner: 9 | 10 | \begin{enumerate} 11 | \item The influence of the final ranking is \SI{50}{\percent}. 12 | \item The influence of the total sum of points scored by the team in Stage I and II is \SI{50}{\percent}. 13 | \end{enumerate} 14 | 15 | There is no maximum score during the Final. 16 | 17 | These demonstrations are carried out in a serialized fashion, one League performing after another in one \Arena{}. 18 | 19 | \subsection{Task} 20 | The procedure for the demonstration is the same as for Enhanced General Purpose Service Robot (see~Task~\ref{test:egpsr}) with the added tasks of: 21 | 22 | \begin{enumerate}[nosep] 23 | \item \textbf{Closing Furniture:} Doors of the Cabinet as well as the Dishwasher need to be closed. 24 | \item \textbf{Welcome Guest:} There is an additional person waiting behind the exit door. The person will state their request after being welcomed by the robot. The door must be opened without human assistance. As the position is known, there will be no points awarded for finding this person. 25 | \item \textbf{Custom Tasks:} Additional reasonable household task. 26 | \end{enumerate} 27 | 28 | \subsubsection{Custom Tasks} 29 | \begin{enumerate}[nosep] 30 | \item \textbf{Requesting Additional Tasks:} Additional reasonable household tasks may be requested for scoring during the team leader meetings. These tasks must be approved by the \TC{}. 31 | \item \textbf{Arena-Specific Tasks:} Depending on the arena setup, certain household chores may be delegated to the robot for completion. Examples of tasks that may be handled by the robot include, but are not limited to, window cleaning and picture alignment on the wall. 32 | \item \textbf{Team-Supplied Items} In the event that additional items are necessary for the completion of a task (e.g., clothing for folding, watering cans), the requesting team is responsible for supplying these items. 33 | \begin{enumerate}[nosep] 34 | \item \textbf{Standardization} These items must be regular household items (no markers, no custom printed handles etc.). 35 | \item \textbf{Availability} All requested items must be provided and made available to the competitors prior to the day of the final. At least two identical copies of each item must be supplied to ensure adequate access. 36 | \end{enumerate} 37 | \end{enumerate} 38 | 39 | \subsection{The Show Must Go On} 40 | To ensure a good experience for the audience the teams are allowed to restart the robot inside the arena. 41 | \begin{enumerate}[nosep] 42 | \item All previously collected points will be kept. 43 | \item The tasks may be rearranged by the Referee during a restart. 44 | \item The restart penalty is only applied if the robot continues scoring afterwards. 45 | \end{enumerate} 46 | 47 | \subsection{Commentator} 48 | The team will be asked to provide a commentator to explain the robot's behavior and answer questions to produce a better viewing experience for the audience. 49 | 50 | 51 | \subsection*{Score sheet} 52 | \input{scoresheets/Finals.tex} 53 | 54 | %% %%%%%%%%%%%%%%%%%%%%%%%% 55 | \section{Final Ranking and Winner} 56 | 57 | The winner of the competition is the team that gets the highest ranking in the \iterm{Finals}. 58 | 59 | The second place will be the team that got the second-highest ranking in the \iterm{Finals}. 60 | 61 | The third place will be the team with the lowest score in the \iterm{Finals}. 62 | 63 | 64 | % Local Variables: 65 | % TeX-master: "Rulebook" 66 | % End: 67 | -------------------------------------------------------------------------------- /tasks/HelpMeCarry.tex: -------------------------------------------------------------------------------- 1 | \section{Help Me Carry} 2 | \label{test:carry-my-luggage} 3 | The robot's owner needs help carrying something from the car to the starting location. 4 | 5 | \noindent \textbf{Main Goal:} The robot helps the operator to carry a bag from a car parked outside.\\ 6 | 7 | \noindent \textbf{Optional Goals:} 8 | \begin{enumerate}[nosep] 9 | \item Re-reaching the starting location 10 | \item Following the queue on the way back 11 | \end{enumerate} 12 | 13 | \subsection*{Focus} 14 | \emph{Person following}, \emph{navigation in unmapped environments}, \emph{social navigation}. 15 | 16 | \subsection*{Setup} 17 | \begin{itemize}[nosep] 18 | \item \textbf{Locations}: 19 | \begin{itemize} 20 | \item The test is performed outside the arena in a public space. 21 | \item The robot starts at a predefined location. 22 | \end{itemize} 23 | \item \textbf{People}: The operator is standing in front of the robot. 24 | \item \textbf{Objects}: 25 | \begin{itemize}[nosep] 26 | \item At least two bags are placed near the car. 27 | \item A small object on the ground. 28 | \item A hard-to-see object. 29 | \item Retractable barriers. 30 | \end{itemize} 31 | 32 | \item \textbf{Uncontrolled environment:} There are no restrictions on other people walking by or standing around throughout the complete task. 33 | \end{itemize} 34 | 35 | \subsection*{Procedure} 36 | \begin{enumerate}[nosep] 37 | \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. 38 | \item \textbf{Obstacles:} The robot will face 4 obstacles along its way (in arbitrary order): 39 | \begin{enumerate*}[label=(\alph*)] 40 | \item a small object on the ground, 41 | \item a hard-to-see object, 42 | \item a crowd of people obstructing the path outside, and 43 | \item a small area blocked using retractable barriers. 44 | \end{enumerate*} 45 | \item \textbf{Picking up the bag:} The robot picks up the bag pointed at by the operator. 46 | \item \textbf{Bag delivery:} The robot takes the bag to the starting location. It may place the bag on the floor. 47 | 48 | \item \textbf{Optional goals:} 49 | \begin{enumerate} 50 | \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. 51 | \end{enumerate} 52 | 53 | \end{enumerate} 54 | 55 | 56 | \subsection*{Additional Rules and Remarks} 57 | \begin{enumerate}[nosep] 58 | 59 | \item \textbf{Car location:} There is no real car outside; instead, a fixed location outside the \Arena{} is designated as a car location. 60 | 61 | \item \textbf{Reaching the car:} The robot can reach the car location only by following the operator (the location is unknown before the test). 62 | 63 | \item \textbf{Deus ex Machina:} Score reductions for human assistance are applied in case the robot loses the operator, and needs to find them again through: 64 | \begin{enumerate} 65 | \item Natural interaction (e.g., waving and calling) 66 | \item Unnatural interaction (e.g., raising both hands and jumping) 67 | \item Coming back (e.g., asking the operator to step back in front of the robot) 68 | \item Touching the robot (e.g., pulling the robot's hand) 69 | \end{enumerate} 70 | 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. 71 | \end{enumerate} 72 | 73 | 74 | \subsection*{Referee Instructions} 75 | 76 | The referees need to: 77 | \begin{itemize}[nosep] 78 | \item Select one volunteer to act as the operator. 79 | \item Select three to four people to obstruct the robot's path outside and form the queue on the way back. 80 | \item Choose positions for the bags and assign a bag to the operator. 81 | \item Choose the order of the obstacles that the robot will face outside while following the operator. 82 | \item Designate a location outside as a car location. 83 | \item Designate a location for the queue to form. The queue is composed of the same people that form the crowd. 84 | \item Mind the robot when it moves around. 85 | \item Instruct the Operator to follow the robots instructions, step over the small obstacle and closely around the hard to see object 86 | \end{itemize} 87 | 88 | \subsection*{OC Instructions} 89 | 90 | At least two hours before test: 91 | \begin{itemize}[nosep] 92 | \item Select and announce the robot's starting point. 93 | \item Select which bags will be used in the test. 94 | \item Organize retractable barriers. 95 | \end{itemize} 96 | 97 | \subsection*{Score Sheet} 98 | \input{scoresheets/HelpMeCarry.tex} 99 | -------------------------------------------------------------------------------- /tasks/old/CleanUp.tex: -------------------------------------------------------------------------------- 1 | \section{Clean Up [Housekeeper]} 2 | \label{test:clean-up} 3 | 4 | \subsection*{Description} 5 | The robot has to clean up an \Arena{} room with some misplaced objects, placing unknown objects in a garbage bin. 6 | 7 | \textbf{Main goal:} 8 | Find six misplaced objects in a room and bring them to their predefined locations. 9 | 10 | \textbf{Optional goal:} 11 | Manipulate heavy and tiny objects. 12 | 13 | \subsection*{Focus} 14 | This task focuses on 15 | \textit{Task Planning}, 16 | \textit{Object Perception} and 17 | \textit{Object Manipulation}. 18 | 19 | \subsection*{Setup} 20 | \begin{itemize}[nosep] 21 | \item \textbf{Locations:} 22 | \begin{itemize} 23 | \item This task takes place in a random room in the \Arena{}. 24 | \item The robot starts inside the \Arena{} at a predefined location near the entrance door. 25 | \end{itemize} 26 | \item \textbf{People:} Near the entrance, an operator tells the robot which room to clean. 27 | \item \textbf{Furniture:} All furniture are in their predefined locations. 28 | \item \textbf{Objects:} 29 | \begin{itemize} 30 | \item There are 6--10 misplaced objects at random locations in the room. 31 | \item Objects can be anywhere in the room, including the floor, seats, and on top of furniture. 32 | \item All objects are clearly visible (i.e., no occlusions). 33 | \item Objects can be regular and alike (see \refsec{rule:scenario_objects}) or garbage lying around at grasping distance. 34 | \item Objects used in this test are lightweight and average-sized (see~\refsec{rule:scenario_objects}). The team leader can, however, request a tiny and a heavy object to be used in order to score additional points for picking them. 35 | \item Objects must be placed inside the bin, not thrown or dropped. 36 | \end{itemize} 37 | \end{itemize} 38 | 39 | \subsection*{Procedure} 40 | 41 | \begin{enumerate} 42 | \item The referee requests the team to move the robot to the start location. 43 | \item The referee gives the start signal and starts the timer. 44 | \item The team leaves the area after the start signal. 45 | \item A TC member follows the robot ready to press the emergency stop button. 46 | \item The robot finds six misplaced objects in a room and brings them to their predefined locations. 47 | \item \textbf{Optionally}, the robot can manipulate heavy and tiny objects. 48 | \end{enumerate} 49 | 50 | \subsection*{Additional rules and remarks} 51 | No additional rules and remarks. 52 | 53 | \subsection*{Instructions:} 54 | 55 | \subsubsection*{To Referee} 56 | 57 | The referee needs to: 58 | \begin{itemize} 59 | \item Place objects in the room. 60 | \item Recover disposed objects from the bin. 61 | \item Ask teams whether they want a heavy or a tiny object to be 62 | \end{itemize} 63 | 64 | \subsubsection*{To OC} 65 | The OC needs to: 66 | \begin{itemize}[nosep] 67 | \item \textbf{2 hours before the test}: Announce the starting location of the robot. 68 | \end{itemize} 69 | 70 | \subsection*{Score Sheet} 71 | \input{scoresheets/CleanUp.tex} 72 | -------------------------------------------------------------------------------- /tasks/old/Farewell.tex: -------------------------------------------------------------------------------- 1 | \section{Farewell [Party Host]} 2 | \label{test:farewell} 3 | 4 | \subsection*{Description} 5 | Some guests are tired, and they call the robot to retrieve their coat. One guest is a medical doctor and needs to leave urgently. 6 | It's raining outside and there is only one umbrella, so the robot takes the guests one by one to their cab and returns 7 | with the umbrella.\\ 8 | 9 | 10 | \textbf{Main goal:} 11 | The robot escorts two guests to their cab (where the cab driver is standing), with the medical doctor guest first. 12 | 13 | 14 | \textbf{Optional goal:} 15 | \begin{enumerate}[nosep] 16 | \item Delivering guest's right coat. 17 | \item Entertaining guest with conversation while ushering person to the cab. 18 | \end{enumerate} 19 | 20 | \subsection*{Focus} 21 | \PerDet{}, \NAV{}, and \HRI{} 22 | 23 | \subsection*{Setup} 24 | \begin{itemize} 25 | \item \textbf{Locations}: 26 | \begin{itemize} 27 | \item The test takes place both inside and outside the \Arena{}. 28 | \item The robot starts inside the \Arena{} at predefined location. 29 | \end{itemize} 30 | \item \textbf{People}: Guests -- there are five in the living room -- three sitting and two standing. At least two of them are doctors. 31 | \end{itemize} 32 | 33 | \subsection*{Procedures} 34 | \begin{enumerate} 35 | \item The guests willing to leave signal their intention. 36 | \item Robot recognizes the guests willing to leave and escorts them to the cab, one at the time. 37 | \item \textbf{Optionally}, the robot brings the right coat to the person leaving the \Arena{}. 38 | \end{enumerate} 39 | 40 | \subsection*{Additional rules and remarks} 41 | \begin{enumerate}[nosep] 42 | \item \textbf{Partial scoring:} The main task allows partial (per guest) scoring. 43 | 44 | \item \textbf{Guests}: All guests have a name and a coat color assigned. 45 | 46 | \item \textbf{Calling the robot}: Guests willing to leave call the robot (e.g. by waving or shouting) simultaneously. 47 | 48 | \item \textbf{Kicking out guests:} Non-calling guests will refuse to leave the house; the robot must thus confirm that a guest was calling and is willing to leave. 49 | 50 | 51 | \item \textbf{Cab/Taxi:} The cab location is identifiable by a \emph{Cab Driver}, who is wearing high-visibility clothing (e.g. a fluorescent vest) and is standing under an open umbrella. 52 | 53 | \item \textbf{Delivering coats:} Coats are hanging on a coat rack near the exit door. 54 | The robot should hook off the coats autonomously and bring them back to the right people. 55 | 56 | \item \textbf{Entertaining conversation:} Robot can ask person being ushered about party they are leaving, tell them jokes or use other topics 57 | for social interaction that would engage the guest. The guest migh refuse to chitchat or indicate tiredness which should cue the robot 58 | to cease the interaction. Failing to do so will result in loosing points for the item. 59 | 60 | \item \textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular: 61 | \begin{itemize} 62 | \item Telling the robot which guest is leaving (e.g. by pointing) 63 | \item Guiding the robot to the cab 64 | \item Guiding the robot back to the arena 65 | \item Handing over a coat to the robot 66 | \end{itemize} 67 | \end{enumerate} 68 | 69 | 70 | \subsection*{Instructions} 71 | 72 | \textbf{To referee} 73 | 74 | The referees need to: 75 | \begin{itemize} 76 | \item Select at least 5 volunteers, and assign them names and coat colors. 77 | \item Choose the people that will call the robot. 78 | \item Assign a location for the the cab driver. 79 | \item Mind the robot when it goes outside the \Arena{}. 80 | \end{itemize} 81 | 82 | \textbf{To OC} 83 | 84 | During the \SetupDays: 85 | \begin{itemize} 86 | \item Provide coats for training. 87 | \item Provide an umbrella for training. 88 | \item Provide the cab driver's high-visibility clothing for training. 89 | \end{itemize} 90 | 91 | 2h before the test: 92 | \begin{itemize} 93 | \item Select and announce the robot's starting point. 94 | \item Help with the assignment of a location for the cab driver. 95 | \end{itemize} 96 | 97 | \subsection*{Score sheet} 98 | \input{scoresheets/Farewell.tex} 99 | 100 | -------------------------------------------------------------------------------- /tasks/old/FindMyDisk.tex: -------------------------------------------------------------------------------- 1 | \section{Find My Disk [Housekeeper]} 2 | \label{test:find-my-disk} 3 | 4 | \subsection*{Description} 5 | The robot helps a blind person to locate an LP, compact disk, or audio-cassette (hereinafter a \textit{disk}) in a shelf. The operator will ask the robot to \emph{describe} what it sees in either the shelf or the media cover, but won't allow the robot to touch her treasures.\\ 6 | 7 | \textbf{Main goal:} 8 | The robot provides a description of an object that matches the operator's requirements. 9 | 10 | \textbf{Optional goals:} Help the blind operator to find a second disk. 11 | 12 | \subsection*{Focus} 13 | \HRI{}, \textit{NLU}, \textit{Object Recognition} 14 | 15 | 16 | \subsection*{Setup} 17 | \begin{itemize}[nosep] 18 | \item \textbf{Locations:} 19 | \begin{itemize} 20 | \item \textbf{Test location:} The test takes place near a bookcase in the living room in the \Arena{}. 21 | \item \textbf{Starting location:} The robot starts near the bookcase where task takes place. 22 | \end{itemize} 23 | \item \textbf{People:} 24 | \begin{itemize} 25 | \item \textbf{The operator} who is considered to be a blind, and may be blindfolded. 26 | \end{itemize} 27 | \item \textbf{Furniture:} 28 | \begin{itemize} 29 | \item \textbf{Bookcase:} The bookcase contains at least 10 media boxes placed one next to another, spine out, with no gaps between them. The bookcase door (if any) is open. 30 | \end{itemize} 31 | \item \textbf{Objects:} 32 | \begin{itemize} 33 | \item \textbf{Disks:} All disks are in their boxes with cover. 34 | \end{itemize} 35 | \end{itemize} 36 | 37 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 38 | % Procedure 39 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 40 | \subsection*{Procedure} 41 | 42 | \begin{enumerate} 43 | \item The robot finds a disk matching operator requirements and provides a description of the item. 44 | \item \textbf{Optionally}, robot finds second disk matching operator requirements and provides a description of the item. 45 | \end{enumerate} 46 | 47 | \subsection*{Additional rules and remarks} 48 | 49 | \begin{enumerate}[nosep] 50 | \item \textbf{Bookcase:} When stored in the bookcase, only the spine of the disk is visible to the robot. The robot can request the operator to pick up a disk and show the cover or back-cover (e.g.~\textit{show me the cover of the first/next disk, please}). 51 | 52 | \begin{center} 53 | \includegraphics[width=\textwidth,height=3cm,keepaspectratio]{images/find_my_disk.png} 54 | \end{center} 55 | 56 | \item \textbf{Disks:} A \textit{disk} can be the encasing of any CD, DVD, BluRays, audio cassettes, LP, etc. These objects will not be available for training during setup days, although samples can be provided. 57 | \item \textbf{Test start:} The robot moves to the area near the bookcase where the items are. 58 | 59 | \item \textbf{Object manipulation:} All manipulation will be performed by the human operator under the supervision of the robot. 60 | 61 | \item \textbf{Object description and dialogs:} The robot shall provide accurate visual descriptions of the discs in the shelf, and those that are presented to it until the desired object is found. The robot can also lead the interaction by asking relevant questions (e.g.~\textit{what's the cover color?} or \textit{what's the title/author?}), so it can look in the spines and covers as necessary.\\ 62 | It is also acceptable (although not advised), to review each title one by one. 63 | 64 | \item \textbf{Clear area:} The robot may assume that the working area is clear, with no people around making loud noises. 65 | 66 | % \item \textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular: 67 | % \begin{itemize}[nosep] 68 | % \item Human leads the conversation 69 | % \end{itemize} 70 | 71 | \end{enumerate} 72 | 73 | \subsection*{Instructions:} 74 | 75 | \subsubsection*{To Referee} 76 | 77 | The referee needs to: 78 | \begin{itemize} 79 | \item Rearrange the disks on the bookcase. 80 | \item Provide instruction to the operator. 81 | \item Determine names of two different desired disks for each team with the operator. 82 | \item Blindfold the operator. 83 | \end{itemize} 84 | 85 | \subsubsection*{To OC} 86 | The OC needs to: 87 | \begin{itemize}[nosep] 88 | \item \textbf{On setup day}: Provide media samples for practice. 89 | \end{itemize} 90 | 91 | % \newpage 92 | \subsection*{Score sheet} 93 | \input{scoresheets/FindMyDisk.tex} 94 | 95 | % Local Variables: 96 | % TeX-master: "Rulebook" 97 | % End: 98 | -------------------------------------------------------------------------------- /tasks/old/FindMyMates.tex: -------------------------------------------------------------------------------- 1 | \section{Find My Mates [Party Host]} 2 | \label{test:find-my-mates} 3 | 4 | \subsection*{Description} 5 | The robot collects some information about various party guests for the operator, who only knows the names of the guests. 6 | 7 | \noindent \textbf{Main goal:} 8 | Report to the operator the description and location of at least two party guests. 9 | 10 | \noindent \textbf{Optional goal:} 11 | Report the location and description of a third guest. 12 | 13 | \subsection*{Focus} 14 | \SysI{}, \HRI{}, \PerDet{}, \PerRec{}, \iterm{Visual Feature Detection} 15 | 16 | \subsection*{Setup} 17 | \begin{itemize} 18 | \item \textbf{Location}: This test takes place inside the \Arena{} in a predefined room (e.g. living room). 19 | \item \textbf{People}: There are 4 people distributed along the room. 20 | \end{itemize} 21 | 22 | \subsection*{Procedures} 23 | \begin{enumerate} 24 | \item The robot finds and reports the description and location of two guests. 25 | \item \textbf{Optionally,} the robot reports the description and location of the third guest. 26 | \end{enumerate} 27 | 28 | \subsection*{Additional Rules and Remarks} 29 | \begin{enumerate}[nosep] 30 | \item \textbf{Reporting:} Points are scored only when the robot goes back to the operator and delivers the report on time. 31 | 32 | \item \textbf{Description of a person:} The description of each guest should be unique, i.e. not shared with any other guest. This may include clothing, age, height, complexion, skin or hair color, gender, etc. 33 | 34 | \item \textbf{Description of a location of a person:} A relative location based on the surroundings (e.g. sitting on the couch, standing beside the lamp, etc.). 35 | 36 | 37 | \item \textbf{Deus ex Machina:} Score reduction for human assistance is applied per guest as follows: 38 | 39 | \begin{itemize} 40 | \item Waving to the robot in order to be found 41 | \item Telling the robot where a person is located 42 | \item Approaching the robot (e.g. walking and standing in front of it) 43 | \end{itemize} 44 | 45 | \end{enumerate} 46 | 47 | \subsection*{Instructions} 48 | 49 | \textbf{To Referees} 50 | 51 | The referees need to: 52 | \begin{itemize} 53 | \item Assign names and locations for all guests. 54 | \item Make sure that the guests stay at their designated locations during the test. 55 | \end{itemize} 56 | 57 | \noindent \textbf{To OC} 58 | 59 | 2h before test: 60 | \begin{itemize} 61 | \item Announce the location where the robot will be instructed. 62 | \item Announce the room in which the test will take place. 63 | \end{itemize} 64 | 65 | % \newpage 66 | \subsection*{Score sheet} 67 | \input{scoresheets/FindMyMates.tex} 68 | -------------------------------------------------------------------------------- /tasks/old/HandMeThat.tex: -------------------------------------------------------------------------------- 1 | \section{Hand Me That [Party Host]} 2 | \label{test:hand-me-that} 3 | A guest at the party speaks English, but with only a limited vocabulary. The robot will assist them in obtaining things that they gesture for.\\ 4 | % Comments: In this tasks each group of items is scored separately. Hence 5 | 6 | %\subsection{Focus} 7 | %Joint attention is a well-studied and important task in Human-Robot Interaction. The goal of this task is to really challenge the teams to perform a hard HRI task. 8 | 9 | 10 | \noindent \textbf{Main Goal:} The robot identifies (touching or naming) each object at which the operator is pointing at. 11 | 12 | \subsection*{Focus} 13 | \emph{Object perception}, \emph{HRI} 14 | 15 | 16 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 17 | % 18 | % Setup 19 | % 20 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 21 | \subsection*{Setup} 22 | \begin{enumerate}[nosep] 23 | \item \textbf{Location:} 24 | \begin{itemize}[nosep] 25 | \item This takes place in a room in the \Arena{}. 26 | \item The robot and the operator stand in a predefined starting location announced beforehand % (OC instructions: announce this 2 hours before the test). 27 | \end{itemize} 28 | \item \textbf{Objects:} 29 | \begin{itemize}[nosep] 30 | \item \textbf{Groups of Objects: }There are five groups of 2--5 objects randomly placed along the room. 31 | \item \textbf{Deck:} The referee has a deck of objects to request, one per group, sorted by distance. 32 | \end{itemize} 33 | 34 | \end{enumerate} 35 | 36 | 37 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 38 | % 39 | % Procedure 40 | % 41 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 42 | \subsection*{Procedure} 43 | \begin{enumerate}[nosep] 44 | \item For each group of objects, the robot asks the operator: \emph{What do you need?}. % We rule out natural language interaction 45 | \item The operator walks near to the object and points at it. 46 | \item The robot asks as many questions as necessary. 47 | \item The operator replies to each question (most likely with \emph{yes}, \emph{no}, \emph{I don't know}, single word, etc). 48 | \\\textbf{Remark:} The operator does not know the name of the object. 49 | \end{enumerate} 50 | 51 | 52 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 53 | % 54 | % Additional Rules 55 | % 56 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 57 | \subsection*{Additional rules and remarks} 58 | \begin{enumerate}[nosep] 59 | \item \textbf{Keep going:} The robot should keep trying to determine the referred object until they score or run out of time. 60 | 61 | \item \textbf{Skipping groups:} The robot may say \emph{Pass} or \emph{I give up} to try with the next object. 62 | 63 | \item \textbf{Incorrect guesses:} Incorrect guesses reduce the value of the correct guess the first two times. Guessing correctly on the third or fourth attempt is worth 100 points. After the fourth guess is worth no points. 64 | 65 | \item\textbf{Colors and categories:} Asking for the color or category of a pointed object applies a penalty of 400 points for that particular object. 66 | 67 | \item\textbf{Uneducated operator:} The referee may instruct the operator to answer \emph{I don't understand} or \emph{I don't know} if the robot asks complex questions or is attempting blind guessing. 68 | 69 | \item \textbf{Groups of Objects:} A group consists of 2--5 random standard objects (see~\refsec{rule:scenario_objects}), separated one from another. They can be in a close proximity but not touching. 70 | The average distance between the starting position and each group ranges between 50cm and 150cm. 71 | 72 | \end{enumerate} 73 | 74 | \subsection*{Instructions:} 75 | 76 | \subsubsection*{To Referee} 77 | 78 | The referee needs to: 79 | \begin{itemize}[nosep] 80 | \item Rearrange and mix groups between runs. 81 | \item Verify that the operator is pointing at the right item. 82 | \end{itemize} 83 | 84 | \subsubsection*{To OC} 85 | The OC needs to: 86 | \begin{itemize}[nosep] 87 | \item \textbf{On setup day}: Announce the starting position of the robot. 88 | \end{itemize} 89 | 90 | 91 | 92 | \subsection*{Score sheet} 93 | \input{scoresheets/HandMeThat.tex} 94 | 95 | % Local Variables: 96 | % TeX-master: "Rulebook" 97 | % End: 98 | -------------------------------------------------------------------------------- /tasks/old/ServeBreakfast.tex: -------------------------------------------------------------------------------- 1 | \section{Serve Breakfast} 2 | \label{test:serve-breakfast} 3 | The robot has to set a table for breakfast for one person and prepare cereal for them.\\ 4 | 5 | \noindent \textbf{Main Goal:} Place breakfast items on a table (bowl, spoon, cereal box, and milk carton) and prepare cereal.\\ 6 | 7 | \noindent \textbf{Optional Goals:} 8 | \begin{enumerate}[nosep] 9 | \item Pour milk into the bowl 10 | \item Place the spoon next to the bowl 11 | \end{enumerate} 12 | 13 | \subsection*{Focus} 14 | \emph{Object perception}, \emph{manipulation}, and \emph{task planning}. 15 | 16 | \subsection*{Setup} 17 | \begin{itemize}[nosep] 18 | \item \textbf{Locations:} 19 | \begin{itemize} 20 | \item \textbf{Start location:} Before the test, the robot waits outside the \Arena{} and navigates to the kitchen when the door is open. 21 | \item \textbf{Test location:} The test itself takes place in the kitchen. 22 | \end{itemize} 23 | \item \textbf{People:} 24 | \begin{itemize} 25 | \item No people are involved in the test unless the robot requires human assistance. 26 | \end{itemize} 27 | \item \textbf{Furniture:} 28 | \begin{itemize} 29 | \item \textbf{Table:} The robot serves breakfast on the table which is announced beforehand. 30 | \item \textbf{Chairs:} Chairs may be placed around the table and won't be removed. 31 | \item \textbf{Doors:} The robot does not need to open any doors to find the breakfast items. 32 | \end{itemize} 33 | \item \textbf{Objects:} 34 | \begin{itemize} 35 | \item All objects used in the test are in their predefined locations when the test starts. 36 | \end{itemize} 37 | \end{itemize} 38 | 39 | \subsection*{Procedure} 40 | \begin{enumerate}[nosep] 41 | \item \textbf{Table selection:} At least two hours before the test, the referees announce the surface that will be used as a table. 42 | \item \textbf{Test start:} The robot moves to the kitchen when the arena door is open. 43 | \item \textbf{Serving breakfast:} To serve breakfast, the robot has to place breakfast items on a table (bowl, spoon, cereal box, and milk carton). 44 | \item \textbf{Pouring cereal:} After placing the breakfast items on the table, the robot should pour cereal into the bowl. 45 | \item \textbf{Optional goals:} 46 | \begin{itemize} 47 | \item \textbf{Pouring milk:} After pouring cereal, the robot pours milk into the bowl in order to fully prepare the breakfast. 48 | \item \textbf{Placing the spoon next to the bowl:} In principle, the spoon can be placed anywhere on the table, but placing it next to the bowl is desired so that it is easily reachable by a person. 49 | \end{itemize} 50 | \end{enumerate} 51 | 52 | \subsection*{Additional Rules and Remarks} 53 | \begin{enumerate}[nosep] 54 | \item \textbf{Safe placing:} Objects must be placed with care, namely the robot should place rather than throw or drop objects. 55 | \item \textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular for: 56 | \begin{itemize}[nosep] 57 | \item pointing to an object or telling the robot where an object is or where to place it 58 | \item handing an object over to the robot 59 | \item having a human place objects on the table 60 | \item having a human pour cereal into the bowl 61 | \end{itemize} 62 | \end{enumerate} 63 | 64 | \subsection*{OC Instructions} 65 | 66 | During the \SetupDays: 67 | \begin{itemize} 68 | \item Provide official cutlery and tableware for training. 69 | \end{itemize} 70 | 71 | At least two hours before the test: 72 | \begin{itemize} 73 | \item Announce the table that will be used. 74 | \item Announce a rough location of the table. 75 | \end{itemize} 76 | 77 | 78 | \subsection*{Referee Instructions} 79 | 80 | The referee needs to: 81 | \begin{itemize} 82 | \item Remove all objects from the table. 83 | \item Place all objects in their default locations. 84 | \end{itemize} 85 | 86 | % \newpage 87 | \subsection*{Score sheet} 88 | \input{scoresheets/ServeBreakfast.tex} 89 | 90 | % Local Variables: 91 | % TeX-master: "Rulebook" 92 | % End: 93 | -------------------------------------------------------------------------------- /tasks/old/ServingDrinks.tex: -------------------------------------------------------------------------------- 1 | \section{Serving Drinks [Party Host]} 2 | \label{test:serving-drinks} 3 | The robot takes orders of drinks from party guests and delivers them. 4 | 5 | \noindent \textbf{Main Goal:} Take the order of a drink from all people without one, and deliver the correct drink to the person who ordered it.\\ 6 | 7 | \noindent \textbf{Optional Goals:} 8 | \begin{enumerate}[nosep] 9 | \item Inform a guest of drink unavailability upon request. 10 | \item Correct the bartender. 11 | \end{enumerate} 12 | 13 | \subsection*{Focus} 14 | \emph{Human-Robot interaction}, \emph{person recognition}, \emph{object recognition}. 15 | 16 | \subsection*{Setup} 17 | \begin{itemize} 18 | \item \textbf{Locations}: 19 | \begin{itemize} 20 | \item The test takes place in the living room. 21 | \item The robot starts inside the \Arena{} at a predefined location near the entrance door. 22 | \end{itemize} 23 | \item \textbf{People}: 24 | \begin{itemize} 25 | \item There are at least five guests in the living room, two standing and three sitting. Each guest has an assigned predefined name, and may or may not already have a drink. Each guest has a predefined favourite drink, and a choice of alternative drink. The robot does not initially know either the name or the favourite drinks of the guests. At least three guests start without a drink. At least two guests start with a drink. 26 | \item The party host is also in the living room, and is known to the robot (including name and favourite drinks). 27 | \item The bartender may be standing either behind the bar or next to it, depending on the \Arena{} setup. 28 | \end{itemize} 29 | \item \textbf{Furniture}: The bar can be any flat surface where objects can be placed, in any room but the living room. 30 | \item \textbf{Objects}: All available beverages are on top of the bar. One of the drink requests is not available. 31 | \end{itemize} 32 | 33 | \subsection*{Procedure} 34 | \begin{enumerate}[nosep] 35 | \item \textbf{Approaching guests:} The robot approaches any of the guests without drinks, except the host, and asks them their name, what their favourite drink is, and their second choice in case their favourite drink was not available. The robot does not need to approach the host because it already knowns them, including their choice of drink. 36 | 37 | \item \textbf{Drink preparation:} The robot goes to the bar, and asks the bartender for one or more drinks. The bartender puts the available requested drinks on the bar in front of the robot, and tells the robot if any requested drink is not available. The bartender can make mistakes. 38 | 39 | \item \textbf{Changing places:} when the robot is not in the living room, the referee may re-arrange the guests. 40 | 41 | 42 | \item \textbf{Drink delivery:} When delivering the drinks to the guests who ordered them, the robot first greets the guest saying their name. The robot delivers their first choice of drink to a guest, if available. If not available, the robot delivers their second choice of drink. 43 | 44 | \item \textbf{Optional Goals:} 45 | \begin{enumerate} 46 | \item \textbf{Correct the bartender:} If the bartender provided the wrong drink, or told the robot that a drink was not available when, in fact, it was, the robot corrects the bartender, and asks for the right drink. 47 | \end{enumerate} 48 | 49 | 50 | \end{enumerate} 51 | 52 | 53 | \subsection*{Additional rules and remarks} 54 | \begin{enumerate} 55 | 56 | \item \textbf{Deus ex Machina:} Score reductions are applied for requesting the following forms of human assistance: 57 | \begin{itemize}[nosep] 58 | \item \textbf{Actively placing order:} Approaching the robot to place an order. 59 | 60 | \item \textbf{Calling to place order:} Calling the robot (either by shouting or waving). 61 | 62 | \item \textbf{Avoiding manipulation:} Asking the bartender to place a drink on the robot. 63 | 64 | \end{itemize} 65 | 66 | \item \textbf{Empty \Arena{}:} For this task only the robot, the guests, the host, and the Bartender are allowed to be in the \Arena{}. 67 | \end{enumerate} 68 | 69 | \subsection*{Referee instructions} 70 | 71 | The referees need to 72 | \begin{itemize} 73 | \item Select at least 5 volunteers and assign predefined names. 74 | \item Assign a preferred drink and an alternative to at least three guests 75 | \item Give drinks to the other guests 76 | \item Select the person (bartender) who will serve the drinks 77 | \item Tell guests when to switch places 78 | \item Make sure one preferred drink is missing 79 | \end{itemize} 80 | 81 | \subsection*{OC instructions} 82 | 83 | During the \SetupDays{}: 84 | \begin{itemize} 85 | \item Choose the volunteers (at least two, in case one is not available for a particular test) to be the host. 86 | \end{itemize} 87 | 88 | 2h before test: 89 | \begin{itemize} 90 | \item Specify and announce the bar location. 91 | \end{itemize} 92 | 93 | % \newpage 94 | \subsection*{Score sheet} 95 | \input{scoresheets/ServingDrinks.tex} 96 | -------------------------------------------------------------------------------- /tasks/old/SetTable.tex: -------------------------------------------------------------------------------- 1 | \section{Set the Table [Housekeeper]} 2 | \label{test:set-the-table} 3 | The robot has to set the table for dinner for one person. 4 | 5 | % \subsection*{Focus} 6 | % This test focuses on object perception, manipulation, and planning. 7 | 8 | \noindent \textbf{Main Goal:} Neatly lay tableware and cutlery on the dining table (5 objects). 9 | 10 | \noindent \textbf{Optional goals:} 11 | \begin{enumerate}[nosep] 12 | \item Picking all utensils from the cupboard drawer 13 | \item Closing the cupboard drawer 14 | \item Laying a place mat first 15 | \end{enumerate} 16 | 17 | \subsection*{Focus} 18 | \emph{Object recognition}, \emph{Object manipulation}. 19 | 20 | %move pick utensils from drawer to bonus 21 | % remove one of the items from pick ups 22 | % add open cupboard to deus ex machina 23 | % 24 | 25 | \subsection*{Setup} 26 | \begin{itemize}[nosep] 27 | \item \textbf{Locations:} This test takes place in the \Arena{}, in a room with a table and a cupboard. 28 | \item \textbf{Furniture:} 29 | \begin{itemize} 30 | \item Chairs may be placed around the table and will not be removed. 31 | \item The cupboard doors and drawers are initially closed. 32 | \end{itemize} 33 | \item \textbf{Objects}: 34 | \begin{itemize} 35 | \item The objects used in this test can be found in the cupboard, not in their predefined locations. 36 | \item The following objects will be available in the cupboard: 37 | \begin{itemize} 38 | \item\textit{Silverware}: Any two different objects (fork, knife, or spoon). 39 | \item\textit{Tableware}: A dish and any other object (bowl, cup, or mug). 40 | \item\textit{Napkin}: A cloth or paper napkin. 41 | \item\textit{Place mat}: A place mat will be at the bottom of all the object in the cupboard. 42 | \end{itemize} 43 | 44 | \end{itemize} 45 | \end{itemize} 46 | 47 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 48 | % Procedure 49 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 50 | \subsection*{Procedure} 51 | \begin{enumerate}[nosep] 52 | 53 | \item \textbf{Open cupboard door:} The robot goes to the cupboard and opens the door. 54 | \item \textbf{Table setup:} The robot picks up five objects from the cupboard, and sets them on the table according to the following placement: 55 | \begin{itemize}[nosep] 56 | \item Knife and spoon must be placed to the right of the plate. 57 | \item The mug or cup must be placed in front of the cutlery. 58 | \item Fork and napkin must be placed to the left of the plate. 59 | \item The bowl must be stacked on top of the plate. 60 | \end{itemize} 61 | 62 | \end{enumerate} 63 | 64 | 65 | 66 | \subsection*{Additional rules and remarks} 67 | \begin{enumerate}[nosep] 68 | \item \textbf{Safe placing:} Objects must be placed with care. It must be clear that the robot is trying to place the object, not throwing or dropping it. 69 | 70 | \item \textbf{Deus ex Machina:} Score reductions are applied for requesting the following forms of human assistance: 71 | \begin{itemize}[nosep] 72 | \item \textbf{Handover:} Handing over an object. 73 | 74 | \item \textbf{Showing objects:} Pointing, or telling to the robot where an object is or where to place it. 75 | 76 | \end{itemize} 77 | 78 | \item \textbf{Cupboard drawers:} If a drawer is available near the cupboard, the team can decide to start the task with the cutlery in the drawer. The team can choose between having the robot open the cupboard door or the drawer, with the referee opening the other one. 79 | 80 | \end{enumerate} 81 | 82 | \subsection*{Referee instructions} 83 | 84 | The referee needs to 85 | \begin{itemize} 86 | \item Remove all objects from the table 87 | \item Place objects in their starting position (in the drawer or in the cupboard) 88 | \item Close the door or drawer, depending on which one the robot is going to attempt to open. 89 | \end{itemize} 90 | 91 | \subsection*{OC instructions} 92 | During \SetupDays 93 | \begin{itemize} 94 | \item Provide official cutlery and tableware for training. 95 | \end{itemize} 96 | 97 | % \newpage 98 | \subsection*{Score sheet} 99 | \input{scoresheets/SetTable.tex} 100 | 101 | % Local Variables: 102 | % TeX-master: "Rulebook" 103 | % End: 104 | 105 | -------------------------------------------------------------------------------- /tasks/old/SmoothieChef.tex: -------------------------------------------------------------------------------- 1 | \section{Smoothie Chef (Placeholder)} 2 | \label{test:smoothie-chef} 3 | The home owner teaches the robot how to make a smoothie and the robot repeats the task on its own.\\ 4 | 5 | \noindent \textbf{Main goal:} The robot prepares a smoothie as taught, placing 3 fruits, milk, and sugar in a blender.\\ 6 | 7 | \noindent \textbf{Optional goals:} 8 | \begin{enumerate}[nosep] 9 | \item Pouring \emph{milk} without spilling 10 | \item Pouring \emph{sugar} without spilling 11 | \end{enumerate} 12 | 13 | % We will have the robot place the (fake) fruit corresponding to the desired smoothie into a bowl, which avoids needing blenders and needing to manipulate liquids. However, one of the fruits will be something small, like blueberries, which will need to be measured using an appropriate measuring cup. 14 | 15 | \subsection*{Focus} 16 | \emph{Action recognition and understanding}, \emph{demonstration-based learning}, \emph{object recognition and manipulation}. 17 | 18 | \subsection*{Setup} 19 | \begin{itemize}[nosep] 20 | \item \textbf{Locations:} 21 | \begin{itemize} 22 | \item \textbf{Test location:} The test takes place in the kitchen. 23 | \item \textbf{Start Location:} The robot starts the test at the kitchen counter. 24 | \item \textbf{Operator location:} The operator is standing in front of the robot behind the counter. 25 | \end{itemize} 26 | \item \textbf{People:} 27 | \begin{itemize} 28 | \item \textbf{Operator:} The smoothie recipe is demonstrated by a \emph{Professional Operator}. Teams can alternatively opt for a \emph{Custom Operator}, which causes a score reduction. 29 | \end{itemize} 30 | \item \textbf{Furniture:} 31 | \begin{itemize} 32 | \item \textbf{Kitchen counter:} Either the kitchen table or counter can be used in this test. 33 | \end{itemize} 34 | \item \textbf{Objects:} 35 | \begin{itemize} 36 | \item \textbf{Ingredients:} On the counter, there are 6 \emph{fruits}, one bottle of milk, and a bowl with sugar; all of these are standard objects (see~\refsec{rule:scenario_objects}). 37 | \item \textbf{Sugar:} The sugar is contained in a bowl and must be served with a spoon. Any pourable solid can be used as sugar (such as actual sugar, but also muesli or cereal, for example). 38 | \item \textbf{Milk:} Any liquid can be used as milk (such as actual milk, but also water or something else from the \emph{Drinks} category). 39 | \item \textbf{Official blender:} Unless a real blender is available (unlikely), teams can expect any large object (e.g., a plastic bottle, a glass, a bowl) from the list of standard objects (see~\refsec{rule:scenario_objects}) to be used as a blender. 40 | \item \textbf{Smoothie recipe:} The recipe includes three out of six random fruits to be blended, one teaspoon of sugar, and a glass of milk. 41 | The score is reduced if an incorrect fruit (which has not been used in the demonstration) is placed inside the blender. 42 | \end{itemize} 43 | \end{itemize} 44 | 45 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 46 | % Procedure 47 | % %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 48 | \subsection*{Procedure} 49 | \begin{enumerate}[nosep] 50 | \item \textbf{Test start:} The referee asks the team to move the robot to the start location and then gives a start signal. 51 | \item \textbf{Smoothie demonstration:} The operator shows the robot how to prepare the smoothie. 52 | \item \textbf{Smoothie preparation:} The robot prepares the smoothie as demonstrated. 53 | \end{enumerate} 54 | 55 | 56 | \subsection*{Additional Rules and Remarks} 57 | \begin{enumerate} 58 | \item \textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular for: 59 | \begin{itemize}[nosep] 60 | \item starting the test in front of the kitchen counter 61 | \item telling the robot which ingredient comes next (such as by pointing, naming, etc.) 62 | \item handing an object over to the robot 63 | \end{itemize} 64 | \end{enumerate} 65 | 66 | \subsection*{OC Instructions} 67 | During the \SetupDays: 68 | \begin{itemize} 69 | \item Announce which object will be used as a blender. 70 | \end{itemize} 71 | 2 hours before the test: 72 | \begin{itemize} 73 | \item Announce the location of the kitchen counter. 74 | \item Announce the location where the operator and the robot will perform the task. 75 | \end{itemize} 76 | 77 | \subsection*{Referee Instructions} 78 | 79 | The referee needs to: 80 | \begin{itemize} 81 | \item Clean any spills as necessary. 82 | \item Shuffle the fruits and put all utensils within a reachable distance from the robot. 83 | \item Perform a demonstration of the smoothie preparation process for the robot. 84 | \end{itemize} 85 | 86 | \subsection*{Score sheet} 87 | \input{scoresheets/SmoothieChef.tex} 88 | -------------------------------------------------------------------------------- /tasks/old/SticklerForRules.tex: -------------------------------------------------------------------------------- 1 | \section{Stickler for the Rules} 2 | \label{test:stickler-for-the-rules} 3 | 4 | \subsection*{Description} 5 | The robot needs to make sure the house rules are followed. 6 | 7 | \textbf{Main goal:} 8 | Identify party guests breaking the house rules, politely clarify to the guest what to do and confirm that the guest is following the rule. 9 | 10 | \textbf{Optional goal:} 11 | Politely clarify to the guest what rule is being broken. 12 | 13 | 14 | \subsection*{Focus} 15 | This task focuses on 16 | \textit{Object perception}, 17 | \textit{Human perception}, 18 | \textit{Action recognition} and 19 | \textit{Verbal interaction}. 20 | 21 | \subsection*{Setup} 22 | \begin{itemize}[nosep] 23 | \item \textbf{Locations:} 24 | \begin{itemize} 25 | \item This task takes place inside the \Arena{}. 26 | \item The robot starts at a predefined location in the living room. 27 | \item There are a forbidden room in the house. 28 | \end{itemize} 29 | \item \textbf{People:} 30 | \begin{itemize} 31 | \item There are at least five party guests inside the \Arena{}. 32 | \item Four of the guests are breaking rules. 33 | \item Guests may not follow the robot's instructions. 34 | \end{itemize} 35 | \item \textbf{Furniture:} All furniture are in their predefined locations. 36 | \item \textbf{Objects:} All objects are in their predefined locations. 37 | \end{itemize} 38 | 39 | \subsection*{Procedure} 40 | \begin{enumerate}[nosep] 41 | \item The referee requests the team to move the robot to the start location. 42 | \item The referee gives the start signal and starts the timer. 43 | \item The team leaves the area after the start signal. 44 | \item A TC member follows the robot ready to press the emergency stop button. 45 | \item The robot Identify party guests breaking the house rules. 46 | \item The robot politely clarify to the guest what to do. 47 | \item The robot confirm that the guest is following the rule. 48 | \item \textbf{Optionally} and Politely, the robot clarify to the guest what rule is being broken. 49 | \end{enumerate} 50 | 51 | 52 | \subsection*{Additional rules and remarks} 53 | \begin{itemize}[nosep] 54 | \item \textbf{House Rules:} 55 | \begin{enumerate}[nosep] 56 | \item \textit{No shoes inside the house.}\\ 57 | \textbf{Policy:} All guests have to take off their shoes at the entrance.\\ 58 | \textbf{Action:} Take the guests to the entrance and verify they take off their shoes. 59 | 60 | \item \textit{Forbidden room}\\ 61 | \textbf{Policy:} No guests are allowed in the \emph{Forbidden Room}. \\ 62 | \textbf{Action:} Take the offenders to the other party guests and verify they don't enter back. 63 | 64 | \item \textit{No littering}\\ 65 | \textbf{Policy:} Guests are not allowed to leave garbage on the floor.\\ 66 | \textbf{Action:} Make the (closest) offender pick up the garbage and throw it into the bin. 67 | 68 | \item \textit{Compulsory hydration}\\ 69 | \textbf{Policy:} All guests must have a drink in hand at all times.\\ 70 | \textbf{Action:} Take the guests to the kitchen/bar and make sure they grab a drink. 71 | \end{enumerate} 72 | \item \textbf{Talking to no one:} If the robot is talking to the empty arena or a wall, no additional penalty is applied. 73 | \item \textbf{Number of Rulebreakers:} Each rule is being broken 0-2 times. There are at least 3 different kind of rules being broken in the arena. 74 | \item \textbf{Confirm the Following of a Rule:} When given instructions the guests might not immediately follow them. The robot needs to re-check and confirm that the rule is not being broken anymore. Once the robot has confirmed this it can be assumed that the person is no longer breaking rules. 75 | \end{itemize} 76 | 77 | \subsection*{Instructions:} 78 | \subsubsection*{Referee instructions} 79 | 80 | \begin{itemize} 81 | \item Instruct party guests on which rules to break. 82 | \item Assign each party guest a drink. 83 | \end{itemize} 84 | 85 | \subsubsection*{OC Instructions} 86 | At least two hours before the test: 87 | \begin{itemize} 88 | \item Select and announce the robot start location. 89 | \item Select and announce which room is forbidden. 90 | \end{itemize} 91 | 92 | % \newpage 93 | \subsection*{Score sheet} 94 | \input{scoresheets/SticklerForRules.tex} 95 | 96 | % Local Variables: 97 | % TeX-master: "Rulebook" 98 | % End: 99 | 100 | -------------------------------------------------------------------------------- /tasks/old/TakeOutGarbage.tex: -------------------------------------------------------------------------------- 1 | \section{Take Out the Garbage} 2 | \label{test:take-out-the-garbage} 3 | 4 | \subsection*{Description} 5 | All garbage bins in the \Arena{} are emptied and the garbage has been moved to a specified collection zone. 6 | 7 | \textbf{Main goal:} 8 | The robot takes out the trash bags from the two bins in the \Arena{}. 9 | 10 | \textbf{Optional goal:} 11 | Removing the lid of the trash bin and handling the garbage with two arms. 12 | 13 | \subsection*{Focus} 14 | This task focuses on 15 | \textit{Object Perception}, 16 | \textit{Object Manipulation} and 17 | \textit{Task Planning} 18 | 19 | \subsection*{Setup} 20 | \begin{itemize}[nosep] 21 | \item \textbf{Locations:} 22 | \begin{itemize} 23 | \item This test takes place inside the \Arena{}. 24 | \item The robot starts inside the \Arena{} at a predefined location near the entrance door. 25 | \item The collection zone is a designated area near the entrance. 26 | \end{itemize} 27 | \item \textbf{People:} Only the referee is allowed in the \Arena{}. 28 | \item \textbf{Furniture:} 29 | \begin{itemize} 30 | \item There are two small trash bins in different rooms of the \Arena{}. They are roughly cylindrical and open at the top. The space above the bin will be free of obstructions. The bin may be placed against a wall. Bin locations are part of the communicated \Arena{} setup. 31 | \item Each bin contains a tied garbage bag with some light contents. The color of the bag is different from the color of the bin. 32 | \item The team leader may request to place a lid on one or both of the bins to score the bonus points. 33 | \end{itemize} 34 | \item \textbf{Objects:} All objects are in their predefined locations. 35 | \end{itemize} 36 | 37 | \subsection*{Procedure} 38 | 39 | \begin{enumerate} 40 | \item The referee requests the team to move the robot to the start location. 41 | \item The referee gives the start signal and starts the timer. 42 | \item The team leaves the area after the start signal. 43 | \item A TC member follows the robot ready to press the emergency stop button. 44 | \item The robot navigates to the bins. 45 | \item \textbf{Optionally}, the robot can remove the lid of the trash bins. 46 | \item The robot takes out the trash bags from the two bins in the \Arena{}. 47 | \item \textbf{Optionally}, the robot can handle the garbage with two arms. 48 | 49 | \end{enumerate} 50 | 51 | \subsection*{Additional rules and remarks} 52 | No additional rules and remarks. 53 | 54 | \subsection*{Instructions:} 55 | 56 | \subsubsection*{To Referee} 57 | 58 | The referee needs to: 59 | \begin{itemize} 60 | \item Place sealed bags with some light contents in the bins 61 | \item Ask team leader whether bins should be closed. 62 | \item Make sure collection zone is clear. 63 | \end{itemize} 64 | 65 | \subsubsection*{To OC} 66 | The OC needs to: 67 | \begin{itemize}[nosep] 68 | \item \textbf{During Setup days:} Provide official bins and bags for training. 69 | \item \textbf{2 hours before the test:} Announce the collection zones. 70 | \end{itemize} 71 | 72 | \subsection*{Score sheet} 73 | \input{scoresheets/TakeOutGarbage.tex} 74 | 75 | % Local Variables: 76 | % TeX-master: "Rulebook" 77 | % End: 78 | 79 | -------------------------------------------------------------------------------- /tasks/old/TidyUp.tex: -------------------------------------------------------------------------------- 1 | \section{Tidy Up} 2 | \label{test:tidy-up} 3 | Inside a room in the arena are objects that don't belong there. The robot has to tidy up by bringing them back and throwing any unknown objects into the garbage. 4 | 5 | \noindent \textbf{Focus:} \SysI, \NAV, \CV, \OR, \MAN. 6 | 7 | \subsection*{Main Goal} 8 | Find 5 misplaced objects in a room and bring them to their predefined locations. 9 | 10 | \noindent\textbf{Reward:} 500pts (100pts per object) 11 | 12 | \subsection*{Bonus Rewards} 13 | \begin{enumerate}[nosep] 14 | \item Taking out the garbage (100pts) 15 | \item Moving a \emph{tiny} object (200pts) 16 | \item Moving a \emph{heavy} object (200pts) 17 | \end{enumerate} 18 | 19 | 20 | \subsection*{Setup and Procedure} 21 | \begin{itemize}[nosep] 22 | \item \textbf{Location:} A random room in the arena. 23 | \item \textbf{Instruction:} Nearby the entrance, an operator tells the robot which room to clean. 24 | \item \textbf{Objects:} There are 5 misplaced objects at random locations in the room. Objects can be anywhere, including the floor, seats, and on furniture. 25 | All objects are clearly visible (i.e.~no occlusions) and can be: 26 | \begin{itemize}[nosep] 27 | \item\KnownObjects{}: Regular, alike, and standard objects. 28 | \item\UnknownObjects{}: Garbage lying around (2--3 objects). 29 | \end{itemize} 30 | \item \textbf{Heavy and Tiny Objects:} Objects used in this test are lightweight and average-sized. 31 | However, the team leader can request a tiny and a heavy object to be used and score additional points for moving them. 32 | \item \textbf{Bin:} There is an already tied trash bag inside the bin which the robot can bring to a predefined collection zone to score additional points. The unknown objects must be placed or dropped inside the, either emptied or still full, bin. 33 | \end{itemize} 34 | 35 | \subsection*{Additional Rules and Remarks} 36 | \begin{enumerate}[nosep] 37 | \item \textbf{Partial Scoring:} The main task allows partial (per object) scoring. 38 | 39 | \item \textbf{Deus ex Machina:} Score reduction for requesting human assistance is applied per object as follows: 40 | \begin{itemize}[nosep] 41 | \item \textbf{Request Object Locations by Speech:} Telling the robot where an object can be found or should be placed causes a reduction of 30pts. 42 | 43 | \item \textbf{Request Object Locations by Gesture:} Pointing at an object to be picked up or where to place an object causes a reduction of 40pts. 44 | 45 | \item \textbf{Request Object Locations by Guiding:} Guiding the robot nearby the location where an object can be found or should be placed causes a reduction of 20pts. 46 | 47 | \item \textbf{Request Object Interaction by a Human:} Having a human pick up or place an object causes a reduction of 60pts. 48 | \end{itemize} 49 | \end{enumerate} 50 | 51 | \newpage 52 | 53 | \subsection*{Referee Instructions} 54 | The referee needs to 55 | \begin{itemize} 56 | \item Place the objects in the room. 57 | \item Recover disposed objects from the bin and place the trash bag inside. 58 | \item Ask teams whether they want a heavy or tiny object. 59 | \end{itemize} 60 | 61 | \subsection*{OC Instructions} 62 | 2 hours before the test: 63 | \begin{itemize} 64 | \item Announce the location of the garbage collection zone. 65 | \end{itemize} 66 | 67 | \subsection*{Score Sheet} 68 | \input{scoresheets/TidyUp.tex} 69 | -------------------------------------------------------------------------------- /tasks/old/WhatisThat.tex: -------------------------------------------------------------------------------- 1 | \section{What is That?} 2 | \label{test:what-is-that} 3 | A guest asks the robot to identify objects in the household. 4 | 5 | \noindent \textbf{Focus:} \SysI{}, \HRI{}, \GestRec{}, \CV{}, \OR{}. 6 | 7 | 8 | \subsection*{Main Goal} 9 | The robot names 5 objects, the guest is pointing at. 10 | 11 | \noindent\textbf{Reward:} 1000pts (200pts per object) 12 | 13 | 14 | \subsection*{Bonus Rewards} 15 | \begin{enumerate}[nosep] 16 | \item The robot understands two different non-verbal commands, e.g., nodding, gesturing for the robot to follow (250pts) 17 | \item The robot names one feature that is unique to the object in its group (100pts, each) 18 | \end{enumerate} 19 | 20 | 21 | \subsection*{Setup and Procedure} 22 | \begin{enumerate}[nosep] 23 | \item \textbf{Location:} This test takes place inside the \Arena{}. 24 | 25 | \item \textbf{Groups of Objects:} There are five groups of 2--5 \KnownObjects{} randomly placed on the floor. 26 | 27 | \item \textbf{Guest:} The guest is one of the referees. They will step in front of the robot after it enters the \Arena{}. Then, the guest guides the robot to a group of objects where they point at one. 28 | 29 | \item \textbf{Naming:} The robot needs to tell the guest the official name of the object. 30 | 31 | \item \textbf{Skipping Groups:} The robot can decide to pass on an object. The guest will move on to the next group. They robot cannot request to go back at a later time. 32 | 33 | \item \textbf{Non-Verbal Commands:} The team leader can tell the referee that the robot can recognize non-verbal commands. The team is not allowed to instruct the guest. Interaction must be guided by the robot. 34 | \end{enumerate} 35 | 36 | 37 | \subsection*{Additional Rules and Remarks} 38 | \begin{enumerate}[nosep] 39 | \item \textbf{Partial Scoring:} The main task allows partial (per object) scoring. 40 | 41 | \item \textbf{Deus ex Machina:} Score reduction applies per object as follows: 42 | \begin{itemize}[nosep] 43 | \item \textbf{Asking Yes or No Questions:} Asking yes or no questions about the object (e.g. Is the object yellow?), reduces the score by 50pts. 44 | \item \textbf{Asking Attribute Questions:} Asking questions about attributes of the object (e.g. What color is the object?), reduces the score by 100pts. 45 | \item \textbf{Interacting with Objects:} Asking the operator to pick up the object or move it closer reduces the score by 150pts. 46 | \end{itemize} 47 | \end{enumerate} 48 | 49 | \newpage 50 | 51 | \subsection*{Referee Instructions} 52 | 53 | The referee needs to 54 | \begin{itemize}[nosep] 55 | \item Place the groups of objects. 56 | \item Choose which objects to point at. 57 | \end{itemize} 58 | 59 | \subsection*{Score Sheet} 60 | \input{scoresheets/HandMeThat.tex} 61 | 62 | % Local Variables: 63 | % TeX-master: "Rulebook" 64 | % End: 65 | -------------------------------------------------------------------------------- /tasks/old/WhereIsThis.tex: -------------------------------------------------------------------------------- 1 | \section{Where is This? [Party Host]} 2 | \label{test:where-is-this} 3 | The robot has to explain and show people where they can find places in the \Arena{} (for example, \emph{Where is the TV?}). The robot has to tell the operator how to get to the desired location and then monitor that the operator reaches the intended location. 4 | 5 | \noindent \textbf{Main Goal:} Give accurate directions and guide at least 3 people. 6 | 7 | \noindent \textbf{Optional goals:} 8 | \begin{enumerate}[nosep] 9 | \item Lead a non-expert operator to the destination correctly. 10 | \item Provide new instructions based on the previous ones. 11 | \item Guide the operator in a \emph{natural} way (for instance, pointing at the described objects and looking at the operator when speaking with them). 12 | \end{enumerate} 13 | 14 | \subsection*{Focus} 15 | \emph{Person Leading}, \emph{Social Navigation}, \emph{Human-Robot Interaction}. 16 | 17 | 18 | \subsection*{Setup} 19 | \begin{itemize}[nosep] 20 | \item \textbf{Locations:} 21 | \begin{itemize} 22 | \item All predefined locations inside the \Arena{} are valid destinations. 23 | \item \textbf{Start Location}: The robot starts outside the \Arena{}. 24 | \item \textbf{Information Point}: The robot waits for the operator at the \emph{Information Point}, which can be anywhere in the \Arena{}, and is known to the robot. 25 | \end{itemize} 26 | \item \textbf{People:} three people will act as operators. Upon request from the team, non-expert people may be recruited. 27 | \end{itemize} 28 | 29 | 30 | \subsection*{Procedure} 31 | \begin{enumerate}[nosep] 32 | 33 | \item \textbf{Robot enters:} When the door opens, the robot navigates to the \emph{Information Point}. 34 | \item \textbf{Operators:} When the robot is waiting for a person, the next operator goes to the \emph{Information Point}, and asks the robot to be led to a particular location. Out of the three runs, two will have the same operator, returning for new directions to a new destination. 35 | \item \textbf{Give instructions:} The robot gives instructions to the operator and then starts to follow them. 36 | \item \textbf{Tour guide:} As robot and operator navigate to the target location, the robot explains what parts of the arena they are going through. 37 | \item \textbf{Execution monitoring:} The robot monitors the operator to provide additional instructions or corrections as needed. 38 | \item \textbf{Return to \emph{Information Point}:} After guiding each operator, the robot must return to the \emph{Information Point}. 39 | 40 | \end{enumerate} 41 | 42 | \subsection*{Additional rules and remarks} 43 | \begin{enumerate}[nosep] 44 | \item \textbf{Deus ex Machina:} scores are reduced if the robot requires assistance as follows: 45 | \begin{itemize}[nosep] 46 | \item \textbf{Bypassing speech recognition:} communicating with the robot through a graphical interface, or any other way. 47 | 48 | \item \textbf{Operator's assistance:} Helping the robot find the operator (for instance, through waving or shouting). 49 | \end{itemize} 50 | 51 | \item \textbf{Non-expert Operators:} Optionally, questions can be asked by a \emph{Non-expert Operator}, that is, a person from the audience with no background in robotics. \emph{Non-expert Operators} are allowed to rephrase commands given by the referees. 52 | \\\textbf{Remark:} Referees are not allowed to instruct non-expert operators on how to operate the robot. \textbf{Teams attempting to instruct or bias the operator will be disqualified}. 53 | 54 | \item \textbf{Operator fallback:} If the robot consistently fails to understand the non-expert operator (3 times or more), teams can default to a regular operator. 55 | 56 | \item \textbf{Data Recording:} Only when using non-expert operators, a team can get an additional scoring bonus by providing the recording and transcript of the issued commands. 57 | 58 | \end{enumerate} 59 | 60 | \subsection*{OC instructions} 61 | 2 hours before the test: 62 | \begin{itemize} 63 | \item Generate two destinations per volunteer, such that the directions for the second one can be based on directions for the first one. 64 | \item Recruit at least 2 volunteers for the test 65 | \item Instruct volunteers where things are in the house 66 | \item Announce the location of the \emph{Information Point}. 67 | \end{itemize} 68 | 69 | \subsection*{Referee instructions} 70 | The referee needs to 71 | \begin{itemize} 72 | \item Assign destinations to each volunteer. 73 | \end{itemize} 74 | 75 | \subsection*{Score sheet} 76 | \input{scoresheets/WhereIsThis.tex} 77 | -------------------------------------------------------------------------------- /teams/DSPL.tex: -------------------------------------------------------------------------------- 1 | % 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 2 | \newcommand{\TEAMSSTAGEONE}{ 3 | Austin Villa@Home, 4 | eR@sers, 5 | Hibikino-Musashi@Home, 6 | ORIon, 7 | PUMAS-DSPL, 8 | RoboCanes-VISAGE, 9 | Team Northeastern, 10 | Team Tidyboy, 11 | Tech United Eindhoven, 12 | UNSW@Home 13 | } 14 | 15 | % 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) 16 | \newcommand{\TEAMSSTAGETWO}{ 17 | Team 1, 18 | Team 2, 19 | Team 3, 20 | Team 4, 21 | Team 5 22 | } 23 | 24 | \input{teams/finals.tex} 25 | 26 | % Local Variables: 27 | % TeX-master: "../rulebook" 28 | % End: 29 | 30 | -------------------------------------------------------------------------------- /teams/OPL.tex: -------------------------------------------------------------------------------- 1 | % 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 2 | \newcommand{\TEAMSSTAGEONE}{ 3 | Australian Centre for Robotic Vision, 4 | CARL@Home, 5 | CATIE Robotics, 6 | homer@UniKoblenz, 7 | KameRider OPL, 8 | Pumas, 9 | RoboFEI@Home, 10 | RT Lions, 11 | Tinker, 12 | Walking Machine 13 | } 14 | 15 | % 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) 16 | \newcommand{\TEAMSSTAGETWO}{ 17 | Team 1, 18 | Team 2, 19 | Team 3, 20 | Team 4, 21 | Team 5 22 | } 23 | 24 | \input{teams/finals.tex} 25 | 26 | 27 | % Local Variables: 28 | % TeX-master: "../rulebook" 29 | % End: 30 | 31 | -------------------------------------------------------------------------------- /teams/finals.tex: -------------------------------------------------------------------------------- 1 | % All teams in the finals: best 2 teams of each league (possibly 3 if the difference between #2 and #3 is less than 1%) 2 | \newcommand{\TEAMSFINALS}{ 3 | % DSPL 4 | \textbf{[DSPL]} Team 2, 5 | \textbf{[DSPL]} Team 1, 6 | % OPL 7 | \textbf{[OPL]} Team 3, 8 | \textbf{[OPL]} Team 2, 9 | \textbf{[OPL]} Team 1, 10 | } 11 | -------------------------------------------------------------------------------- /teams/teams.tex: -------------------------------------------------------------------------------- 1 | % 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 2 | \newcommand{\TEAMSSTAGEONE}{ 3 | Chief Scientist Office, 4 | EPFL@Home, 5 | eR@sers, 6 | FBOT@Home, 7 | Gentlebots, 8 | Hibikino-Musashi@Home, 9 | KIARO, 10 | LAR@Home, 11 | LASR, 12 | LCASTOR, 13 | LyonTech, 14 | NimbRo@Home, 15 | Pumas, 16 | PUMAS-DSPL, 17 | RoboCanes-VISAGE, 18 | RoboFEI@Home, 19 | RoBorregos 20 | rUNSWeep, 21 | Serious Cybernetics Corporation (SCC), 22 | Sinfonia Uniandes, 23 | SKUBA, 24 | SOBITS, 25 | SocRob@Home, 26 | SUTURO-VaB, 27 | Team of Bielefeld (ToBi), 28 | Tech United Eindhoven, 29 | Tidyboy-DSPL, 30 | Tidyboy-OPL, 31 | Tinker, 32 | TRAIL, 33 | UT Austin Villa@Home, 34 | } 35 | 36 | % 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) 37 | \newcommand{\TEAMSSTAGETWO}{ 38 | Team 1, 39 | Team 2, 40 | Team 3, 41 | Team 4, 42 | Team 5, 43 | Team 6, 44 | Team 7, 45 | Team 8, 46 | Team 9, 47 | Team 10 48 | } 49 | 50 | % All teams in the finals: best 5 teams (possibly 6 if the difference between #5 and #6 is less than 1%) 51 | \newcommand{\TEAMSFINALS}{ 52 | Fifth, 53 | Fourth, 54 | Third, 55 | Second, 56 | First 57 | } 58 | % Local Variables: 59 | % TeX-master: "../rulebook" 60 | % End: 61 | 62 | --------------------------------------------------------------------------------