[
  {
    "path": ".gitattributes",
    "content": "#*         text=auto\n*.tex     diff=tex\n*.jpg     binary\n*.png     binary\n*.pdf     binary\n*.svg     binary\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug.md",
    "content": "---\nname: Bug\nabout: Report a problem with the Rulebook.\ntitle: ''\nlabels: Bug\nassignees: ''\n---\n\n## Describe the bug\nA clear and concise description of what the bug is.\nIf it is a compile error, please provide a full traceback of the error that you received (if any), regardless of how long it is. \n\n## To Reproduce\nSteps to reproduce the behavior\n1. Go to '...'\n2. Click on '....'\n3. Scroll down to '....'\n4. See error\n\n## Expected behavior\nA clear and concise description of what you expected to happen.\n\n## System (please complete the following information):\n - OS: [e.g. OSX, Linux]\n - LaTeX version: \n\n## Additional context\nAdd any other context about the problem here.\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/question.md",
    "content": "---\nname: Question\nabout: Ask about something you don't understand.\ntitle: 'Q: [3-5 words encapsulating your question]'\nlabels: Question\nassignees: ''\n\n---\n\n\n### Before posting your question\n\nBefore posting your question, please make sure you have:\n1. Searched within existing [issues](https://github.com/RoboCupAtHome/RuleBook/issues?q=is%3Aissue+label%3AQuestion) for related questions.\n2. Searched for your question in the [F.A.Q.](https://github.com/RoboCupAtHome/RuleBook/wiki/FAQ:-Frequently-Asked-Questions)\n\n## Quick guide\n\n1. Ask only **one question per issue**\n2. Make the **title short and descriptive**\n    1. Start with *Q:*\n    2. Use the acronym of the related test (if any)\n    3. Avoid obvious words like: *question, about, doubt, wrong, example*, etc.\n3. Make the body of the issue concise but explicative\n4. (If you are a contributor already) Add the label of the related test(s), or *General Rules* for questions affecting all of the rulebook\n5. Close the issue once your question has been answered\n\n===\n\n## Summary\nSummary of the question here (one concise paragraph).\n\n## Details\nAny additional details and examples relevant to your question.\nPlease link to the branch/file/line-number or at least to the relevant section of the rules.\nDo not refer to date/build/page.\nAlways double check your spelling and grammar :)"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/suggestion.md",
    "content": "---\nname: Idea\nabout: Suggest an idea for the rulebook.\ntitle: ''\nlabels: Idea\nassignees: ''\n---\n\n## Is your idea/suggestion related to a problem? Please describe.\nA clear and concise description of what the problem is. Ex. I'm always frustrated when [...]\n\n## Describe the solution you'd like\nA clear and concise description of what you want to happen.\n\n## Describe alternatives you've considered\nA clear and concise description of any alternative solutions you've considered.\n\n## Additional context\nAdd any other context about the suggestion here."
  },
  {
    "path": ".github/code_of_conduct.md",
    "content": "## RoboCup Federation Code of Conduct\n \nApproved April 2019\n\nThe 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.\n\nRoboCup 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.\n\nCompetition 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.\n\nAbusive, 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:\n* Verbal attacks, accusations, bullying, or offensive comments Aggressive or intimidating behavior\n* Sustained disruption during presentations and other events\n* Unwelcome sexual attention\n* Inappropriate physical contact\n* Deliberate intimidation or stalking either in person or online Sexual and racist images or materials in public spaces\n* Ignoring, encouraging, or advocating any of the above behaviors\n\nRoboCup also disapproves of, and will not tolerate acts of plagiarism.\n\nAll 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.\n\nAll 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.\n\nTo 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."
  },
  {
    "path": ".github/contributing.md",
    "content": "Thanks for considering contributing! The league only exists with the support of the community.\n\n## How Can I Contribute?\n\n### Do you have an idea to improve the rules?\n\nPlease open [a new GitHub issue](https://github.com/RoboCupAtHome/RuleBook/issues) describing your idea.\n\n### Did you write a fix for a bug?\n\nContributions 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).\n\n### I want to help maintain the league website\n\nWe'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. \nPlease contact the Organizing Committee.\n\n### Do you want to develop a utility for the competition?\n\nGreat! 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.\n\n### Do you want to help run the competition?\n\nThe RoboCup @Home Organizing Committee is always looking for volunteers to help run the event. Please contact the committee.\n\n\n## Contribution Naming Conventions\n\n### Files\nTeX 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.\n\nThe following practices must also be followed:\n- Spaces in filenames must be avoided.\n- The format for date designations is YYYYMMDD (to ensure chronological order over years).\n- File names should be as short as possible (max 25 characters + extension).\n- Special characters such as  ~ ! @ # $ % ^ & * ( ) ` ; < > ? , [ ] { } ' \" and | should be avoided.\n- When using a sequential numbering system, three leading zeros are added for clarity.\n\n### Branches\nBranch names use always small caps (except by acronyms) with words separated with the underscore character.\n\nThe 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:\n- **```year/```** Used for tests mainly, and other changes targeting an specific year.\n  - ```2020/taking_the_bus```\n  - ```2025/IKEA_assembly```\n- **```feature/```** Used to introduce new features and general rules in the rulebook, as well as changes that affect many tests, or modify the scoring.\n  - ```feature/description_of_new_stuff```\n  - ```feature/eegpsr_example_scoresheet```\n- **```fix/```** Used to address or solve an specific issue\n  - ```fix/#185_remove_exact_numbers```\n  - ```fix/#500```\n\n**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."
  },
  {
    "path": ".github/dependabot.yml",
    "content": "version: 2\nupdates:\n  - package-ecosystem: \"github-actions\"\n    directory: \"/\"\n    schedule:\n      interval: \"daily\"\n"
  },
  {
    "path": ".github/pull_request_template.md",
    "content": "** Note: Your contribution is expected to meet the conventions and policies described in the [contribution guidelines](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines:-Contributing) **\n\n## Description\n\nCloses issue #\n\nChanges proposed in this pull request:\n-\n-\n-\n\n## Other comments\nIf this request is marked as a draft, please describe your plans or any specific feedback you would like"
  },
  {
    "path": ".github/workflows/ci.yml",
    "content": "name: CI\n\non: [push, pull_request]\n\njobs:\n  lint:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2\n      - name: LaTeX linter (chktex)\n        uses: j2kun/chktex-action@v2.0.0\n        # Provide this output for context, but don't fail builds\n        continue-on-error: true\n        env:\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n\n  build:\n    name: build-${{ matrix.document }}\n    runs-on: ubuntu-latest\n    container: texlive/texlive:TL2022-historic\n    needs: [lint]\n    strategy:\n      fail-fast: false\n      matrix:\n        document: [rulebook, scoresheets]\n\n    steps:\n    - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2\n    \n    - name: Take ownership of the checkout directory (Git CVE-2022-24765)\n      run: chown --recursive --reference=/ .\n\n    - name: Allow for file ownership conflicts with Docker and GitHub Actions\n      run: git config --global --add safe.directory '*'\n\n    - name: LaTeX compilation\n      run:\n        TERM=xterm make ${{ matrix.document }}\n        \n    - name: Upload build result\n      uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a #v7.0.1\n      with:\n        name: ${{ matrix.document }}\n        path: .build/${{ matrix.document }}.pdf\n        archive: false\n\n  deploy-pdfs:\n    name: deploy-pdfs\n    runs-on: ubuntu-latest\n    permissions:\n      contents: write\n    needs: [build]\n    steps:\n    - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2\n      with:\n        ref: gh-pages\n  \n    - name: Download rulebook\n      uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c #v8.0.1\n      with:\n        name: rulebook.pdf\n        path: ${{ runner.temp }}/rulebook\n    - name: Download scoresheets\n      uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c #v8.0.1\n      with:\n        name: scoresheets.pdf\n        path: ${{ runner.temp }}/scoresheets\n\n    - name: Preparations for GitHub Pages\n      if: github.ref_name == github.event.repository.default_branch\n      env:\n        ARTIFACTS_PATH: ${{ runner.temp }}\n      run: |\n        # Make sure directories exist\n        cd \"${GITHUB_WORKSPACE}\"\n        mkdir -p rulebook\n        mkdir -p scoresheets\n        FILENAME=${GITHUB_REF_NAME}\n        # Strip out any extra slashes in the rest\n        FILENAME=${FILENAME//\\//\\_}.pdf\n        mv ${ARTIFACTS_PATH}/rulebook/rulebook.pdf rulebook/${FILENAME}\n        mv ${ARTIFACTS_PATH}/scoresheets/scoresheets.pdf scoresheets/${FILENAME}\n    - name: Commit and push to GitHub Pages\n      if: github.ref_name == github.event.repository.default_branch\n      uses: stefanzweifel/git-auto-commit-action@v5\n      with:\n        branch: gh-pages\n        commit_author: \"Continuous Deployment <git@robocupathome.org>\"\n        commit_message: \"[github actions] deploy\"\n        commit_user_name: \"Continuous Deployment\"\n        commit_user_email: \"git@robocupathome.org\"\n        file_pattern: \"./*.pdf\"\n        repository: ${{ github.workspace }}\n        skip_checkout: true\n        skip_fetch: true\n"
  },
  {
    "path": ".github/workflows/release.yml",
    "content": "name: Release\n\non:\n  push:\n    tags:\n      - '*'\n\njobs:\n  lint:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2\n      - name: LaTeX linter (chktex)\n        uses: j2kun/chktex-action@v2.0.0\n        # Provide this output for context, but don't fail builds\n        continue-on-error: true\n        env:\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n\n  build:\n    needs: [lint]\n    runs-on: ubuntu-latest\n    container: texlive/texlive:TL2022-historic\n    steps:\n    - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2\n    \n    - name: Take ownership of the checkout directory (Git CVE-2022-24765)\n      run: chown --recursive --reference=/ .\n\n    - name: Allow for file ownership conflicts with Docker and GitHub Actions\n      run: git config --global --add safe.directory '*'\n\n    - name: LaTeX compilation Rulebook\n      run:\n        TERM=xterm make rulebook\n    - name: LaTeX compilation Score sheets\n      run:\n        TERM=xterm make scoresheets\n\n    - name: Create Release\n      id: create-release\n      uses: softprops/action-gh-release@v2\n      with:\n        draft: false\n        prerelease: false\n        generate_release_notes: false\n        token: ${{ secrets.GITHUB_TOKEN }}\n        files: |\n          .build/rulebook.pdf\n          .build/scoresheets.pdf\n"
  },
  {
    "path": ".gitignore",
    "content": ".build\n.vscode\n\n*.aux\n*.glo\n*.idx\n*.log\n*.toc\n*.ist\n*.acn\n*.acr\n*.alg\n*.bbl\n*.blg\n*.dvi\n*.glg\n*.gls\n*.ilg\n*.ind\n*.lof\n*.lot\n*.maf\n*.mtc\n*.mtc1\n*.out\n*.synctex.gz\n*.and\n*.adx\n*.tex~\n*.pdf\n.temp_*\n*.backup\n*.rubbercache\n"
  },
  {
    "path": "CHANGELOG.md",
    "content": "# Changelog\n\n[Current Draft]: https://github.com/RoboCupAtHome/RuleBook/compare/2025.1..HEAD\n[2026.1]: https://github.com/RoboCupAtHome/RuleBook/compare/2025.1..2026.1\n[2025.1]: https://github.com/RoboCupAtHome/RuleBook/compare/2024.2..2025.1\n[2024.2]: https://github.com/RoboCupAtHome/RuleBook/compare/2024.1..2024.2\n[2024.1]: https://github.com/RoboCupAtHome/RuleBook/compare/2023.2..2024.1\n[2023.2]: https://github.com/RoboCupAtHome/RuleBook/compare/2023.1..2023.2\n[2023.1]: https://github.com/RoboCupAtHome/RuleBook/compare/2019.v1..2023.1\n\n\nAll notable changes to this project will be documented in this file.\n\n## Rulebook [Current Draft]\n\n* [#1046](https://github.com/RoboCupAtHome/RuleBook/pull/1046) Reduce overall scores in **Restaurant**\n  * Add first pick/place bonus to encourage manipulation\n* [#1038](https://github.com/RoboCupAtHome/RuleBook/pull/1038) Adjustments for **Finals**\n  * additional task: move laundry basket near the washing machine\n  * reduce points for closing\n* [#1037](https://github.com/RoboCupAtHome/RuleBook/pull/1037) Add environment change penalty to **Doing Laundry**\n* [#1035](https://github.com/RoboCupAtHome/RuleBook/pull/1035)[#1036](https://github.com/RoboCupAtHome/RuleBook/pull/1036)[#1042](https://github.com/RoboCupAtHome/RuleBook/pull/1042)[#1043](https://github.com/RoboCupAtHome/RuleBook/pull/1043)[#1044](https://github.com/RoboCupAtHome/RuleBook/pull/1044)[#1045](https://github.com/RoboCupAtHome/RuleBook/pull/1045) Various rule improvements and clarifications\n* [#1034](https://github.com/RoboCupAtHome/RuleBook/pull/1034) Robot interactions are now always scored by the person interacting with the robot.\n  * e.g. it is often hard for the referees to understand if the robot says the correct information or held eye contact\n* [#1033](https://github.com/RoboCupAtHome/RuleBook/pull/1033) Time limit for **Human Robot Interaction Challenge** is now always 7 minutes regardless of door opening.\n* [#1025](https://github.com/RoboCupAtHome/RuleBook/pull/1025) Updates to **Pick and Place Challenge**\n  * Added side table with two common items (worldwide available set). Robots may choose to pick these instead of the objects on the dining table and store them in the cabinet with a small penalty (simpler and known in advance).\n  * Added human assistance penalty for requesting environment changes (move chairs or decorations). Penalty is per item moved (per chair or per set of decorations)\n* [#1023](https://github.com/RoboCupAtHome/RuleBook/pull/1023) **Restaurant** order is now capped at 2 items. Decreased penalties where robot asked for customer location info (not guided).\n* [#1021](https://github.com/RoboCupAtHome/RuleBook/pull/1021) **Doing Laundry** improvements\n  * changes in **Doing Laundry** procedure and scoring\n  * No points for simple pick and place: now onetime score for picking a single clothing piece from basket\n  * Penalties for dropping clothing\n  * Higher score for first folded item\n  * Specific HumanAssistance penalty for arranging or flattening the clothing before folding.\n* [#1021](https://github.com/RoboCupAtHome/RuleBook/pull/1021) Improve scoresheets\n  * remove bonus goal rulings, most objectives can be obtained at any time, unless task specific remarks.\n* [#1022](https://github.com/RoboCupAtHome/RuleBook/pull/1022) Add missing **Restaurant** restart rulings.\n* [#1024](https://github.com/RoboCupAtHome/RuleBook/pull/1024) Remove cabinet door closing from finals\n  * Doors no longer requirement for LOC. Will be added as additional goal if available.\n* [#1017](https://github.com/RoboCupAtHome/RuleBook/pull/1017) Added common objects always used during competition\n  * e.g. red bull can, pringles can, rubiks cube and colgate toothpaste box were selected due to their availability worldwide.\n  * Explicit mention allows teams to acquire and prepare for these objects without buying the full ycb dataset\n* [#1018](https://github.com/RoboCupAtHome/RuleBook/pull/1018) Updated start signal rulings.\n  * The manual start signal is now explicitly used during inspection \n* [#1019](https://github.com/RoboCupAtHome/RuleBook/pull/1019) Updated number of teams qualified for Finals\n  * With the removal of the sub-leagues more teams fit in the schedule of the finals\n  * Added clarification that **Restaurant** is only run once\n  * Added **Restaurant** may require registration/qualification\n* [#1010](https://github.com/RoboCupAtHome/RuleBook/pull/1010) Add handover rulings to **Human Robot Interaction Challenge**\n* [#1008](https://github.com/RoboCupAtHome/RuleBook/pull/1008) Fix inconsistencies in scenario description and league requirements\n* [#1012](https://github.com/RoboCupAtHome/RuleBook/pull/1012) Improve *following the host* description\n* [#1007](https://github.com/RoboCupAtHome/RuleBook/pull/1007) Fix wrong 'not attending penalty' in penalty section\n* [#1009](https://github.com/RoboCupAtHome/RuleBook/pull/1009) Removed some SPL mentions\n\n## Rulebook [2026.1] - 2025-12-01\n\n* [#998](https://github.com/RoboCupAtHome/RuleBook/pull/998) Update **GPSR**\n  * Add rephrasing by llm and corresponding rulings.\n  * Removed non-expert operator as rephrasing is now included.\n* [#999](https://github.com/RoboCupAtHome/RuleBook/pull/999) Update **Final**\n  * Just add rulings - **Final** still uses old EGPSR Task Rulings\n* [#994](https://github.com/RoboCupAtHome/RuleBook/pull/994): New Task **Pick and Place Challenge**\n  * Combines aspects of **Storing Groceries**, **Serve Breakfast** and **Clean the Table**\n  * Robot is free to choose what parts to solve.\n* [#995](https://github.com/RoboCupAtHome/RuleBook/pull/995): Rename **Receptionist** → **Human Robot Interaction Challenge**\n  * Removed predetermined list of names and drinks; now any English name can be chosen.\n  * Removed drink location requirement, as object recognition is not the task focus.\n  * Added a short following (“help me carry”) procedure at the end.\n  * Added doorbell/knock recognition.\n* [#997](https://github.com/RoboCupAtHome/RuleBook/pull/997): Removed QR codes from Rulebook.\n  * Showing QR code is too unnatural.\n  * added clarifications to natural alternative HRI (i.e. touchscreens)\n* [#990](https://github.com/RoboCupAtHome/RuleBook/pull/990): New Restart Rule\n  * A restart no longer requires requeuing. Instead the team immediately continues with the second attempt.\n  * Test time continues running, and the team must resume the test within 1 minute.\n  * All points scored before the restart are voided.\n* [#990](https://github.com/RoboCupAtHome/RuleBook/pull/990): Remove Stage system\n  * The stage system was removed to simplify the competition format.\n  * Previously, only a subset of teams advanced to later stages, which limited participation and reduced the number of runs per team. In the new format, all teams compete in the same set of tasks across multiple days, ensuring more consistent evaluation.\n  * The new structure also allows teams to demonstrate progress and improve their performance over the course of the competition.\n  * The number of tasks was reduced to four (repeated each day) plus the Restaurant test.\n    * Removed **EGPSR**\n    * Removed **Help me Carry**\n  * A goal is to reduce unnecessary repetition of skills across tasks, making each task more meaningful and distinct.\n* [#987](https://github.com/RoboCupAtHome/RuleBook/pull/987): Merge both leagues - Remove DSPL. \n  * A single, unified RoboCup@Home league takes effect immediately. \n* [#969](https://github.com/RoboCupAtHome/RuleBook/pull/969): Remove optional Tray in **Clean the Table**\n\n## Rulebook [2025.1] - 2025-04-14\n* [#946](https://github.com/RoboCupAtHome/RuleBook/pull/946), [#947](https://github.com/RoboCupAtHome/RuleBook/pull/947): Various small scoring changes.\n  * **Receptionist**: : Test time now starts only after the first person enters the arena or two minutes after the start signal, allowing up to two extra minutes to open the door for the first guest.\n* [#943](https://github.com/RoboCupAtHome/RuleBook/pull/943): New HRI task **Give Me A Hand** replacing Stickler. See the pull request for full details.\n* [#938](https://github.com/RoboCupAtHome/RuleBook/pull/938): Expanded problem set for **EGPSR**.\n  * Increased the number of generated problems to boost audience engagement.\n  * Repeatedly solving the same category now awards fewer points.\n  * Setup generator moved to [RoboCupAtHome/CommandGenerator](https://github.com/RoboCupAtHome/CommandGenerator).\n* [#928](https://github.com/RoboCupAtHome/RuleBook/pull/928): New **Finals** format introduced. Check out the pull request for the rationale.\n  * Finals are now task-like instead of a presentation.\n  * Based on **EGPSR**, with the addition of opening and closing doors (arena, cabinet, and dishwasher).\n* [#921](https://github.com/RoboCupAtHome/RuleBook/pull/921):  New Robot restart procedure during challenges.\n  * Teams may request one restart per attempt, subject to a 30-second penalty. \n  * Restart requires the team to leave the arena, requeue, and restart within their remaining time.\n* [#935](https://github.com/RoboCupAtHome/RuleBook/pull/935): Add additional tasks to storing groceries.\n  * Use of both cabinet doors required.\n  * Add refilling storage containers (pouring).\n  * Add grasping from the shopping bag.\n  * Increase time limit to 7 minutes.\n* [#936](https://github.com/RoboCupAtHome/RuleBook/pull/936): Extend **Clean the Table**.\n  * Put drink items into trash.\n  * Wipe the table under drinks.\n  * Miscellaneous scoring changes.\n* [#933](https://github.com/RoboCupAtHome/RuleBook/pull/933): Remove **Serve Breakfast** task to optimize Stage 1 schedule.\n* [#920](https://github.com/RoboCupAtHome/RuleBook/pull/920): DSPL: Mounted microphones now permitted on the HSR robot.\n* [#922](https://github.com/RoboCupAtHome/RuleBook/pull/922): Removed bonus for perceived social intelligence, as the evaluation was impractical at RoboCup.\n* [#917](https://github.com/RoboCupAtHome/RuleBook/pull/917): Reverted the split between Rulebook and Organization document.\n* [#887](https://github.com/RoboCupAtHome/RuleBook/pull/887): Discontinued the **Social Standard Platform League**.\n  * Low participation levels.\n  * Former SSPL teams may now join the Open Platform League (OPL) and modify their robots.\n* [#903](https://github.com/RoboCupAtHome/RuleBook/pull/903): Rename **Carry My Luggage** to **Help Me Carry**.\n* [#908](https://github.com/RoboCupAtHome/RuleBook/pull/908): Remove the possibility of doing other tasks during the **GPSR** slot.\n\n## Rulebook [2024.2] - 2024-05-03\nUpdated release based on German Open feedback.\n* [#862](https://github.com/RoboCupAtHome/RuleBook/pull/862): Storing Groceries\n* [#863](https://github.com/RoboCupAtHome/RuleBook/pull/863): Receptionist\n* [#864](https://github.com/RoboCupAtHome/RuleBook/pull/864): Carry my Luggage\n* [#865](https://github.com/RoboCupAtHome/RuleBook/pull/865): GPSR\n* [#866](https://github.com/RoboCupAtHome/RuleBook/pull/866): Restaurant\n* [#867](https://github.com/RoboCupAtHome/RuleBook/pull/867): Stickler for the Rules\n* [#868](https://github.com/RoboCupAtHome/RuleBook/pull/868): EGPSR\n* [#869](https://github.com/RoboCupAtHome/RuleBook/pull/869): Serve Breakfast\n* [#870](https://github.com/RoboCupAtHome/RuleBook/pull/870): Scoresheet cleanup\n\n## Rulebook [2024.1] - 2024-03-05\n* split document into Rulebook and Organization document [(PR)](https://github.com/RoboCupAtHome/RuleBook/pull/831)\n  * RoboCup@Home Rulebook: Rules and Regulations for the competition.\n  * RoboCup@Home Organization document: Rules and Regulations on the organization of the competition\n* [New Command Generator for GPSR](https://github.com/johaq/CommandGenerator/tree/master)\n* updated Task: EGPSR [(PR)](https://github.com/RoboCupAtHome/RuleBook/pull/844)\n  * Robot has to restore the default arena state and requests\n* add a social survey in restaurant and receptionist tasks [(PR)](https://github.com/RoboCupAtHome/RuleBook/pull/839)\n* requesting Deus Ex Machina assistance now requires the robot to show its perception [(PR)](https://github.com/RoboCupAtHome/RuleBook/pull/838)\n* small scoring items for attempting tasks, and more consistent scoring between tests [(PR)](https://github.com/RoboCupAtHome/RuleBook/pull/843)\n"
  },
  {
    "path": "LICENSE",
    "content": "The content of this project itself is licensed under the Creative Commons \nAttribution Share Alike 4.0 International license, and the underlying source code\nused to format and display that content is licensed under the GPL v2 license.\n"
  },
  {
    "path": "LICENSE.CC-BY-SA-4.0",
    "content": "Attribution-ShareAlike 4.0 International\n\n=======================================================================\n\nCreative Commons Corporation (\"Creative Commons\") is not a law firm and\ndoes not provide legal services or legal advice. Distribution of\nCreative Commons public licenses does not create a lawyer-client or\nother relationship. Creative Commons makes its licenses and related\ninformation available on an \"as-is\" basis. Creative Commons gives no\nwarranties regarding its licenses, any material licensed under their\nterms and conditions, or any related information. Creative Commons\ndisclaims all liability for damages resulting from their use to the\nfullest extent possible.\n\nUsing Creative Commons Public Licenses\n\nCreative Commons public licenses provide a standard set of terms and\nconditions that creators and other rights holders may use to share\noriginal works of authorship and other material subject to copyright\nand certain other rights specified in the public license below. The\nfollowing considerations are for informational purposes only, are not\nexhaustive, and do not form part of our licenses.\n\n     Considerations for licensors: Our public licenses are\n     intended for use by those authorized to give the public\n     permission to use material in ways otherwise restricted by\n     copyright and certain other rights. Our licenses are\n     irrevocable. Licensors should read and understand the terms\n     and conditions of the license they choose before applying it.\n     Licensors should also secure all rights necessary before\n     applying our licenses so that the public can reuse the\n     material as expected. Licensors should clearly mark any\n     material not subject to the license. This includes other CC-\n     licensed material, or material used under an exception or\n     limitation to copyright. More considerations for licensors:\n    wiki.creativecommons.org/Considerations_for_licensors\n\n     Considerations for the public: By using one of our public\n     licenses, a licensor grants the public permission to use the\n     licensed material under specified terms and conditions. If\n     the licensor's permission is not necessary for any reason--for\n     example, because of any applicable exception or limitation to\n     copyright--then that use is not regulated by the license. Our\n     licenses grant only permissions under copyright and certain\n     other rights that a licensor has authority to grant. Use of\n     the licensed material may still be restricted for other\n     reasons, including because others have copyright or other\n     rights in the material. A licensor may make special requests,\n     such as asking that all changes be marked or described.\n     Although not required by our licenses, you are encouraged to\n     respect those requests where reasonable. More considerations\n     for the public:\n    wiki.creativecommons.org/Considerations_for_licensees\n\n=======================================================================\n\nCreative Commons Attribution-ShareAlike 4.0 International Public\nLicense\n\nBy exercising the Licensed Rights (defined below), You accept and agree\nto be bound by the terms and conditions of this Creative Commons\nAttribution-ShareAlike 4.0 International Public License (\"Public\nLicense\"). To the extent this Public License may be interpreted as a\ncontract, You are granted the Licensed Rights in consideration of Your\nacceptance of these terms and conditions, and the Licensor grants You\nsuch rights in consideration of benefits the Licensor receives from\nmaking the Licensed Material available under these terms and\nconditions.\n\n\nSection 1 -- Definitions.\n\n  a. Adapted Material means material subject to Copyright and Similar\n     Rights that is derived from or based upon the Licensed Material\n     and in which the Licensed Material is translated, altered,\n     arranged, transformed, or otherwise modified in a manner requiring\n     permission under the Copyright and Similar Rights held by the\n     Licensor. For purposes of this Public License, where the Licensed\n     Material is a musical work, performance, or sound recording,\n     Adapted Material is always produced where the Licensed Material is\n     synched in timed relation with a moving image.\n\n  b. Adapter's License means the license You apply to Your Copyright\n     and Similar Rights in Your contributions to Adapted Material in\n     accordance with the terms and conditions of this Public License.\n\n  c. BY-SA Compatible License means a license listed at\n     creativecommons.org/compatiblelicenses, approved by Creative\n     Commons as essentially the equivalent of this Public License.\n\n  d. Copyright and Similar Rights means copyright and/or similar rights\n     closely related to copyright including, without limitation,\n     performance, broadcast, sound recording, and Sui Generis Database\n     Rights, without regard to how the rights are labeled or\n     categorized. For purposes of this Public License, the rights\n     specified in Section 2(b)(1)-(2) are not Copyright and Similar\n     Rights.\n\n  e. Effective Technological Measures means those measures that, in the\n     absence of proper authority, may not be circumvented under laws\n     fulfilling obligations under Article 11 of the WIPO Copyright\n     Treaty adopted on December 20, 1996, and/or similar international\n     agreements.\n\n  f. Exceptions and Limitations means fair use, fair dealing, and/or\n     any other exception or limitation to Copyright and Similar Rights\n     that applies to Your use of the Licensed Material.\n\n  g. License Elements means the license attributes listed in the name\n     of a Creative Commons Public License. The License Elements of this\n     Public License are Attribution and ShareAlike.\n\n  h. Licensed Material means the artistic or literary work, database,\n     or other material to which the Licensor applied this Public\n     License.\n\n  i. Licensed Rights means the rights granted to You subject to the\n     terms and conditions of this Public License, which are limited to\n     all Copyright and Similar Rights that apply to Your use of the\n     Licensed Material and that the Licensor has authority to license.\n\n  j. Licensor means the individual(s) or entity(ies) granting rights\n     under this Public License.\n\n  k. Share means to provide material to the public by any means or\n     process that requires permission under the Licensed Rights, such\n     as reproduction, public display, public performance, distribution,\n     dissemination, communication, or importation, and to make material\n     available to the public including in ways that members of the\n     public may access the material from a place and at a time\n     individually chosen by them.\n\n  l. Sui Generis Database Rights means rights other than copyright\n     resulting from Directive 96/9/EC of the European Parliament and of\n     the Council of 11 March 1996 on the legal protection of databases,\n     as amended and/or succeeded, as well as other essentially\n     equivalent rights anywhere in the world.\n\n  m. You means the individual or entity exercising the Licensed Rights\n     under this Public License. Your has a corresponding meaning.\n\n\nSection 2 -- Scope.\n\n  a. License grant.\n\n       1. Subject to the terms and conditions of this Public License,\n          the Licensor hereby grants You a worldwide, royalty-free,\n          non-sublicensable, non-exclusive, irrevocable license to\n          exercise the Licensed Rights in the Licensed Material to:\n\n            a. reproduce and Share the Licensed Material, in whole or\n               in part; and\n\n            b. produce, reproduce, and Share Adapted Material.\n\n       2. Exceptions and Limitations. For the avoidance of doubt, where\n          Exceptions and Limitations apply to Your use, this Public\n          License does not apply, and You do not need to comply with\n          its terms and conditions.\n\n       3. Term. The term of this Public License is specified in Section\n          6(a).\n\n       4. Media and formats; technical modifications allowed. The\n          Licensor authorizes You to exercise the Licensed Rights in\n          all media and formats whether now known or hereafter created,\n          and to make technical modifications necessary to do so. The\n          Licensor waives and/or agrees not to assert any right or\n          authority to forbid You from making technical modifications\n          necessary to exercise the Licensed Rights, including\n          technical modifications necessary to circumvent Effective\n          Technological Measures. For purposes of this Public License,\n          simply making modifications authorized by this Section 2(a)\n          (4) never produces Adapted Material.\n\n       5. Downstream recipients.\n\n            a. Offer from the Licensor -- Licensed Material. Every\n               recipient of the Licensed Material automatically\n               receives an offer from the Licensor to exercise the\n               Licensed Rights under the terms and conditions of this\n               Public License.\n\n            b. Additional offer from the Licensor -- Adapted Material.\n               Every recipient of Adapted Material from You\n               automatically receives an offer from the Licensor to\n               exercise the Licensed Rights in the Adapted Material\n               under the conditions of the Adapter's License You apply.\n\n            c. No downstream restrictions. You may not offer or impose\n               any additional or different terms or conditions on, or\n               apply any Effective Technological Measures to, the\n               Licensed Material if doing so restricts exercise of the\n               Licensed Rights by any recipient of the Licensed\n               Material.\n\n       6. No endorsement. Nothing in this Public License constitutes or\n          may be construed as permission to assert or imply that You\n          are, or that Your use of the Licensed Material is, connected\n          with, or sponsored, endorsed, or granted official status by,\n          the Licensor or others designated to receive attribution as\n          provided in Section 3(a)(1)(A)(i).\n\n  b. Other rights.\n\n       1. Moral rights, such as the right of integrity, are not\n          licensed under this Public License, nor are publicity,\n          privacy, and/or other similar personality rights; however, to\n          the extent possible, the Licensor waives and/or agrees not to\n          assert any such rights held by the Licensor to the limited\n          extent necessary to allow You to exercise the Licensed\n          Rights, but not otherwise.\n\n       2. Patent and trademark rights are not licensed under this\n          Public License.\n\n       3. To the extent possible, the Licensor waives any right to\n          collect royalties from You for the exercise of the Licensed\n          Rights, whether directly or through a collecting society\n          under any voluntary or waivable statutory or compulsory\n          licensing scheme. In all other cases the Licensor expressly\n          reserves any right to collect such royalties.\n\n\nSection 3 -- License Conditions.\n\nYour exercise of the Licensed Rights is expressly made subject to the\nfollowing conditions.\n\n  a. Attribution.\n\n       1. If You Share the Licensed Material (including in modified\n          form), You must:\n\n            a. retain the following if it is supplied by the Licensor\n               with the Licensed Material:\n\n                 i. identification of the creator(s) of the Licensed\n                    Material and any others designated to receive\n                    attribution, in any reasonable manner requested by\n                    the Licensor (including by pseudonym if\n                    designated);\n\n                ii. a copyright notice;\n\n               iii. a notice that refers to this Public License;\n\n                iv. a notice that refers to the disclaimer of\n                    warranties;\n\n                 v. a URI or hyperlink to the Licensed Material to the\n                    extent reasonably practicable;\n\n            b. indicate if You modified the Licensed Material and\n               retain an indication of any previous modifications; and\n\n            c. indicate the Licensed Material is licensed under this\n               Public License, and include the text of, or the URI or\n               hyperlink to, this Public License.\n\n       2. You may satisfy the conditions in Section 3(a)(1) in any\n          reasonable manner based on the medium, means, and context in\n          which You Share the Licensed Material. For example, it may be\n          reasonable to satisfy the conditions by providing a URI or\n          hyperlink to a resource that includes the required\n          information.\n\n       3. If requested by the Licensor, You must remove any of the\n          information required by Section 3(a)(1)(A) to the extent\n          reasonably practicable.\n\n  b. ShareAlike.\n\n     In addition to the conditions in Section 3(a), if You Share\n     Adapted Material You produce, the following conditions also apply.\n\n       1. The Adapter's License You apply must be a Creative Commons\n          license with the same License Elements, this version or\n          later, or a BY-SA Compatible License.\n\n       2. You must include the text of, or the URI or hyperlink to, the\n          Adapter's License You apply. You may satisfy this condition\n          in any reasonable manner based on the medium, means, and\n          context in which You Share Adapted Material.\n\n       3. You may not offer or impose any additional or different terms\n          or conditions on, or apply any Effective Technological\n          Measures to, Adapted Material that restrict exercise of the\n          rights granted under the Adapter's License You apply.\n\n\nSection 4 -- Sui Generis Database Rights.\n\nWhere the Licensed Rights include Sui Generis Database Rights that\napply to Your use of the Licensed Material:\n\n  a. for the avoidance of doubt, Section 2(a)(1) grants You the right\n     to extract, reuse, reproduce, and Share all or a substantial\n     portion of the contents of the database;\n\n  b. if You include all or a substantial portion of the database\n     contents in a database in which You have Sui Generis Database\n     Rights, then the database in which You have Sui Generis Database\n     Rights (but not its individual contents) is Adapted Material,\n\n     including for purposes of Section 3(b); and\n  c. You must comply with the conditions in Section 3(a) if You Share\n     all or a substantial portion of the contents of the database.\n\nFor the avoidance of doubt, this Section 4 supplements and does not\nreplace Your obligations under this Public License where the Licensed\nRights include other Copyright and Similar Rights.\n\n\nSection 5 -- Disclaimer of Warranties and Limitation of Liability.\n\n  a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE\n     EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS\n     AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF\n     ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,\n     IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,\n     WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR\n     PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,\n     ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT\n     KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT\n     ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.\n\n  b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE\n     TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,\n     NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,\n     INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,\n     COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR\n     USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN\n     ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR\n     DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR\n     IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.\n\n  c. The disclaimer of warranties and limitation of liability provided\n     above shall be interpreted in a manner that, to the extent\n     possible, most closely approximates an absolute disclaimer and\n     waiver of all liability.\n\n\nSection 6 -- Term and Termination.\n\n  a. This Public License applies for the term of the Copyright and\n     Similar Rights licensed here. However, if You fail to comply with\n     this Public License, then Your rights under this Public License\n     terminate automatically.\n\n  b. Where Your right to use the Licensed Material has terminated under\n     Section 6(a), it reinstates:\n\n       1. automatically as of the date the violation is cured, provided\n          it is cured within 30 days of Your discovery of the\n          violation; or\n\n       2. upon express reinstatement by the Licensor.\n\n     For the avoidance of doubt, this Section 6(b) does not affect any\n     right the Licensor may have to seek remedies for Your violations\n     of this Public License.\n\n  c. For the avoidance of doubt, the Licensor may also offer the\n     Licensed Material under separate terms or conditions or stop\n     distributing the Licensed Material at any time; however, doing so\n     will not terminate this Public License.\n\n  d. Sections 1, 5, 6, 7, and 8 survive termination of this Public\n     License.\n\n\nSection 7 -- Other Terms and Conditions.\n\n  a. The Licensor shall not be bound by any additional or different\n     terms or conditions communicated by You unless expressly agreed.\n\n  b. Any arrangements, understandings, or agreements regarding the\n     Licensed Material not stated herein are separate from and\n     independent of the terms and conditions of this Public License.\n\n\nSection 8 -- Interpretation.\n\n  a. For the avoidance of doubt, this Public License does not, and\n     shall not be interpreted to, reduce, limit, restrict, or impose\n     conditions on any use of the Licensed Material that could lawfully\n     be made without permission under this Public License.\n\n  b. To the extent possible, if any provision of this Public License is\n     deemed unenforceable, it shall be automatically reformed to the\n     minimum extent necessary to make it enforceable. If the provision\n     cannot be reformed, it shall be severed from this Public License\n     without affecting the enforceability of the remaining terms and\n     conditions.\n\n  c. No term or condition of this Public License will be waived and no\n     failure to comply consented to unless expressly agreed to by the\n     Licensor.\n\n  d. Nothing in this Public License constitutes or may be interpreted\n     as a limitation upon, or waiver of, any privileges and immunities\n     that apply to the Licensor or You, including from the legal\n     processes of any jurisdiction or authority.\n\n\n=======================================================================\n\nCreative Commons is not a party to its public\nlicenses. Notwithstanding, Creative Commons may elect to apply one of\nits public licenses to material it publishes and in those instances\nwill be considered the “Licensor.” The text of the Creative Commons\npublic licenses is dedicated to the public domain under the CC0 Public\nDomain Dedication. Except for the limited purpose of indicating that\nmaterial is shared under a Creative Commons public license or as\notherwise permitted by the Creative Commons policies published at\ncreativecommons.org/policies, Creative Commons does not authorize the\nuse of the trademark \"Creative Commons\" or any other trademark or logo\nof Creative Commons without its prior written consent including,\nwithout limitation, in connection with any unauthorized modifications\nto any of its public licenses or any other arrangements,\nunderstandings, or agreements concerning use of licensed material. For\nthe avoidance of doubt, this paragraph does not form part of the\npublic licenses.\n\nCreative Commons may be contacted at creativecommons.org.\n\n"
  },
  {
    "path": "LICENSE.GPL-2.0",
    "content": "GNU GENERAL PUBLIC LICENSE\nVersion 2, June 1991\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc. \n51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA\n\nEveryone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.\n\nPreamble\n\nThe licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too.\n\nWhen we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.\n\nTo protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.\n\nFor example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.\n\nWe protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.\n\nAlso, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.\n\nFinally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.\n\nThe precise terms and conditions for copying, distribution and modification follow.\n\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n\n0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The \"Program\", below, refers to any such program or work, and a \"work based on the Program\" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term \"modification\".) Each licensee is addressed as \"you\".\nActivities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.\n\n1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.\nYou may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.\n\n2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:\na) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.\nb) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.\nc) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)\nThese requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.\n\n3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:\na) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,\nb) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,\nc) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)\nThe source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.\n\nIf distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.\n\n4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.\n5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.\n6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.\n7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.\nIf any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.\n\nIt is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.\n\nThis section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.\n\n8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.\n9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.\nEach version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and \"any later version\", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.\n\n10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.\nNO WARRANTY\n\n11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\nEND OF TERMS AND CONDITIONS"
  },
  {
    "path": "Makefile",
    "content": ".SUFFIXES:\nROOT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))\nBUILD_DIR:=$(ROOT_DIR)/.build\n\n## TOOLS\nSILENT = @\nMSG      = echo\nHASRUBBER:=$(shell which rubber)\n\n## COLORS \nRESET       = tput sgr0\nYELLOW      = tput setaf 3; tput bold\n\nTEXFILES=$(shell find -name \"*.tex\")\n# Use all documents/*.tex files\nSOURCES=$(wildcard documents/*.tex)\n_S0 := $(subst .tex,,$(SOURCES))\nTEXRULES := $(subst documents/,, $(_S0))\n\n#################################################\n# Rules\n#################################################\n.PHONY: all clean ${TEXRULES} lint\nall: $(TEXRULES)\nclean:\n\trm -rf .build\n\n.build: \n\tmkdir -p .build\n\n# Same as github lint action\nlint:\n\t$(SILENT) ${YELLOW}; $(MSG)  \"Running chktex\"; $(RESET)\n\t$(SILENT) chktex ${TEXFILES}\n\n\n#################################################\n# Generate rules for sources\n#################################################\ndefine latex_rules\nmain_file := $(1)\n\n## documents/foo.tex -> foo\n_SCARP0 := $$(subst .tex,,$$(main_file))\nRULENAME := $$(subst documents/,, $$(_SCARP0))\n\n## Generates rules for pdfs\n$$(RULENAME): $$(main_file) | .build \n\t$(SILENT) ${YELLOW}; $(MSG)  \"Building $$<\"; $(RESET)\nifdef HASRUBBER\n\t$(SILENT) rubber --unsafe --pdf --force $$<\nelse\n\t$(SILENT) latexmk -Werror -shell-escape -silent -pdf -interaction=nonstopmode -outdir=$${BUILD_DIR} $$<\nendif\n\n## Generate Summary Rule\n$$(RULENAME)_summary: | $$(RULENAME)\n\t$(SILENT) tail -n1 .build/$$(|).log\nendef\n\n$(foreach source, $(SOURCES), $(eval $(call latex_rules, $(source))))"
  },
  {
    "path": "README.md",
    "content": "RuleBook for RoboCup @Home 2026\n===============================\n\n[![CI](https://github.com/RoboCupAtHome/RuleBook/actions/workflows/ci.yml/badge.svg)](https://github.com/RoboCupAtHome/RuleBook/actions/workflows/ci.yml)\n\n### PDF Downloads\n\n[Rulebook](https://robocupathome.github.io/RuleBook/rulebook/master.pdf)  \n[Score sheets](https://robocupathome.github.io/RuleBook/scoresheets/master.pdf)  \n\nThe current version for 2026 is **final**; only minor (language) updates and clarifications may be made from now on.\n\n[Changelog](CHANGELOG.md)\n\nRoboCup@Home teams and team members are welcome to post GitHub issues for clarifications, questions etc.\n\nImprovements are also welcome in the form of pull requests (see [guidelines](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines)).\n\n\n\n### FAQ\nSee the Frequently Asked Questions [here](https://github.com/RoboCupAtHome/RuleBook/wiki/FAQ:-Frequently-Asked-Questions).\n\nOr ask us via Telegram: [https://t.me/RoboCupAtHome](https://t.me/RoboCupAtHome)\n\n\n### Question, issues, and contribution Guidelines\n- When asking questions [please follow these Guidelines](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines:-Questions).\n- Guidelines for setting up an issue are [here](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines:-Issues). Open an issue for:\n  - Typos, misspellings, and broken references.\n  - The rules are unclear or poorly specified.\n  - One rule contradicts another.\n  - The RuleBook contains outdated information\n  - Scoresheets are cryptic of hard to read.\n  - Compilation and build errors.\n- To contribute directly with the rulebook (Pull Requests), please read the conventions in the [Contribution Guidelines](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines:-Contributing) and in the [Workflow Guidelines](https://github.com/RoboCupAtHome/RuleBook/wiki/Guidelines:-Workflow)\n\n### RoboCup\nRoboCup\nis an international joint project to promote AI, robotics, and related fields.  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 [http://www.robocup.org/](http://www.robocup.org/).\n\n### RoboCup@Home\nThe RoboCup@Home league aims to develop service and assistive robot technology with high relevance for future personal domestic applications. It is the largest international annual compe- tition for autonomous service robots and is part of the RoboCup initiative. A set of benchmark tests is used to evaluate the robots abilities and performance in a realistic non-standardized home environment setting.  Focus lies on the following domains but is not limited to:  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. It is collocated with the RoboCup symposium.\n\n### Contributing\nThe RoboCup @Home Organizing Committee is always looking for volunteers to assist in the events and willing to help to maintain the sites. Volunteers can help in tasks such as organizing and categorizing publications, team videos, memories, scores, press, and writing examples and extended rule explanations. Other projects such as developing utilities for the competition and tools for referees are also welcome. If you would like to collaborate, write to any of the members of the Organizing Committee.\n\nContributions and improvements to the rulebook are always welcome in the form of pull requests.\n\n### Building\n\nThe easiest way is to utilize the `docker.io/texlive/texlive:TL2022-historic` image to build everything.\n\nFor convenience, you should execute `build.sh` to make the PDFs with a container runtime. (This requires either `docker` or `podman` to be installed)\n\n\n### Recorded data\nData is recorded from the robots during the competition. It is available through the following links:\n\n**European Open 2016**\n\n- [All challenges](https://mega.nz/#!FhMnAYQS!P22mTNvfDjU2GHf02G3omgmS715dQSURFTLuUfkdxic)\n\n**Leipzig 2016**\n- [Finals](https://mega.nz/#!Y4czyLST!2TotbyL53DA2iIG6oZ9QkcEf94ktpm2_btJltj_J2dE)\n- [Following & Guding](https://mega.nz/#!dwU1XRQB!czz2BtGLM5-ewaviBdtUIl62kECn3dJXljk50KB_7t4)\n- [GPSR](https://mega.nz/#!UlFk3ZCQ!ooe0V2yksQ-3X35uIk8d-on8Plzh-CGbwDPoyvVa43Q)\n- [Manipulation & Object Recognition](https://mega.nz/#!5k1FxAzY!DgtpcSjdOQmfQUVRm5iYoOuZ8r7h7G2GXMtjORsNjME)\n- [Navigation](https://mega.nz/#!As9XiIzD!wYAWcquTKl6jBf2IifpnliRNQ34Ddhwe0X-pyEhebeE)\n- [Open Challenge](https://mega.nz/#!R4EVwKKQ!2RgqoO2Fm8ba87yFcZKgIpI6mwHcaAvyo7_FR9_KNfE)\n- [Restaurant](https://mega.nz/#!lpFjQTAS!wOO0ieAedr-JDrh166dOOqilMWBGsA3_Ij5t4an1mdI)\n- [Speech Recognition](https://mega.nz/#!ts02iYRQ!L3McBFzodJG0UTmauCj2crSapmAr8GWwtB4FLGzQlEs)\n\n### More information\n- **@Home Website**: [http://athome.robocup.org/](http://athome.robocup.org/)\n    - @Home Website (backup): [http://robocupathome.org/](http://robocupathome.org/)\n- **Telegram group** for Q&A and rules discussion: [https://t.me/RoboCupAtHome](https://t.me/RoboCupAtHome)\n- Whatsapp group: Please join the Telegram group\n- RoboCup 2019 Website [https://2019.robocup.org](https://2019.robocup.org)\n- [General mailing list](http://lists.robocup.org/cgi-bin/mailman/listinfo/robocup-athome)\n- [Youtube channel](https://www.youtube.com/channel/UChkdCpT0xrFMMt-_N8wSVew/)\n- [Facebook Page](https://www.facebook.com/robocupathome/)\n- [RoboCup @Home Wiki](https://github.com/RoboCupAtHome/AtHomeCommunityWiki/wiki)\n- [Forum](https://athome.forum.robocup.org/)\n- [Gitter.im chat](https://gitter.im/RoboCupAtHome/Lobby)\n"
  },
  {
    "path": "build.sh",
    "content": "#!/bin/sh\n\nIMAGE=docker.io/texlive/texlive:TL2022-historic\n\nif command -v podman >/dev/null 2>&1\nthen\n    podman run --rm --net=none -w /data/ -v`pwd`:/data -e TERM=xterm-256color $IMAGE make rulebook scoresheets\nelse\n    docker run --rm --user=\"$(id -u):$(id -g)\" --net=none -w /data/ -v`pwd`:/data -e TERM=xterm-256color $IMAGE make rulebook scoresheets\nfi\n\n"
  },
  {
    "path": "citation.bib",
    "content": "@misc{rulebook_2026,\n  author =       {Hart, Justin and Moriarty, Alexander and Pasternak, Katarzyna\n                  and Kummert, Johannes and Leonetti, Matteo and Contreras, Luis \n                  and Ruegemer, Leroy and Mitzutani, Akinobu and Ribeiro, Tiago\n                  and Golding, Adam and Kang, Taewoong and Pimentel, Fagner},\n  title =        {RoboCup@Home 2026: Rules and Regulations},\n  year =         {2026},\n  howpublished = {\\url{https://github.com/RoboCupAtHome/RuleBook/releases/tag/2026.1}},\n}\n"
  },
  {
    "path": "documents/organization.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: organization.tex 2023-10-21 PetervDooren $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: introduction to RoboCupAtHome\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\documentclass[11pt, twoside, openright, a4paper, chapterprefix]{scrbook}\n\\usepackage[inner=2.5cm, outer=2.5cm, top=4cm, bottom=4cm]{geometry}\n\n%%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\input{./setup/packages.tex}\n\\input{./setup/config.tex}\n\\input{./pages/organization/documentinfo.tex}\n% footertext\n\\newcommand{\\footline}{RoboCup@Home Organization document / \\rulebookVersion}\n\\input{./setup/styling.tex}\n\n\n%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\input{./setup/active_version.tex}\n\\graphicspath{{\\YEAR/}{./images/}}\n\\input{./setup/macros.tex}\n\\input{./setup/abbrevix.tex}\n\n\n\\makeindex                                % generate index\n\\makeabbex                                % generate abbreviations\n\n\n%\\newcommand{\\sectionbreak}{\\clearpage}\n%\\newcommand{\\subsectionbreak}{\\clearpage}\n\n\n\\begin{document}\n\n\t\\input{pages/organization/titlepage}\n\n\t\\setcounter{page}{0}\n\t\\pagenumbering{roman}\n\t\\pagestyle{empty}\n\t\\input{pages/organization/about}\n\t\\input{pages/acknowledgments}\n\t\\clearpage\n\n\t\\pagestyle{plain}\n\t\\tableofcontents\n\t\\clearpage\n\n\t\\setcounter{page}{1}\n\t\\pagenumbering{arabic}\n\n\t\\input{pages/organization/Introduction}\n\t\\input{pages/organization/GeneralRules}\n\t\\input{pages/organization/Setup}\n\n\t\\printabx\n\t\\printidx\n\n\\end{document}\n"
  },
  {
    "path": "documents/roadmap.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: Rulebook.tex 2014-12-12 balkce $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: introduction to RoboCupAtHome\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\documentclass[11pt, twoside, openright, a4paper, chapterprefix]{scrbook}\n\\usepackage[inner=2.5cm, outer=2.5cm, top=4cm, bottom=4cm]{geometry}\n\n%%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\input{./setup/packages.tex}\n\\input{./setup/config.tex}\n\\input{./pages/roadmap/documentinfo.tex}\n% footertext\n\\newcommand{\\footline}{RoboCup@Home Roadmap / \\rulebookVersion}\n\\input{./setup/styling.tex}\n\n\n%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\input{./setup/active_version.tex}\n\\graphicspath{{\\YEAR/}{./images/}}\n\\input{./setup/macros.tex}\n\\input{./setup/abbrevix.tex}\n\n\n\n\\makeindex                                % generate index\n\\makeabbex                                % generate abbreviations\n\n\n\n\n\n%\\newcommand{\\sectionbreak}{\\clearpage}\n%\\newcommand{\\subsectionbreak}{\\clearpage}\n\n\n\\begin{document}\n\t\n\\input{./pages/roadmap/titlepage}\n\n\\setcounter{page}{0}\n\\pagenumbering{roman}\n\\pagestyle{empty}\n\\input{./pages/roadmap/acknowledgments}\n\\clearpage\n\n\\pagestyle{plain}\n\\tableofcontents\n\\clearpage\n\n\\setcounter{page}{1}\n\\pagenumbering{arabic}\n\n\\input{pages/roadmap/CompetitionConcepts}\n\n\n\n\\printabx\n\\printidx\n\n\\end{document}\n"
  },
  {
    "path": "documents/rulebook.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: Rulebook.tex 2014-12-12 balkce $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: introduction to RoboCupAtHome\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\documentclass[11pt, twoside, openright, a4paper, chapterprefix]{scrbook}\n\\usepackage[inner=2.5cm, outer=2.5cm, top=4cm, bottom=4cm]{geometry}\n\n%%% PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\input{./setup/packages.tex}\n\\input{./setup/config.tex}\n\\input{./pages/rulebook/documentinfo.tex}\n% footertext\n\\newcommand{\\footline}{RoboCup@Home Rulebook / \\rulebookVersion}\n\\input{./setup/styling.tex}\n\n\n%%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\input{./setup/active_version.tex}\n\\graphicspath{{\\YEAR/}{./images/}}\n\\input{./setup/macros.tex}\n\\input{./setup/abbrevix.tex}\n\n\n\n\\makeindex{}                                % generate index\n\\makeabbex{}                                % generate abbreviations\n\n\n\n\n\n%\\newcommand{\\sectionbreak}{\\clearpage}\n%\\newcommand{\\subsectionbreak}{\\clearpage}\n\n\n\\begin{document}\n\n\\input{./pages/rulebook/titlepage}\n\n\\setcounter{page}{0}\n\\pagenumbering{roman}\n\\pagestyle{empty}\n\\input{pages/rulebook/about}\n\\input{pages/acknowledgments}\n\\clearpage{}\n\n\\pagestyle{plain}\n\\tableofcontents{}\n\\clearpage{}\n\n\\setcounter{page}{1}\n\\pagenumbering{arabic}\n\n\\input{pages/rulebook/Introduction}\n\n\\input{pages/roadmap/CompetitionConcepts}\n\n\\input{pages/rulebook/GeneralRules}\n\n\\input{pages/organization/Setup}\n\n\n\n%%% Tests\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\chapter{Tests}\\label{chap:tests}\n\n\\testtocentry{test:human-robot-interaction-challenge}\n\\testtocentry{test:pick-and-place-challenge}\n\\testtocentry{test:gpsr}\n\\testtocentry{test:doing-laundry}\n\\testtocentry{test:restaurant}\n\\testtocentry{test:final}\n\n% Uncomment to get aesthetic improvement\n\\cleardoublepage{}\n\\input{tasks/HumanRobotInteractionChallenge}\n\\newpage{}\n\\input{tasks/PickAndPlaceChallenge}\n\\newpage{}\n\\input{tasks/GPSR}\n\\newpage{}\n\\input{tasks/DoingLaundry}\n\\newpage{}\n\n\\input{tasks/Restaurant}\n\\newpage{}\n\\input{tasks/Finals}\n\n\\input{pages/Appendices}\n\n\\printabx{}\n\\printidx{}\n\n\\end{document}\n"
  },
  {
    "path": "documents/scoresheets.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: scoresheets.tex 432 2013-05-21 15:33:27Z stueckler $\n%%    author(s): RoboCup@Home Technical Committee\n%%  description: RoboCup@Home Rulebook: Score Sheets\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\documentclass[11pt, a4paper]{book}\n\n\\usepackage{soul}\n\n\\input{./setup/packages_scoresheets.tex}\n\n\\usepackage{fullpage}\n\\setlength{\\parindent}{0cm}\n\\setlength{\\parskip}{0.2cm}\n\\setlength{\\topmargin}{-1cm}\n\\setlength{\\oddsidemargin}{-1cm}\n\\setlength{\\evensidemargin}{-1cm}\n\\setlength{\\textwidth}{18cm}\n\\setlength{\\textheight}{26cm}\n\n\\input{./setup/active_version.tex}\n\\graphicspath{{\\YEAR/}{./images/}}\n\\input{./setup/macros.tex}                        % defined in macros.tex\n\\input{./setup/abbrevix.tex}                      % for list of abbreviations\n\n\\hypersetup{\n  pdftitle     = {RoboCup@Home Forms \\& Score Sheets},\n  pdfsubject   = {RoboCup@Home Forms \\& Score Sheets},\n  pdfauthor    = {RoboCup@Home Technical Committee},\n  pdfkeywords  = {RoboCup, @Home, Rules, Competition},\n  pdfstartpage = {1},                 %\n  colorlinks   = true,                % Farbige links\n  anchorcolor  = black,               % anchor-text (header)\n  linkcolor    = black,               % content,index,ref/pageref-label\n  urlcolor     = blue,                % URLs - http-Adressedate (auch TeX)\n  pdfcreator   = {pdflatex},\n  pdfproducer  = {latex-pdftex}\n}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n%%  L E A G U E S                       %%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n\\loadTeamsListFile{}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n%%  H E A D I N G S                     %%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n\n%% * Pagestyle\n\\fancypagestyle{plain}{\n        \\fancyhf{}\n        \\fancyhead{}\n        \\fancyfoot[C]{\\scriptsize \\sffamily \\footline{}}\n    \\renewcommand{\\headrulewidth}{0 pt}\n}\n\n\\newcommand{\\footline}{RoboCup@Home Forms \\& Score Sheets / \\rulebookVersion}\n\n\n\n\\begin{document}\n\n\\begin{titlepage}\n  \\begin{center}\n    {\n      \\includegraphics[width=.25\\textwidth]{images/logo_RoboCupFed.jpg}\n      \\hfill\n      \\includegraphics[width=.25\\textwidth]{images/logo_RoboCupAtHome.jpg}\\\\[1.23ex]\n    }\n    \\vspace{2.7 cm}\n    \\hrulefill\\par\n    {%\n      \\vspace*{.27cm}\n      \\Huge{RoboCup@Home}\\\\[1.23ex]\n      \\Large Forms \\& Score Sheets\\\\[2ex]\n    }\n    \\hrulefill\\par\n    \\vfill\n    Version: \\YEAR{} \\quad \\svnRevision{}\\\\\n    Last Build Date: \\today \\quad Time: \\the\\time{}\\\\\n    \\svnChangeData{}%\\\\\n    %\\vfill\n  \\end{center}\n\\end{titlepage}\n\n\\pagestyle{plain}\n\n\\input{pages/scoresheets/registration_form.tex}\n\n\\renewcommand{\\shortScoresheet}{false}\n\n% \\TODO{Write new score sheets}\n\n\\renewcommand{\\currentTest}{Poster Session}\n\\begin{scoresheet}\n\\input{scoresheets/PosterSession.tex}\n\\end{scoresheet}\n\n\n%%% Tests %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%% TESTS GO HERE %%%\n\n\n\\renewcommand{\\currentTest}{General Purpose Service Robot}\n\\begin{scoresheet}\n\\input{scoresheets/GPSR}\n\\end{scoresheet}\n\n\\renewcommand{\\currentTest}{Human Robot Interaction Challenge}\n\\begin{scoresheet}\n\\input{scoresheets/HumanRobotInteractionChallenge}\n\\end{scoresheet}\n\n\\renewcommand{\\currentTest}{Pick and Place Challenge}\n\\begin{scoresheet}\n\\input{scoresheets/PickAndPlaceChallenge}\n\\end{scoresheet}\n\n\\renewcommand{\\currentTest}{Restaurant}\n\\begin{scoresheet}\n\\input{scoresheets/Restaurant.tex}\n\\end{scoresheet}\n\n\\renewcommand{\\currentTest}{Doing Laundry}\n\\begin{scoresheet}\n\\input{scoresheets/DoingLaundry.tex}\n\\end{scoresheet}\n\n% %%% FINALS   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n% Final \n\\renewcommand{\\currentTest}{Final Demonstration}\n\\begin{scoresheet}\n\\input{scoresheets/Finals.tex}\n\\end{scoresheet}\n\n\\end{document}\n\n\\grid{}\n"
  },
  {
    "path": "images/standard_QR_codes.tex",
    "content": "\\chapter{QR code examples}\n\\label{chap:qr-code-examples}\n\\begin{figure}[tbp]\n\t\\centering\n\t\\subfloat[\\enquote{continue}]{\\label{fig:qr_continue}\\includegraphics[width=0.5\\columnwidth]{continue.png}} ~\n\t\\subfloat[\\enquote{yes}]{\\label{fig:qr_yes}\\includegraphics[width=0.5\\columnwidth]{yes.png}} ~\n\\end{figure}\n\n\\begin{figure}[tbp]\n\t\\centering\n\t\\subfloat[\\enquote{no}]{\\label{fig:qr_no}\\includegraphics[width=0.5\\columnwidth]{no.png}} ~\n\t\\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}}\n\n\t\\caption{Various QR codes}\n\t\\label{fig:qr_continue}\n\\end{figure}"
  },
  {
    "path": "latexmkrc",
    "content": "$pdf_previewer = \"start okular\";\n\nadd_cus_dep('glo', 'gls', 0, 'run_makeglossaries');\nadd_cus_dep('acn', 'acr', 0, 'run_makeglossaries');\n\nsub run_makeglossaries {\n    my ($base_name, $path) = fileparse( $_[0] ); #handle -outdir param by splitting path and file, ...\n    pushd $path; # ... cd-ing into folder first, then running makeglossaries ...\n\n    if ( $silent ) {\n        my $return = system \"makeglossaries -q '$base_name'\"; \n    }\n    else {\n        my $return = system \"makeglossaries '$base_name'\"; \n    };\n\n    popd; # ... and cd-ing back again\n    return $return;\n}\n\nadd_cus_dep('glo', 'gls', 0, 'run_makeind');\nadd_cus_dep('acn', 'acr', 0, 'run_makeind');\nsub run_makeind {\n    my ($base_name, $path) = fileparse( $_[0] ); #handle -outdir param by splitting path and file, ...\n    pushd $path; # ... cd-ing into folder first, then running makeglossaries ...\n    my $dest = $$Pdest;\n\n    if ( $silent ) {\n        my $return = system \"makeindex -q -o \\\"$dest\\\" '$base_name'\"; \n    }\n    else {\n        my $return = system \"makeindex -o \\\"$dest\\\" '$base_name'\"; \n    };\n\n    popd; # ... and cd-ing back again\n    return $return;\n}\n\n\n# Compile the nomenclature (package 'nomencl')\nadd_cus_dep( 'nlo', 'nls', 0, 'makenlo2nls' );\nsub makenlo2nls {\n    my ($base_name, $path) = fileparse( $_[0] );\n    pushd $path;\n    my $dest = $$Pdest;\n    system( \"makeindex -s nomencl.ist -o \\\"$dest\\\" \\\"$base_name\\\"\" );\n    popd;\n    return $return;\n}\n"
  },
  {
    "path": "pages/Appendices.tex",
    "content": "\\begin{appendix}\n\\renewcommand*{\\chapterformat}{\\LARGE{Appendix \\thechapter}}\n\\renewcommand{\\chaptermark}[1]{\\markboth{\\appendixname \\ \\thechapter. \\ #1}{}}\n\n\\input{pages/LeagueRequirements}\n\n%\\input{pages/example_skills}\n%\\newpage\n%\\input{pages/general_rules/arena_decorations.tex}\n\n\\end{appendix}\n\n\\renewcommand*{\\chapterformat}{\\LARGE{Chapter \\thechapter}}\n\\renewcommand{\\chaptermark}[1]{\\markboth{\\chaptername \\ \\thechapter. \\ #1}{}}\n"
  },
  {
    "path": "pages/LeagueRequirements.tex",
    "content": "\\chapter{League Requirements}\\label{chap:league-requirements}\n\n\\section{Competition Area}\n\n\\subsection{Arena Information}\n\\begin{itemize}\n    \\item Number of Competition Arenas: 2\n    % \\item An \\textbf{additional testing arena} is recommended when the number of participating teams exceeds 18, to provide adequate practice and testing space for all teams.\n    \\item Space per Arena: \\qty{90}{\\meter\\squared}\n    \\item Total Competition Area: \\qty{180}{\\meter\\squared} (plus \\qty{90}{\\meter\\squared} for Testing, if applicable)\n\\end{itemize}\n\n\\begin{figure}[H]\n\t\\centering\n\t\\subfloat[3D visualization]{\n\t\t\\includegraphics[width=0.48\\textwidth]{images/league-arena_example3d.png}\\label{fig:sample_arena_setup3d}}\n\t\\subfloat[2D plan]{\n\t\t\\includegraphics[width=0.48\\textwidth]{images/league-arena_example.png}\\label{fig:sample_arena_setup2d}}\n\t\\caption{Sample Arena Setup}\n\t\\label{fig:sample_arena_setup}\n\\end{figure}\n\n\\subsection{Detailed Setup}\nThe RoboCup@Home Arena is a realistic home setting (apartment-like) consisting of interconnected rooms. A typical configuration is shown in~\\reffig{fig:sample_arena_setup}.\nThe \\textbf{minimum arena configuration must include}:\n\\begin{itemize}\n    \\item a living room,\n    \\item a kitchen,\n    \\item two additional rooms (e.g., bedroom, office, dining room, laundry room, foyer, childrens room).\n\\end{itemize}\n\nThere are usually two competition arenas and one additional Testing arena.\n\n\\paragraph{Dimensions}\nEach arena should be around \\qtyrange{90}{120}{\\meter\\squared}. A minimum of \\qty{80}{\\meter\\squared} is acceptable if robot navigation space is ensured. Typical room sizes are approximately \\qtyrange{20}{30}{\\metre\\squared}.\nRobots typically have a base diameter of \\qty{70}{\\centi\\metre}, with extensions for manipulators. The arena must accommodate safe navigation.\n\n\\paragraph{Walls}\nWalls are fixed and \\textbf{must not be altered} during the competition.\n\\begin{itemize}\n    \\item Minimum height: \\qty{60}{\\centi\\metre}.\n    \\item Maximum height: not specified, but audience visibility \\textbf{should be ensured}.\n\\end{itemize}\n\n\\paragraph{Doors}\nEach arena \\textbf{must include}:\n\\begin{itemize}\n    \\item At least one entrance door (opening inward).\n    \\item At least one exit door (opening outward).\n        \\begin{itemize}\n            \\item The two doors (entrance and exit) cannot be in the same room.\n        \\end{itemize}\n    \\item All doors with handles (not knobs), which can be closed.\n    \\item Minimum width: \\qty{90}{\\centi\\metre}, minimum height: \\qty{200}{\\centi\\metre}.\n    \\item Door thresholds must be smooth or very flat, without steps, lips, or obstacles that could impede robot movement.\n\\end{itemize}\nIf these requirements cannot be met, alternative solutions \\textbf{must be discussed in advance} with the Technical Committee (TC).\n\n\\paragraph{Power Supply}\nEach arena \\textbf{must provide} at least one freely accessible power outlet.\nThe outlet may be located either in a corner of the arena or immediately outside the arena boundary.\n\n\\paragraph{Floor}\nThe floor must be even, with minor irregularities allowed (e.g., carpets, transitions). It should not be excessively slippery.\nAt least \\qty{1}{\\metre} of free space is required around the arena for robot staging.\n\n\\paragraph{Appearance}\nWalls and floors should be neutral (monochromatic or lightly textured). Decorative elements such as posters or carpets are allowed.\n\n\\paragraph{Additional Setup}\nA table must be provided outside each arena for external computing devices of the active team.\n\n\\paragraph{Optional Equipment}\nThe following equipment is recommended for each arena to improve the competition experience but is not mandatory:\n\\begin{itemize}\n    \\item Microphones or audio systems for announcements\n    \\item Additional display screens for spectators\n    \\item Computers and cameras for live broadcasting the competition\n\\end{itemize}\n\n\n% \\subsection{Sponsor Requirements}\n\n% These additional requirements are not mandated by the rules but based on request of sponsors.\n\n% \\paragraph{Stairs (for humanoid robots, if applicable)} If humanoid robots participate, an external set of stairs is required. The stairs should preferably have:\n% \\begin{itemize}\n%     \\item 6--7 steps going up, a landing, and 6--7 steps going down.\n%     \\item Minimum width: \\qty{91}{\\centi\\metre}, tread depth: at least \\qty{28}{\\centi\\metre}, riser height: \\qtyrange{10}{18}{\\centi\\metre}(typically \\qty{17.4}{\\centi\\metre}).\n%     \\item Close risers for robot safety.\n% \\end{itemize}\n% Alternatively, if venue stairs meet these requirements and are near the @Home area, they may be used.\n\n\\section{Environment Requirements}\n\nThe arena must be decorated to resemble a typical apartment.\n\\paragraph{Mandatory Items}\n\\begin{itemize}\n    \\item Plants, mirrors, paintings, posters, picture frames, clocks, candles with holders, books.\n\\end{itemize}\n\n\\paragraph{Furnishings (minimum)}\n\\begin{itemize}\n    \\item a couch,\n    \\item a coffee or side table,\n    \\item a small dining table with two chairs,\n    \\item a trash bin,\n    \\item a bookcase (or similar shelving) with a minimum shelf spacing of \\qty{30}{\\centi\\metre}\n    \\item a front-loading washing machine,\n    \\item kitchen equipment including:\n    \\begin{itemize}\n        \\item a dishwasher,\n        \\item a sink,\n        \\item a pantry (tall cupboard with shelves).\n    \\end{itemize}\n\\end{itemize}\n\n\\paragraph{Optional Furnishings (recommended)}\nThese are not required but improve realism and expand task possibilities:\n\\begin{itemize}\n    \\item a bed,\n    \\item a larger dining table with 4 chairs,\n    \\item additional side/coffee tables,\n    \\item refrigerator,\n    \\item kitchen countertop,\n    \\item microwave,\n    \\item portable stove with heating plate and pan,\n    \\item coat rack,\n    \\item open cupboard or TV stand with television and remote,\n    \\item cupboard,\n    \\item chest of drawers with at least two drawers positioned \\qtyrange{90}{120}{\\centi\\metre} from floor, with U-shaped handles\n    \\item doors for the bookcase, pantry and similar furnishing with U-shaped handles\n\\end{itemize}\n\n\\section{Network Requirements}\n\n\\subsection{Wireless Communication}\nEach arena must have a dedicated WLAN access point.\n\\begin{itemize}\n    \\item Only the official arena WLAN may be used during testing and competition.\n    \\item Only the currently active team may access the arena network.\n    \\item Each team has its own VLAN with separate SSID and password.\n    \\item Networks must be connected to both the Internet and a wired connection near the arena.\n    \\item Unauthorized networks (e.g., hotspots) are strictly prohibited and may result in disqualification.\n\\end{itemize}\nNote: Wireless reliability may fluctuate due to the fair environment.\n\n\\section{Best Practices}\n\\begin{itemize}\n    \\item Avoid uneven surfaces.\n    \\item Avoid cables running on the arena floor.\n    \\item Locate team tables near the arenas.\n    \\item Power outlets should provide sufficient capacity for robot operation; a recommendation is at least \\textbf{1.8~kW} per team outlet.\n\\end{itemize}\n\n\\section{Additional Equipment}\n\nThese items are purchased by the \\OC{} with the help of the \\LOC{} on the first day of installation on site.\n\nThe following household objects must be available:\n\\begin{itemize}\n    \\item Lightweight (\\qty{0.5}{\\kilogram}) household objects of various categories (drinks, snacks, food, fruits, toys, cleaning supplies),\n    \\item Tableware: dish, bowl, cup/mug,\n    \\item Cutlery: fork, knife, spoon,\n    \\item Bags: lightweight with vertical handles,\n    \\item Trays: for bimanual manipulation,\n    \\item Laundry basket (plastic, lightweight, atleast \\qty{50}{\\centi\\metre} wide, two-handed carry),\n    \\item Pourable objects (e.g., cereal box),\n    \\item Heavy objects: \\qtyrange{1}{1.5}{\\kilogram},\n    \\item Tiny objects: \\qty{5}{\\centi\\metre} (e.g., paper, teabag, pen),\n    \\item Fragile objects: breakable (e.g., chocolate egg),q\n    \\item Deformable objects: flexible (e.g., cloth),\n    \\item 8--12 Pieces of Laundry (T-Shirts)\n    \\item Garbage bag: tieable household garbage bag.\n\\end{itemize}\n\n\\section{League Organization Area}\n\n\\paragraph{Organizing Committee (OC) Requirements}\nThe OC area must include:  \n\\begin{itemize}\n    \\item \\numrange{2}{3} tables with two chairs each,\n    \\item Access to power outlets and LAN,\n    \\item Access to a printer (or paperless setup if agreed),\n    \\item A mobile display for announcements (poster stand or board as fallback).\n\\end{itemize}\n\n\\section{Teams Area}\n\n\\paragraph{Participation Area}\nEach team must be provided with:\n\\begin{itemize}\n    \\item One table per four members, with chairs,\n    \\item At least one power outlet and one Ethernet connection,\n    \\item \\qty{2}{\\metre\\squared} for robot storage,\n    \\item \\qtyrange{1}{2}{\\metre\\squared} for robot handling,\n    \\item \\qtyrange{4}{5}{\\metre\\squared} near team area for robot maneuvering,\n    \\item Adequate aisle space between tables for robot transport.\n     \\begin{itemize}\n        \\item One poster stand per participating team, suitable for displaying an \\textbf{A0-size portrait} poster, \\textbf{or}\n        \\item sufficient free wall space to hang all team posters simultaneously.\n    \\end{itemize}\n\\end{itemize}\n\n\\section{Other Notes}\n\\begin{itemize}\n    \\item Changes compared to previous years:\n    \\begin{itemize}\n        \\item Sub-Leagues have been dissolved.\n        \\item Require free outlet in Arena.\n        \\item Add Optional Section.\n        \\item Add requirements about posters.\n        \\item A washing machine is now mandatory.\n        \\item A bed is now optional.\n    \\end{itemize}\n    \\item Additional information: TBD.\n\\end{itemize}\n"
  },
  {
    "path": "pages/acknowledgments.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: acknowledgments.tex 404 2013-02-15 08:51:20Z sugiura $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Acknowledgments for the RoboCupAtHome RuleBook\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\section*{Acknowledgments}\\label{sec:acknowledgments}\nWe would like to thank the members of the Technical Committee who put up the rules and the Organizing Committee who organizes the competition.\nPeople that have been working on this rulebook as members of one of the league's committees (in alphabetical order):\n\\begin{center}\n\t\\begin{minipage}{0.8\\textwidth}\n\t\t\\begin{multicols}{3}%\n\t\t\t\\footnotesize\n\t\t\t\\noindent%\n\t\t\tAdam Golding\\\\\n\t\t\tAkinobu Mizutani\\\\\n\t\t\tAlex Mitrevski\\\\\n\t\t\tAlexander Moriarty\\\\\n\t\t\tAlina Hawkin\\\\\n\t\t\tCaleb Rascon\\\\\n\t\t\tFagner Pimentel\\\\\n\t\t\tFlorian Lier\\\\\n\t\t\tHiroyuki Okada\\\\\n\t\t\tJohannes Kummert\\\\\n\t\t\tJuan Diego Pena Narvaez\\\\\n\t\t\tJuan Jose Garcia\\\\\n\t\t\tJustin Hart\\\\\n\t\t\tKatarzyna Pasternak\\\\\n\t\t\tKomei Sugiura\\\\\n\t\t\tLeander von Seelstrang\\\\\n\t\t\tLeroy Ruegemer\\\\\n\t\t\tLoy van Beek\\\\\n\t\t\tLuca Iocchi\\\\\n\t\t\tLuca Lach\\\\\n\t\t\tLuis Contreras\\\\\n\t\t\tMatteo Leonetti\\\\\n\t\t\tMauricio Matamoros\\\\\n\t\t\tMaxime St-Pierre\\\\\n\t\t\tPeter van Dooren\\\\\n\t\t\tRaphael Memmesheimer\\\\\n\t\t\tRiccardo Polvara\\\\\n\t\t\tSammy Pfeiffer\\\\\n\t\t\tSebastian Meyer zu Borgsen\\\\\n\t\t\tSven Wachsmuth\\\\\n\t\t\tTatsuya Matsushima\\\\\n\t\t\tTijn van der Zant\\\\\n\t\t\tVanessa Hassouna\\\\\n\t\t\tYuma Yoshimoto\\\\\n\t\t\tYuqian Jiang\n\t\t\\end{multicols}\n\t\\end{minipage}\n\\end{center}\n\n\\noindent We would also like to thank all the people who contributed to the RoboCup@Home league with their feedback and comments.\nPeople that have been working on this rulebook as members of the league (in alphabetical order):\n\\begin{center}\n\t\\begin{minipage}{0.8\\textwidth}\n\t\t\\begin{multicols}{2}%\n\t\t\t\\footnotesize\n\t\t\t\\noindent%\n\t\t\tLars Janssen\\\\\n\t\t\tMark Finean\\\\\n\t\t\tMatthijs van der Burgh\\\\\n\t\t\tSyed Ali Raza\\\\\n\t\t\\end{multicols}\n\t\\end{minipage}\n\\end{center}\n"
  },
  {
    "path": "pages/example_skills.tex",
    "content": "\\chapter{Example Skills}\n\\label{chap:example-skills}\n\nThe 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}.\nOther 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.\n\nPlease 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.\n\n\\section{Skills by category}\n\n\\subsection{Complex manipulation}\n\\begin{itemize}\n\t\\item Cook a meal.\n\t\\item Manipulating panels/switches/knobs.\n\t\\item Use/open a fridge/stove/blender/microwave/washing machine.\n\t\\item Iron clothes.\n\t\\item Move a movable object (pole, chair, table).\n\t\\item Pouring liquids/powders.\n\t\\item Operate a water tap.\n\t\\item Handle a pan.\n\\end{itemize}\n\n\\subsection{Complex vision}\n\\begin{itemize}\n\t\\item Read text from a newspaper.\n\t\\item Handle glass/shiny-metallic objects.\n\t\\item Recognize moods, activities, age, gender.\n%\t\\item Recognize clothes, dressing-styles, fashionable people.\n\t\\item Label unknown objects.\n\\end{itemize}\n\n\\subsection{Complex navigation}\n\\begin{itemize}\n\t\\item Navigate in (very) crowded environments.\n\t\\item Navigate difficult terrain.\n\t\\item Climb stairs.\n\t\\item Push a wheelchair.\n\\end{itemize}\n\n\\subsection{Robot-Human Interaction}\n\\begin{itemize}\n\t\\item Collaborative robot-human manipulation.\n\t\\item Maintaining a conversation.\n\t\\item Learning actions on-the-fly.\n\t\\item Learning objects from humans e.g.~\\enquote{This object is a ...} with an open vocabulary.\n\t\\item Following a human by grasping its hand.\n\t\\item Explain the robot abstract concepts (why people love sunny days).\n\t\\item Arrange unknown random people for a nice photo (no occlusions).\n\t% \\item ask the robot for the answer to the universe, meaning of life and everything else\n\\end{itemize}\n\n\\subsection{Complex action planning}\n\\begin{itemize}\n\t\\item Separate clothes for laundry (e.g.~by color)\n\t\\item Arrange a dish-washer.\n\t\\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).\n\t\\item Light the way out with a lamp during a general power off.\n\t\\item Arrange unknown random people for a nice photo (no occlusions).\n\t\\item\n\\end{itemize}\n\n\\subsection{Mapping}\n\\begin{itemize}\n\t\\item Learn/create a (3D) map on the fly.\n\t\\item Semantically annotate a map on the fly\n\t\\item The robot enters a completely changed arena (furniture moved or even changed),\n\t   explores it and is told to go to e.g.~a table that is moved or added.\n\\end{itemize}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "pages/general_rules/AudienceInteraction.tex",
    "content": "\\section{Audience Interaction}\\label{sec:rules:audience}\nOnly 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.\n\n\\subsection{Visualization}\\label{sec:rules:audience:visualization}\nAll 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."
  },
  {
    "path": "pages/general_rules/ContinueRules.tex",
    "content": "\\section[Human Assistance]{Bypassing Features With Human Help \\\\ \\small Because the Show Must Go On}\\label{rule:continue}\n\nRobots are expected to autonomously complete all task objectives.\nHowever, when progress is prevented by a malfunction or limitation, robots may request human assistance to allow the test to continue.\n\nHuman assistance is intended as a last resort. Robots should first attempt to skip or defer subtasks they cannot complete and continue with other achievable parts of the task. Assistance should only be requested when the robot cannot make further meaningful progress otherwise.\n\n\\subsection{Procedure}\\label{rule:continue_procedure}\n\nThe robot must \\textbf{clearly and explicitly indicate} that it is requesting human assistance.\n\nIf a task explicitly defines allowed forms of human assistance, the robot may request such assistance using simplified or task-specific instructions. However, vague or ambiguous requests may be interpreted incorrectly by the human assistant and are not guaranteed to be executed as intended.\n\nRegardless of how the request is phrased, the robot is expected to confirm that the requested action has been carried out as intended (e.g.\\ through dialogue, perception, or other appropriate feedback).\n\nIn the lead-up to RoboCup, assistance types not explicitly listed in the task description may be proposed for inclusion in the Rulebook via pull request or issue.\n\nDuring RoboCup, any assistance not explicitly listed in the task description must be approved during the Team Leader Meeting prior to the test.\nSuch assistance must follow the procedure below:\n\n\\begin{enumerate}\n\t\\item \\textbf{Request help:} The request must specify:\n\t\\begin{compactitem}\n\t\t\\item the type of assistance required, and\n\t\t\\item the intended outcome of the action.\n\t\\end{compactitem}\n\n\t\\item \\textbf{Supervise:} The robot should actively supervise the assistance and be able to:\n\t\\begin{compactitem}\n\t\t\\item recognize whether the requested action has been performed, and\n\t\t\\item determine whether the outcome matches the intended request.\n\t\\end{compactitem}\n\n\t\\item \\textbf{Verify:} The robot must not assume success without confirmation through perception or explicit interaction.\n\\end{enumerate}\n\nRequests that do not comply with these requirements may be rejected or terminated by the referee without further notice.\n\n% \\subsection*{Example}\\label{rule:continue_example}\n% In the following example, a robot has to clean the table but is unable to grasp the spoon.\n% \\begin{itemize}[noitemsep]\n% \t\\small\n% \t\\item[\\textcolor{gray}{R:}] \\texttt{I am sorry, but the spoon is too small for me to take.\\\\\n% \tCould you please help me with it?\\\\\n% \tPlease say \"robot yes\" or \"robot no\" to confirm.}\n% \t\\item[\\textcolor{gray}{H:}] \\textit{Robot, yes!}\n% \t\\item[\\textcolor{gray}{R:}] \\texttt{Thank you! Please follow my instructions.\\\\\n% \tPlease take the purple spoon from the table. It is on my left. \\\\(The robot also shows the result of the perception, e.g. by pointing at the spoon or showing a picture with a bounding box on the screen)}\n% \t\\item[\\textcolor{gray}{H:}] (Referee takes purple spoon)\n% \t\\item[\\textcolor{gray}{R:}] \\texttt{I saw you took the spoon.\\\\\n% \tWould you be so kind as to follow me to the kitchen?\\\\\n% \tPlease keep the spoon visible in front of you so I can track you. Thank you!}\n% \t\\item[\\textcolor{gray}{R:}] \\texttt{You can stop following me now.\\\\\n% \tAs you can see, the dishwasher is already open.\\\\\n% \tPlease place the spoon in the gray basket on the lower tray.}\n% \t\\item[\\textcolor{gray}{R:}] \\texttt{Lovely! Thanks for your help.\\\\\n% \tI'll let you know if I need further assistance.}\n% \\end{itemize}\n\n\n\\subsection{Scoring}\\label{rule:continue_scoring}\nAny task element completed through human assistance is scored as zero points, unless explicitly stated otherwise in the task description.\n\n\\subsection{Referee Intervention}\n\nThe referee may stop the task at any time if:\n\n\\begin{itemize}\n    \\item Assistance is requested that was not explicitly allowed in the description for the task.\n    \\item Assistance is requested that was not announced during the Team Leader Meeting.\n    \\item The robot is not making reasonable progress on the task despite being assisted.\n    \\item From the second human assistance request onwards, repeated or excessive requests without demonstrating autonomous action may lead the referee to immediately stop the task.\n\\end{itemize}\n\n\\subsection*{Example}\\label{rule:continue_example}\nExample (non-exhaustive):\n\\begin{itemize}[noitemsep]\n\t\\item Requesting a human to hand over an object instead of picking it up, and later requesting the human to place the same object instead of placing it autonomously may result in immediate termination of the task.\n\\end{itemize}\n\n\\subsection{Bypassing Automatic Speech Recognition}\\label{rule:asrcontinue}\nGiving commands to the robot is essential in many tests.\nWhen the robot is not able to receive spoken commands, teams are allowed to provide means to bypass ASR via an Alternative method for HRI.\nNonetheless, Automatic Speech Recognition is preferred.\n\nThe following rules apply in addition to the ones specified in section \\refsec{rule:continue_scoring}\n\\begin{enumerate}\n\t\\item \\textbf{ASR with Default Operator:} No score reduction.\n\tThe command is given by the human operator who must speak (not shout) loud and clear.\n\tThe \\iterm{default operator} may repeat the command up to three times.\n\n\t\\item \\textbf{ASR with Custom Operator:} A reduction of 10\\% of the maximum attainable score is applied when a \\iterm{custom operator} is requested.\n\tThe Team Leader chooses a person who gives the command \\emph{exactly as instructed by the referee}.\n\n\t\\item \\textbf{Gestures:} A reduction of 20\\% of the maximum attainable score is applied when a gesture (or set of gestures) is used to instruct the robot.\n\n\t\\item \\textbf{Alternative Natural Input Method:} A reduction of up to 20\\% of the maximum attainable score is applied when a \\iterm{alternative HRI interface}, is used to instruct the robot.\n\tNatural alternative HRI interfaces must be previously approved by the TC during the Robot Inspection (see~\\refsec{sec:robot_inspection}).\n\\end{enumerate}\n\n\n\\subsubsection{Alternative interfaces for HRI}\\label{rule:asralternative}\nAlternative methods and interfaces for HRI offer a way for a robot to start or complete a task.\nAny reasonable method may be used, with the following criteria:\n\\begin{itemize}\n\t\\item \\textbf{Intuitive to use and self-explanatory:} a manual should not be needed. Teams are not allowed to explain how to interface with the robot. %you immediately know how to use it after a quick glance\n\n\t\\item \\textbf{Effortless use:} Must be as easy to use as uttering a command. %is as easy to use as it is uttering a command\n\n\t\\item \\textbf{Is smart and preemptive:} The interface adapts to the user input, displaying only the options that make sense or that the robot can actually perform.\n\n\\end{itemize}\n\nPreferably, the alternative HRI must be also adapted to the user.\nConsider localization (with English as the default), but also potential users of service robots at their home.\nFor example: elderly people and people with physical disabilities.\n\n%\\textbf{\\textsc{Award:}} The best alternative is awarded the Best Human-Robot Interface award (\\refsec{award:hri}).\n\n"
  },
  {
    "path": "pages/general_rules/ExternalDevices.tex",
    "content": "\\section{External devices}\\label{rule:robot_external_devices}\n\nEverything that a team uses during a test and is not part of the robot is considered an \\ExternalDevice{}.\nAll \\ExternalDevices{} must be authorized by the \\TC{} during the \\RobotInspection{} test (see~\\refsec{sec:robot_inspection}).\nThe TC specifies whether an \\ExternalDevice{} can be used freely or under referee supervision, and determines its impact on scoring.\nThe use of tools is allowed but a robot, for example, starting a test with a tool in hand counts as a different configuration under Rule \\ref{rule:robots_number}. During \\RobotInspection \\ the referee will make sure that such a tool is securely attached to the robot. \nA custom container as mentioned in \\ref{sec:robot_inspection} is an exception to this rule.\n\n\\textbf{Note:} The use of wireless devices, such as hand microphones and headsets, is not allowed, with the exception of \\ExternalComputing{} as specified below.\nThe competition organizers do not guarantee or take any responsibility for the availability or reliability of the network or the internet connection in the \\Arena{}.\nTeams can thus use \\ExternalComputing{} resources at their own risk.\n\n\\subsection{On-site External Computing}\n\nComputing resources that are not physically attached to the robot are considered \\ExternalComputing{} resources.\nThe 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{}.\n\nTeams must inform the \\TC{} about the use of any \\ExternalComputing{} at least one month before the competition.\n\\textbf{Note:} Robots must be able to operate safely even if \\ExternalComputing{} is unavailable.\n\n\\ExternalComputing{} devices must be placed in the \\ECRA{}, which is announced by the \\TC{} during the \\SetupDays{}.\nA switch connected to the \\Arena{} wireless network will be available to teams in the \\ECRA{}.\nDuring 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.\nNo peripherals, such as screens, mice, keyboards, and so forth, are allowed to be used.\n\nDuring a \\Testslot{}, everyone must stay at least \\SI{1}{\\meter} away from the \\ECRA{}.\nInteracting 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.\n\nIf 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.\n\n\\subsection{On-line external computing}\\label{rule:robot_external_computing_online}\n\nTeams are allowed to use \\ExternalComputing{} through the internet connection of the \\ArenaNetwork{}; this includes cloud services or online APIs.\n% This can neither be enforced nor validated.\n%These must be announced to and approved by the \\TC{} one month prior to the competition.\n"
  },
  {
    "path": "pages/general_rules/OpenChallenge.tex",
    "content": "\\section{Open Challenge}\\label{sec:rules:openchallenge}\n\nOn 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.\n\n\\subsection{Procedure}\n\\label{sec:rules:ocprocedure}\n\\begin{enumerate}\n\t\\item \\textbf{Participation:} Teams have to announce whether they want to perform an \\OpenChallenge{} to the \\abb{OC} during the \\SetupDays{}.\n\t\\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.\n\t\\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.\n\t\\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.\n\t\\item \\textbf{Leagues:} Ideally, the open challenges of all \\AtHome{} leagues will be scheduled consecutively to allow all participants to view all demonstrations. \n\tHowever, if more than 12 teams across the leagues register for the \\OpenChallenge{}, each league will hold its \\OpenChallenge{} concurrently to accommodate the increased number of participants.\n\t\n\t\\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}).\n\\end{enumerate}\n"
  },
  {
    "path": "pages/general_rules/Organization.tex",
    "content": "\\section{Organization of the Competition}\\label{sec:procedure_during_competition}\n\n\\subsection{Competition Structure}\\label{rule:structure}\n\nThe competition consists of a series of tasks, repeated on each competition day, designed to test specific robot capabilities, followed by a \\FINAL{} as the final evaluation of the teams' overall performance.\n\n\n\\begin{enumerate}\n\t\\item \\textbf{Robot Inspection:} \n\tAll teams must pass a \\RobotInspection{} during the \\SetupDays{} to be eligible for competition (see~\\refsec{sec:robot_inspection}).\n\n\t\\item \\textbf{Tasks:}\n\tTeams compete in a set of tasks that evaluate different robot abilities.\n\tEach task is repeated on multiple competition days, giving teams more than one opportunity to attempt it.\n\tFor ranking purposes, the \\emph{best score} obtained in each task is considered.\n\n\t\\item \\textbf{Restaurant Task:}\nThe Restaurant task is held only once during the competition, prior to the \\FINAL{}. \nIt takes place outside the main arena in a location that is not disclosed in advance. \nPreferably in a real restaurant, or otherwise in a restaurant-like environment.  \nDue to scheduling constraints, participation in the Restaurant task may require prior registration and may be limited based on the current classification (e.g., score or ranking achieved before the task).\n\n\t\\item \\textbf{\\FINAL:} The top teams, namely the ones with the highest overall score, advance to the \\FINAL{}.\n\tThe final round features a single integrated task that tests all abilities evaluated throughout the competition.\n\tThe number of teams advancing to the \\FINAL{} is determined by the total number of participating teams, as follows:\n\t\\begin{itemize}\n\t\t\\item Up to 9 teams: top 3 teams advance to the \\FINAL{}\n\t\t\\item 9 to 14 teams: top 4 teams advance to the \\FINAL{}\n\t\t\\item 15 to 20 teams: top 5 teams advance to the \\FINAL{}\n\t\t\\item More than 20 teams: top 6 teams advance to the \\FINAL{}\n\t\\end{itemize}\n\n\\end{enumerate}\n\nIn cases where there is no significant score difference between teams, the \\TC{} may decide to include additional teams in the \\FINAL{}.\n\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection{Schedule}\\label{rule:schedule}\n\n\\begin{enumerate}\n\t \\item \\textbf{Daily Task Runs:} \n\tEach competition day features the same set of four tasks.\n\tTwo tasks are executed in parallel in different arenas.\n\tOnce a team completes its run in one arena, it proceeds to the other arena according to the schedule.\n\n\t\\item \\textbf{Team Groups:}\n\tTeams are assigned to fixed groups (e.g.\\ A, B, C, D).\n\tEach block has predetermined start times for the arenas and tasks.\n\tThis ensures an even distribution of teams across arenas and reduced waiting time.\n\n\t\\item \\textbf{Test Slots:} Within each arena, teams are allocated a specific Test Slot that defines the maximum time available to complete the task. \n    Teams must be ready at their assigned block start time.\n\n\t\\item \\textbf{Participation is default:} Teams must inform the \\OC{} in advance if they are skipping a Test Block. If they do not provide such notification, they may be penalized for not attending (see~\\refsec{rule:not_attending}).\n\t\n\\end{enumerate}\n\n\\begin{table}[h]\n\t\\centering\\small\n\t\\newcommand{\\wcell}[2]{%\n\t\t\\parbox[c]{2.5cm}{%\n\t\t\t\\vspace{#1}%\n\t\t\t\\centering%\n\t\t\t#2%\n\t\t\t\\vspace{#1}%\n\t\t}%\n\t}\n\t\\newcommand{\\cell}[1]{\\wcell{0.2\\baselineskip}{#1}}\n\t% \\newcommand{\\mr}[1]{\\multirow{2}{*}{#1}}\n\n\n\t\\begin{tabular}{\n\t\t>{\\centering\\arraybackslash}m{2.5cm}|c|c|c|c\n\t}\n\t\\multicolumn{1}{ c }{}\n\t\t& \\multicolumn{1}{c}{Day 1}\n\t\t& \\multicolumn{1}{c}{Day 2}\n\t\t& \\multicolumn{1}{c}{Day 3}\n\t\t& \\multicolumn{1}{c}{Day 4}\n\t\t\\\\\\hhline{~---~}\n\n\t\\cell{Block 1\\\\\\footnotesize(9:00--11:00)}\n\t\t& \\cellcolor{color1}\\cell{\\diagbox{Task 1}{Task 2}}\n\t\t& \\cellcolor{color1}\\cell{\\diagbox{Task 1}{Task 2}}\n\t\t& \\cellcolor{color2}\\cell{Restaurant}\n\t\t& \n\t\t\\\\\\hhline{~----}\n\n\n\n\t\\multicolumn{1}{ c }{}\n\t\t& \\multicolumn{3}{ c }{\\wcell{0.5\\baselineskip}{\\color{gray}\\----Break---\\-}}\n\t\t& \\multicolumn{1}{|c|}{\\cellcolor{color3}\\cell{\\textbf{Finals}}}\n\t\t\\\\\\hhline{~----}\n\n\t\\cell{Block 2\\\\\\footnotesize(13:00--15:00)}\n\t\t& \\cellcolor{color1}\\cell{\\diagbox{Task 3}{Task 4}}\n\t\t& \\cellcolor{color1}\\cell{\\diagbox{Task 3}{Task 4}}\n\t\t& \\cellcolor{color1}\\cell{\\diagbox{Task 1}{Task 2}}\n\t\t& \n\t\t\\\\\\hhline{~---}\n\n\t\\multicolumn{1}{ c }{}\n\t\t& \\multicolumn{1}{ c }{\\wcell{0.5\\baselineskip}{}}\n\t\t& \\multicolumn{1}{ c }{\\wcell{0.5\\baselineskip}{\\color{gray}\\----Break---\\-}}\n\t\t& \\multicolumn{1}{ c }{}\n\t\t\\\\\\hhline{~---}\n\t\t\n\t\\cell{Block 3\\\\\\footnotesize(17:00--19:00)}\n\t\t& \n\t\t& \n\t\t& \\cellcolor{color1}\\cell{\\diagbox{Task 3}{Task 4}}\n\t\t& \n\t\t\\\\\\hhline{~---}\n\t\\end{tabular}\n\n\t\\caption{Example schedule.\n\t\tEach team has two Test Slots assigned in every Test Block.\n\t}\n\t\\label{tbl:schedule}\n\\end{table}\n\n\\begin{table}[h]\n\\centering\n\\renewcommand{\\arraystretch}{1.4}\n\\setlength{\\tabcolsep}{10pt}\n\\begin{tabular}{c|c|c|}\n\\multicolumn{1}{c}{}  & \\multicolumn{1}{c}{Arena 1} & \\multicolumn{1}{c}{Arena 2} \\\\\n\\hhline{~--}\n12:00 & \\cellcolor{color4}Group A & \\cellcolor{color2}Group C \\\\\\hhline{~--}\n12:30 & \\cellcolor{color3}Group B & \\cellcolor{color1}Group D \\\\\\hhline{~--} \n13:00 & \\cellcolor{color2}Group C & \\cellcolor{color4}Group A \\\\\\hhline{~--} \n13:30 & \\cellcolor{color1}Group D & \\cellcolor{color3}Group B \\\\\\hhline{~--} \n\\end{tabular}\n\\caption{Example schedule for one block showing timeslots and group rotation between arenas.}\\label{tab:schedule_example_times}\n\\end{table}\n\n\n\n\\noindent Note that the actual allocation of blocks will be announced by the \\OC{} during the \\SetupDays{} (see Table~\\ref{tbl:schedule}).\n\n\\subsection{Scoring System}\\label{rule:score_system}\n\nThe scoring system evaluates robot performance based on task completion. Some objectives include optional modifiers and penalties. Modifiers apply only to the specific objective and cannot reduce its score below zero.\n\nThe scoring system has the following constraints:\n\\begin{enumerate}\n    \\item \\textbf{\\FINAL:} The final score is normalized.\n    \\item \\textbf{Minimum score:} The minimum total score per test is \\scoring{0 points}.\n    While teams generally cannot receive negative points, special penalties may result in a total score below zero. Specifically, penalties can be applied for not attending a test (see~\\refsec{rule:not_attending}) or for extraordinary violations (see~\\refsec{rule:extraordinary_penalties}).\n\\end{enumerate}\n\n"
  },
  {
    "path": "pages/general_rules/PenaltiesBonuses.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\newcommand{\\penaltybig}{500~}\n\\newcommand{\\penaltysmall}{250~}\n\n\\section{Special penalties and bonuses}\\label{sec:special_awards}\n\n\\subsection{Penalty for not attending}\\label{rule:not_attending}\n\\begin{enumerate}\n\t\\item \\textbf{Automatic schedule:} All teams are automatically scheduled for all tests.\n\n\t\\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.\n\n\t\\item \\textbf{Penalties:} A team that is not present at the start position when their scheduled test begins is not allowed to participate in the test.\n\tIf the team has not announced its absence, it receives a penalty of \\scoring{\\notattendingpenalty{} points}.\n\\end{enumerate}\n\n\\subsection{Extraordinary penalties}\\label{rule:extraordinary_penalties}\n\\begin{enumerate}\n\t\\item \\textbf{Penalty for cheating:} If a team member is found cheating or breaking Fair Play, the team will be automatically disqualified from the running test, and receives a penalty of \\scoring{\\penaltybig points}.\n\tThe \\TC{} may also disqualify the team for the entire competition.\n\n\t\\item \\textbf{Extra penalty for collision:} In case of major, grossly negligent collisions the \\TC{} may disqualify the team for a test (the team receives \\scoring{0 points}), or for the entire competition.\n\n\t\\item \\textbf{Not showing up as referee or assistant:} If a team does not provide a referee or assistant who is present at the Arena on time, the team receives a penalty of \\scoring{\\penaltysmall points}.\n\n\\end{enumerate}\n\n\\subsection{Bonus for outstanding performance}\\label{rule:outstanding_performance}\n\\begin{enumerate}\n\t\\item For every regular test, the @Home \\TC{} can decide to give an extra bonus for \\iterm{outstanding performance} of up to 10\\% of the maximum test score.\n\n\t\\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.\n\n\t\\item If a team believes it deserves this bonus, it should inform the \\TC{} in advance and provide a brief explanation.\n\n\t\\item The decision to grant the bonus and its extent is solely at the discretion of the \\TC{}.\n\\end{enumerate}\n"
  },
  {
    "path": "pages/general_rules/Procedure.tex",
    "content": "\\section{Procedure during Tests}\n\n\\subsection{Safety First!}\\label{rule:safetyfirst}\n\n\\begin{enumerate}\n\t\\item \\textbf{Emergency Stop:} At any time, if a robot exhibits dangerous behavior towards people or objects, the owners must immediately stop it.\n\t\\item \\textbf{Stopping on request:} If a referee, member of the Technical or Organizational committee, an Executive or Trustee of the federation stops the robot (by pressing the emergency button) there will be no discussion. Similarly, if they tell the team to stop the robot, the robot must be stopped \\emph{immediately}.\n\t\\item \\textbf{Penalties:} Failure to comply results in immediate disqualification from the ongoing competition by the \\AtHome{} \\TC{}. Additionally, the team and its members may be banned from future competitions for at least one year by the RoboCup Federation Trustee Board.\n\\end{enumerate}\n\n\\subsection{Maximum number of team members}\\label{rule:number_of_people}\n\n\\begin{enumerate}\n\t\\item \\textbf{Regular Tests:} During regular tests, only one team member is allowed inside the \\Arena{}.\n\tExceptions are tests that explicitly require volunteer assistance.\n\t\\item \\textbf{Setup:} During the setup, the number of team members inside the \\Arena{} is not limited.\n\t% \\item \\textbf{Open Demonstrations:} During the \\iterm{Open Challenge} \\iterm{Demo Challenge}, and the \\iaterm{final demonstration}{Finals}, the number of team members inside the arena is not limited.\n\t%\\item \\textbf{Open Demonstrations:} During the \\iterm{Open Challenge}, and the \\iaterm{final demonstration}{Finals}, the number of team members inside the arena is not limited.\n\\end{enumerate}\n\n\\subsection{Fair play}\\label{rule:fairplay}\n\\iterm{Fair Play} and cooperative behavior are expected from all teams throughout the competition, especially:\n\\begin{itemize}\n\t\\item while evaluating other teams,\n\t\\item while refereeing, and\n\t\\item when interacting with other teams' robots.\n\\end{itemize}\nThis includes the following:\n\\begin{itemize}\n\t\\item not attempting to cheat (e.g., pretending autonomous behavior where there is none),\n\t\\item not exploiting the rules (e.g., not attempting to solve the task but trying to score),\n\t\\item not intentionally causing other robots to fail.\n\\end{itemize}\nViolating this rule may result in penalties such as negative scores, disqualification for a test, or even the entire competition.\n\n\\subsection{Expected Robot's Behavior}\nUnless stated otherwise, it is expected that the robot behaves and reacts as a polite and friendly human would.\nThis applies to both how the robot performs tasks and how it interacts with humans.\nAs rule of thumb, one may ask any non-scientist how they would solve the task.\n\nPlease note that average users may not be familiar with the specific procedures for operating a robot. Therefore, interactions should be as natural as those with a human.\n\n\n\\subsection{Robot Autonomy and Remote Control}\n\\begin{enumerate}\n\t\\item \\textbf{No touching:} During a test, the participants are not allowed to physically touch the robot(s) unless it is a \\enquote{natural} way required by the task.\n\n\t\\item \\textbf{Natural interaction:} The only allowed means to interact with the robot(s) are gestures and speech.\n\n\t\\item \\textbf{Natural commands:} Anything that resembles direct control is forbidden.\n\n\t\\item \\textbf{Remote Control:} Remotely controlling the robot(s) is strictly prohibited.\n\tThis includes pressing buttons, or intentionally influencing sensors.\n\n\t\\item \\textbf{Penalties:} Disregard of these rules will lead to disqualification for a test or for the entire competition.\n\\end{enumerate}\n\n\n\n\\subsection{Collisions}\n\\begin{enumerate}\n\t\\item \\textbf{\\iterm{Touching}:} Gentle \\emph{touching} of objects is acceptable but not advised. \n\tRobots must not crash into anything.\n\tThe \\enquote{safety first} rule (\\refsec{rule:safetyfirst}) takes precedence over any other rule.\n\n\t\\item \\textbf{\\iterm{Major collisions}:} If a robot crushes into something during a test, it is immediately stopped. Additional penalties may apply.\n\n\t\\item \\textbf{\\iterm{Functional touching}:} Robots are allowed to apply pressure on objects, push furniture and, and interact with the environment using structural parts other than their manipulators.\n\tThis is known as \\iterm{functional touching}.\n\tHowever, the robot must clearly announce the interaction and kindly request not being stopped.\\\\\n\t\\textbf{Remark: } Referees may immediately stop a robot if there is suspicion of \\emph{dangerous} behavior.\n\\end{enumerate}\n\n\\subsection{Removal of robots}\\label{rule:robot_removal}\n\nRobots that do not comply with the rules are stopped and removed from the \\Arena{}.\n\n\\begin{enumerate}\n\t\\item It is the decision of the referees and the \\TC{} member monitoring the test if and when to remove a robot.\n\n\t\\item When told to do so by the referees or the \\TC{} member, the team must immediately stop the robot, and remove it from the \\Arena{} without disturbing the ongoing test.\n\t\n\t\\item More than one team member is allowed to enter the \\Arena{} after the robot has been stopped to quickly remove it.\n\n\\end{enumerate}\n\n\n\\subsection{Start Signal}\\label{rule:start_signal}\nRight before starting a task, a start signal is given to the robot to indicate the robot must start performing the task.\nFor tasks where the robot starts outside the arena and must enter the arena, the start signal is the door opening. \nFor tasks where the robot starts inside the arena or the task does not involve entering the arena, the start signal must be manual and performed by the referee. \n\n\\begin{enumerate}\n    \\item \\textbf{Door opening:} The robot starts outside the \\Arena{} and is accompanied by a team member. The test begins when a referee (not a team member) opens the door.\n\n    \\item \\textbf{Manual start signal:} After a team member positioning the robot in the correct location and starting the robot, the referee must perform a manual start signal previoulsy approved on Robot Inspection (see~\\refsec{sec:robot_inspection}).\n\tWhen the robot is ready to start a task, it must clearly inform the referee it is ready to start, and what it needs to do to activate the start signal.\n\tSome examples of possible manual start signals are:\n\t\\begin{itemize}[nosep]\n\t\t\\item Pressing a physical button on the robot (must be easily accessible and clearly marked as the start button)\n\t\t\\item Pressing a physical button on a remote controller\n\t\t\\item Releasing the emergency stop button\n        \\item Applying pressure to the robot's contact/pressure sensors (e.g., pushing the head, gripper or an arm joint).\n\t\t\\item Verbal instructions\n\t\t\\item Hand gesture\n        \\item Custom HRI interfaces (touchscreen, apps, software, etc.)\n\t\\end{itemize}\n\tStart signals that involve the referee usage of mouses or writting on keyboards are forbidden. \n\tOther start signals may be allowed, but must be authorized by the \\TC{} during the Robot Inspection (see~\\refsec{sec:robot_inspection}).\n\n\\end{enumerate}\n\n\\subsection{Restart Rule}\\label{rule:restart}\n\nDuring any test, teams are allowed to perform a single restart per attempt under the following conditions:\n\\begin{itemize}\n    \\item A restart may only be requested until the robot scores 40 points.\n    \\item The test time continues to run during the restart.\n    \\item The team moves the robot back to the starting location.\n    \\item The team has a maximum of \\SI{60}{\\second} to restart the robot.\n    \\item Only one restart is permitted per test attempt.\n    \\item Only points scored after a restart are counted; points scored before the restart are not considered.\n\\end{itemize}\n\n\n\\subsection{Entering and leaving the \\Arena{}}\\label{rule:start_position}\n\\begin{enumerate}\n\n\t\\item \\textbf{Start position:} Unless stated otherwise, the robot starts outside of the \\Arena{}.\n\t\\item \\textbf{Entering:} The robot must autonomously enter the \\Arena{}.\n\\end{enumerate}\n\n\n\n\\subsection{Gestures}\\label{rule:gestures}\nHand gestures may be used to control the robot in the following way:\n\\begin{enumerate}\n\t\\item \\textbf{Definition:} The teams define the hand gestures by themselves.\n\n\t\\item \\textbf{Approval:} Gestures need to be approved by the referees and \\TC{} member monitoring the test. Gestures should not involve more than the movement of both arms. This includes, for example, expressions of sign language or pointing gestures.\n\n\t\\item \\textbf{Instructing operators:} It is the responsibility of the team to instruct operators.\n\t\\begin{enumerate}\n\t\t\\item The team may only instruct the operator when told to so by a referee.\n\t\t\\item The team may only instruct the operator in the presence of a referee.\n\t\t\\item The team may only instruct the robot for as long as allowed by the referee.\n\t\t\\item When the robot has to instruct the operator, it is the robot that instructs the operator and \\emph{not} the team. The team is not allowed to guide the operator further, such as telling them to come closer or repeat a command.\n\t\t\\item The robot is allowed to instruct the operator at any time.\n\t\\end{enumerate}\n\n\t\\item \\textbf{Receiving gestures:} Unless stated otherwise, it is not allowed to use a speech command to set the robot into a special mode for receiving gestures.\n\\end{enumerate}\n\n\n\n\\subsection{Referees}\\label{rule:referees}\nAll tests are monitored by a referee, who is a member of the \\TC{}. The referee may appoint an assistant to help with timekeeping and score sheets.\n\nThe following rules apply:\n\\begin{enumerate}\n\t\\item \\textbf{Selection:} Referees are chosen by \\EC{},\\TC{},\\OC{}.\n\n\t\\item \\textbf{Referee instructions:} Right before each test, the referee selects one or more assistants to aid during the test. The assistants will be instructed by the referee.\n\\end{enumerate}\n\n\n\\subsection{Operators}\\label{rule:operator}\nUnless stated otherwise, robots are operated by the referee or by a person selected by the referee.\nIf the robot fails to understand the default operator, the team may request the use of a custom operator.\nA penalty may apply when using a custom operator.\n\n\n\\subsection{Time limits}\\label{rule:time_limits}\n\\begin{enumerate}\n\t\\item \\textbf{Inactivity:} Robots must not stand still or get stuck in endless loops.\n\tIf a robot is not progressing in the task (and is clearly not attempting to do so), it is considered inactive.\n\tThe robot must be removed from the \\Arena{} after 30 seconds of inactivity.\n\n\t\\item \\textbf{Requesting time:} A robot (not the team) can request the referees to extend the inactivity time limit for a time-consuming process (e.g., 60~seconds). This time cannot exceed 3 minutes and can only be used once per test.\n\n\t\\item \\textbf{Setup time:} Unless stated otherwise, there is no setup time.\n\tRobots need to be ready to enter the \\Arena{} no later than one minute after the door has been closed to the previous team.\n\n\t\\item \\textbf{Time-up:} When the time is up, the team must immediately remove their robot(s) from the  \\Arena{}.\n\tNo more additional score will be giving.\n\n\t\\item \\textbf{Show must go on:} In special cases, the referee may allow the robot to continue the test for demonstration purposes, but no additional points will be scored.\n\\end{enumerate}\n"
  },
  {
    "path": "pages/general_rules/Robots.tex",
    "content": "\\section{Robots}\\label{rule:robots}\n\n\\subsection{Number of Robots}\\label{rule:robots_number}\n\n\\begin{enumerate}\n\t\\item \\textbf{Registration:} The maximum \\term{number of robots} per team is \\emph{two}. Note, that a different configuration of a robot (i.e. alternative gripper) counts as a second robot. A robot needs to pass \\RobotInspection \\ in both configurations.\n\t\\item \\textbf{Regular Tests:} Only one robot is allowed per test. Different robots can be used for different test runs.\n\\end{enumerate}\n\n\\subsection{Appearance and Safety}\\label{rule:robot_appearance}\n\nRobots competing in the RoboCup@Home League must comply with security specifications to ensure they do not pose any risk to people or property while operating.\n\\begin{enumerate}\n\t\\item \\textbf{Cover:} All internal hardware (electronics and cables) must be fully enclosed to ensure safety.\n\t\\item \\textbf{Appearance:} Robots should present a product-like, finished appearance rather than an early-stage prototype. While improvised coverings (e.g. a t-shirt) are not explicitly prohibited, they are strongly discouraged. %Visible duct tape is strictly prohibited.\n\t\\item \\textbf{Loose cables:} No loose cables should hang out of the robot.\n\t\\item \\textbf{Safety:} The robot must not have sharp edges or protruding parts that could harm people.\n\t\\item \\textbf{Annoyance:} The robot must not emit continuous loud noises or use blinding lights.\n\t\\item \\textbf{Marks:} The robot must not display any artificial marks or patterns.\n\t\\item \\textbf{Driving:} Obstacle avoidance is mandatory to ensure safe movement.\n\\end{enumerate}\nThe compliance with these rules will be verified during \\RobotInspection{} (see \\ref{sec:robot_inspection}).\n\n\\subsubsection{Size and Weight}\\label{rule:robots_size}\n\n\\begin{enumerate}\n\t\\item \\textbf{Dimensions:} The robot must fit within the dimensions of an average door, which are typically \\SI{200}{\\centi\\meter} by \\SI{70}{\\centi\\meter} in most countries.\n\tThe \\TC{} allows the qualification and registration of larger robots, but they cannot guarantee that these robots can actually enter the \\Arena{} due to local restrictions.\n\tIf in doubt, please contact the \\LOC{}.\n\t\\item \\textbf{Weight:} While there are no specific weight restrictions, the robot's total weight and the pressure it exerts on the floor must not exceed local regulations for the construction of offices and/or buildings in the country where the competition is held.\n\t\\item \\textbf{Transportation:} Team members are responsible for quickly removing the robot from the \\Arena{}.\n\tThe robot must be transportable by the team members in a way that is both quick and easy.\n\\end{enumerate}\n\n\\subsubsection{Emergency Stop Button}\\label{rule:robots_emergency_button}\n\n\\begin{enumerate}\n\t\\item \\textbf{Accessibility and visibility:} Each robot must have an easily accessible and visible \\EmergencyStop{} button.\n\t\\item \\textbf{Color:} \\EmergencyStop{} buttons must be colored red and must be the only red buttons on the robot.\n\tThe \\TC{} may ask the team to tape over or remove any other red buttons present on the robot.\n\t\\item \\textbf{Robot behavior:} When an \\EmergencyStop{} button is pressed, the robot and all its parts must stop moving immediately.\n\\end{enumerate}\n\n\\subsubsection{Start Button}\\label{rule:start_button}\n\n\\begin{enumerate}\n\t\\item \\textbf{Requirements:} As explained in~\\refsec{rule:start_signal}, teams that cannot perform the default start signal (opening the door) must provide a \\StartButton{} that can be used to start tests.\n\tTeams must inform the TC in advance of any test that involves a start signal, including the \\RobotInspection{}.\n\t\\item \\textbf{Definition:} The \\StartButton{} can be any \\enquote{one-button procedure} that is easy for a referee to execute, such as releasing the \\EmergencyStop{}, pressing a green button, or using a software button in a graphical user interface.\n\\end{enumerate}\n\n\\noindent\\textbf{Note:} All robot requirements will be tested during the \\RobotInspection{} (see~\\ref{sec:robot_inspection}).\n\n\n\n\n"
  },
  {
    "path": "pages/general_rules/Scenario.tex",
    "content": "\\section{Scenario}\\label{sec:scenario}\n\nMost competition tests take place in the \\RoboCup\\AtHome{} \\Arena, but some tests may take place outside, in a previously unknown public place.\nIn this section, the \\Arena{} and its contents are described, including the furnishing and other information common to all tests and leagues.\n\n\\subsection{RoboCup@Home Arena}\n\nThe \\RoboCup\\AtHome\\Arena{} is a realistic home setting (an apartment) composed of interconnected rooms.\nThe minimal configuration consists of:\n\\begin{itemize}\n\t\\item a living room,\n\t\\item a kitchen\n\t\\item two additional rooms (e.g., bedroom, office, dining room, laundry room, foyer, childrens room).\n\\end{itemize}\nThere are usually two competition arenas.\n\nDepending on the local organization, there may be multiple \\Arena{}s that differ, and a robot must be prepared to perform any task in any \\Arena{}.\n\nThe arena is designed to resemble a typical apartment in the hosting country, including all necessities and decorations found in a \\emph{normal} home.\nNote that what is considered \\emph{normal} may vary by culture and location.\nDecorations can include, but are not limited to, plants, mirrors, paintings, posters, plates, picture frames, wall clocks, candles with holders, and books.\n\n\\subsection{Walls, Doors, and Floor}\\label{rule:scenario_walls}\n\nThe indoor home setting will be surrounded by high and low \\Term{walls}{Arena walls}, which are built up using standard fair construction material.\n\n\\begin{enumerate}\n\t\\item \\textbf{Walls:} Walls are fixed and cannot be modified during the competition. The minimum wall height is \\SI{60}{\\centi\\meter}; a maximum height is not specified, but must allow the audience to view the competition.\n\t\\item \\textbf{Doors:} Rooms are connected by doors (at least one). All doors have handles, not knobs, and can be closed at any time.\n\tIt is expected that robots can open these doors or find alternative paths around them.\n\tDoors must meet minimum accessibility requirements, with a recommended width of \\SI{915}{\\milli\\meter}.\n\t\\item \\textbf{Floor:} The floor and doorways are even, so there are no major steps or stairs. Minor variations, such as carpets, floor transitions, and small gaps (especially at doorways), can be expected.\n\t\\item \\textbf{Appearance:} The floor and walls are mostly monochromatic, but may have textures like carpets or posters on walls.\n\\end{enumerate}\n\n\n\\subsection{Furniture}\\label{rule:scenario_furniture}\n\nThe \\Arena{} is furnished with typical objects common to the host country.\nThe minimal configuration consists of:\n\\begin{itemize}\n\t\\item a couch,\n    \\item a coffee or side table,\n    \\item a small dining table with two chairs,\n    \\item a trash bin,\n    \\item a bookcase (or similar shelving) with a minimum shelf spacing of \\qty{30}{\\centi\\metre},\n    \\item a front-loading washing machine,\n    \\item kitchen equipment including:\n    \\begin{itemize}\n        \\item a dishwasher,\n        \\item a pantry (tall cupboard with shelves) with a minimum shelf spacing of \\qty{30}{\\centi\\metre},\n    \\end{itemize}\n\\end{itemize}\n\nA typical \\Arena{} setup is shown in~\\reffig{fig:scenario_arena}.\n\\begin{figure}[tbp]\n\t\\centering\n\t\\subfloat[Typical Arena]{\\label{fig:scenario_arena}\\includegraphics[height=46mm]{images/typical_arena.jpg}}\n\t\\subfloat[Typical objects]{\\label{fig:scenario_objects}\\includegraphics[height=46mm]{images/typical_objects.jpg}}\n\t\\caption{An example of a \\RoboCup\\AtHome{} scenario}\\label{fig:arena}\n\\end{figure}\n\n\\subsection{Changes to the \\Arena}\\label{rule:scenario_changes}\n\nSince robots should be able to function in the real world, the \\Arena{} is not fixed and might change without notice.\n\\begin{enumerate}\n\t\\item \\textbf{Major changes:}\n\tFurniture that is not fully static in everyday environments may be moved slightly between tests.\n\tIn particular, furniture will not change rooms or move drastically within a room, but a couch or table may be slightly rotated or moved. Fixed locations for such furniture items should not be assumed.\n\tWalls will stay in place and rooms will retain their function.\n\tPassages might be blocked.\n\t\\item \\textbf{Minor Changes:} Slightly moved chairs, slightly closed doors, or similar adjustments may occur at any time, even during a test.\n\\end{enumerate}\n\n\\def\\NumObjects{30\\ }\n\\def\\NumLocations{20\\ }\n\\def\\NumNames{20\\ }\n\n\\subsection{Objects}\\label{rule:scenario_objects}\n\nSome tests in the RoboCup@Home league involve recognizing and manipulating objects (see Figure~\\reffig{fig:scenario_objects}).\nThe \\TC{} will compile a list of at least \\NumObjects{} objects for this purpose.\nEach object will have a picture, an official name, and an \\ObjectCategory{} (e.g., an \\textit{Apple} is in the \\textit{Fruits} category).\nMost objects are lightweight and easy to grasp with one hand.\nEvery \\ObjectCategory{} has an assigned \\PredefinedLocation{}, where objects of that category are usually found during tests (for example, an \\textit{Fruits} can be found on the \\textit{Kitchen Table}).\nThese locations are announced during the \\SetupDays{} (see~\\refsec{chap:setup_and_preparation}).\n\nObjects are provided at the competition for training.\nTeams may keep at most five training objects at a time and for up to one hour.\nModifying the objects is not allowed.\n\nTwo types of objects are used in the tasks:\n\\begin{enumerate}\n\t\\item \\textbf{\\KnownObjects{}:} Objects previously known to the robot, divided into:\n\t\\begin{enumerate}\n\t\t\\item \\textbf{\\ConsistentObjects{}:} Objects whose image appears in the list of objects. These are published and available for testing and training on the first setup day.\n\t\t\\begin{enumerate}\n\t\t\t\\item \\textbf{\\CommonObjects{}:} All the Common objects, for teams to acquire and train on beforehand.\n\t\t\t\\item \\textbf{\\iterm{YCB Objects}:} Objects chosen from the \\YCBData{}\\footnote{\\url{http://www.ycbbenchmarks.com/object-set/}}.\n\t\t\t\\item \\textbf{\\LocalObjects{}:} Local household items bought during the competition.\n\t\t\\end{enumerate}\n\t\t\\item \\textbf{\\SimilarObjects{}:} Objects not in the list but similar enough to one of the listed objects that a person would consider them the same kind (e.g., an apple with a different color or a cloth with a different pattern).\n\t\\end{enumerate}\n\t\\item \\textbf{\\UnknownObjects{}:} Any other object not in the object list but can be grasped or handled (e.g., \\Arena{} decorations).\n\\end{enumerate}\n\n\\begin{figure}[H]\n\t\\centering\n\t\\subfloat[Red Bull can]{\n\t\t\\includegraphics[width=0.24\\textwidth]{images/red_bull.jpg}\\label{fig:scenario_red_bull}}\n\t\\subfloat[Red Pringles can]{\n\t\t\\includegraphics[width=0.24\\textwidth]{images/pringles.jpg}\\label{fig:scenario_pringles}}\n\t\\subfloat[Solved Rubik's cube]{\n\t\t\\includegraphics[width=0.24\\textwidth]{images/rubiks_cube.jpg}\\label{fig:scenario_rubiks_cube}}\n\t\\subfloat[Colgate toothpaste box]{\n\t\t\\includegraphics[width=0.24\\textwidth]{images/colgate.jpeg}\\label{fig:scenario_colgate}}\n\t\\caption{Worldwide available objects}\n\t\\label{fig:scenario_common_objects}\n\\end{figure}\n\nThe minimal configuration of \\KnownObjects{} consists of:\n\\begin{itemize}\n\t\\item \\textbf{\\iterm{Tableware}:} Dish, bowl, cup (or mug), and napkin.\n\t\\item \\textbf{\\iterm{Cutlery}:} Fork, knife, and spoon.\n\t\\item \\textbf{\\iterm{Bags}:} Lightweight and with stiff, vertical handles.\n\t\\item \\textbf{\\iterm{Trays}:} A transport objects like trays or baskets, intended for bimanual manipulation.\n\t\\item \\textbf{\\iterm{Pourable}:} An object whose content can be poured (such as a cereal box).\n\t\\item \\textbf{\\iterm{Heavy object}:} Weighing between \\SI{1.0}{\\kg} and \\SI{1.5}{\\kg}.\n\t\\item \\textbf{\\iterm{Tiny object}:} A lightweight object not larger than \\SI{5}{\\centi\\meter} (such as a strawberry or a dice).\n\t\\item \\textbf{\\iterm{Fragile object}:} An object that is easy to break (such as a chocolate egg).\n\t\\item \\textbf{\\iterm{Deformable object}:} A flexible object that may change shapes (such as cloth).\n\t\\item \\textbf{\\iterm{Laundry}:} T-shirt to be used for folding.\n\t\\item \\textbf{\\iterm{Laundry basket}:} A wide, lightweight laundry basket, intended for bimanual manipulation. (see Figure~\\ref{fig:scenario_basket} for an example).\n\t\\item \\textbf{\\iterm{Common Objects}:} A Red Bull can, a red Pringles container, a solved Rubik’s cube and a Colgate toothpaste box. These objects must be commonly available worldwide. (see Figure~\\ref{fig:scenario_common_objects}).\n\\end{itemize}\n\n\n\n\\begin{figure}[H]\n\t\\centering\n\t\\subfloat[Example Laundry Basket]{\n\t\t\\includegraphics[width=0.32\\textwidth]{images/basket.jpg}\\label{fig:scenario_basket}}\n\t\\caption{Additional scenario objects}\n\t\\label{fig:additional_items}\n\\end{figure}\n\nDuring the competition, objects can be requested based on their \\ObjectCategory{}, physical attributes, or a combination of both.\nRelevant attributes to be used are:\n\\begin{itemize}\n\t\\item Color (such as red, blue, black with white dots, etc.).\n\t\\item Relative estimated size (smallest, largest, big one, etc.).\n\t\\item Relative estimated weight (lightest, heaviest).\n\t\\item Relative position to other objects (left of, rightmost, etc.).\n\t\\item Description (is fragile, is a container, can be poured, requires two hands, etc.).\n\\end{itemize}\n\n\\noindent\\textbf{Remark:} Measurements are estimations and based on common sense. It is acceptable for robots to consider similar objects to be about the same size or weight.\n\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%\n% Predefined locations section.\n%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\subsection{Predefined Rooms and Locations}\\label{rule:scenario_locations}\n\nSome tests require robots to interact with \\PredefinedLocation{} where people or objects may be found.\nThe \\Arena{} includes at least two \\Term{doors}{Arena doors}, named \\Entrance{} and \\Exit{}, which connect to and from the \\Arena{}.\n\nRoom names, predefined locations, and location classes are announced during the \\SetupDays{} (see~\\refsec{chap:setup_and_preparation}).\n\n\\subsection{Predefined Person Names}\\label{rule:scenario_names}\n\nSome tests involve memorizing a person's name.\nEach person in the \\Arena{} is assigned a \\PredefinedName{} by the \\TC{}.\nThe list of names contains \\SI{25}{\\percent} male, \\SI{25}{\\percent} female, and \\SI{50}{\\percent} gender-neutral names taken from the list of most commonly used names in the United States.\nPredefined names are announced during the \\SetupDays{} (see~\\refsec{chap:setup_and_preparation}).\n\n\\subsection{Wireless network}\\label{rule:scenario_wifi}\n\nFor wireless communication, an \\ArenaNetwork{} is provided.\nThe actual infrastructure depends on the local organization.\nReliability and performance of the network are not guaranteed, so robots are expected to be able to function without it.\n\nThe following rules apply:\n\\begin{itemize}\n\t\\item Only the \\ArenaNetwork{} can be used during tests.\n\t\\item Only the active team in a task is allowed can use the \\ArenaNetwork{}.\n\t\\item The \\ArenaNetwork{} provides one Virtual Local Area Network (VLAN) per team.\n\t\\item Each VLAN has its own SSID and password.\n\t\\item VLAN traffic is isolated from others teams.\n\t\\item Each VLAN is also connected to the Internet.\n\\end{itemize}\n\nTeams broadcasting unauthorized wireless networks will be disqualified.\nThis includes networks with concealed SSIDs.\nIt is recommended to check all devices for any unauthorized wireless network activity.\n\n\n"
  },
  {
    "path": "pages/general_rules/ScoringInteraction.tex",
    "content": "\\section{Scoring Human Robot Interaction}\\label{sec:rules:hri}\nIn some tests, the robot is required to interact with volunteer participants other than the referees. These volunteers may include team members or individuals from outside the league with no robotics background.\nIn such cases, the interaction will be evaluated by the volunteer.\nA score will only be awarded if the volunteer confirms that the interaction was successful.\n\n\\subsection*{Example}\\label{rule:hri_example}\nExample (non-exhaustive):\n\\begin{itemize}[noitemsep]\n\t\\item The referee may ask the person if they understood information provided by the robot.\n\t\\item The referee may ask the person if the robot held eye contact.\n\\end{itemize}\n"
  },
  {
    "path": "pages/general_rules/TeamRegistration.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\section{Team Registration and Qualification}\n\n\n\\subsection{Registration and Qualification Process}\n\\label{rule:participation}\n\nEach year, there are three phases in the process towards participation in \\AtHome:\n\\begin{enumerate}\n\t\\item \\iterm{Preregistration}\n\t\\item \\iterm{Qualification} announcement\n\t\\item Final \\iterm{Registration} for qualified teams\n\\end{enumerate}\nThe \\iterm{Preregistration} process is initiated by a call for participation sent to the \\iterm{RoboCup@Home mailing list}.\nPreregistration requires a \\iterm{Team Description Paper}, a \\iterm{Qualification Video}, and a \\iterm{Team Website}.\nThe expected contents of these are described below.\n\n\\subsection{Team Description Paper}\\label{rule:website_tdp}\n\nThe \\TDP{} is an 8-pages scientific paper that must include a description of your main research, including the scientific contribution, goals, scope, and results.\nThe \\TDP{} has to be written in English and formatted using the template of the RoboCup International Symposium without any alterations.\nThe paper should contain the following items:\n\\begin{itemize}\n\t\\item The focus of research and the contributions in the respective fields\n\t\\item Innovative technology (if any)\n\t\\item Re-usability of the system for other research groups\n\t\\item Applicability of the robot in real-world scenarios\n\t\\item Photo(s) of the robot(s) used\n\\end{itemize}\n\nAs an appendix on the 9th page (after the references), please include:\n\\begin{itemize}\n\t\\item Team name\n\t\\item Contact information\n\t\\item Website URL\n\t\\item Names of the team members\n\t\\item Photo(s) of the robot(s), unless included before\n\t\\item Description of the hardware used\n\t\\item A brief, compact list of \\iterm{external devices} (see~\\refsec{rule:robot_external_devices}), if any\n\t\\item A brief, compact list of any used 3rd party software packages (e.g.~ROS' \\texttt{object\\_recognition} should be listed, but \\texttt{OpenCV} doesn't have to be because it is a rather standard library)\n\t\\item A brief description of the hardware used by the robot(s)\n\\end{itemize}\n\nDuring the qualification process, the \\TDP{} will be scored according to its scientific value, novelty, and contributions.\n\n\\subsection{Qualification Video}\n\nAs a proof of running hardware, each team has to provide a \\iterm{Qualification Video} that demonstrates at least two of the following minimum requirements:\n\\begin{itemize}\n\t\\item Human-robot interaction\n\t\\item Safe navigation (indoors, with obstacle avoidance)\n\t\\item Object detection and manipulation\n\t\\item People detection\n\t\\item Speech recognition\n\t\\item Speech synthesis (clear and loud)\n\\end{itemize}\n\nIt is also recommended that the video include some of the following abilities:\n\\begin{itemize}\n\t\\item Activity recognition\n\t\\item Complex speech recognition\n\t\\item Complex action planning\n\t\\item Gesture recognition\n\t\\item Failure recovery\n\\end{itemize}\n\nThe video should not exceed \\SI{10}{\\minute}, be self-explanatory and be designed for a general audience.\nIt must show the robot solving complex tasks relevant to \\AtHome{}. \nIn particular, to qualify for the competition, the video must demonstrate that the robot is able to successfully solve at least one test from the current or previous year's rule book.\nFor robots moving slowly, we recommend speeding up the video, but please indicate the speed factor being used when doing so (e.g. 2x). The same rule applies for slow motion scenes.\n\n\\subsection{Team Website}\n\nThe \\iterm{Team Website} should be designed for a broader audience and include scientific material (scientific papers, datasets, and documented open source code).\nThe requirements for the website are as follows:\n\n\\begin{enumerate}\n\t\\item \\textbf{Language}: The \\iterm{Team Website} must be in English. Other languages may be available, but English must be default language.\n\t\\item \\textbf{Team}: A comprehensive list of all team members, including brief profiles.\n\t\\item \\textbf{RoboCup}: Link to the league website and previous participations of the team at \\RoboCup{} (not necessarily only \\AtHome{}).\n\t\\item \\textbf{Scientific approach}: Include a research statement, a description of the used approach, and information on scientific achievements.\n\t\\item \\textbf{Publications}: Relevant \\iterm{publications} from at least the last five years should be included. Downloadable publications are scored higher during the qualification process.\n\t\\item \\textbf{Open source material}: Blueprints, datasets, repositories, or any other contributions to the league are highly valued during the qualification process.\n\t\\item \\textbf{Multimedia}: Photos and videos of the robot(s) used should be included and easily accessible.\n\\end{enumerate}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection{Qualification}\\label{rule:qualification}\n\nDuring the \\iterm{Qualification Process}, a selection will be made by the \\OC{}.\nThe following factors are evaluated in the decision process:\n\\begin{itemize}\n\t\\item The scientific value, novelty, and contributions of the \\TDP{}\n\t\\item The number of abilities and the complexity of the tasks shown in the \\iterm{Qualification Video}\n\t\\item The contents of the \\iterm{Team Website}, where relevant publications and open source resources are highly valued\n\\end{itemize}\n\nIn addition, the following evaluation criteria are considered:\n\\begin{itemize}\n\t\\item The performance in previous competitions\n\t\\item Relevant scientific contributions and publications\n\t\\item Any additional contributions to the \\AtHome{} league\n\\end{itemize}\n\n\\subsection{Participation Confirmation}\\label{rule:participation-confirmation}\n\nIn order to have as many participating teams as possible, qualified teams \\emph{must} contact the \\OC{} to confirm (or cancel) the participation several months in advance.\nConfirming attendance implies that the team has sufficient resources to register for the competition and commits to attend the event.\nQualified teams that do not confirm their participation may be disqualified.\n\n\n\n"
  },
  {
    "path": "pages/general_rules/vizbox.tex",
    "content": "\\section{Audience interaction}\\label{rule:vizbox}\n\nPart of making \\RoboCup\\AtHome{} appealing is to show the audience what robots should do and what they are actually doing during tasks.\nIn particular, providing information about what a robot is doing to the audience is important for the advancement of the league.\nTo 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.\nThe 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.\nThe \\iterm{VizBox} can:\n\\begin{itemize}\n\t\\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\n\t\\item show an outline of the current tasks and the robot's current state in it\n\t\\item display subtitles of the conversation between a robot and an operator\n\\end{itemize}\nAdditionally, the \\iterm{VizBox} offers a way to input text commands to the robot so that automatic speech recognition can be bypassed, if necessary.\n\nThe documentation of the component is maintained in the \\iterm{VizBox} repository.\nAll 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.\n"
  },
  {
    "path": "pages/introduction/Awards.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Introduction - Awards\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\section{Awards}\\label{sec:awards}\n\nThe \\AtHome{} league features the \\iterm{awards} described below.\nNote that all awards need to be approved by the \\RCF{}; based on a decision by the RCF, some of them may not be awarded\n\n\\subsection{Winner of the Competition}\\label{award:winner}\n\nFor each league, there will be 1st, 2nd, and 3rd place award trophies (or only 1st and 2nd place trophies if the number of teams in a league is eight or fewer).\n\n\\subsection{Best Human-Robot Interface Award}\\label{award:hri}\n\nTo honor outstanding human-robot interfaces developed for interacting with robots in \\AtHome{}, a special \\HRIAward{} may be awarded to one of the participating teams.\nSpecial attention is given to interfaces that are open and available to the \\AtHome{} community.\n\nThe \\AtHome{} \\EC{} members nominate a set of candidates for the award and the TC elects the winner.\nA TC member whose team is among the nominees is not allowed to vote.\nNo \\HRIAward{} is given if the EC decides there is no outstanding interface and thus no nominees.\n\n\\subsection{Best Poster Award}\\label{award:poster}\n\nTo promote scientific knowledge exchange and reward teams for their efforts in presenting research contributions, all scientific posters are evaluated for the \\OPLPosterAward{}.\n\nCandidate posters must present innovative and state-of-the-art research in a field directly applicable to \\AtHome{}, with clear and easy-to-understand results.\nIn addition to being attractive and well-rated in the \\PPS{} (see~\\refsec{sec:poster_presentation_session}), the research must also have a measurable impact on the team's performance during the competition.\n\nThe \\AtHome{} \\EC{} members nominate a set of candidates for the award and the TC elects the winner.\nA \\TC{} member whose team is among the nominees is not allowed to vote.\n\n\\subsection{Open Challenge Award}\\label{award:oc}\n\nTo encourage teams to showcase their research to other teams durin the competition off-hours, \\AtHome{} grants the \\OCAward{} to the team that presents the best open demonstration during the competition.\nThis award is given only if a team demonstrates innovative research relevant to the global objectives of \\AtHome{}.\n\nThe \\AtHome{} TC members, with a recommendation from the team leaders, nominate a set of candidates for the award. Yhe EC decides whether the award should be granted and then elects the winner.\nA \\TC{} member is not allowed to nominate their own team without a recommendation from the team leaders.\n\n\\subsection{Skill Certificates}\\label{award:skill}\n\nThe \\AtHome{} league features certificates for best demonstrated skills in \\NAV{}, \\MAN{}, \\PerRec{}, and \\NLP{}.\nA team receives the certificate if it scores at least 75\\% of the attainable points for that skill across all tests and challenges. \nFor example, if a robot scores manipulation points during the \\emph{Help-me-Carry} test to open the door, that will count for the \\MAN{} certificate.\nNote that the certificate will only be awarded if the team is \\emph{not} the overall winner of the competition.\n\n\\subsection{Open-source software award}\\label{award:oss}\n\nSince Nagoya 2017, RoboCup@Home awards the best contribution to the community by means of an open-source software solution.\nTo be eligible for the award, the software must be easy to read, well-documented, follow standard design patterns, actively maintained, and meet the IEEE software engineering metrics of scalability, portability, maintainability, fault tolerance, and robustness.\nAdditionally, the open-source software must be available as a framework-independent standalone library to ensure it can be reused with any software architecture.\n\nCandidates must submit their application to the \\TC{} at least one month before the competition via a short paper (maximum 4 pages), in the same format as the \\TDP{} (see~\\refsec{rule:website_tdp}), including a brief explanation of the approach, comparison with state-of-the-art techniques, statement of the used metrics and software design patterns, and the name of the teams and other collaborators using the software.\n\nThe \\AtHome{} \\EC{} members nominate a set of candidates for the award and the \\TC{} elects the winner.\nA \\TC{} member whose team is among the nominees is not allowed to vote.\n\n\n"
  },
  {
    "path": "pages/introduction/Competition.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Introduction - Competition\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\section{Competition}\nThe competition consists of a series of \\iterm{Tests} held in a daily life environment, followed by the \\FINAL{}.\nTeams compete in the tests to evaluate their robot capabilities, and the highest-ranked teams advance to the \\FINAL{}.\nThe \\FINAL{} features a single integrated task where the top teams compete to determine the winner."
  },
  {
    "path": "pages/introduction/Infrastructure.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Introduction - Infrastructure\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\section{Infrastructure}\\label{sec:introduction:infrastructure}\n\n\\paragraph{RoboCup@Home Mailing List}\\label{sec:introduction:mailinglist}\nThe official \\AtHome{} mailing list can be found at\\\\\n\\href{mailto:robocup-athome@lists.robocup.org}{\\small\\texttt{robocup-athome@lists.robocup.org}}.\nYou can subscribe to the mailing list at: {\\small\\url{https://lists.robocup.org/mm/lists/robocup-athome.lists.robocup.org/}}\n\n\\paragraph{RoboCup@Home Web Page}\\label{sec:introduction:webpage}\nThe official \\AtHome{} website that also hosts this rulebook can be found at {\\small\\url{https://athome.robocup.org/}}\n\n\\paragraph{RoboCup@Home Rulebook Repository}\\label{sec:introduction:repo}\nThe official \\AtHome{} \\RR{} is where rules are publicly discussed before applying changes.\nThe entire \\AtHome{} community is welcome and encouraged to actively participate in creating and discussing the rules.\nThe \\RR{} is hosted at {\\small\\url{https://github.com/RoboCupAtHome/RuleBook/}}\n\n\\paragraph{RoboCup@Home Telegram Group}\\label{sec:introduction:telegramgroup}\nThe official \\AtHome{} \\TG{} is a communication channel for the \\AtHome{} community where rules are discussed, announcements are made, and questions are answered.\nBeyond 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.\nThe \\TG{} can be reached at {\\small\\url{https://t.me/RoboCupAtHome}}\n\n\\paragraph{RoboCup@Home Wiki}\\label{sec:introduction:wiki}\nThe official \\AtHome{} \\WIKI{} is meant to be a central place to collect information on all topics related to the \\AtHome{} league.\nThe 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.\nThe \\WIKI{} can be reached at {\\small\\url{https://github.com/RoboCupAtHome/AtHomeCommunityWiki/wiki}}\n"
  },
  {
    "path": "pages/introduction/Leagues.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Introduction - Leagues\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\section{Leagues}\\label{sec:leagues}\n\n\\AtHome{} consists of a single league, meaning teams have complete freedom in selecting their robot platform. The official league and its name is:\n\\begin{itemize}\n  \\item \\OPL{}\n\\end{itemize}\n\n\\subsection{Open Platform League (OPL)}\n\nThe \\OPL{} has followed the same core philosophy since the foundation of \\AtHome{}.\nIts main goal is to develop and test robots that can assist humans in domestic environments.\nWith no hardware constraints, the OPL offers teams full freedom to design and configure their own robots.\nThis openness allows for a wide range of approaches, making the league accessible to both new and experienced teams.\nIn this league, robots are pushed to their performance limits without being restricted by predefined design requirements."
  },
  {
    "path": "pages/introduction/Organization.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%  author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Introduction - Organization\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\section{Organization}\n\n\\AtHome{} is organized into three subcommittees. The current members of the committees are listed at \\url{https://athome.robocup.org/committees/}.\n\n\\subsection{Executive Committee --- rc-home-ec@lists.robocup.org}\\label{sec:ec}\n\nThe \\EC{} consists of members of the board of trustees, and representatives of each activity area, and supervises both the TC and OC.\nThe 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.\nAdditionally, the EC must act when any of the committees fail, as it responds to the Trustee board and directs the league accordingly.\n\n\\subsection{Technical Committee --- rc-home-tc@lists.robocup.org}\\label{sec:tc}\n\nThe \\TC{} is responsible for the rules of the league; its main focus is writing the rulebook and refereeing.\nThe members of the \\EC{} are also members of the \\TC{}.\n\n\\subsection{Organizing Committee --- rc-home-oc@lists.robocup.org}\\label{sec:oc}\n\nThe \\OC{} is responsible for the organization of the competition, namely it creates the schedule and provides information about the scenarios.\nThe \\LOC{}, on the other hand, is responsible for the setup and organization of the competition venue.\n"
  },
  {
    "path": "pages/organization/GeneralRules.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: general_rules.tex 420 2013-04-08 15:30:35Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: description of the GENERAL RULES\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\chapter{General Rules and Regulations}\n\\label{chap:rules}\n\nThese are the general rules and regulations for the competition in the \\RoboCup\\AtHome{} league.\nEvery rule in this section can be considered to implicitly include the term \\emph{\\enquote{unless stated otherwise}}.\nThis 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.\n\n\\input{pages/general_rules/TeamRegistration}\n\n\\input{pages/general_rules/vizbox}\n\n%\\input{pages/general_rules/Scenario}\n\n\\input{pages/general_rules/Robots}\n\n\\input{pages/general_rules/ExternalDevices}\n\n\\input{pages/general_rules/Organization}\n\n\\input{pages/general_rules/Procedure}\n\n%\\input{pages/general_rules/ContinueRules.tex}\n\n\\input{pages/general_rules/PenaltiesBonuses}\n\n\\input{pages/general_rules/OpenChallenge}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "pages/organization/Introduction.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Introduction\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\chapter{Introduction}\n\\label{chap:introduction}\n\n\\input{pages/introduction/Organization}\n\n\\input{pages/introduction/Infrastructure}\n\n\\input{pages/introduction/Leagues}\n\n%\\input{pages/introduction/Competition}\n\n\\input{pages/introduction/Awards}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "pages/organization/Setup.tex",
    "content": "\\chapter{Setup and Preparation}\\label{chap:setup_and_preparation}\n\nPrior to the RoboCup@Home competition, all arriving teams will have an opportunity to set up their robots and prepare for the competition in a \\iterm{Setup \\& Preparation} phase. \nThis phase is scheduled to start on the first day of the competition, namely when the venue opens and the teams arrive. \nDuring the \\SetupDays{}, teams can assemble and test their robots.\nOn the last setup day, a \\WelcomeReception{} will be held.\nTo foster the knowledge exchange between teams, a conference-like \\PPS{} will also be held. \nAdditionally, all teams have to get their robots inspected by members of the \\TC{} to be allowed to participate in the competition.\n\n\\paragraph{Regular tests are not conducted during the setup \\& preparation phase.}\n\n\\begin{table}[h]\n  \\newcolumntype{C}[1]{>{\\centering\\let\\newline\\\\\\arraybackslash\\hspace{0pt}}m{#1}}\n  \\newcolumntype{S}{C{1.6cm}}\n  \\newcolumntype{M}{C{3.2cm}}\n  \\begin{center}\n    \\caption{General Schedule (distribution of tests over days may vary)}\n    \\begin{tabularx}{10.93cm}{S|S|S|S|S|S}\n      \\hline\n      \\multicolumn{2}{|M|}{ \\cellcolor[HTML]{FFFFC7}Setup \\& \\newline Preparation} &\n      \\multicolumn{2}{M|}{ \\cellcolor[HTML]{67FD9A}\\iterm{Tasks}} &\n      \\multicolumn{2}{M|}{ \\cellcolor[HTML]{FFCCC9}\\iterm{Finals}}\\\\\n      \\hline\n      %Second row\n      \\multicolumn{1}{S|}{} &\n      \\multicolumn{2}{M|}{$\\xrightarrow{advance}$\\newline All teams that \\newline passed Inspection} &\n      \\multicolumn{2}{M|}{$\\xrightarrow{advance}$\\newline Best \\newline Teams} &\n      \\multicolumn{1}{C{1.2cm}}{~}\n      \\\\ \\cline{2-5}\n    \\end{tabularx}\n  \\end{center}\n\\end{table}\n\n\n\n\\section{General Setup}\\label{sec:general_setup}\nDepending on the schedule, the \\iterm{Setup \\& Preparation} phase lasts for one or two days.\n\n\\begin{enumerate}\n\t\\item \\textbf{Start:} The \\iterm{Setup \\& Preparation} starts when the venue opens for the first time.\n\t\\item \\textbf{Intention:} During the \\iterm{Setup \\& Preparation}, teams arrive, bring or receive their robots, and assemble and test them.\n\t\\item \\textbf{Tables:} The local organization will set up and randomly assign team tables.\n\t\\item \\textbf{Groups:} Depending on the number of teams, the \\OC{} may form multiple groups of teams (usually four). The \\OC{} will assign teams to groups and announce the assignment to the teams.\n\t\\item \\textbf{\\Arena{}:} The \\Arena{} is available to all teams during the \\iterm{Setup \\& Preparation}. The \\OC{} may schedule special test or mapping slots in which \\Arena{} access is limited to one or more teams exclusively (all teams get slots). Note, however, that the \\Arena{} may not yet be complete and that the last work is conducted in the \\Arena{} during the \\SetupDays{}.\n\t\\item \\textbf{Objects:} The delegation of EC, TC, OC and local organizers will buy the objects (see~\\refsec{rule:scenario_objects}). Note, however, that the objects may not be available at all times and not from the beginning of the \\iterm{Setup \\& Preparation}.\n\\end{enumerate}\n\n\\section{Welcome Reception}\\label{sec:welcome_reception}\nSince Eindhoven 2013, RoboCup@Home holds an own \\WelcomeReception{} in addition to the official opening ceremony. A \\PPS{} is held in which teams present their research focus and latest results (see~\\refsec{sec:poster_presentation_session}).\n\\begin{enumerate}\n\t\\item \\textbf{Time:} The \\WelcomeReception{} is held in the evening of the last setup day.\n\t\\item \\textbf{Place:} The \\WelcomeReception{} takes place in the @Home \\Arena{} and/or in the \\AtHome{} team area.\n\t\\item \\textbf{Snacks \\& drinks:} During the \\WelcomeReception{}, snacks and beverages (beers, sodas, etc.) are served.\n\t\\item \\textbf{Organization:} It is the responsibility of the OC and the local organizers to organize the \\WelcomeReception{} and \\PPS{}, including:\n\t\t\\begin{enumerate}\n\t\t\t\\item Organize poster stands (one per team) or alternatives for presenting the posters,\n\t\t\t\\item Organize snacks and drinks,\n\t\t\t\\item Invite officials, sponsors, the local organization, and the trustees of the RoboCup Federation to the event.\n\t\t\\end{enumerate}\n\t\\item \\textbf{Poster presentation:} Teams give a poster presentation on their research focus, recent results, and their scientific contribution.\n\tBoth the poster and the presentation talk are evaluated by a jury (see~\\refsec{sec:poster_presentation_session}).\n\\end{enumerate}\n\n\\section{Poster Presentation Session}\n\\label{sec:poster_presentation_session}\nAt the \\PPS, each team can give a short presentation of their research and the poster being presented at the poster session.\n\n\\subsection{Poster presentation session}\n\\begin{enumerate}\n\t\\item \\textbf{Presentation:} Each team has a maximum of three minutes to give a short presentation of their poster.\n\t\\item \\textbf{Time:} The \\PPS{} timing is defined by LOC.\n\t\\item \\textbf{Place:} The \\PPS{} may be held in or around the \\Arena{}, depending on venue announced during setup days, but should not interfere with the \\RobotInspection{} (see~\\refsec{sec:robot_inspection}).\n\t\\item \\textbf{Evaluation:} The poster and poster presentations are evaluated by a jury consisting of members of the other teams. Each team has to provide one person (preferably the team-leader) to follow and evaluate the entire \\PPS{}.\n\n\t\\item \\textbf{Criteria:} For each of the following evaluation criteria, a maximum of 10 points is given per jury member:\n\t\\begin{enumerate}\n\t\t\\item Novelty and scientific contribution\n\t\t\\item Relevance for RoboCup@Home\n\t\t\\item Presentation (quality of poster, presentation talk, and discussion during the \\PPS{})\n\t\\end{enumerate}\n\t\\item \\textbf{Score:} The points given by each jury member are scaled to obtain a maximum of 50 points. The total score for each team is the mean of the jury member scores. To neglect outliers, the N best and worst scores are left out:\n\t$$\n\tscore=\\frac{\\sum \\text{team-leader-score}}{\\text{number-of-teams}-\\left ( 2N+1  \\right )},N=\\left\\{\\begin{matrix}\n\t1, & \\text{number-of-teams} \\geq 10\\\\\n\t2, & \\text{number-of-teams} < 10\n\t\\end{matrix}\\right.\n\t$$\n\t\\item \\textbf{Sheet collection:} The evaluation sheets are collected by the \\OC{} at a later time (announced beforehand by the \\OC{}), allowing teams to continue knowledge exchange during the first days of the competition.\n\t\\item \\textbf{OC Instructions:}\n\t\\begin{itemize}\n\t\t\\item Prepare and distribute evaluation sheets before the \\PPS{}.\n\t\t\\item Collect the evaluation sheets.\n\t\t\\item Organize and manage the poster presentations.\n\t\\end{itemize}\n\\end{enumerate}\n\n\\section{Robot Inspection}\\label{sec:robot_inspection}\nSafety is the most important issue when interacting with humans and operating in the same physical workspace. Because of this, all participating robots are inspected before participating in RoboCup@Home. Every team needs to get their robot(s) inspected and approved so that they can participate in the competition.\n\n\\begin{enumerate}\n\t\\item \\textbf{Procedure:} The \\RobotInspection{} is conducted like a regular test, namely it starts with opening of the arena door (see~\\refsec{rule:start_signal}). One team after another (and one robot after another) has to enter the \\Arena{} through a designated entrance door, move to the \\textit{Inspection Point}, and leave the arena through the designated exit door. In between entering and leaving, the robot is inspected by the \\TC{}.\n\t\\item \\textbf{Checked aspects:} During the \\RobotInspection{}, each robot is checked for compliance with the competition rules (see~\\refsec{rule:robots}), in particular:\n\t\\begin{itemize}\n\t\t\\item emergency button(s)\n\t\t\\item collision avoidance (a TC member steps in front of the robot)\n\t\t\\item voice of the robot (it must be loud and clear)\n\t\t\\item custom containers (bowl, tray, etc.)\n\t\t\\item external devices (including wireless network), if any\n\t\t\\item Alternative human-robot interfaces (see~\\refsec{rule:asralternative}).\n\t\t\\item robot speed and dimension\n\t\t\\item manual start signal (used to signal the robot to start its navigation to exit door, after reaching inspection point) (see~\\refsec{rule:start_signal}).\n\t\t\\item robot speaker system (plug for RF transmission)\n\t\t\\item other safety issues (duct tape, hanging cables, sharp edges etc.)\n\t\\end{itemize}\n\t\\item \\textbf{Re-inspection:} If the robot is not approved in the inspection, it is the responsibility of the team to get the approval at a later point. Robots are not allowed to participate in any test before passing the \\RobotInspection.\n\t\\item \\textbf{Time limit:} The robot inspection is interrupted after three minutes (per robot). When told so by the TC --- in case of time interrupt or failure --- the team has to move the robot out of the \\Arena{} through the designated exit door.\n\t\\item \\textbf{Appearance Evaluation:} In addition to the inspection, the TC evaluates the appearance of the robots. Robots are expected to look nice (no duct tape, no cables hanging loose etc.). In case of objection, the TC may penalize the team with a penalty of maximum 50 points.\n\t\\item \\textbf{Accompanying team member:} Each robot is accompanied by only one team member (the team leader is advised).\n\t\\item \\textbf{OC instructions (at least two hours before the \\RobotInspection):}\n\t\\begin{itemize}\n\t\t\\item Announce the entry and exit doors.\n\t\t\\item Announce the location of the \\textit{Inspection Point} in the \\Arena{}.\n\t\t\\item Specify and announce where and when the \\PPS{} takes place.\n\t\t\\item Collect the evaluation sheets \n\t\\end{itemize}\n\\end{enumerate}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "pages/organization/about.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: about.tex \n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: About for the RoboCupAtHome organization guidelines\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\section*{About this document}\nThese 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.\nThis document has been written by the \\YEAR ~RoboCup@Home Technical Committee.\n\n\\section*{How to cite this document}\nIf you refer to RoboCup@Home and this document in particular, please cite:\\\\\n\n\\noindent Justin Hart, Alexander Moriarty, Katarzyna Pasternak, Johannes Kummert,\nAlina Hawkin, Vanessa Hassouna, Juan Diego Pena Narvaez, Leroy Ruegemer,\nLeander von Seelstrang, Peter Van Dooren, Juan Jose Garcia, Akinobu Mitzutani,\nYuqian Jiang, Tatsuya Matsushima, Riccardo Polvara\n\\enquote{Robocup@Home \\YEAR: Competition organization document,}\n\\url{https://github.com/RoboCupAtHome/RuleBook/releases/download/2024.1/organization.pdf}, \\YEAR.\n\n\\begin{center}\n\t\\begin{minipage}{0.8\\textwidth}\n\t\t\\footnotesize%\n\t\t\\verbatiminput{citation_organization.bib}\n\t\\end{minipage}\n\\end{center}\n\n\\pagebreak"
  },
  {
    "path": "pages/organization/documentinfo.tex",
    "content": "%%% DOCUMENTINFO %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\hypersetup{\n\tpdftitle     = {RoboCup@Home Rules and Regulations on the organization of the competition},\n\tpdfsubject   = {RoboCup@Home Organization},\n\tpdfauthor    = {RoboCup@Home Technical Committee},\n\tpdfkeywords  = {RoboCup, @Home, Rules, Competition},\n\tcolorlinks   = true,\n\tanchorcolor  = blue,\n\tlinkcolor    = blue,\n\turlcolor     = blue,\n}\n"
  },
  {
    "path": "pages/organization/titlepage.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: titlepage.tex 428 2013-04-30 10:01:14Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Title page for the RoboCupAtHome RuleBook\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\begin{titlepage}\n  \\begin{center}\n    {\n      \\includegraphics[width=.25\\textwidth]{images/logo_RoboCupFed.jpg}\n      \\hfill\n      \\includegraphics[width=.25\\textwidth]{images/logo_RoboCupAtHome.jpg}\\\\[1.23ex]\n    }\n    \\vspace{2.7 cm}\n    \\hrulefill\\par\n    {%\n      \\vspace*{.27cm}\n      \\Huge{RoboCup@Home}\\\\[1.23ex]\n      \\Large Rules \\& Regulations on the organization of the competition \\\\[2ex]\n    }\n    \\hrulefill\\par\n    \\vfill\n    ~~ Version: \\YEAR ~~Rev-\\svnRevision ~~ \\\\\n    ~~ Last Build Date: \\today \\quad Time: \\the\\time ~~ \\\\\n    ~~ Last Revision Date: \\svnChangeData ~~ %\\\\\n    %\\vfill\n  \\end{center}\n\\end{titlepage}\n\n"
  },
  {
    "path": "pages/roadmap/CompetitionConcepts.tex",
    "content": "\\chapter{Concepts Behind the Competition}\\label{chap:concepts}\n\nA set of conceptual key criteria forms the foundation of the \\textsc{\\AtHome{}} competition.\nThese criteria represent a shared understanding of the general concept of the competition.\nThe specific rules are detailed in the \\AtHome{} Rules \\& Regulations.\n\n\\section{Lean Set of Rules}\\label{concept:lean_set_of_rules}\n\nTo enable diverse, general, and transmissible approaches in the \\AtHome{} competition, the rule set should be as concise as possible\nHowever, it must also be specific enough to eliminate ambiguity and prevent disagreements during the competition.\nIf discrepancies or multiple interpretations arise, decisions will be made by the \\TC{} and on-site referees.\n\n\\paragraph*{Note:} Once the test scoresheet is signed the \\TC{}'s decision is final and cannot be reversed.\n\n\\section{Autonomy \\& Mobility}\\label{concept:autonomy_and_mobility}\n\nThe aim of \\AtHome{} is to foster mobile autonomous service robotics and natural human-robot interaction.\nThus, all robots participating in the RoboCup@Home competition must be \\emph{mobile} and \\emph{autonomous}, meaning that humans are not allowed to directly (remotely) control the robot, including through verbal commands.\n\n\\section{Aiming for Applications}\\label{concept:aiming_for_applications}\n\nTo drive technological advancement and maintain the competition's interest, the scenario and the tests will steadily increase in complexity.\nWhile fundamental abilities are tested, the focus will shift toward real-world applications with higher levels of complexity and uncertainty.\nIn \\AtHome{}, solutions that are practical, reliable, general, cost-effective, and applicable are highly valued.\n\n\\section{Social Relevance}\\label{concept:social_relevance}\n\nThe competition and its tests should produce outcomes that are socially relevant, as the goal is to demonstrate the value of autonomous robotic applications to the public.\nThis should be achieved by showing applications where robots directly help or assist humans in everyday situations, like a personal robot assistant.\n\n\\section{Scientific Value}\\label{concept:scientific_value}\n\n\\AtHome{} should not only highlight current practical applications, but also encourage the presentation of innovative approaches, even if they are not yet fully applicable or require special configurations.\nTherefore, approaches with high scientific value are rewarded.\n\n\\section{Time Constraints}\\label{concept:time_constraints}\n\nTo accommodate many teams and tests, as well as to promote simplicity in setup procedures, the setup time and test duration are very limited.\n\n\\section{No Standardized Scenario}\\label{concept:no_standardized_scenario}\n\nThe competition scenario should be simple, effective, available worldwide, and low-cost.\nAs uncertainty is a key part of the competition, no standardized scenario will be provided.\nInstead, the scenario is expected to reflect typical environments of the country where the competition is held.\n\nIt could be a domestic setting like a living room or kitchen, or an office, supermarket, or restaurant. The scenario may change annually to ensure the tests remain relevant and engaging. Additionally, tests may occur in previously unknown environments, such as nearby public spaces.\n\n\\section{Attractiveness}\\label{concept:attractiveness}\n\nThe competition should be appealing to both the audience and the public. Thus, approaches that are highly attractive and original are rewarded.\n\n\\section{Community}\\label{concept:community}\n\nWhile teams compete against each other during the competition, members of the \\AtHome{} league are expected to collaborate and share knowledge to advance robotic technology collectively.\n\nThe \\iterm{RoboCup@Home mailing list} and the \\RR{} can be used to communicate with other teams and discuss league-specific issues such as rule changes or proposals for new tests.\n% Since 2007 there is also the \\iterm{RoboCup@Home Wiki} (see~\\refsec{sec:at_home_wiki}) which serves as a central place to collect information relevant for the @Home league.\nAdditionally, every team is expected to share technical, scientific, and team-related information in a Team Description Paper and on their team website.\n\nFinally, all teams are invited to submit papers on related research to the \\Symp{}, which accompanies the annual RoboCup World Championship.\n\n\\section{Desired Abilities}\\label{concept:desired_abilities}\n\nThe following are the key technical abilities that the tests in \\AtHome{} aim to evaluate\n\n\\begin{itemize}\n    \\item Navigation in dynamic environments\n    \\item Fast and easy calibration and setup (the ultimate goal is to have a robot up and running out of the box)\n    \\item Object recognition\n    \\item Object manipulation\n    \\item Detection and recognition of humans\n    \\item Natural human-robot interaction\n    \\item Speech recognition\n    \\item Gesture recognition\n    \\item Robot applications (\\AtHome{} is aiming for applications of robots in daily life)\n    \\item Ambient intelligence, such as communicating with surrounding devices, retrieving information from the internet, etc.\n\\end{itemize}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "pages/roadmap/acknowledgments.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: acknowledgments.tex 404 2013-02-15 08:51:20Z sugiura $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Acknowledgments for the RoboCupAtHome RuleBook\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\n\n\\section*{About this document}\nThis document presents the vision behind the RoboCup@Home competition. It also plots out the way the competition will evolve in the future.\nThis document has been written by the \\YEAR ~RoboCup@Home Technical Committee.\n\n\\section*{How to cite this document}\nIf you refer to RoboCup@Home and this document in particular, please cite:\\\\\n\n\\noindent Justin Hart, Mauricio Matamoros, Alexander Moriarty, Hiroyuki Okada,\nMatteo Leonetti, Alex Mitrevski, Katarzyna Pasternak, and Fagner Pimentel\n\\enquote{Robocup@Home \\YEAR: Roadmap,}\n\\url{https://athome.robocup.org/rules/\\YEAR_roadmap.pdf}, \\YEAR.\n\n\\begin{center}\n\t\\begin{minipage}{0.8\\textwidth}\n\t\t\\footnotesize%\n\t\t\\verbatiminput{citation.bib}\n\t\\end{minipage}\n\\end{center}\n\n\\section*{Acknowledgments}\n\\label{sec:acknowledgments}\nWe would like to thank the members of the Technical Committee who put up the rules and the Organizing Committee who organizes the competition.\nPeople that have been working on this document as members of one of the league's committees (in alphabetical order):\n\\begin{center}\n\t\\begin{minipage}{0.8\\textwidth}\n\t\t\\begin{multicols}{3}%\n\t\t\t\\footnotesize\n\t\t\t\\noindent%\n\t\t\tAdam Golding\\\\\n\t\t\tAkinobu Mizutani\\\\\n\t\t\tAlex Mitrevski\\\\\n\t\t\tAlexander Moriarty\\\\\n\t\t\tCaleb Rascon\\\\\n\t\t\tFagner Pimentel\\\\\n\t\t\tFlorian Lier\\\\\n\t\t\tHiroyuki Okada\\\\\n\t\t\tJohannes Kummert\\\\\n\t\t\tJustin Hart\\\\\n\t\t\tKatarzyna Pasternak\\\\\n\t\t\tKomei Sugiura\\\\\n\t\t\tLoy van Beek\\\\\n\t\t\tLuca Iocchi\\\\\n\t\t\tLuca Lach\\\\\n\t\t\tLuis Contreras\\\\\n\t\t\tMatteo Leonetti\\\\\n\t\t\tMauricio Matamoros\\\\\n\t\t\tMaxime St-Pierre\\\\\n\t\t\tPeter van Dooren\\\\\n\t\t\tRaphael Memmesheimer\\\\\n\t\t\tSammy Pfeiffer\\\\\n\t\t\tSebastian Meyer zu Borgsen\\\\\n\t\t\tSven Wachsmuth\\\\\n\t\t\tTijn van der Zant\\\\\n\t\t\tYuma Yoshimoto\n\t\t\\end{multicols}\n\t\\end{minipage}\n\\end{center}\n\n\\noindent We would also like to thank all the people who contributed to the RoboCup@Home league with their feedback and comments.\nPeople that have been working on this document as members of the league (in alphabetical order):\n\\begin{center}\n\t\\begin{minipage}{0.8\\textwidth}\n\t\t\\begin{multicols}{2}%\n\t\t\t\\footnotesize\n\t\t\t\\noindent%\n\t\t\tLars Janssen\\\\\n\t\t\tMark Finean\\\\\n\t\t\tMatthijs van der Burgh\\\\\n\t\t\tSyed Ali Raza\\\\\n\t\t\\end{multicols}\n\t\\end{minipage}\n\\end{center}\n\n\n\n"
  },
  {
    "path": "pages/roadmap/documentinfo.tex",
    "content": "%%% DOCUMENTINFO %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\hypersetup{\n\tpdftitle     = {RoboCup@Home Roadmap},\n\tpdfsubject   = {RoboCup@Home Roadmap},\n\tpdfauthor    = {RoboCup@Home Executive Committee},\n\tpdfkeywords  = {RoboCup, @Home, Competition},\n\tcolorlinks   = true,\n\tanchorcolor  = blue,\n\tlinkcolor    = blue,\n\turlcolor     = blue,\n}\n"
  },
  {
    "path": "pages/roadmap/titlepage.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: titlepage.tex 428 2013-04-30 10:01:14Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Title page for the RoboCupAtHome RuleBook\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\begin{titlepage}\n  \\begin{center}\n    {\n      \\includegraphics[width=.25\\textwidth]{images/logo_RoboCupFed.jpg}\n      \\hfill\n      \\includegraphics[width=.25\\textwidth]{images/logo_RoboCupAtHome.jpg}\\\\[1.23ex]\n    }\n    \\vspace{2.7 cm}\n    \\hrulefill\\par\n    {%\n      \\vspace*{.27cm}\n      \\Huge{RoboCup@Home}\\\\[1.23ex]\n      \\Large Roadmap \\\\[2ex]\n    }\n    \\hrulefill\\par\n    \\vfill\n    ~~ Version: \\YEAR ~~Rev-\\svnRevision ~~ \\\\\n    ~~ Last Build Date: \\today \\quad Time: \\the\\time ~~ \\\\\n    ~~ Last Revision Date: \\svnChangeData ~~ %\\\\\n    %\\vfill\n  \\end{center}\n\\end{titlepage}\n\n"
  },
  {
    "path": "pages/rulebook/GeneralRules.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: general_rules.tex 420 2013-04-08 15:30:35Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: description of the GENERAL RULES\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\chapter{General Rules and Regulations}\\label{chap:rules}\n\nThese are the general rules and regulations for the competition in the \\RoboCup\\AtHome{} league.\nEach rule in this section implicitly includes the phrase \\emph{\\enquote{unless stated otherwise}}.\nThis means that any additional or contrary rules, particularly those related to test specifications, take precedence over the rules stated in this section.\n\n\\input{pages/general_rules/TeamRegistration}\n\n%\\input{pages/general_rules/vizbox}\n\n\\input{pages/general_rules/Scenario}\n\n\\input{pages/general_rules/Robots}\n\n\\input{pages/general_rules/ExternalDevices}\n\n\\input{pages/general_rules/Organization}\n\n\\input{pages/general_rules/Procedure}\n\n\\input{pages/general_rules/ContinueRules}\n\\input{pages/general_rules/PenaltiesBonuses}\n\\input{pages/general_rules/ScoringInteraction}\n\n\\input{pages/general_rules/OpenChallenge}\n\n%\\input{pages/general_rules/ManipulationChallenge}\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "pages/rulebook/Introduction.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Introduction\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\chapter{Introduction}\n\\label{chap:introduction}\n\n\n\\section{RoboCup}\n\n\\RoboCup{} is an international joint project to promote AI, robotics, and related fields.\nIt 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/}.\n\n\\section{RoboCup@Home}\n\nThe \\textsc{RoboCup@Home} league aims to develop service and assistive robot technology with high relevance for future personal domestic applications.\nIt is the largest international annual competition for autonomous service robots and is part of the RoboCup initiative.\nA set of benchmark tests is used to evaluate the abilities and performance of different robots in a realistic, non-standardized home environment setting.\nThe 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.\nThe competition is co-located with the RoboCup symposium.\n\n\\input{pages/introduction/Organization}\n\n\\input{pages/introduction/Infrastructure}\n\n\\input{pages/introduction/Leagues}\n\n\\input{pages/introduction/Competition}\n\n\\input{pages/introduction/Awards}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "pages/rulebook/about.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: about.tex \n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: About for the RoboCupAtHome RuleBook\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\section*{About this rulebook}\nThis is the official rulebook of the RoboCup@Home competition \\YEAR. \nThe rulebook has been written by the \\YEAR ~RoboCup@Home Technical Committee.\n\n\\section*{How to cite this rulebook}\nIf you refer to RoboCup@Home and this rulebook in particular, please cite:\\\\\n\n\\noindent Justin Hart, Alexander Moriarty, Katarzyna Pasternak, Johannes Kummert, Matteo Leonetti, Luis Contreras,\nLeroy Ruegemer, Akinobu Mitzutani, Tiago Ribeiro, Adam Golding, Taewoong Kang, Fagner Pimentel, \n\n\\enquote{Robocup@Home \\YEAR: Rule and regulations,}\n\\url{https://github.com/RoboCupAtHome/RuleBook/releases/download/2026.1/rulebook.pdf}, \\YEAR.\n\n\\begin{center}\n\t\\begin{minipage}{0.8\\textwidth}\n\t\t\\footnotesize%\n\t\t\\verbatiminput{citation.bib}\n\t\\end{minipage}\n\\end{center}\n\n\\pagebreak"
  },
  {
    "path": "pages/rulebook/documentinfo.tex",
    "content": "%%% DOCUMENTINFO %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\hypersetup{\n\tpdftitle     = {RoboCup@Home Rules and Regulations},\n\tpdfsubject   = {RoboCup@Home Rulebook},\n\tpdfauthor    = {RoboCup@Home Technical Committee},\n\tpdfkeywords  = {RoboCup, @Home, Rules, Competition},\n\tcolorlinks   = true,\n\tanchorcolor  = blue,\n\tlinkcolor    = blue,\n\turlcolor     = blue,\n}\n"
  },
  {
    "path": "pages/rulebook/titlepage.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: titlepage.tex 428 2013-04-30 10:01:14Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Title page for the RoboCupAtHome RuleBook\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\begin{titlepage}\n  \\begin{center}\n    {\n      \\includegraphics[width=.25\\textwidth]{images/logo_RoboCupFed.jpg}\n      \\hfill\n      \\includegraphics[width=.25\\textwidth]{images/logo_RoboCupAtHome.jpg}\\\\[1.23ex]\n    }\n    \\vspace{2.7 cm}\n    \\hrulefill\\par\n    {%\n      \\vspace*{.27cm}\n      \\Huge{RoboCup@Home}\\\\[1.23ex]\n      \\Large Rules \\& Regulations \\\\[2ex]\n    }\n    \\hrulefill\\par\n    \\vfill\n    ~~ Version: \\YEAR ~~Rev-\\svnRevision ~~ \\\\\n    ~~ Last Build Date: \\today \\quad Time: \\the\\time ~~ \\\\\n    ~~ Last Revision Date: \\svnChangeData ~~ %\\\\\n    %\\vfill\n  \\end{center}\n\\end{titlepage}\n\n"
  },
  {
    "path": "pages/scoresheets/registration_form.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: registration_form.tex 574 2014-04-07 13:49:59Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: introduction to RoboCupAtHome\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\newpage\n\n\\begin{minipage}[t]{0.8\\textwidth}%\n\n\\vspace{0pt}\n{\\huge \\textbf{Registration Form} }\n\n\\vspace{5 em}\n\n\\newcommand{\\rightRule}{\\rule{0.7\\linewidth}{.2pt}}\n\n\\begin{tabular}{ @{} l l l}\n\n\\textbf{Team name:} & \\rightRule \\\\[.9 em]%\n\n\\textbf{Team leader name:} & \\rightRule \\\\[.9 em]%\n\n% \\textbf{Weight \\& dimensions (robot 1):} & \\rightRule \\\\[.9 em]%\n\n% \\textbf{Weight \\& dimensions (robot 2):} & \\rightRule \\\\[.9 em]%\n\n% \\textbf{External devices:} & \\rightRule \\\\[.9 em]%\n\n\\end{tabular}\n\n\\vspace{1 em}\n\n\\end{minipage}\n\\hfill\n\\begin{minipage}[t]{0.15\\textwidth}%\n\\vspace{0pt}\n\t\\includegraphics[width=\\textwidth]{images/logo_RoboCupAtHome.jpg}%\n\\end{minipage}\\\\\n\n\\vspace{1 em}\n\n\\noindent\\textbf{Safety first!}\n\n\\noindent The speed of the robots should ensure safe operation. \nThis means that the robot is not allowed to go faster than the local speed limits. \nDuring operation in an environment with humans it may not exceed a walking pace of humans (6 kph, 3.7 mph). \n\nAt any time when operating the robot inside and outside the scenario the \nowners have to stop the robot immediately if there is a remote possibility \nof dangerous behavior towards people and/or objects. If a referee, member \nof the Technical or Organizational committee, an Executive or Trustee of \nthe federation tells the team to stop the robot, there will be no discussion \nand the robot has to be stopped \\emph{immediately}.\n\nIf the team does not comply, the team and its members can be excluded from \nthe ongoing competition immediately by a decision of the RoboCup@Home Technical \nCommittee. \nFurthermore, the team and its members can be banned from future competitions \nfor a period not less than a year by a decision of the RoboCup Federation \nTrustee Board.\n\n\\vspace{1cm}\n\n\\begin{tabular}{|l|c|c|}\n\\hline\n~ & {\\bf Robot 1} & {\\bf Robot 2}\\\\\n\\hline\n\\hline\nSize of the robot&\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nEmergency button(s) &\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nStart button &\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nCollision avoidance &\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nVoice of the robot  &\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nRobot speaker system &\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nUse of external devices &\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nASR Bypassing method&\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nOther safety issues &\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\nCustom containers.&\\hspace{4cm} & \\hspace{4cm} \\\\\n\\hline\n\\end{tabular}\\\\[1cm]\n\n{\\bf External Devices:}\n\\vspace{2cm}\n\n\\vfill\n\n\\noindent I have read and fully understood the \\enquote{Safety First} statement and agree to it. \nFurthermore, I agree to obey the rules in the official RoboCup@Home RuleBook.\n\n\\vspace{2em}\n\n\n%team evaluation sheet\n\\begin{tabular}{@{} @{\\extracolsep{\\fill}} l l @{}}\n\t\\rule{0.25\\linewidth}{.2pt} \\hspace{0.05\\linewidth} & \\rule{0.25\\linewidth}{.2pt} \\hspace{0.05\\linewidth}\n\t\\\\\n\t\\textit{Date \\& time}%\n\t& \\textit{Team leader}\n\\end{tabular}\n\n\n"
  },
  {
    "path": "scoresheets/DoingLaundry.tex",
    "content": "\\begin{scorelist}[timelimit=7]\n    \\scoreheading{Main Goal}\n      \\scoreitem{15}{Navigating to the laundry area}\n      \\scoreitem{100}{Picking up a piece of clothing from the basket}\n        \\scorepen{-100}{Picking up multiple at once}\n      \\scoreitem{800}{Folding a piece of clothing}\n        \\scorepen{200}{%\n          Human assistance: Flattening/Arranging clothing before folding\n        }\n        \\scorepen{800}{%\n          Human assistance during folding will apply a \\\\\n          \\hspace{3em}percentage penalty according to the amount of help\n        }\n\n    \\scoreheading{Extra Rewards}\n      \\scoreitem{300}{Opening the washing machine door}\n      \\scoreitem{300}{Removing one or more pieces of clothing from the washing machine}\n        \\scorepen{200}{%\n          The clothing touches the floor\n        }\n      \\scoreitem{300}{Using the basket for transportation}\n        \\scorepen{200}{%\n          Laundry is dropped or otherwise lost during transportation.\n        }\n      \\scoreitem[5]{400}{Folding additional clothes (per item)}\n        \\scorepen[5]{200}{%\n          Human assistance: Flattening/Arranging clothing before folding\n        }\n        \\scorepen[5]{400}{%\n          Human assistance during folding will apply a \\\\\n          \\hspace{3em}percentage penalty according to the amount of help\n        }\n      \\scoreitem[6]{100}{Stacking folded clothes neatly (per item)}\n\n    \\scoreheading{Penalties}\n    \\penaltyitem{40}{Human assistance: environment changes (per item)}\n\n\\end{scorelist}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/Finals.tex",
    "content": "\\begin{scorelist}[timelimit=10,attempts=1,outstanding=False,continue=False, specialpenbonus=False]\n\t\\scoreheading{Main Goal (can be repeated unlimited times)}\n\t\\scoreitem[3]{150}{Find and clearly state an encountered problem}\n\t\t\\scorepen{100}{Find repeated problem category}\n\t\t\\scorepen{150}{Human Assistance: Asking for location of a problem}\n\t\\scoreitem[10]{650}{Solve a problem}\n\t\t\\scorepen{300}{Solving repeated problem category for the 2nd time}\n\t\t\\scorepen{500}{Solving repeated problem category for the 3rd (or more) time}\n\t\t\\scorepen{650}{%\n\t\t\tInstructing a human to perform parts  \\\\\n\t\t\t\\hspace{3em}of the task will apply a percentage penalty according to \\\\\n\t\t\t\\hspace{3em}similar scores in other tests.\n\t\t}\n\t\\scoreitem{0}{%\n\t\t\\hspace{1em}Solving only parts of a GPSR command will apply \\\\\n\t\t\\hspace{1em}a percentage penalty according to similar \\\\\n\t\t\\hspace{1em}scores in other tests.\n\t}\n\t\\scoreitem[1]{600}{Moving the laundry basket}\n\t\\scoreitem[1]{600}{Opening the Door of the Apartment}\n\t\\scoreitem[1]{300}{Closing the Dishwasher}\n\t\\scoreitem[1]{00}{Custom:\\\\ \\\\}\n\t\\scoreitem[1]{00}{Custom:\\\\ \\\\}\n\t\\scoreitem[1]{00}{Custom:\\\\ \\\\}\n\n\t\\scoreheading{Penalties}\n\t\\penaltyitem[1]{50}{Restart (only applies if the robot continues scoring afterwards)}\n\n\\end{scorelist}\n\n\\ifShortScoresheet{}{\n\t\\textbf{Referee Information:}\n\tNote each problem (category, item, location) and mark if they are stated by the robot in remarks\n}%\n\n\n"
  },
  {
    "path": "scoresheets/GPSR.tex",
    "content": "\\begin{scorelist}[timelimit=7]\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[3]{80}{Understand the spoken command}\n\t\t\\scorepen[3]{20}{Using a custom operator}\n\t\t\\scorepen[6]{30}{Request a rephrasing}\n\t\\scoreitem[3]{100}{Demonstrate a plan has been generated}\n\t\\scoreitem[1]{250}{Solving the first command}\n\t\\scoreitem[1]{250}{Solving the second command}\n\t\\scoreitem[1]{250}{Solving the third command}\n\t\\scoreitem{0}{%\n\t\t\\hspace{1em}Solving part of a command will apply \\\\\n\t\t\\hspace{1em}a percentage penalty according to similar \\\\\n\t\t\\hspace{1em}scores in other tests.\n\t}\n\n\t\\scoreheading{Extra Rewards}\n\t\\scoreitem{200}{Interleaved Task Bonus}\n\n\t\\scoreheading{Penalties}\n\t\\penaltyitem[3]{50}{Bypassing speech recognition}\n\n\\end{scorelist}\n\n\n"
  },
  {
    "path": "scoresheets/HumanRobotInteractionChallenge.tex",
    "content": "\\begin{scorelist}[startbutton=false,timelimit=7]\n\t\\scoreheading{Greeting}\n\t\\scoreitem[2]{30}{Detect the doorbell sound as a signal that a guest has arrived}\n\t\\scoreitem[2]{200}{Open the entrance door for a guest}\n\t\\scoreitem[2]{50}{Look at the person talking, when receiving a guest}\n\t\\scoreitem[2]{100}{Offer a free seat to the new guest}\n\t\\scoreitem[2]{15}{Look in the direction of navigation or at the navigation goal}\n\t\\scoreitem[4]{0}{Tell a visual attribute of the first guest to the second guest}\n\t\t\\scoremod[4]{20}{Correct attribute}\n\t\t\\scorepen[4]{20}{Incorrect attribute}\n\t\\scoreitem[4]{15}{Not asking non-essential questions to confirm or correct information}\n\t\n\t\\scoreheading{Introduction}\n\t\\scoreitem[4]{30}{Say name and favorite drink of each guest (during introduction)}\n\t\\scoreitem[2]{50}{While introducing guests, look to the correct guest while talking about the other guest}\n\n\t\\scoreheading{Guiding}\n\t\\scoreitem{50}{Receive the bag from the guest via handover}\n\t\t\\scorepen{25}{Requesting handover assistance from the guest}\n\t\t\\scorepen{50}{Bag placed on the robot structure instead of being handed over}\n\t\\scoreitem{200}{Following the host to the bag drop area}\n\t\t\\scorepen[1]{50}{Drop the bag while following the host}\n\t\t\\scorepen{50}{Rediscovering the operator by natural interaction}\n\t\t\\scorepen{50}{Asking the operator to wait}\n\t\t\\scorepen{150}{Guiding the robot with physical contact (take by the hand)}\n\t\\scoreitem{50}{Drop the bag in the correct area}\n\n\t\\scoreheading{Penalties}\n\t\\penaltyitem[4]{40}{Wrong guest information was memorized}\n\t\\penaltyitem[6]{20}{Alternative HRI}\n\t\\penaltyitem[2]{200}{Not acknowledging people}\n\t\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n\n"
  },
  {
    "path": "scoresheets/OpenChallenge.tex",
    "content": "\\paragraph{Instructions:}\n\\begin{compactenum}\n\\item Please watch all demonstrations carefully.\n\\item At the end of the demonstration you may ask questions.\n\\item After demonstration and questions, please fill in the evaluation sheet below.\n\\item Is not allowed to evaluate your own team.\n\\item You may use the space below \\enquote{Remarks:} to take notes for yourself.\n\\item Enter your team's name (\\enquote{Team name}) and your name (\\enquote{referee name}) on top of the sheet.\n\\item Sign the form using either \\enquote{Referee} or \\enquote{Team leader} slots at the bottom.\n\\end{compactenum}\n\n\\paragraph{Evaluation sheet}\n\\begin{center}\n\\begingroup\n\\newcommand\\tableTEAMS{}\n\\def\\do#1{\\appto\\tableTEAMS{#1 & & & & \\\\\\hline}}%\n% \\def\\do#1{\\appto\\tableTEAMS{#1 & &  \\\\\\hline}}%\n\\expandafter\\docsvlist\\expandafter{\\TEAMS}\n\\begin{tabular}{|l|c|c|c|c|}\n% \\begin{tabular}{|l|c|c|}\n\t\\hline\n\t\\multicolumn{1}{|c|}{\\multirow{3}{*}{Team}}\n\t& Novelty/Scientific & Difficulty of the & \\multirow{2}{*}{Success} &  Overall  \\\\\n\t&    contribution    &  presented task   &                          &   demo    \\\\\n\t&      (0-100)       &       (0-100)     &          (0-100)         &  (0-100)  \\\\\n%\t& Novelty/Scientific & Success of &  Overall  \\\\\n%\t&    contribution    &  the Demo  &   demo    \\\\\n%\t&      (0-100)       &  (0-100)   &  (0-100)  \\\\\n%\t& Novelty/Scientific & Success of \\\\\n%\t&    contribution    &  the Demo  \\\\\n%\t&      (0-100)       &  (0-100)   \\\\\n\t\\hline\n\t\\hline\n\t\\tableTEAMS\n\\end{tabular}\n\\endgroup\n\\end{center}\n\n\n"
  },
  {
    "path": "scoresheets/PickAndPlaceChallenge.tex",
    "content": "\\begin{scorelist}[timelimit=7]\n\n\t\\scoreitem{15}{Navigate to the table}\n\t\\scoreitem[12]{10}{Correctly recognize an object}\n\t\\scoreitem[2]{30}{Perceive objects on a shelf and indicate the correct placement}\n\t\n\t\\scoreheading{Picking}\n\t\\scoreitem[12]{50}{Picking up an object for transportation}\n\t\t\\scoremod{100}{First Pick Bonus}\n\t\t\\scoremod[1]{30}{From the floor}\n\t\t\\scoremod[2]{50}{Cutlery}\n\t\t\\scoremod[1]{100}{Plate}\n\t\t\\scoremod[1]{100}{Dishwasher tab}\n\t\t\\scorepen[2]{-20}{Common object from auxiliary table}\n\n\t\\scoreheading{Placing}\n\t\\scoreitem[12]{40}{Place an object in its designated location}\n\t\t\\scoremod[3]{70}{Correctly in the dishwasher}\n\t\t\\scoremod[2]{20}{Next to similar objects in the cabinet}\n\t\t\\scorepen[4]{30}{Area around breakfast items is not cleaned}\n\t\t\\scoremod[1]{160}{In the dishwasher tab slot inside the dishwasher}\n\t\t\\scorepen[2]{-20}{Common object from auxiliary table}\n\t\n\t\\scoreheading{Extra Rewards}\n\t\\scoreitem[2]{100}{Pull or push the dishwasher rack}\n\t\\scoreitem[2]{200}{Open or close the dishwasher door without assistance}\n\t\\scoreitem{400}{Open milk container without assistance}\n\t\\scoreitem[2]{200}{Pour cereal or milk into the bowl without assistance}\n\t\n\t\\scoreheading{Penalties}\n\t\\penaltyitem[12]{40}{Objects thrown or dropped while placing}\n\t\\penaltyitem{50}{Breakfast not served in a typical meal setting}\n\t\\penaltyitem[12]{40}{Objects dropped on the floor}\n\t\\penaltyitem[2]{100}{Spilling cereal and milk while pouring}\n\t\\penaltyitem[12]{30}{Human assistance: object repositioned by a person}\n\t\\penaltyitem[24]{100}{Human assistance: handover}\n\t\\penaltyitem{40}{Human assistance: environment changes (per item)}\n\t\\penaltyitem{0}{Human assistance: opening milk container}\n\t\\penaltyitem{0}{Human assistance: moving dishwasher door or rack}\n\t\n\t%\\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/PosterSession.tex",
    "content": "\\paragraph{Instructions:}\n\\begin{compactenum}\n\\item Please watch all posters carefully.\n\\item There will be a team member for questions about the poster.\n\\item After viewing the poster and asking your questions you may have, please fill in the evaluation sheet below.\n\\item Is not allowed to evaluate your own team.\n\\item You may use the space below \\enquote{Remarks:} to take notes for yourself.\n\\item Enter your team's name (\\enquote{Team name}) and your name (\\enquote{referee name}) on top of the sheet.\n\\item Sign the form using either \\enquote{Referee} or \\enquote{Team leader} slots at the bottom.\n\\end{compactenum}\n\n\\paragraph{Evaluation sheet}\n\\begin{center}\n\\begingroup\n\\newcommand\\tableTEAMS{}\n\\def\\do#1{\\appto\\tableTEAMS{#1 &  \\\\\\hline}}%\n\\expandafter\\docsvlist\\expandafter{\\TEAMS}\n\\begin{tabular}{|l|c|}\n  \\hline\n  \\multirow{2}{*}{Team} & Overall score     \\\\\n                        & of poster (0-10)  \\\\\n  \\hline\n  \\hline\n  \\tableTEAMS\n\\end{tabular}\n\\endgroup\n\\end{center}\n\n\n"
  },
  {
    "path": "scoresheets/Restaurant.tex",
    "content": "\\small\\begin{scorelist}[timelimit=15]\n\t\\scoreheading{Regular Rewards}\t\n\t\\scoreitem[2]{80}{Detect calling or waving customer}\n\t\\scoreitem[2]{80}{Reach a customer's table}\n\t\t\\scorepen[2]{80}{Human Assistance: Being guided to a table}\n\t\\scoreitem[2]{160}{Understand and confirm the order received to the customer}\n\t\t\\scorepen[2]{80}{Alternative HRI}\n\t\t\\scorepen[2]{60}{Not making eye-contact when taking the order}\n\t\\scoreitem[2]{80}{Communicate the order to the barman}\n\t\\scoreitem[4]{100}{Picking up the requested items from the \\textit{Kitchen-bar}}\n\t\t\\scoremod{100}{First Pick Bonus}\n\t\t\\scorepen[4]{100}{Human assistance: Asking the Barman to handover object to the robot}\n\n\t\\scoreitem[2]{80}{Return to the customer table with the order}\n\t\\scoreitem[4]{100}{Serve the order to the customer}\n\t\t\\scoremod{100}{First Place Bonus}\n\t\t\\scorepen[4]{100}{Human assistance: Guest needing to take the object from a tray or the robot's hand}\n\n\t\\scoreheading{Extra Rewards}\n\t\\scoreitem[2]{200}{Use an unattached tray to transport}\n\n\t\\scoreheading{Penalties}\n\t\\penaltyitem[2]{60}{Not reaching the bar (barman has to move from behind the bar to interact with the robot)}\n\t\\penaltyitem[2]{30}{Human Assistance: Asking for directional confirmation}\n\t\\penaltyitem[2]{40}{Human Assistance: Being told/pointed where a table/\\textit{Kitchen-bar} is located}\n\n\\end{scorelist}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/CleanTable.tex",
    "content": "\\begin{scorelist}[timelimit=10]\n\t\\scoreheading{Main Goal}\n\t\\scoreitem{15}{Navigate to the table to pick up items}\n\t\\scoreitem[4]{50}{Picking up the cup, bowl and drinks for transportation}\n\t\\scoreitem[2]{80}{Picking up cutlery (spoon, fork) for transportation}\n\t\\scoreitem[1]{100}{Picking up the plate for transportation}\n\t\\scoreitem[5]{50}{Placing the tableware and cutlery inside the dishwasher}\n\t\\scoreitem[5]{75}{Placing an item correctly (cleanable, convenient like a human would) in the dishwasher}\n\t\\scoreitem[2]{50}{Placing a drink inside the trash bin}\n\n\t\\scoreheading{Bonus Rewards}\n\t\\scoreitem[2]{100}{Pulling and pushing the dishwasher rack}\n\t\\scoreitem[2]{200}{Opening and closing the dishwasher door}\n\t\\scoreitem{100}{Picking up the dishwasher tab for transportation to the dishwasher}\n\t\\scoreitem{200}{Placing the dishwasher tab inside the dishwasher's hatch intended for the tab}\n\t\\scoreitem[2]{50}{Wiping the area where the drink was}\n\n\t\\scoreitem{50}{Autonomously Picking any Object}\n\t\\scoreitem{50}{Autonomously Placing any Object}\n\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem[3]{50}{Handing cup, bowl and drinks over to the robot}\n\t\\penaltyitem[2]{80}{Handing cutlery over to the robot}\n\t\\penaltyitem{100}{Handing the plate over to the robot}\n\t\\penaltyitem[5]{50}{Having a human place an object in the dishwasher}\n\t\\penaltyitem[2]{50}{Having a human place a drink inside the trash bin}\n\t\\penaltyitem[2]{25}{A human pointing at the trash bin}\n\t%\\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/CleanUp.tex",
    "content": "\n\\begin{table}[h]\n\t\\begin{tabular}{m{0.85\\linewidth} c}\n\t\t\\textbf{Maximum time}: & 5 minutes \\\\\n\t\\end{tabular}\n\\end{table}\n\n\\small\\begin{scorelist}\n\t\\scoreheading{Regular Rewards}\t\n\t\\scoreitem[6]{100}{Place an object at the appropriate location}\n\t\\scoreheading{Bonus Rewards}\n\t\\scoreitem{200}{Moving a \\emph{tiny} object}\n\t\\scoreitem{200}{Moving a \\emph{heavy} object}\t\n\t\\scoreheading{Regular Penalties}\n\t\\penaltyitem[6]{50}{Place an object at the wrong location}\t\n\t\\scoreheading{Deus ex Machina Penalties}\n\t\\penaltyitem[6]{60}{Physically interacting with object}\t\n\t\\penaltyitem[6]{40}{Guiding the robot near an object to be moved}\n\t\\penaltyitem[6]{30}{Telling where an object can be found}\n\t\\penaltyitem[6]{30}{Telling robot which category an object is or where to place it}\n\t\\penaltyitem[6]{20}{Pointing out object to be moved}\n\\end{scorelist}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/CocktailParty.tex",
    "content": "The maximum time for this test is 5 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Taking the orders} % 90 = 30 + 30 + 15 + 15\n\t\\scoreitem[2]{15}{Detecting calling person}\n\t\\scoreitem{30}{Finding sitting \\& distracted person}\n\t\\scoreitem[3]{ 5}{Understanding and repeating the correct person's name}\n\t\\scoreitem[3]{ 5}{Understanding and repeating the correct drink's name}\n\n\t\\scoreheading{Placing orders} % 105 = 15 + 90\n\t\\scoreitem[3]{ 5}{Repeat the correct name \\& drink to the Barman }\n\t\\scoreitem[3]{30}{Provide an accurate description of the guest to the Barman}\n\n\t\\scoreheading{Missing beverage} % 40\n\t\\scoreitem{20}{Realize the missing drink}\n\t\\scoreitem{20}{Provide 3 available alternatives to the Barman}\n\t\\scoreitem{ 5}{Understanding and repeating the alternatives to the Barman}\n\n\t\\scoreheading{Correcting the order} % 35 = 20 + 5 + 5 + 5\n\t\\scoreitem{20}{Find the guest without calling them}\n\t\\scoreitem{10}{Find the guest by calling them}\n\t\\scoreitem{ 5}{Repeat the correct list of alternate drinks to the guest}\n\t\\scoreitem{ 5}{Understanding and repeating the corrected order}\n\t\\scoreitem{ 5}{Place the corrected order} % Speed bonus\n\n\t\\scoreheading{Penalties}\n\t\\scoreitem[-1]{20}{Talk to something that is not a human}\n\t\n\t\\setTotalScore{270}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/EGPSR.tex",
    "content": "\\begin{scorelist}[timelimit=10]\n\t\\scoreheading{Main Goal (can be repeated unlimited times)}\n\t\\scoreitem[3]{150}{Find and clearly state an encountered problem}\n\t\\scoreitem[3]{650}{Solve a problem}\n\n\t\\scoreheading{Penalties}\n\t\\penaltyitem[1]{100}{Find repeated problem category}\n\t\\penaltyitem[1]{300}{Solving repeated problem category for the 2nd time}\n\t\\penaltyitem[1]{500}{Solving repeated problem category for the 3rd (or more) time}\n\t\\scoreitem{0}{\\textit{These Penalties are applied before any percentage based Deus Ex Machina Penalties}}\n\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem[3]{150}{Asking for location of a problem}\n\t\\penaltyitem[3]{650}{\n\t\tInstructing a human to perform parts of the task will apply a \\\\\n\t\t\\hspace{1em}percentage penalty according to similar penalties in other \\\\\n\t\t\\hspace{1em}tests.\n\t\t}\n\n\\end{scorelist}\n\n\\ifShortScoresheet{}{\n\t\\textbf{Referee Information:}\n\tNote each problem (category, item, location) and mark if they are stated by the robot in remarks\n}%\n\t\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n\n"
  },
  {
    "path": "scoresheets/old/Farewell.tex",
    "content": "\nThe maximum time for this test is 5 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[2]{200}{Each guest successfully guided to thier cab}\n\t\\scoreitem{200}{Identifying the medical doctor}\n\n\t\\scoreheading{Bonus rewards}\n\t\\scoreitem[2]{100}{Delivering the right coat}\n\t\\scoreitem[2]{100}{Entertaining guest with conversation while ushering person to the cab}\n\t\n\t\\scoreheading{Deus Ex Machina}\n\t\\penaltyitem[2]{30}{Tell the robot which guest is leaving}\n\t\\penaltyitem[2]{120}{Guiding the robot to the cab}\n\t\\penaltyitem[2]{120}{Guiding the robot back to the house}\n\t\\penaltyitem{200}{Tell robot which person is a medical doctor}\n\t\\penaltyitem[2]{100}{Handover the coat}\n\n\n\t% No longer necessary, computes automatically\n\t% \\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/FinalsExec.tex",
    "content": "\\paragraph{Instructions:}\n\\begin{compactenum}\n\\item Please watch all demonstrations carefully.\n\\item At the end of the demonstration you may ask questions.\n\\item After demonstration and questions, please fill in the evaluation sheet below.\n\\item You may use the space below \\enquote{Remarks:} to take notes for yourself.\n\\item Enter your your name (\\enquote{referee name}) on top of the sheet.\n\\item Sign the form using the \\enquote{Referee} slot at the bottom.\n\\end{compactenum}\n\n\\paragraph{Criteria:}\n\\begin{compactitem}\n\\item Scientific contribution\n\\item Contribution to @Home\n\\item Relevance for @Home / Novelty of approaches\n\\item Presentation and performance in the finals\n\\end{compactitem}\n\n\n\n\\paragraph{Evaluation sheet}\n\\begin{center}\n\n\\begingroup\n\\newcommand\\tableTEAMS{}\n\\def\\do#1{\\appto\\tableTEAMS{#1 & & & & \\\\\\hline}}%\n\\expandafter\\docsvlist\\expandafter{\\TEAMSFINALS}\n\n\\begin{tabular}{|l|c|c|c|c|}\n  \\hline\n  \\multirow{3}{*}{Team}\n  &  Efficacy of                &  Elegance of                & Innovation/contribution & Difficulty/Success of  \\\\\n  &  solution to main objective &  solution to main objective & of additional tasks     & overall demonstration  \\\\\n  &  (0-10)                     &  (0-10)                     &  (0-10)                 &  (0-10)                \\\\\n  \\hline\n  \\hline\n  \\tableTEAMS\n\\end{tabular}\\\\\n\\endgroup\n\n\\end{center}\n\n\n\n\n"
  },
  {
    "path": "scoresheets/old/FinalsJury.tex",
    "content": "\\paragraph{Instructions:}\n\\begin{compactenum}\n\\item Please watch all demonstrations carefully.\n\\item At the end of the demonstration you may ask questions.\n\\item After demonstration and questions, please fill in the evaluation sheet below.\n\\item You may use the space below \\enquote{Remarks:} to take notes for yourself.\n\\item Enter your your name (\\enquote{referee name}) on top of the sheet.\n\\item Sign the form using the \\enquote{Referee} slot at the bottom.\n\\end{compactenum}\n\n\n\\paragraph{Evaluation sheet}\n\\begin{center}\n\n\\begingroup\n\\newcommand\\tableTEAMS{}\n\\def\\do#1{\\appto\\tableTEAMS{#1 & & & & \\\\\\hline}}%\n\\expandafter\\docsvlist\\expandafter{\\TEAMSFINALS}\n\n\\begin{tabular}{|l|c|c|c|c|}\n  \\hline\n  \\multirow{3}{*}{Team}\n  & Originality and        &  Relevance/usefulness to  &  Elegance of             &  Success of           \\\\\n  & presentation${}^\\star$ &  everyday life            &  overall demonstration   &  overall demonstration \\\\\n  & (0-10)                 &  (0-10)                   &  (0-10)                  &  (0-10)                \\\\\n  \\hline\n  \\hline\n  \\tableTEAMS\n\\end{tabular}\\\\\n${}^\\star$ Story telling is to be rewarded\n\\endgroup\n\\end{center}\n\n\n"
  },
  {
    "path": "scoresheets/old/FindMyDisk.tex",
    "content": "The maximum time for this test is 5 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem{600}{Provide an accurate description of the desired disk}\n\t\\scoreitem{600}{Desired disk is found}\n\n\t\\scoreheading{Bonus rewards}\n\t\\scoreitem{800}{Help operator to find a second disk}\n\t\n% \t\\scoreheading{Deus ex Machina Penalties}\n% \t\\penaltyitem[2]{1000}{Pointing at correct item .}\n\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/FindMyMates.tex",
    "content": "\nThe maximum time for this test is 5 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[2]{100}{Report a guest location}\n\t\\scoreitem[2]{50}{Provide location unique feature}\n\t\\scoreitem[2]{150}{Provide description of a guest}\n\n\t\\scoreheading{Bonus rewards}\n\t\\scoreitem{150}{Report the 3rd guest location}\n\t\\scoreitem{250}{Provide description of a 3rd guest}\n\t\n\t\\scoreheading{Deus Ex Machina}\n\t\\penaltyitem[2]{-75}{Person has to wave the robot in order to be found}\n\t\\penaltyitem[2]{-75}{Person has to tell the robot where he/she is sitting/standing}\n\t\\penaltyitem[2]{-150}{Person has to approach the robot (e.g. walk and stand in front of it)}\n\n\t% No longer necessary, computes automatically\n\t% \\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/GiveMeAHand.tex",
    "content": "\\begin{scorelist}[timelimit=10]\n\n\t\\scoreheading{Regular Rewards}\n\t\\scoreitem{100}{Approach a calling operator}\t\n\t\\scoreitem[5]{50}{Approach the human's hand without contact}\n\t\\scoreitem[5]{100}{Receive an object from the operator}\n\t\\scoreitem[5]{50}{Use natural interaction to clarify ambiguous delivery locations}\n\t\\scoreitem[5]{100}{Place an object at the correct location}\n \n\t\\scoreheading{Penalties}\n\t\\penaltyitem[5]{50}{Initiating unattended interaction (e.g., talking to the open air)}\n\t\\penaltyitem[5]{75}{Place an object at the wrong location or by guessing the intended location}\n\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem[5]{75}{Instruct the user how to hand over an object}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/HandMeThat.tex",
    "content": "\nThe maximum time for this test is 10 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[5]{400}{Correctly determine each item}\n\t\\penaltyitem[5]{-150}{Correctly determine an item on the second attempt}\n\t\\penaltyitem[5]{-300}{Correctly determine an item on the third or fourth attempt}\n\t\\penaltyitem[5]{-400}{Correctly determine an item on a subsequent attempt}\n\t\\penaltyitem[5]{-100}{Asking 1 clarifying question}\n\t\\penaltyitem[5]{-200}{Asking 2 clarifying questions}\n\t\\penaltyitem[5]{-350}{Asking 3 or more clarifying questions}\n\n% \t\\scoreheading{Group 1}\n% \t\\scoreitem{500}{Name/touch the object being pointed}\n% \t\\penaltyitem[3]{-150}{Asking clarifying question}\n% \t\\penaltyitem[2]{-200}{Incorrect guess}\n%     \\penaltyitem{-100}{Guessing on the fifth attemp}\n\n% \t\\vspace{-0.75\\baselineskip}%\n% \t\\scoreheading{Group 2}\n% \t\\scoreitem{500}{Name/touch the object being pointed}\n% \t\\penaltyitem[3]{-150}{Asking clarifying question}\n% \t\\penaltyitem[2]{-200}{Incorrect guess}\n%     \\penaltyitem{-100}{Guessing on the fifth attemp}\n\n% \t\\vspace{-0.75\\baselineskip}%\n% \t\\scoreheading{Group 3}\n% \t\\scoreitem{500}{Name/touch the object being pointed}\n% \t\\penaltyitem[3]{-150}{Asking clarifying question}\n% \t\\penaltyitem[2]{-200}{Incorrect guess}\n%     \\penaltyitem{-100}{Guessing on the fifth attemp}\n\n% \t\\vspace{-0.75\\baselineskip}%\n% \t\\scoreheading{Group 4}\n% \t\\scoreitem{500}{Name/touch the object being pointed}\n% \t\\penaltyitem[3]{-150}{Asking clarifying question}\n% \t\\penaltyitem[2]{-200}{Incorrect guess}\n%     \\penaltyitem{-100}{Guessing on the fifth attemp}\n\n% \t\\vspace{-0.75\\baselineskip}%\n% \t\\scoreheading{Group 5}\n% \t\\scoreitem{500}{Name/touch the object being pointed}\n% \t\\penaltyitem[3]{-150}{Asking clarifying question}\n% \t\\penaltyitem[2]{-200}{Incorrect guess}\n%     \\penaltyitem{-100}{Guessing on the fifth attemp}\n    \n    \\scoreheading{Deus ex Machina Penalties}\n\t\\penaltyitem[5]{400}{Being told the name of the object}\n\n\t% No longer necessary, computes automatically\n\t% \\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/HelpMeCarry.tex",
    "content": "\\begin{scorelist}[timelimit=5]\n\t\\scoreheading{Main Goal}\n\t\\scoreitem{300}{Following the person to the car}\n\t\\scoreitem{15}{Perceiving the correct beg (visualize on screen or say which one)}\n\t\\scoreitem{100}{Picking up the correct bag}\n    \\scoreitem{50}{Avoiding the crowd of people obstructing the path}\n\t\\scoreitem{50}{Avoiding the small object on the ground}\n\t\\scoreitem{50}{Avoiding the hard-to-see object}\n\t\\scoreitem{50}{Avoiding the area blocked with retractable barriers}\n\t\n\t\\scoreheading{Bonus rewards}\n\t\\scoreitem{200}{Re-reaching the starting location}\n\t\\scoreitem{300}{Joining and staying in the queue on the way to the arena}\n\n\n\t\\scoreheading{Penalties}\n\t\\penaltyitem{50}{Dropping the bag}\n\t\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem{50}{Rediscovering the operator by natural interaction}\n\t\\penaltyitem{100}{Rediscovering the operator by unnatural interaction}\n\t\\penaltyitem{150}{Rediscovering the operator by asking them to come back}\n\t\\penaltyitem{200}{Rediscovering the operator by direct contact}\n\n\n\n\n\t% No longer necessary, computes automatically\n\t% \\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/PnG.tex",
    "content": "The maximum time for this test is \\textbf{10 minutes}.\n\n\\begin{scorelist}\n\t\\scoreheading{Opening the dishwasher} %50 pts\n\t\\scoreitem{50}{Autonomously opening the dishwasher}\n\n\t\\scoreheading{Filling the dishwasher (direct)} %200 pts\n\t\\scoreitem[3]{40}{Safely placing a tableware item in the dishwasher's rack}\n\t\\scoreitem[2]{40}{Safely placing a cutlery item in the dishwasher's basket}\n\n\t\\scoreheading{Filling the dishwasher (tray)} %200 pts\n\t\\scoreitem[3]{30}{Safely placing a tableware item in the tray}\n\t\\scoreitem[2]{35}{Safely placing a cutlery item in the tray}\n\t\\scoreitem{40}{Placing the tray into the dishwasher}\n\n\t\\scoreheading{Placing the cascade-pod} %40 pts\n\t\\scoreitem{40}{Placing the cascade-pod in the dishwasher's soap compartment}\n\t\\scoreitem{20}{Placing the cascade-pod in the dishwasher (somewhere else)}\n\n\t\\scoreheading{Cleaning the table} %50 pts\n\t\\scoreitem{50}{Successfully cleaning the spot}\n\t\\scoreitem[-1]{20}{Receiving operator's assistance to find the spot}\n\t\\scoreitem[-1]{20}{Smudging the spot while trying to clean it}\n\n\t\\scoreheading{Leave the arena} %10 pts\n\t\\scoreitem{10}{Autonomously leave the arena before the time elapses}\n\n\t\\setTotalScore{350}\n\\end{scorelist}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/Receptionist.tex",
    "content": "\\begin{scorelist}[startbutton=false,timelimit=6]\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[2]{100}{Offer a free seat to the new guest}\n\t\\scoreitem[2]{30}{Show the guest around (navigate to the beverage area and living room)}\n\t\\scoreitem[2]{15}{Look in the direction of navigation or at the navigation goal}\n\t\\scoreitem[2]{20}{Tell position of favorite drink}\n\t\\scoreitem[2]{75}{Look at the person talking}\n\t\\scoreitem[1]{180}{Introduce both guests to each other}\n\n\t\n\t\\scoreheading{Bonus Rewards}\n\t\\scoreitem[2]{200}{Open the entrance door for a guest}\n\t\\scoreitem[1]{50}{State a similarity between an interest between two or more persons}\n\t\\scoreitem[4]{30}{Describe the first guest to the second guest before reaching the living room (per correct visual attribute)}\n\n\n\t\\scoreheading{Penalties}\n\t\\penaltyitem[6]{20}{Wrong guest information was memorized (continue with wrong name, drink or interest)}\n\t\\penaltyitem[4]{30}{Describe the first guest to the second guest before reaching the living room (per incorrect visual attribute)}\n\t\\penaltyitem[1]{120}{Introduce the wrong persons}\n\t\n\t\\scoreheading{Deus Ex Machina}\n\t\\penaltyitem[2]{75}{Alternative HRI}\n\t\\penaltyitem[2]{200}{Not recognizing people}\n\n\t\n\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n\n"
  },
  {
    "path": "scoresheets/old/SPR.tex",
    "content": "The maximum time for this test is 5 minutes.\n\n\\begin{scorelist}\n\n\t\\scoreheading{Crowd} % Max 15 points\n\t\\scoreitem{ 5}{State crowd's size}\n\t\\scoreitem{10}{State crowd's male/female count}\n\n\t\\scoreheading{Riddle game} % Max 55 points\n\t\\scoreitem[ 5]{5}{Understanding question}\n\t\\scoreitem[ 5]{5}{Correctly answered a question}\n\t\\scoreitem{ 5}{Answering all 5 riddle game question}\n\n\\ifDSPL{\n\t\\scoreheading{[DSPL] Blind man's bluff game} % Max 130\n\t\\scoreitem[10]{ 5}{Understanding question on the first attempt}   % 50\n\t\\scoreitem[10]{ 2}{Understanding question on the second attempt}  % -- (20)\n\t\\scoreitem[10]{ 2}{Correctly answered a question}                 % 20\n\t\\scoreitem[10]{ 5}{Turned towards person asking the question}     % 50\n\t\\scoreitem{10}{Answering all 10 blind man's bluff questions}      % 10\n}\n\n\\ifNotDSPL{\n\t\\scoreheading{[OPL] Blind man's bluff game} % Max 130\n\t\\scoreitem[ 5]{10}{Understanding question on the first attempt}   % 50\n\t\\scoreitem[ 5]{ 5}{Understanding question on the second attempt}  % -- (25)\n\t\\scoreitem[ 5]{ 5}{Correctly answered a question}                 % 25\n\t\\scoreitem[ 5]{10}{Turned towards person asking the question}     % 50\n\t\\scoreitem{ 5}{Answering all 5 blind man's bluff questions}       %  5\t\n}\n\n\t\\setTotalScore{200}\t\n\\end{scorelist}\n\n\\ifShortScoresheet{}{\n\\textbf{Crowd setup ground truth}\n\\begin{figure}[!htb]\n\t\\centering\n\t\\begin{minipage}{.3\\textwidth}\n\t\t\\begin{center}\n\t\t\t\\begin{tabular}{|l||l|l|l|l|}\n\t\t\t\t\\hline\n\t\t\t\tName & \n\t\t\t\t\\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\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\\end{tabular}\n\t\t\\end{center}\n\t\\end{minipage}\n\t\\begin{minipage}{.3\\textwidth}\n\t\t\\begin{center}\n\t\t\t\\begin{tabular}{|l||l|l|l|l|}\n\t\t\t\t\\hline\n\t\t\t\tName & \n\t\t\t\t\\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\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\\end{tabular}\n\t\t\\end{center}\n\t\\end{minipage}\n\t\\begin{minipage}{.3\\textwidth}\n\t\t\\begin{center}\n\t\t\t\\begin{tabular}{|l||l|l|l|l|}\n\t\t\t\t\\hline\n\t\t\t\tName & \n\t\t\t\t\\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\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\t× & × & × & × & ×\\\\\\hline\n\t\t\t\\end{tabular}\n\t\t\\end{center}\n\t\\end{minipage}\n\\end{figure}\n}\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/ServeBreakfast.tex",
    "content": "\\begin{scorelist}[timelimit=5]\n\t\\scoreheading{Main Goal}\n\t\\scoreitem{15}{Initial navigation to pick up area}\n\t\\scoreitem[4]{15}{Perceiving object and categorizing it correctly (visualize or say)}\n\t\\scoreitem[4]{50}{Picking up breakfast items for transportation to the table}\n\t\\scoreitem[4]{50}{Placing breakfast items on the table}\n\t\\scoreitem{300}{Pouring cereal into the bowl}\n\n\t\\scoreheading{Bonus Rewards}\n\t\\scoreitem{300}{Pouring milk into the bowl}\n\t\\scoreitem{100}{Placing a spoon next to the bowl}\n\n\t\\scoreheading{Penalties}\n\t\\penaltyitem[4]{30}{Throwing or dropping an object on the table}\n\t\\penaltyitem{100}{Spilling cereal while pouring}\n\t\\penaltyitem{100}{Spilling milk while pouring}\n\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem[4]{5}{Pointing at an object}\n\t\\penaltyitem[4]{50}{Handing an object over to the robot}\n\t\\penaltyitem[4]{50}{A human placing an object on the table}\n\t\\penaltyitem{300}{A human pouring cereal in the bowl}\n\n\t%\\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/ServingDrinks.tex",
    "content": "The maximum time for this test is \\textbf{5 minutes}.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[3]{50}{Approaching guest without a drink and take order}\n\t\\scoreitem[3]{80}{Picking up correct drink from the bar}\n\t\\scoreitem[3]{70}{Delivering a drink to the right person}\n\t\n\t\\scoreheading{Bonus rewards}\n\t\\scoreitem{200}{Informing a guest of drink unavailability upon request}\n\t\\scoreitem[2]{100}{Correcting the bartender}\n\n\t\\scoreheading{Regular Penalties}\n\t\\penaltyitem{50}{Approaching guest with a drink and take order (per wrong guest)}\n\t\\penaltyitem{50}{Approaching the host to take an order}\n\t\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem[3]{30}{Guest waves to the robot to place order}\n\t\\penaltyitem[3]{50}{Guest approaches the robot to place order}\n\t\\penaltyitem[3]{30}{Drink handed over to the robot (bypass picking)}\n\t\\penaltyitem[3]{30}{Drink taken by a guest (bypass drink handover)}\n\n\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/SetTable.tex",
    "content": "The maximum time for this test is 10 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem{100}{Open the drawer or cupboard door}\n\t\\scoreitem[2]{50}{Pick up plate and cup}\n\t\\scoreitem[3]{150}{Pick up knife, spoon, and fork}\n\t\\scoreitem{50}{Pick up napkin}\n\t\\scoreitem[5]{100}{Correctly place each item}\n\t\n\t\\penaltyitem[5]{25}{Pointing at object}\n\t\\penaltyitem[5]{50}{Pointing at destination}\n\n\t\\scoreheading{Bonus rewards}\n\t\\scoreitem{500}{Layplace mat before objects}\n\t\\scoreitem{250}{Placing all objects correctly}\n\t\\scoreitem{50}{Closing the door or drawer}\n\n\t%\\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/SmoothieChef.tex",
    "content": "The maximum time for this test is 10 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[3]{200}{Placing all three fruits in the blender}\n\t\\scoreitem{300}{Pouring a teaspoon of sugar in the blender}\n\t\\scoreitem{300}{Pouring milk in the blender}\n\n\t\\scoreheading{Bonus Rewards}\n\t\\scoreitem{400}{Pouring sugar in the blender without spilling}\n\t\\scoreitem{400}{Pouring milk in the blender without spilling}\n\n\t\\scoreheading{Regular Penalties}\n\t\\penaltyitem[3]{200}{Placing an incorrect fruit into the blender}\n\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem{150}{Starting the test in front of the kitchen counter}\n\t\\penaltyitem{200}{Handing an object over to the robot}\n\t\\penaltyitem{250}{Telling the robot which ingredient comes next}\n\t\\penaltyitem{250}{Using a custom operator}\n\t% No longer necessary, computes automatically\n\t% \\setTotalScore{1000}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/SticklerForRules.tex",
    "content": "\\begin{scorelist}[timelimit=10]\n\n\t\\scoreheading{Regular Rewards}\t\n\t\\scoreitem[4]{100}{Identify a guest breaking a house rule (indicating the rule by voice).}\n\t\\scoreitem[4]{100}{Making eye-contact, politely clarify to the guest what action he should take.}\n\t\\scoreitem[4]{200}{Confirm that the guest is following the rule.}\n\n\t\\scoreheading{Bonus Rewards}\n\t\\scoreitem[4]{100}{Making eye-contact, politely clarify to the guest what rule is being broken.}\n\n\t\\scoreheading{Regular Penalties}\n\t\\penaltyitem[4]{100}{Talking to a guest about a rule they are not breaking}\n\n\t\\scoreheading{Deus ex Machina Penalties}\n\t\\penaltyitem[4]{50}{A human directs the robot towards a guest who is breaking a rule}\n\t\\penaltyitem[4]{100}{A human tells the robot which rule is being broken}\n\n\\end{scorelist}\n\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/StoringGroceries.tex",
    "content": "\\begin{scorelist}[timelimit=7]\n\t\\scoreheading{Main Goal}\n\t\\scoreitem{15}{Navigating to the table}\n\t\\scoreitem[5]{15}{Perceiving object and categorizing it correctly}\n\t\\scoreitem[5]{50}{Picking up an object for transportation to the cabinet}\n\t\\scoreitem[5]{15}{Perceiving objects in shelf and saying on which layer the currently handled object should be placed}\n\t\\scoreitem[5]{15}{Placing an object in the cabinet}\n\t\\scoreitem[5]{50}{Placing an object next to similar objects on the cabinet}\n\t\\scoreitem[1]{200}{Opening the first cabinet door}\n\t\\scoreitem[1]{100}{Opening the second cabinet door}\n\t\\scoreitem{300}{Pouring cereal into the container}\n\n\t\\scoreheading{Bonus Rewards}\n\t\n\t\\scoreitem[5]{50}{Picking up an object from the shopping bag}\n\t\\scoreitem{70}{Picking up a tiny object}\n\t\\scoreitem{30}{Placing a tiny object}\n\t\\scoreitem{70}{Picking up a heavy object}\n\t\\scoreitem{30}{Placing a heavy object}\n\n\t\\scoreitem{50}{Autonomously Picking any Object}\n\t\\scoreitem{50}{Autonomously Placing any Object}\n\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem[10]{-15}{Perceiving object and categorizing it wrongly}\n\t\\penaltyitem[5]{-50}{A human handing an object over to the robot}\n\t\\penaltyitem[5]{-15}{A human placing an object in the cabinet}\n\t\\penaltyitem[5]{-50}{A human placing an object in the cabinet next to similar objects}\n\t\\penaltyitem[5]{-25}{A human pointing at a target location}\n\t\\penaltyitem{-200}{A human opening the first cabinet door}\n \t\\penaltyitem{-100}{A human opening the second cabinet door}\n\t\\penaltyitem{-100}{Spilling cereal while pouring}\n\t\\penaltyitem{-100}{Leaving cereal in the box}\n\t\\penaltyitem{-300}{A human pouring cereal in the bowl}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/TakeOutGarbage.tex",
    "content": "\\begin{table}[h]\n\t\\begin{tabular}{m{0.85\\linewidth} c}\n\t\t\\textbf{Maximum time}: & 5 minutes \\\\\n\t\\end{tabular}\n\\end{table}\n\n\\small\\begin{scorelist}\n\t\\scoreheading{Regular Rewards}\n\t\\scoreitem[2]{300}{Move a bag inside the designated zone}\t\n\t\\scoreheading{Bonus Rewards}\n\t\\scoreitem[2]{100}{Opening the bin lid}\n\t\\scoreitem{200}{Carry both bags at once}\t\n\t\\scoreheading{Regular Penalties}\n\t\\penaltyitem[2]{100}{Placing bag outside collection zone}\n\t\\penaltyitem[2]{50}{Tipping a bin / tearing a bag}\t\t\t\n\t\\scoreheading{Deus ex Machina Penalties}\n\t\\penaltyitem[2]{250}{Receiving the bag via handover}\t\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/TidyUp.tex",
    "content": "\nThe maximum time for this test is 5 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[5]{100}{Moving an object to the appropriate location}\n\t\\penaltyitem[5]{-30}{Request object locations by speech}\n\t\\penaltyitem[5]{-40}{Request object locations by gesture}\n\t\\penaltyitem[5]{-20}{Request object locations by guiding}\n\t\\penaltyitem[5]{-30}{Request object interaction by a human}\n\n\t\\scoreheading{Bonus Rewards}\n\t\\scoreitem{100}{Taking out the garbage}\n\t\\scoreitem{200}{Moving a \\emph{tiny} object to the appropriate location}\n\t\\scoreitem{200}{Moving a \\emph{heavy} object to the appropriate location}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/TourGuide.tex",
    "content": "The maximum time for this test is \\textbf{10 minutes}.\n\n\\begin{scorelist}\n\t\\scoreheading{Engaging spectators} % Max 50\n\t\\scoreitem{30}{Find an spectator (or group)}\n\t\\scoreitem{20}{Greet an spectator (handshake)}\n\t\\scoreitem{10}{Greet and get greet by an spectator (bowing or waving)}\n\n\t\\scoreheading{Guiding spectators} % Max 50\n\t\\scoreitem{10}{Convince spectator to follow}\n\t\\scoreitem{40}{Reach the audience area}\n\n\t\\scoreheading{Q\\&A Session} % Max 210\n\t% \\scoreitem{10}{Finish talk without loosing spectators attention}\n\t\\scoreitem{10}{Finish talk without loosing spectators}\n\t\\scoreitem[2]{70}{Each correctly understood question}\n\t\\scoreitem[2]{30}{Each correctly answered question}\n\t\n\t\\scoreheading{Bilingual interaction} % Max 80\n\t\\scoreitem{10}{Bilingual engaging}\n\t\\scoreitem[2]{25}{Questions in $3^{rd}$ language}\n\t\\scoreitem[2]{10}{Question answered also in $3^{rd}$ language}\n\t\n\t\\setTotalScore{390}\n\\end{scorelist}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "scoresheets/old/WhereIsThis.tex",
    "content": "\nThe maximum time for this test is 10 minutes.\n\n\\begin{scorelist}\n\t\\scoreheading{Main Goal}\n\t\\scoreitem[3]{100}{Describing and show the requested location accurately}\n\t\\scoreitem[3]{200}{Monitoring operator's navigation, intervening when necessary}\n\t\\scoreitem[3]{100}{Describing the areas of the \\Arena{} traversed during navigation}\n\n\t\\scoreheading{Bonus rewards}\n\t\\scoreitem[3]{100}{Leading non-expert operator}\n\t\\scoreitem{300} {Giving instructions to returning operator based on previous instructions}\n\t\\scoreitem{200} {Natural interaction while guiding}\n\t\n\t\\scoreheading{Deus Ex Machina Penalties}\n\t\\penaltyitem[3]{50} {Bypassing speech recognition}\n\t\\penaltyitem[3]{150} {Helping the robot find the operator}\n\t\n\n\\end{scorelist}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "setup/abbrevix.tex",
    "content": "%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: abbrevix.tex 373 2013-02-12 20:32:49Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Abbreviations for the RoboCupAtHome RuleBook\n%%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n%% temp-variables %%%%%%%%%\n\\newlength{\\adxtemp}\n\\newlength{\\adxspace}\n\\setlength{\\adxspace}{3cm}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%  Commands to use this\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n%% \\abb{abk}\n%% to reference an abbreviation\n\\newcommand{\\abb}[1]{\\hypertarget{#1}{#1}}\n\n%% \\term{the term}\n%% print 'the term' in italic,\n%% do not include 'the term' in index\n%\\newcommand{\\term}[1]{#1\\index{#1}}\n\\newcommand{\\term}[1]{\\textit{#1}}\n\n%% \\iterm{the term}\n%% print 'the term' in italic,\n%% include 'the term' in index\n\\newcommand{\\iterm}[1]{\\textit{#1}\\index{#1}}\n\n%% \\nterm{the term}\n%% do NOT print 'the term' but include 'the term' in index\n\\newcommand{\\nterm}[1]{\\index{#1}}\n\n%% \\TERM\n%% print first term, add second term to index\n\\newcommand{\\Term}[2]{\\textit{#1}\\index{#2}}\n\n\n%% \\aterm{the term}{abb}\n%% print 'term', \n%% include 'term' with abbreviation 'abb' in abbreviation-index\n\\newcommand{\\aterm}[2]{\\settowidth{\\adxtemp}{#2}{\\hypertarget{#2}{#1 (#2)}\\abbex{#2\\hspace{\\adxspace}\\hspace{-\\the\\adxtemp}#1}}}\n\n%% \\iaterm{the term}{abbreviation} \n%% print 'term', \n%% include 'the term' in index, \n%% and include abbreviation in abbreviation-index\n\\newcommand{\\iaterm}[2]{\\settowidth{\\adxtemp}{#2}{\\hypertarget{#1}{\\textit{#1} (#2)}\\index{#1}\\abbex{#2\\hspace{\\adxspace}\\hspace{-\\the\\adxtemp}#1}}}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%  Main Abbreviation Definitions\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\makeatletter\n\\newlength{\\QZ@TOChdent}% Used to define hanging indents.\n\\setlength{\\QZ@TOChdent}{1.0em}%\n\\renewcommand{\\@pnumwidth}{1.55em}%\n\\makeatother\n%\n%\\newenvironment{simpleenv}[4]{\\clearpage}{\\clearpage}%\n%\\newenvironment{simpleenv}[4]{\\clearpage}{\\pagebreak}%\n\\newenvironment{simpleenv}[4]{\\pagebreak}{\\pagebreak}%\n\\newcommand{\\BaseDiff}{0}%\n%\\newcommand{\\RSpnum}[1]{\\makebox[\\@pnumwidth][r]{#1}}%\n\\newcommand{\\RSpnum}[1]{\\makebox[1.57em][r]{#1}}%\n\\newcommand{\\RSnopnum}[1]{\\makebox[\\@pnumwidth][r]{}}%\n\\newcommand{\\RSpset}[1]{\\RSpnum{#1}}%\n%\n\\newcommand{\\printabbex}[4][\\jobname]{%\n  \\typeout{ ***** printabbex #1 #2 #3 #4 for file \\jobname.tex}%\n  \\IfFileExists{#1.and}{%\n     \\begin{simpleenv}{#1}{#2}{#3}{#4}%\n       \\pagestyle{plain} %\n       \\addcontentsline{toc}{chapter}{#2}%\n       \\chapter*{\\textbf{#3}}{#4}%\n       \\input{#1.and}%\n       \\vfill%\n     \\end{simpleenv}%\n   }%\n   {\\typeout{ ***** ERROR: No file #1.and found for file \\jobname.tex.}}}%\n\\renewcommand{\\see}[2]{#2 \\emph{see} #1}%\n\\makeatletter\n\\newcommand{\\makeabbex}[1][\\jobname]{\\begingroup\n  \\makeatletter\n  \\if@filesw \\expandafter\\newwrite\\csname #1@adxfile\\endcsname\n  \\expandafter\\immediate\\openout \\csname #1@adxfile\\endcsname #1.adx\\relax\n  \\typeout{ ***** Writing abbex file #1.adx for file \\jobname.tex.}%\n  \\fi \\endgroup}\n%\\makeatother\n%\\makeatletter\n\\@onlypreamble{\\makeindex}%\n\\newcommand{\\abbex}[2][\\jobname]{\\@bsphack\\begingroup\n               \\def\\protect##1{\\string##1\\space}\\@sanitize\n               \\@wrabbex{#1}{#2}}\n\\newcommand{\\@wrabbex}[2]{\\let\\thepage\\relax\n   \\xdef\\@gtempa{\\@ifundefined{#1@adxfile}{}{\\expandafter\n      \\write\\csname #1@adxfile\\endcsname{\\string\n      \\indexentry{#2|}{\\thepage}}}}\\endgroup\\@gtempa\n   \\if@nobreak \\ifvmode\\nobreak\\fi\\fi\\@esphack}\n\\makeatother\n\\newcommand{\\indxspace}{\\par\\vspace{\\BaseDiff\\baselineskip}}\n\\makeatletter\n\\newcommand{\\IndexSet}{%\n\\renewcommand{\\@idxitem}{\\par\\setlength{\\leftskip}{0pt}%\n                         \\setlength{\\hangindent}{\\QZ@TOChdent}}%\n\\renewcommand{\\subitem}{\\par\\setlength{\\leftskip}{0.25in}%\n                         \\setlength{\\hangindent}{\\QZ@TOChdent}}%\n\\renewcommand{\\subsubitem}{\\par\\setlength{\\leftskip}{0.5in}%\n                         \\setlength{\\hangindent}{\\QZ@TOChdent}}%\n\\renewcommand{\\indexspace}{}\n\\renewcommand{\\indxspace}{\\par\\vspace{\\BaseDiff\\baselineskip}}\n\\renewenvironment{theindex}{%\n                \\setlength{\\parindent}{\\z@}%\n                \\parskip\\z@ \\@plus .3\\p@\\relax\n                \\setlength{\\rightskip}{\\@tocrmarg}%\n                \\setlength{\\parfillskip}{-\\rightskip}%\n                \\let\\item\\@idxitem}\n} %% End of the IndexSet definition\n\\makeatother\n\n\\newcommand{\\printidx}{\\addcontentsline{toc}{chapter}{Index}\\printindex}\n\\newcommand{\\printabx}{\\printabbex{Abbreviations}{Abbreviations}{}}\n\\newcommand{\\printabbrevidx}{\\printabbex{Abbreviations}{Abbreviations}{}}\n%\\newcommand{\\makeabbrevidx}{\\makeindex[abb]}\n\\newcommand{\\makeabbrevidx}{\\makeabbex}\n"
  },
  {
    "path": "setup/active_version.tex",
    "content": "\\newcommand{\\YEAR}{2026}\n\\newcommand{\\STATE}{Final}\n%\\newcommand{\\STATE}{Final}\n%\n\n"
  },
  {
    "path": "setup/config.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: config.tex 2019-01-08 09:00:00 kyordhel $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Package configuration for the RoboCupAtHome rulebook\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\setlist{noitemsep}\n\n%%% SubfigureSetup %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%\\renewcommand{\\subfigtopskip}{5pt}        % default is 10pt\n%\\renewcommand{\\subfigbottomskip}{5pt}     % default is 10pt\n%\\renewcommand{\\subfigcapskip}{3pt}        % default is 10pt\n%\\renewcommand{\\subfigcapmargin}{7pt}      % default is 10pt\n\n%%% TweakList-Setup %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\renewcommand{\\itemhook}{%                 % modify itemize-spacing\n\t\\setlength{\\topsep}{2pt}%\n\t\\setlength{\\partopsep}{1pt}%\n\t\\setlength{\\itemsep}{-1pt}%\n}\n\\renewcommand{\\enumhook}{%                 % modify enumerate-spacing\n\t\\setlength{\\topsep}{2pt}%\n\t\\setlength{\\partopsep}{1pt}%\n\t\\setlength{\\itemsep}{-1pt}%\n}\n\\renewcommand{\\descripthook}{%             % modify description-spacing\n\t\\setlength{\\topsep}{2pt}%\n\t\\setlength{\\partopsep}{1pt}%\n\t\\setlength{\\itemsep}{-1pt}%\n}\n\n\\setkomafont{title}{\\normalfont}\n\\setkomafont{sectioning}{\\normalfont\\bfseries}\n\\addtokomafont{caption}{\\small}\n\\setkomafont{captionlabel}{\\small\\bfseries}\n\\setkomafont{descriptionlabel}{\\normalfont\\bfseries}\n\\renewcommand*{\\chapterformat}{\\LARGE{Chapter \\thechapter}}"
  },
  {
    "path": "setup/macros.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: macros.tex 399 2013-02-14 20:24:02Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Macros for the RoboCupAtHome rulebook\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% rubber: setlist arguments --shell-escape\n\n\\input{./setup/macros_scoresheets.tex}\n\\input{./setup/macros_open_demonstrations.tex}\n\\input{./setup/macros_leagues.tex}\n\n\\newcommand{\\rulebookVersion}{\\STATE\\ version for RoboCup \\YEAR\\xspace(\\VERSION)}\n\n\\def\\RoboCup{{\\iterm{RoboCup}}}\n\\def\\AtHome{{\\iterm{@Home}}}\n\\def\\Symp{{\\iterm{RoboCup Symposium}}}\n\\def\\Rulebook{{\\iterm{Rulebook}}}\n\\def\\Organisation{{\\iterm{Competition Organisation Document}}}\n\n\\def\\OPL{\\iaterm{Open Platform League}{OPL}}\n%\\def\\SPL{\\iaterm{Standard Platform League}{SPL}}\n%\\def\\SPLs{\\iaterm{Standard Platform Leagues}{SPLs}}\n%\\def\\DSPL{\\iaterm{Domestic Standard Platform League}{DSPL}}\n\n\\def\\EC{\\iaterm{executive committee}{EC}}\n\\def\\TC{\\iaterm{technical committee}{TC}}\n\\def\\OC{\\iaterm{organizing committee}{OC}}\n\\def\\LOC{\\iaterm{Local Organizing Committee}{LOC}}\n\\def\\RCF{\\iaterm{RoboCup Federation}{RCF}}\n\n\\def\\HRI{\\iterm{Human-Robot Interaction}}\n\\def\\NLP{\\iterm{Natural Language Processing}}\n\\def\\NAV{\\iterm{Navigation}}\n\\def\\MAP{\\iterm{Mapping}}\n\\def\\CV{\\iterm{Computer Vision}}\n\\def\\OR{\\iterm{Object Recognition}}\n\\def\\OM{\\iterm{Object Manipulation}}\n\\def\\MAN{\\iterm{Manipulation}}\n\\def\\AB{\\iterm{Adaptive Behaviors}}\n\\def\\BI{\\iterm{Behavior Integration}}\n\\def\\TP{\\iterm{Task Planning}}\n\\def\\AmI{\\iterm{Ambient Intelligence}}\n\\def\\SysI{\\iterm{System Integration}}\n\\def\\PerDet{\\iterm{Person Detection}}\n\\def\\PerRec{\\iterm{Person Recognition}}\n\\def\\GestRec{\\iterm{Gesture Recognition}}\n\n\\def\\RR{\\iterm{Rulebook Repository}}\n\\def\\TG{\\iterm{Telegram Group}}\n\\def\\WIKI{\\iterm{Wiki}}\n\n%\\def\\HSR{\\iterm{Toyota HSR}}\n\\def\\MountingBracket{\\iterm{Mounting Bracket}}\n\n\\def\\SetupDays{\\iterm{Setup Days}}\n\\def\\PPS{\\iterm{Poster Presentation Session}}\n\\def\\WelcomeReception{\\iterm{Welcome Reception}}\n\\def\\RobotInspection{\\iterm{Robot Inspection}}\n\\def\\OpenChallenge{\\iterm{Open Challenge}}\n%\\def\\SONE{\\iterm{Stage~I}}\n%\\def\\STWO{\\iterm{Stage~II}}\n\\def\\FINAL{\\iterm{Final}}\n\\def\\Housekeeper{\\iterm{Housekeeper}}\n\\def\\Partyhost{\\iterm{Party Host}}\n\\def\\Testblock{\\iterm{Test Block}}\n\\def\\Testslot{\\iterm{Test Slot}}\n\\def\\Testblocks{\\iterm{Test Blocks}}\n\\def\\Testslots{\\iterm{Test Slots}}\n\n\\def\\HRIAward{\\iterm{Best Human-Robot Interface Award}}\n\\def\\DSPLPosterAward{\\iterm{Best DSPL Poster Award}}\n\\def\\OPLPosterAward{\\iterm{Best OPL Poster Award}}\n\\def\\OCAward{\\iterm{Best Open Challenge Award}}\n\n\\def\\TDP{\\iaterm{Team Description Paper}{TDP}}\n\\def\\TLM{\\iterm{Team Leader Meeting}}\n\\def\\OLC{\\iterm{Open Loop Control}}\n\n\\def\\Application{\\iterm{Application}}\n\\def\\Qualification{\\iterm{Qualification}}\n\\def\\Registration{\\iterm{Registration}}\n\\def\\CFP{\\iaterm{Call for Participation}{CFP}}\n\n\\def\\TeamVideo{\\iterm{Team Video}}\n\\def\\TeamWebsite{\\iterm{Team Website}}\n\n\\def\\VizBox{\\iterm{VizBox}}\n\\def\\Arena{\\iterm{Arena}}\n\\def\\Arenas{\\iterm{Arenas}}\n\\def\\ArenaNetwork{\\iterm{Arena Network}}\n\\def\\Entrance{\\iterm{Entrance}}\n\\def\\Exit{\\iterm{Exit}}\n\n\\def\\ObjectCategory{\\iterm{Object Category}}\n\\def\\PredefinedLocation{\\iterm{Predefined Location}}\n\\def\\LocationClass{\\iterm{Location Class}}\n\\def\\KnownObjects{\\iterm{Known Objects}}\n\\def\\SimilarObjects{\\iterm{Similar Objects}}\n\\def\\CommonObjects{\\iterm{Common Objects}}\n\\def\\ConsistentObjects{\\iterm{Consistent Objects}}\n\\def\\LocalObjects{\\iterm{Local Objects}}\n\n\\def\\UnknownObjects{\\iterm{Unknown Objects}}\n\\def\\StandardObjects{\\iterm{Standard Objects}}\n\\def\\WorldwideObjects{\\iterm{Worldwide Objects}}\n\\def\\YCBData{\\iterm{YCB Dataset}}\n\\def\\PredefinedName{\\iterm{Predefined Name}}\n\n\\def\\EmergencyStop{\\iterm{Emergency Stop}}\n\\def\\StartButton{\\iterm{Start Button}}\n\\def\\ExternalDevice{\\iterm{External Device}}\n\\def\\ExternalDevices{\\iterm{External Devices}}\n\\def\\ExternalComputing{\\iterm{External Computing}}\n\\def\\ECRA{\\iaterm{External Computing Resource Area}{ECRA}}\n\\def\\DEM{\\iaterm{Deus ex Machina}{DEM}}\n\n\\def\\NumObjects{30}\n\\def\\NumLocations{20}\n\\def\\NumNames{20}\n\n\\def\\Referee{\\iterm{Referee}}\n\\def\\Referees{\\iterm{Referees}}\n\\def\\Volunteer{\\iterm{Volunteer}}\n\\def\\Volunteers{\\iterm{Volunteers}}\n\\def\\CustomOperator{\\iterm{Custom Operator}}\n\n\\def\\CommandGen{\\iterm{GPSR Command Generator}}\n\n\n\\newcommand{\\textbi}[1]{\\textbf{\\textit{#1}}}\n\\renewcommand{\\labelenumi}{\\arabic{enumi}.}\n\\renewcommand{\\labelenumii}{\\labelenumi\\arabic{enumii}.}\n\\renewcommand{\\labelenumiii}{\\labelenumii.\\arabic{enumiii}.}\n\n\\newcommand{\\testtocentry}[1]{%\n\t\\nameref{#1}\\dotfill\\pageref{#1}\\\\[0.2\\baselineskip]%\n}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n%%                    Developement-Tools                     %%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\newcommand{\\tbc}[1]{\\textbf{\\it\\color{red}{t.b.c. ...}#1\\color{black}}}\n\\newcommand{\\todo}[1]{\\textbf{\\it\\color{red}{todo: }#1\\color{black}}}\n\\newcommand{\\TODO}[1]{\\textbf{\\it\\color{red}{TODO:\\\\}#1\\color{black}}}\n\\newcommand{\\chk}[1]{\\textbf{\\color{red}#1\\color{black}}}\n\n\\newcommand{\\reworkon}{\\marginpar{\\raggedright\\color{red}{$\\downarrow$rework}\\color{black}}}\n\\newcommand{\\reworkoff}{\\marginpar{\\raggedright\\color{red}{$\\uparrow$rework}\\color{black}}}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%  site notes/margin notes\n\\def\\note#1{\\marginpar{\\raggedright\\tiny#1}}\n\\def\\mpar#1{\\marginpar{\\raggedright\\tiny#1}}\n\\def\\rand#1{\\marginpar{\\raggedright\\tiny#1}}\n\\setlength{\\marginparwidth}{2cm}\n\n\\newcommand{\\refsec}[1]{Section~\\ref{#1}}\n\\newcommand{\\reftab}[1]{Table~\\ref{#1}}\n\\newcommand{\\reffig}[1]{Figure~\\ref{#1}}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%% side-annotation-macros for easy lookup\n% \\newcommand{\\awardmark}{\\marginpar{\\centering\\includegraphics[width=.34cm]{images/icon_award.pdf}}}\n% \\newcommand{\\refmark}{\\marginpar{\\centering\\includegraphics[width=.5cm]{images/icon_whistle.pdf}}}\n% \\newcommand{\\referee}[1]{\\emph{#1}\\marginpar{\\centering\\includegraphics[width=.5cm]{images/icon_whistle.pdf}}}\n% \\newcommand{\\scoremark}{\\marginpar{\\centering\\includegraphics[width=.34cm]{images/icon_score.pdf}}}\n\\newcommand{\\awardmark}{}\n\\newcommand{\\refmark}{}\n\\newcommand{\\referee}[1]{}\n\\newcommand{\\scoremark}{}\n%\\newcommand{\\scoring}[1]{\\emph{#1}\\marginpar{\\centering\\includegraphics[width=.34cm]{images/icon_score.pdf}}}\n\\newcommand{\\scoring}[1]{\\emph{#1}}\n\\newcommand{\\timark}{\\marginpar{\\centering\\includegraphics[width=.34cm]{icon_clock.pdf}}}\n\n%\\newcommand{\\timing}[1]{\\emph{#1}\\marginpar{\\centering\\includegraphics[width=.34cm]{images/icon_clock.pdf}}}\n\\newcommand{\\timing}[1]{\\emph{#1}}\n\n\\def\\svnRevision{Unknown} %\n\\def\\svnChangeData{Unknown} %\n\\def\\revnumtmpfile{.temp_rulebook_version}\n\\def\\revdattmpfile{.temp_rulebook_date}\n\\immediate\\write18{git rev-list HEAD | wc -l > \\revnumtmpfile}\n%\\immediate\\write18{svnversion . > \\revnumtmpfile}\n\\IfFileExists{\\revnumtmpfile}{\\def\\svnRevision{\\input{\\revnumtmpfile}\\unskip}}{}\n\\immediate\\write18{git log -1 --date=short  | grep 'Date:' | awk '{print $2}'> \\revdattmpfile}\n%\\immediate\\write18{svn info | grep 'Last Changed Date:' | awk '{print $4}'> \\revdattmpfile}\n\\IfFileExists{\\revdattmpfile}{\\def\\svnChangeData{\\input{\\revdattmpfile}\\unskip}}{}\n% \\IfFileExists{\\revnumtmpfile}{\\immediate\\write18{rm -f \\revnumtmpfile}}{}\n% \\IfFileExists{\\revdattmpfile}{\\immediate\\write18{rm -f \\revdattmpfile}}{}\n\\newcommand{\\VERSION}{Revision \\svnChangeData\\_\\svnRevision}\n\n\n\n"
  },
  {
    "path": "setup/macros_leagues.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: macros_leagues.tex 399 2017-06-04 13:36:00Z matamoros $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Macros for the RoboCupAtHome rulebook\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\ifdefined\\league\n\\else%\n    % Provided for compatibility with older versions\n    \\newcommand\\teamsListFile{teams/teams.tex}\n    \\newcommand{\\league}{}\n    \\newcommand{\\leagueFullName}{}\n\\fi\n\n%% Import team from the Open Standard Platform League %%%%%%%%%%% %%\n\\ifthenelse{\\equal{\\league}{OPL}}{\n    \\newcommand\\teamsListFile{teams/OPL.tex}\n    \\newcommand{\\leagueFullName}{Open Platform League}\n}{}\n\n%% Import team from the Domestic Standard Platform League %%%%%%% %%\n%%\\ifthenelse{\\equal{\\league}{DSPL}}{\n%%    \\newcommand\\teamsListFile{teams/DSPL.tex}\n%%    \\newcommand{\\leagueFullName}{Domestic Standard Platform League}\n%%}{}\n\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n%%  Per league macros                                             %%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n\n%% Domestic Standard Platform League %%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n%%\\newcommand{\\ifDSPL}[1]{\n%%    \\ifthenelse{\\equal{\\league}{} \\OR \\equal{\\league}{DSPL}}{#1}{}\n%%}\n\n%%\\newcommand{\\ifNotDSPL}[1]{\n%%    \\ifthenelse{\\equal{\\league}{} \\OR \\equal{\\league}{OPL}}{#1}{}\n%%}\n\n\n%% Open Platform League %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n\\newcommand{\\ifOPL}[1]{\n    \\ifthenelse{\\equal{\\league}{} \\OR \\equal{\\league}{OPL}}{#1}{}\n}\n\n\\newcommand{\\ifNotOPL}[1]{\n    \\ifthenelse{\\equal{\\league}{} \\OR \\equal{\\league}{DSPL}}{#1}{}\n}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n%%  List of teams import macro                                    %%\n%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%\n\n\\newcommand{\\loadTeamsListFile}{%\n    \\input{\\teamsListFile}\n}\n\n% \\expandafter\\expandafter\\newcommand\\TEAMS{\\csname TEAMS\\league \\endcsname}\n\n"
  },
  {
    "path": "setup/macros_open_demonstrations.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: macros_open_demonstrations.tex 391 2013-02-14 07:57:07Z sugiura $\n%%    author(s): holz\n%%  description: simple macros for specifications of open challenges\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\newcommand{\\OpenDemonstrationTask}[2] {\n  \\begin{enumerate}%\n    \\item \\textbf{Setup and demonstration:} The team has a maximum of \\timing{#1 minutes} for setup, presentation and demonstration.%\n    \\item \\textbf{Interview and cleanup:} After the demonstration, there is\n\t      another \\timing{#2 minutes} where the team answers %\n    questions by the jury members.\\\\%\n    During the interview time, the team has to undo its changes to the environment.%\n  \\end{enumerate}%\n}\n\n\\newcommand{\\OpenDemonstrationChanges}{\n  \\subsection{Changes to the environment}\n  \\begin{enumerate}\n    \\item \\textbf{Making changes:} As in the other open demonstrations, teams are allowed to make modifications to the arena as they like, \n    but under the condition that they are reversible.\n    \\item \\textbf{Undoing changes:} In the interview and cleanup team, changes need to be made undone by the team. \n    The team has to leave the arena in the \\emph{very same} condition they entered it.\n  \\end{enumerate}\n}\n\n"
  },
  {
    "path": "setup/macros_scoresheets.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Macros for generating score sheets for RoboCup@Home              %\n% to be used in the rulebook or during the competition             %\n%                                                                  %\n% Author: Dirk Holz & David Gossow                                 %\n% Modif : Mauricio Matamoros                                       %\n% $Id: macros_scoresheets.tex 429 2013-04-30 10:09:55Z holz $      %\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% chktex-file 1\n% chktex-file 15\n% chktex-file 21\n% chktex-file 35\n% chktex-file 44\n\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%                                                                  %\n% GLOBAL OPTIONS                                                   %\n%                                                                  %\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n% Set \\shortScoresheet to true for the rulebook version\n% Set \\shortScoresheet to false for the referee's scoresheet\n\\newcommand{\\shortScoresheet}{true}\n\n% The global number of attempts per test\n\\newcommand{\\attempts}{3}\n\n% The Default Timelimit for the Test\n\\newcommand{\\timelimit}{5}\n\n% Show Special Penalties & Bonuses\n\\newcommand{\\specialPenBonus}{true}\n\n% Sets the total penalty for not showing up\n\\newcommand{\\notattendingpenalty}{500}\n\n% Set to true to display the \"Using start button\" penalty item\n\\newcommand{\\startbuttonpenalized}{true}\n\n% Sets the total penalty for not using start button instead of door\n\\newcommand{\\startbuttonpenalty}{100}\n\n% Set to true to display the the outstanding performance bonus item\n\\newcommand{\\outstandingPerformanceBonus}{true}\n\n% Percentage of the outstanding performance bonus (ommit % symbol)\n\\newcommand{\\outstandingPerformanceBonusPercentage}{10}\n\n% Set to true to display the data recording bonus item\n\\newcommand{\\dataRecordingBonus}{false}\n\n% Percentage of the data recording bonus (ommit % symbol)\n\\newcommand{\\dataRecordingBonusPercentage}{10}\n\n% Sets the name of the column for referee scoring when \\attempts=1\n\\newcommand{\\singleTryColumnCaption}{Single try}\n\n% Sets the first column's name for referee scoring when \\attempts=2\n\\newcommand{\\firstTryColumnCaption}{First try}\n\n% Sets the second column's name for referee scoring when \\attempts=2\n\\newcommand{\\secondTryColumnCaption}{Second try}\n\n% Sets the name of the column for referee scoring when \\attempts=1\n\\newcommand{\\firstColumnCaption}{Action}\n\n% Sets the second column's name for referee scoring when \\attempts=2\n\\newcommand{\\secondColumnCaption}{Score}\n\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%                                                                  %\n% USAGE                                                            %\n%                                                                  %\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%\n% A scoresheet must be in a separated tex file. Scoring marks are\n% presented as a list within the {scorelist} environment. Each\n% mark is enlisted using the \\scoreitem macro. Headings can be\n% defined with the \\scoreheading macro. Within the scoresheet\n% booklet the {scorelist} environment shall be placed inside the\n% {scoresheet} environment that adds the footer and heading required\n% by the referee.\n%\n% -= Snippet (rulebook.tex) =-\n%     \\newpage%\n%     \\input{my_score_sheet.tex}\n% -= End Snippet =-\n%\n% -= Snippet (scoresheets.tex) =-\n%     \\begin[options]{scoresheet}\n%     \\input{my_score_sheet.tex}\n%     \\end{scoresheet}\n% -= End Snippet =-\n%\n% -= Snippet (my_score_sheet.tex) =-\n%     \\begin[options]{scorelist}\n%       \\scoreheading{Main goal}\n%       \\scoreitem[multiplier]{score}{Description}\n%       % These do not contribute to automatic scoring calculation\n%       \\scorebonus[multiplier]{score}{Description}\n%       \\scorepenalty[multiplier]{score}{Description}\n%     \\end{scorelist}\n% -= End Snippet =-\n%\n%\n% scorelist options:\n% The scorelist environment supports the following comma-separated\n% optional arguments:\n%   - score              Integer. Sets the test total score to an\n%                        arbitrary value (disables autocalc)\n%   - attempts           Integer. Number of attempts for the\n%                        scoresheet (default is \\global\\attempts)\n%   - timelimit          Integer. Timelimit in minutes\n%   - continue           Not implemented\n%   - specialpenbonus\t Boolean. Toggles the \"Special Penalties & Bonuses\"\n%   - datarecording      Boolean. Toggles the \"Data Recording\"\n%                        item under Special penalties and standard\n%                        bonuses\n%   - datarecordingpc    Integer. Percentage for the data\n%                        recording bonus\n%   - datarecordingbonus Integer. Arbitrary value for the data\n%                        recording bonus\n%   - outstanding        Boolean. Toggles the \"Outstanding\n%                        Performance\" item under Special penalties\n%                        and standard bonuses\n%   - outstandingpc      Integer. Percentage for the\n%                        outstanding performance bonus\n%   - outstandingbonus   Integer. Arbitrary value for the\n%                        outstanding performance bonus\n%   - startbutton        Boolean. Toggles the \"Using start button\"\n%                        item under Special penalties and standard\n%                        bonuses.\n%   - startbuttonpenalty Integer. Arbitrary value for the Using\n%                        start button penalty.\n%   - firstcolcaption    String. Caption for the first column of\n%                        the scoresheet (default=\"Action\")\n%   - secondcolcaption   String. Caption for the second column of\n%                        the scoresheet (default=\"Score\")\n%   - singletrycc        String. Caption of the first column for\n%                        referee scoring when attempts=1\n%   - firsttrycc         String. Caption of the first column for\n%                        referee scoring when attempts=2\n%   - secondtrycc        String. Caption of the second column for\n%                        referee scoring when attempts=2\n%\n%\n%\n% scoreitem, scorebonus, and scorepenalty arguments\n%   #1 multiplier   A number indicating how many times the mark\n%                   can be scored. It is printed at the left of\n%                   the score followed by the \\times symbol.\n%   #2 score        Scoring points. Printed at the right of the\n%                   description\n%   #3 description  A description for the score mark\n%\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%                                                                  %\n% FROM HERE ON, THERE IS NOTHING TO CHANGE                         %\n%                                                                  %\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n%%% Counters / temp. variables %%%%%%%%%%%%%%%%%\n\\newcounter{currTestScore}\n\\newcounter{currTestScoreTotal}\n\\newcounter{currTestScoreTotalWithoutBonus}\n\\newcounter{currOutstandingBonus}\n\\newcounter{currDataRecordingBonus}\n\n\n% set \\continueAvailable to true for CONTINUE sections\n\\newcommand{\\continueAvailable}{true}\n\n\n% name of the current test, is set automatically in the rulebook\n\\newcommand{\\currentTest}{}\n\n% (internal) if-clause shortcut to switch between short rulebook version and full score sheet for referees\n\\newcommand{\\ifShortScoresheet}[2]{%\n\t\\ifthenelse{ \\equal{\\shortScoresheet}{true} }{#1}{#2}%\n}\n\n% (internal) draws the scoresheet line for score handwritting\n\\newcommand{\\scoreline}[1][0.08]{\\rule{#1\\linewidth}{.2pt}}\n\n% (internal) returns absolute value of argument\n\\newcommand{\\absval}[1]{\\ifnum#1<0 -\\fi#1}\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%                                                                  %\n% ENVIRONMENT: scoresheet                                          %\n% Scoresheet page layout                                           %\n%                                                                  %\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\newenvironment{scoresheet}{%\n% \\begin{scoresheet}\n\t\\newpage%\n\t%\n\t% Test, team, and referee info\n\t%\n\t\\begin{minipage}[t]{0.85\\textwidth}%\n\t\t\\vspace{0pt}%\n\t\t{\\huge \\textbf{Score Sheet} }%\n\t\t\\vspace{2 em}%\n\n\t\t\\begin{tabular}{ @{} l l l}\n\t\t\t\\textbf{Test:} & \\currentTest \\\\[.9 em]%\n\t\t\t\\textbf{Team name:} & \\scoreline[0.6]\\\\[.9 em]%\n\t\t\t\\textbf{Referee name:} & \\scoreline[0.6]\\\\[.9 em]%\n\t\t\\end{tabular}%\n\t\t\\vspace{0.5 em}%\n\n\t\\end{minipage}\n\t\\hfill\n\t%\n\t% @Home Logo\n\t%\n\t\\begin{minipage}[t]{0.15\\textwidth}%\n\t\t\\vspace{0pt}%\n\t\t\\includegraphics[width=\\textwidth]{images/logo_RoboCupAtHome.jpg}%\n\t\\end{minipage}\\\\%\n\n\n}{\n% \\end{scoresheet}\n\t\\vspace{0.5 em}%\n\t\\textbf{Remarks:}%\n\n\t%\n\t% Signatures of referee / team leader %%%%%%%%%%%%\n\t%\n\t\\vfill\n\t\\begin{tabular*}{\\linewidth}{@{} @{\\extracolsep{\\fill}} l l l @{}}\n\t\t\\scoreline[0.25] \\hspace{0.05\\linewidth}%\n\t\t\t& \\scoreline[0.25] \\hspace{0.05\\linewidth}%\n\t\t\t& \\scoreline[0.25]%\n\t\t\\\\\n\t\t\\textit{Date \\& time}%\n\t\t\t& \\textit{Referee} %\n\t\t\t& \\textit{Team leader}%\n\t\\end{tabular*}\n\n\t\\newpage\n}\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%                                                                  %\n% ENVIRONMENT: scorelist                                           %\n% Score list table                                                 %\n%                                                                  %\n% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\\usepackage{pgfkeys}\n\\pgfkeys{\n\t/scorelist/.is family, /scorelist,\n\tdefault/.style={\n\t\tattempts = \\attempts,\n\t\ttimelimit = \\timelimit,\n\t\tcontinue = true,\n\t\tspecialpenbonus = \\specialPenBonus,\n\t\tdatarecording = \\dataRecordingBonus,\n\t\tdatarecordingpc = \\dataRecordingBonusPercentage,\n\t\tdatarecordingbonus = 0,\n\t\toutstanding = \\outstandingPerformanceBonus,\n\t\toutstandingpc = \\outstandingPerformanceBonusPercentage,\n\t\toutstandingbonus = 0,\n\t\tstartbutton = \\startbuttonpenalized,\n\t\tstartbuttonpenalty = \\startbuttonpenalty,\n\t\tfirstcolcaption = \\firstColumnCaption,\n\t\tsecondcolcaption = \\secondColumnCaption,\n\t\tsingletrycc = \\singleTryColumnCaption,\n\t\tfirsttrycc = \\firstTryColumnCaption,\n\t\tsecondtrycc = \\secondTryColumnCaption,\n\t},\n\tattempts/.estore in = \\scorelistAttempts,\n\ttimelimit/.estore in = \\scorelistTimelimit,\n\tcontinue/.estore in = \\scorelistContinue,\n\tspecialpenbonus/.estore in = \\scorelistSpecialPenBonus,\n\tdatarecording/.estore in = \\scorelistDataRecording,\n\tdatarecordingpc/.estore in = \\scorelistDataRecordingPercentage,\n\tdatarecordingbonus/.estore in = \\scorelistDataRecordingBonus,\n\toutstanding/.estore in = \\scorelistOutstanding,\n\toutstandingpc/.estore in = \\scorelistOutstandingPercentage,\n\toutstandingbonus/.estore in = \\scorelistOutstandingBonus,\n\tstartbutton/.estore in = \\scorelistStartButton,\n\tstartbuttonpenalty/.estore in = \\scorelistStartButtonPenalty,\n\tfirstcolcaption/.estore in = \\scorelistFirstColCaption,\n\tsecondcolcaption/.estore in = \\scorelistSecondColCaption,\n\tsingletrycc/.estore in = \\scorelistSingleTryCC,\n\tfirsttrycc/.estore in = \\scorelistFirstTryCC,\n\tsecondtrycc/.estore in = \\scorelistSecondTryCC,\n}\n\n\\makeatletter%\n\\NewEnviron{scorelist}[1][]{\n% \\begin{scorelist}\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% read options\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\pgfkeys{/scorelist, default, #1}%\n\n\t\\ifShortScoresheet{\n\t\tThe maximum time for this test is \\textbf{\\scorelistTimelimit{}:00} minutes.\n\t}{%\n\t\t\n\t}\n\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% init variables %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\setcounter{currTestScore}{0}\n\t\\setcounter{currOutstandingBonus}{\\scorelistOutstandingBonus}\n\t\\setcounter{currDataRecordingBonus}{\\scorelistDataRecordingBonus}\n\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% environment commands %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\t% heading %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\newcommand{\\scoreheading}[1]{%\n\t\t\\ifShortScoresheet{%\n\t\t\t\\xdef\\@scoreheadingcolspan{2}%\n\t\t}{%\n\t\t\t\\xdef\\@scoreheadingcolspan{\\the\\numexpr2+\\scorelistAttempts\\relax}%\n\t\t}%\n\t\t\\phantom{.} \\\\[-12pt]%\n\t\t\\multicolumn{\\@scoreheadingcolspan}{@{}l}{\\textbi{##1}}\\\\[0pt]%\n\t}\n\n\t\\newcommand{\\scoreitem}[3][1]{%\n\t\t\\ifthenelse{ ##2 > 0 }{%\n\t\t\t\\addtocounter{currTestScore}{ ##2 * ##1 }%\n\t\t}{}%\n\t\t%\n\t\t\\@scoreitem[##1]{##2}{##3}%\n\t}\n\n\t\\newcommand{\\scoremod}[3][1]{%\n\t\t\\ifthenelse{ ##2 > 0 }{%\n\t\t\t\\addtocounter{currTestScore}{ ##2 * ##1 }%\n\t\t}{}%\n\t\t%\n\t\t\\@scoremod[##1]{+##2}{##3}%\n\t}\n\n\t\\newcommand{\\penaltyitem}[3][1]{%\n\t\t\\ifthenelse{##2 < 0}{%\n\t\t\t\\@scoreitem[##1]{\\absval{##2}}{##3}%\n\t\t}{%\n\t\t\t\\@scoreitem[##1]{\\absval{-##2}}{##3}%\n\t\t}%\n\t}\n\n\t\\newcommand{\\scorepen}[3][1]{%\n\t\t\\ifthenelse{##2 < 0}{%\n\t\t\t\\@scoremod[##1]{\\absval{##2}}{##3}%\n\t\t}{%\n\t\t\t\\@scoremod[##1]{\\absval{-##2}}{##3}%\n\t\t}%\n\t}\n\n\t\\newcommand{\\bonusitem}[3][1]{%\n\t\t\\@scoreitem[##1]{##2}{##3}%\n\t}\n\n\t% Alias of \\bonusitem\n\t\\newcommand{\\scorebonus}[3][1]{\\bonusitem[##1][##2][##3]}\n\n\t% Alias of \\penaltyitem\n\t\\newcommand{\\scorepenalty}[3][1]{\\penaltyitem[##1][##2][##3]}\n\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% Commands for overriding internal calculations %%%%%%%%%%%%%%%\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\t% set score counter to arbitrary value %%%%%%%%%%%%%%%%%%%%%%%%\n\t\\newcommand{\\setTotalScore}[1]%\n\t{%\n\t\t\\setcounter{currTestScore}{##1}%\n\t}\n\n\t% set outstanding bonus counter to arbitrary value %%%%%%%%%%%%\n\t\\newcommand{\\setOutstandingBonus}[1]%\n\t{%\n\t\t\\setcounter{currOutstandingBonus}{##1}%\n\t}\n\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% environment internal commands %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\t% table entry %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\newcommand{\\@scoreitem}[3][1]{%\n\t\t##3\\vspace{0.1em} &%\n\t\t\\textit{%\n\t\t\t\\ifthenelse{ \\equal{##2}{0} }{~}{% else\n\t\t\t\t\\ifthenelse{ \\equal{##1}{1} }{}{##1$\\times$}%\n\t\t\t##2}%\n\t\t}%\n\t\t\\ifShortScoresheet{}{&\\attemptScoreLines{\\scorelistAttempts}}\\\\[0pt]%\n\t}\n\n\t\\newcommand{\\@scoremod}[3][1]{%\n\t\t\\hspace{2em}##3\\vspace{0.1em} &%\n\t\t\\textit{%\n\t\t\t\\ifthenelse{ \\equal{##2}{0} }{~}{% else\n\t\t\t\t\\ifthenelse{ \\equal{##1}{1} }{}{##1$\\times$}%\n\t\t\t##2}%\n\t\t}%\n\t\t\\ifShortScoresheet{}{&\\attemptScoreLines{\\scorelistAttempts}}\\\\[0pt]%\n\t}\n\n\t% [INTERNAL] writes down the line for the final total score %%%\n\t\\newcommand{\\scoreTotal}{%\n\t\t\\\\%\n\t\t\\textbf{Total Score~}%\n\t\t\\ifShortScoresheet{%\n\t\t\t(excluding special penalties \\& standard bonuses) &%\n\t\t\t\\textit{\\thecurrTestScoreTotalWithoutBonus}%\n\t\t}{%\n\t\t\t&\\textit{\\thecurrTestScoreTotal}\n\t\t\t&\\multicolumn{\\scorelistAttempts}{c}{\\scoreline[0.20]}%\n\t\t}\\\\[0pt]%\n\t}\n\n\t% [INTERNAL] writes down the lines for the total score per try\n\t\\newcommand{\\scorePerTry}{%\n\t\t\\\\%\n\t\t\\ifShortScoresheet{}{%\n\t\t\t\\ifthenelse{ \\scorelistAttempts > 1 }{%\n\t\t\t\t\\textbi{Score per try} &%\n\t\t\t\t\\textit{\\thecurrTestScoreTotalWithoutBonus} &%\n\t\t\t\t\\attemptScoreLines{\\scorelistAttempts}%\n\t\t\t\t\\\\[0pt]%\n\t\t\t}{}%\n\t\t}%\n\t}\n\n\t% [INTERNAL] draws a line for referee scoring %%%%%%%%%%%%%%%%%\n\t\\gdef\\@marklinewidth{0.06}\n\t\\newcommand{\\markline}{\\rule{\\@marklinewidth\\linewidth}{.2pt}}\n\n\t% [INTERNAL] draws all the line for referee scoring %%%%%%%%%%%\n\t\\newcommand{\\attemptScoreLines}[1]{%\n\t\t\\protected@xdef\\@scorelines{\\markline}%\n\t\t\\ifthenelse{##1 > 1}{%\n\t\t\t\\foreach \\i in {2,...,##1}{%\n\t\t\t\t\\protected@xdef\\@scorelines{\\@scorelines & \\markline}%\n\t\t\t}%\n\t\t}{}%\n\t\t\\@scorelines%\n\t}\n\n\t% [INTERNAL] writes down the headings for referee scoring %%%%%\n\t\\newcommand{\\attemptHeadings}[1]{%\n\t\t\\ifthenelse{\\equal{##1}{1}}{%\n\t\t\t\\gdef\\@attemptheadings{\\textbf{\\scorelistSingleTryCC}}%\n\t\t\t\\gdef\\@marklinewidth{0.1}%\n\t\t}{}%\n\t\t\\ifthenelse{\\equal{##1}{2}}{%\n\t\t\t\\gdef\\@attemptheadings{\\textbf{\\scorelistFirstTryCC} & \\textbf{\\scorelistSecondTryCC}}%\n\t\t\t\\gdef\\@marklinewidth{0.08}%\n\t\t}{}%\n\t\t\\ifthenelse{##1 > 2}{\n\t\t\t\\protected@xdef\\@attemptheadings{%\n\t\t\t\t\\textbf{\\small$1^{st}$~try} &%\n\t\t\t\t\\textbf{\\small$2^{nd}$~try} &%\n\t\t\t\t\\textbf{\\small$3^{rd}$~try}}%\n\t\t}{}%\n\t\t\\ifthenelse{##1 > 3}{\n\t\t\t\\foreach \\i in {4,...,##1}{% chktex11\n\t\t\t\t\\protected@xdef\\@attemptheadings{%\n\t\t\t\t\t\\@attemptheadings &%\n\t\t\t\t\t\\textbf{\\small$\\i^{th}$~try}%\n\t\t\t\t}%\n\t\t\t}%\n\t\t\t\\gdef\\@marklinewidth{0.06}%\n\t\t}{}%\n\t\t\\@attemptheadings%\n\t}\n\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% setup table %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\vspace{0.8 em}%\n\t\\noindent%\n\t\\begin{tabularx}{\\textwidth}{ @{}X @{}r *{\\scorelistAttempts}{c}}\n\t\t\\textbf{\\scorelistFirstColCaption} &%\n\t\t\\textbf{\\scorelistSecondColCaption}%\n\t\t\\ifShortScoresheet{}{&\\attemptHeadings{\\scorelistAttempts}}\n\t\\\\\\hline\n\n\n\n\\BODY\n\n\n\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% calculate max. score, and bonuses %%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% base total score (accumulative) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\setcounter{currTestScoreTotal}{\\thecurrTestScore}\n\t% outstanding performance bonus %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\ifthenelse{\\equal{\\scorelistOutstanding}{true}}{%\n\t\t\\ifthenelse{ \\equal{\\thecurrOutstandingBonus}{0} }{%\n\t\t\t\\setcounter{currOutstandingBonus}{ \\thecurrTestScore*\\scorelistOutstandingPercentage/100 }\n\t\t}{}%\n\t\t\\setcounter{currTestScoreTotal}{%\n\t\t\t\\thecurrTestScoreTotal + \\thecurrOutstandingBonus}%\n\t}{}%\n\t% data recording bonus %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\ifthenelse{\\equal{\\scorelistDataRecording}{true}}{%\n\t\t\\ifthenelse{ \\equal{\\thecurrDataRecordingBonus}{0} }{%\n\t\t\t\\setcounter{currDataRecordingBonus}{ \\thecurrTestScore*\\scorelistDataRecordingPercentage/100 }%\n\t\t}{}%\n\t\t\\setcounter{currTestScoreTotal}{%\n\t\t\t\\thecurrTestScoreTotal + \\thecurrOutstandingBonus}%\n\t}{}%\n\t\\setcounter{currTestScoreTotalWithoutBonus}{ \\thecurrTestScore }\n\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% Special penalties & bonuses %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\ifthenelse{ \\equal{\\scorelistSpecialPenBonus}{true} }{\n\n\t\n\t\t\\scoreheading{Special Penalties \\& Bonuses}\n\n\t\t% not showing up penalty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\t\\penaltyitem{\\notattendingpenalty}{Not attending \\ifShortScoresheet{(see sec.~\\ref{rule:not_attending})}{}}\n\n\t\t% require signal for door opening %%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\t\\ifthenelse{ \\equal{\\scorelistStartButton}{true} }{\n\t\t\t\\penaltyitem{\\scorelistStartButtonPenalty}{Using alternative start signal \\ifShortScoresheet{(see sec.~\\ref{rule:start_signal})}{}}\n\t\t}{}\n\n\t\t% data recording bonus %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\t\\ifthenelse{%\n\t\t\t\\thecurrDataRecordingBonus>0 \\AND %\n\t\t\t\\equal{\\scorelistDataRecording}{true}%\n\t\t}{%\n\t\t\t\\bonusitem{\\thecurrDataRecordingBonus}{Contributing with recorded data ($\\frac{\\sum gathered~points}{max~points} \\times$) \\ifShortScoresheet{(see sec.~\\ref{rule:datarecording})}{}}%\n\t\t}{}%\n\n\t\t% outstanding performance bonus %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\t\\ifthenelse{%\n\t\t\t\\value{currOutstandingBonus}>0 \\AND %\n\t\t\t\\equal{\\scorelistOutstanding}{true}%\n\t\t}{%\n\t\t\t\\bonusitem{\\thecurrOutstandingBonus}{Outstanding performance~\\ifShortScoresheet{(see sec.~\\ref{rule:outstanding_performance})}{}}%\n\t\t}{}%\n\t\t%\n\n\t}{}\n\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t% Other Items %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\ifShortScoresheet{}{%\n\t\t\\scoreheading{Recordings}\n\t\t\\scoreitem{0}{Duration (limit: \\textbf{\\scorelistTimelimit{}:00} minutes)}\n\t\t\\scoreitem{0}{Restart after (sec)}\n\t}%\n\t\n\n\t% Total score %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\t\\\\[-1em]\\hline\n\t\\scorePerTry\n\t\\scoreTotal\n\n\t\\end{tabularx}\n}\n\\makeatother%\n\n\n%\n"
  },
  {
    "path": "setup/packages.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: packages.tex 385 2013-02-12 21:53:10Z holz $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: List of packages for the RoboCupAtHome rulebook\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% \\usepackage{soul}\n\n\\usepackage[utf8x]{inputenc}\n\\usepackage[english]{babel}\n\\usepackage{amsmath,amssymb,amsfonts}\n% \\usepackage[nice]{nicefrac}\n\\usepackage{siunitx}\n\\usepackage{graphicx}\n\\usepackage{multicol}\n\\usepackage{verbatim}\n\\usepackage{fancyhdr}\n\n% \\usepackage{color}\n\\usepackage{xcolor}\n% colors https://www.nature.com/articles/nmeth.1618 for colorblind\n\\definecolor{color1}{HTML}{009E73} % sky blue\n\\definecolor{color2}{HTML}{56B4E9} % bluish green\n\\definecolor{color3}{HTML}{E69F00} % orange\n\\definecolor{color4}{HTML}{D55E00} % vermillion\n\n\n\\usepackage{colortbl}\n% \\usepackage{epsfig}\n\\usepackage{makeidx} % This one causes scoresheets not to setle\n% \\usepackage{lscape}\n% \\usepackage{picinpar}\n\n\\usepackage{./styles/tweaklist}\n\n\\usepackage{enumerate}\n\\usepackage{paralist}\n\\usepackage{multirow}\n\\usepackage{hhline}\n\\usepackage{pgffor}\n% \\usepackage{array}\n\n\\usepackage{nameref}\n\\usepackage{varioref}\n\\usepackage{hyperref}\n\\usepackage[noabbrev,nameinlink]{cleveref}\n\\usepackage{booktabs}\n\\usepackage{tabularx}\n\\usepackage{xspace}\n\\usepackage{csquotes}\n\\usepackage[inline]{enumitem}\n\n%\\usepackage{times}\n%\\usepackage{helvet}\n%\\usepackage{courier}\n\n% \\usepackage{url}\n\\usepackage{caption}\n% \\usepackage{epstopdf}\n\\usepackage{subfig}\n\\usepackage{float}\n\\usepackage{wrapfig}\n% \\usepackage{xfrac}\n\n% \\usepackage[titletoc]{appendix}\n% \\usepackage{enumitem}\n% \\usepackage{mathtools}\n% \\usepackage{gensymb}\n\n\\usepackage[\ntype={CC},\nmodifier={by-sa},\nversion={4.0},\n]{doclicense}\n\n% Required by scoresheets\n\\usepackage{calc}\n\\usepackage{ifthen}\n\\usepackage{environ}\n\\usepackage{wasysym}\n\\usepackage{chngpage}\n\n\\usepackage{makecell}\n\\usepackage{diagbox}"
  },
  {
    "path": "setup/packages_scoresheets.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: packages_scoresheets.tex 385 2013-02-12 21:53:10\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: List of packages for the RoboCupAtHome rulebook\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\usepackage[utf8x]{inputenc}\n\\usepackage[english]{babel}\n\\usepackage{calc}\n\\usepackage{ifthen}\n\\usepackage{pgffor}\n\\usepackage{xspace}\n\\usepackage{environ}\n\\usepackage{wasysym}\n\\usepackage{tabularx}\n\\usepackage{multicol}\n\\usepackage{multirow}\n\n% Used by macros.tex\n\\usepackage{chngpage}\n\\usepackage{csquotes}\n\\usepackage{enumerate}\n\\usepackage{fancyhdr}\n\\usepackage{graphicx}\n\\usepackage{hyperref}\n\\usepackage{paralist}\n\n% Hack to avoid importing makeidx\n\\newcommand{\\see}{}"
  },
  {
    "path": "setup/styling.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%%\n%%          $Id: styling.tex 2019-01-08 09:00:00 kyordhel $\n%%    author(s): RoboCupAtHome Technical Committee(s)\n%%  description: Styling for the RoboCupAtHome rulebook\n%%\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\n\n%%% HEADINGS & PAGE STYLE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\pagestyle{fancy}\n\\renewcommand{\\chaptermark}[1]{\\markboth{\\chaptername\\ \\thechapter. \\ #1}{}}\n\\renewcommand{\\sectionmark}[1]{\\markright{\\thesection \\ #1}{}\\renewcommand{\\currentTest}{#1}}\n\\fancyhf{}\n\\fancyhead[LE,RO]{\\thepage}\n\\fancyhead[RE]{\\sffamily\\rightmark}\n\\fancyhead[LO]{\\sffamily\\leftmark}\n\\fancyfoot[C]{\\scriptsize \\sffamily \\footline{}}\n\\fancypagestyle{plain}{\n  \\fancyhf{}\n  \\fancyhead[LE,RO]{\\thepage}\n  \\fancyhead[RE]{\\sffamily\\rightmark}\n  \\fancyhead[LO]{\\sffamily\\leftmark}\n  \\fancyfoot[C]{\\scriptsize \\sffamily \\footline{}}\n  \\renewcommand{\\headrulewidth}{0.5 pt}\n}\n\\fancypagestyle{empty}{\n  \\fancyhf{}\n  \\fancyhead{}\n  \\fancyfoot[C]{\\scriptsize \\sffamily \\footline{}}\n  \\renewcommand{\\headrulewidth}{0 pt}\n}"
  },
  {
    "path": "styles/bar.sty",
    "content": "%       BAR.STY --- Style File zum Setzen von Balkendiagrammen\n%       Autor:  J. Bleser, E. Lang\n%       Hochschulrechenzentrum\n%       Technische Hochschule Darmstadt\n%       !!!  Dieses Style-File ist urheberrechtlich geschuetzt  !!!\n%       !!!  Aenderungen nur mit Zustimmung der Autoren         !!!\n\\typeout{Option BAR, Version 1.0  Sep. 92, J.Bleser, TH Darmstadt, HRZ}\n\\typeout{bug fix for CTAN April 1994 (SPQR, for David Carlisle)}\n\\newcount\\breite        \\newcount\\hoehe         \\newcount\\tiefe\n\\newcount\\lhoehe        \\newcount\\anzbar        \\newcount\\hbarI\n\\newcount\\xpos          \\newcount\\lxpos         \\newcount\\halfbreite\n\\newcount\\ypos          \\newcount\\lypos\n\\newcount\\tmpa          \\newcount\\tmpb         \\newcount\\tmpc\n\\newcount\\tmpd          \\newcount\\tmpe\n\\newcount\\xmin          \\newcount\\xmax          \\newcount\\xstep\n\\newcount\\deltax        \\newcount\\yhoehe        %\n\\newcount\\ymin          \\newcount\\ymax          \\newcount\\ystep\n\\newcount\\yminII        \\newcount\\ymaxII        \\newcount\\deltay\n\\newcount\\ymove         \\newcount\\xmove         \\newcount\\inter\n\\newcount\\exact         \\newcount\\xexact\n\\newdimen\\dtmpa         \\newdimen\\dtmpb\n\\newdimen\\dmin          \\newdimen\\dmax          \\newdimen\\dstep\n\\newdimen\\dxmin         \\newdimen\\dxmax         \\newdimen\\dxstep\n\\newdimen\\faktor        \\newdimen\\dinter\n\\newbox\\mybox           \\newbox\\xbox            \\newbox\\ybox\n\\newif\\if@xaxis         \\newif\\if@yaxis\n\\newif\\if@hlineon\n\\newif\\iffaktor\\faktorfalse\n\n\n\\def\\setnumberpos#1{\\def\\my@number{\\expandafter\\csname my@#1\\endcsname}}\n\\def\\my@number{\\my@outside}\n\n\n\\def\\m@nth{month}\\def\\d@y{day}\n\\def\\setxvaluetyp#1{\\gdef\\x@value{#1}%\n  \\ifx\\x@value\\m@nth\\let\\myx@value\\Monat@%\n  \\else\\ifx\\x@value\\d@y\\let\\myx@value\\Tag@%\n  \\else\\let\\myx@value\\Zahl@n%\n  \\fi%\n  \\fi%\n}\n\n\n\\def\\solid{solid}\\gdef\\l@style{\\relax}\n\\def\\setlinestyle#1{\\gdef\\l@style{#1}%\n  \\ifx\\l@style\\solid\\let\\my@lstyle=\\mylinebox%\n  \\else\\let\\my@lstyle=\\mydotbox%\n  \\fi%\n}\n\n\n\\def\\setwidth#1{\\global\\breite=#1%\n  \\ifdim\\dinter>0pt\\inter\\dinter\\multiply\\inter\\breite\\divide\\inter65536\\fi%\n  \\halfbreite\\breite\\divide\\halfbreite2%\n}\n\n\n\\def\\setdepth#1{\\ifnum#1<10\\global\\tiefe=0\\else\\global\\tiefe=#1\\fi}\n\n\n\\def\\setstretch#1{\\global\\faktor=#1pt\\faktortrue}\n\n\n\\def\\setstyle#1{\\def\\my@style{#1}}\n\\def\\my@style{\\tt}\n\n\n\\def\\setprecision#1{\\global\\exact=#1}\n\\exact=0\n\n\n\\def\\sethspace#1{\\dinter#1pt\\dtmpa#1pt\\multiply\\dtmpa\\breite%\n  \\inter\\dtmpa\\divide\\inter65536%\n}\n\n\n\\def\\setxname{\\@ifnextchar [{\\isetxname}{\\isetxname[]}}\n\\def\\isetxname[#1]#2{\\global\\setbox\\xbox=\\hbox{\\makebox(0,0)[#1]{#2}}}\n\n\n\\def\\setyname{\\@ifnextchar [{\\isetyname}{\\isetyname[l]}}\n\\def\\isetyname[#1]#2{\\global\\setbox\\ybox=\\hbox{\\makebox(0,0)[#1]{#2}}}\n\n\n\\newcount\\vorz       %\n\\def\\setyaxis{\\@ifnextchar [{\\i@setyaxis}{\\i@setyaxis[0]}}\n\\def\\i@setyaxis[#1]#2#3#4{%\n \\dmin#2\\faktor\\ymin\\dmin\\divide\\ymin by65536%\n \\dmax#3\\faktor\\ymax\\dmax\\divide\\ymax by65536%\n \\ifnum\\ymin>\\ymax\\vorz-1\\else\\vorz1\\fi%\n \\ifnum\\ymin>0\\ymin-\\ymin\\fi%\n \\ifnum\\ymax<0\\ymax-\\ymax\\fi%\n \\dstep#4\\faktor\\ystep\\dstep\\divide\\ystep by65536%\n \\ifnum\\ystep<0\\ystep-\\ystep\\fi%\n \\@yaxistrue%\n \\setbox0=\\hbox{\\the\\ymax}\\setbox1=\\hbox{\\the\\ymin}\n \\ifdim\\wd0>\\wd1\\xmove=\\wd0\\else\\xmove=\\wd1\\fi%\n \\divide\\xmove by65536\\advance\\xmove by4%\n \\global\\xmove=\\the\\xmove%\n \\deltay\\ymax\\advance\\deltay-\\ymin\\tmpb\\deltay%\n \\divide\\deltay\\ystep%\n \\advance\\deltay by1%\n \\dmin=#2pt\\dstep=#4pt%\n \\thicklines%\n \\multiput(0,\\ymin)(0,\\ystep){\\deltay}{\\line(-1,0){4}%\n   \\put(-6,0){\\makebox(0,0)[r]{{\\my@style\\dimIIreal\\dmin}}%\n   \\global\\advance\\dmin by\\dstep}}%\n \\dtmpa=#1\\faktor\\ymove\\dtmpa\\divide\\ymove by65536\\ifnum\\ymove<0\\ymove=0\\fi%\n \\tmpa\\ymin\\advance\\tmpa by-\\ymove\\advance\\tmpb by\\ymove%\n \\global\\yhoehe\\tmpb            %\n \\put(0,\\tmpa){\\line(0,1){\\tmpb}}%\n \\thinlines%\n}\n\n\n\\def\\setxaxis#1#2#3{%\n \\dxmin#1pt\\dxmax#2pt\\dxstep#3pt\\global\\xexact\\exact%\n \\@xaxistrue\\let\\mytmp@style=\\my@style%\n}\n\n\n\\def\\hlineon{\\global\\@hlineontrue}\n\n\n\\def\\bar#1#2{\\@ifnextchar [{\\@bar{#1}{#2}}{\\@bar{#1}{#2}[]}}\n\\def\\@bar#1#2[#3]{%\n \\dtmpa#1\\faktor\\hoehe\\dtmpa\\divide\\hoehe by65536%\n \\multiply\\hoehe\\vorz%\n \\ypos0\\def\\@user{#1}%\n \\ifnum\\hoehe<\\yminII\\yminII=\\hoehe\\fi\\ifnum\\hoehe>\\ymaxII\\ymaxII=\\hoehe\\fi%\n \\ifnum\\anzbar=0\\hbarI=\\hoehe\\fi%\n \\ifnum#2>-1%\n   \\ifnum\\hoehe<0\\ypos=\\hoehe\\tmpa=-\\hoehe\\else\\tmpa=\\hoehe\\fi%\n   \\ifnum #2=1\\put(\\xpos,\\ypos){\\framebox(\\breite,\\tmpa){}}\\fi%\n   \\ifnum #2=2\\put(\\xpos,\\ypos){\\framebox(\\breite,\\tmpa){}}%\n     \\tmpc=\\breite\\divide\\tmpc by3\\tmpb=\\xpos\\advance\\tmpb by1%\n     \\multiput(\\tmpb,\\ypos)(3,0){\\tmpc}{\\line(0,1){\\tmpa}}%\n   \\fi\n   \\ifnum #2=3\\put(\\xpos,\\ypos){\\framebox(\\breite,\\tmpa){}}%\n     \\tmpc=\\tmpa\\divide\\tmpc by3\\tmpb=\\ypos\\advance\\tmpb by1%\n     \\multiput(\\xpos,\\tmpb)(0,3){\\tmpc}{\\line(1,0){\\breite}}%\n   \\fi\n   \\ifnum #2=4\\put(\\xpos,\\ypos){\\framebox(\\breite,\\tmpa){}}%\n     \\tmpc=\\breite\\divide\\tmpc by3\\tmpb=\\xpos\\advance\\tmpb by1%\n     \\multiput(\\tmpb,\\ypos)(3,0){\\tmpc}{\\line(0,1){\\tmpa}}%\n     \\tmpc=\\tmpa\\divide\\tmpc by3\\tmpb=\\ypos\\advance\\tmpb by1%\n     \\multiput(\\xpos,\\tmpb)(0,3){\\tmpc}{\\line(1,0){\\breite}}%\n   \\fi\n   \\ifnum #2=5\\put(\\xpos,\\ypos){\\framebox(\\breite,\\tmpa){}}%\n     \\tmpc=\\breite\\divide\\tmpc by4\\tmpb=\\xpos\\advance\\tmpb by1%\n     \\multiput(\\tmpb,\\ypos)(4,0){\\tmpc}{\\rule{2pt}{\\tmpa pt}}%\n     \\tmpc=\\tmpa\\divide\\tmpc by4\\tmpb=\\ypos\\advance\\tmpb by1%\n     \\multiput(\\xpos,\\tmpb)(0,4){\\tmpc}{\\rule{\\breite pt}{2pt}}%\n   \\fi\n   \\ifnum #2=6\\put(\\xpos,\\ypos){\\framebox(\\breite,\\tmpa){}}%\n     \\tmpb=\\breite\\divide\\tmpb by-2%\n     \\ifnum\\hoehe>0\\advance\\tmpb by\\tmpa\\fi%\n     \\tmpc=\\tmpa\\divide\\tmpc by4%\n     \\multiput(\\xpos,\\ypos)(0,4){\\tmpc}{%\n       \\ifdim\\@ydim<\\tmpb pt\\line(2,1){\\breite}%\n       \\else\\tmpd=\\@ydim\\divide\\tmpd by65536%\n         \\ifnum\\tmpd<0\\else\\advance\\tmpd by-\\tmpa\\fi%\n         \\multiply\\tmpd by-2\\line(2,1){\\tmpd}%\n       \\fi%\n     }%\n     \\tmpb=\\breite\\divide\\tmpb by8\\tmpc=\\breite\\advance\\tmpc by-8%\n     \\tmpd=\\tmpa\\multiply\\tmpd 2\\advance\\xpos by 8%\n     \\multiput(\\xpos,\\ypos)(8,0){\\tmpb}{%\n       \\ifnum\\tmpc<\\tmpd\\line(2,1){\\tmpc}\\else\\line(2,1){\\tmpd}\\fi%\n       \\global\\advance\\tmpc by-8%\n     }%\n     \\advance\\xpos by -8%\n   \\fi%\n   \\ifnum #2=7\\put(\\xpos,\\ypos){\\framebox(\\breite,\\tmpa){}}%\n     \\tmpb=\\breite\\divide\\tmpb by2%\n     \\ifnum\\hoehe>0\\ypos=\\hoehe\\else\\ypos=0\\advance\\tmpb by-\\tmpa\\fi%\n     \\tmpc=\\tmpa\\divide\\tmpc by4%\n     \\multiput(\\xpos,\\ypos)(0,-4){\\tmpc}{%\n       \\ifdim\\@ydim<\\tmpb pt\\tmpd=\\@ydim\\divide\\tmpd by65536%\n         \\ifnum\\tmpd<0\\advance\\tmpd by\\tmpa\\fi%\n         \\multiply\\tmpd by2\\line(2,-1){\\tmpd}%\n       \\else\\line(2,-1){\\breite}%\n       \\fi%\n     }%\n     \\tmpb=\\breite\\divide\\tmpb by8\\advance\\tmpb by 1\\tmpc=\\breite%\n     \\tmpd=\\tmpa\\multiply\\tmpd 2%\n     \\multiput(\\xpos,\\ypos)(8,0){\\tmpb}{%\n       \\ifnum\\tmpc>\\tmpd\\line(2,-1){\\tmpd}\\else\\line(2,-1){\\tmpc}\\fi%\n       \\global\\advance\\tmpc by-8%\n     }%\n   \\fi%\n   \\ifnum #2=8\\put(\\xpos,\\ypos){\\rule{\\breite pt}{\\tmpa pt}}\\fi\n   \\my@number%\n \\fi%\n \\tmpc-\\baselineskip\\divide\\tmpc 65536%\n \\divide\\tmpc 2%\n \\put(\\xpos,\\ypos){\\put(0,\\tmpc){\\makebox(\\breite,0){#3}}}%\n \\ifnum\\anzbar>0\n  \\ifnum\\tiefe>0\n    \\ifnum\\lhoehe<\\hoehe\n        \\ifnum\\lhoehe>0\\machDachI(\\lxpos,\\lhoehe)\n        \\else\\machDachI(\\lxpos,0)\n        \\fi\n    \\else\n        \\ifnum\\lhoehe>0\\machDachII(\\lxpos,\\lhoehe)\n        \\else\\machDachII(\\lxpos,0)\n        \\fi\n    \\fi%\n  \\fi%\n  \\if@hlineon\\machHLines\\fi%\n \\fi%\n \\lxpos\\xpos\\advance\\xpos\\breite\\advance\\xpos\\inter%\n \\advance\\anzbar1\\lhoehe\\hoehe%\n}\n\n\n\\newenvironment{barenv}%\n{\\par%\n \\xpos0\\breite40\\halfbreite20\\tiefe0\\lhoehe0\\anzbar0%\n \\yminII0\\ymaxII0\\inter0\\dinter0pt\\vorz1%\n \\exact0\\ymove0\\xmove0\\unitlength1pt\\@xaxisfalse\\@yaxisfalse\\@hlineonfalse%\n \\let\\my@lstyle=\\mydotbox\\let\\myx@value=\\Zahl@n%\n \\faktor1pt%\n \\def\\vline{\\my@vline}%\n \\def\\hspace{\\my@hspace}%\n \\setbox\\@tempboxa=\\hbox\\bgroup%\n   \\begin{picture}(0,0)\\thinlines%\n}%\n{%\n   \\advance\\xpos by-\\inter%\n   \\ifnum\\tiefe>0\n     \\put(\\xpos,0){\\line(1,1){\\tiefe}}%\n%%%DPC CHANGE\n%     \\put(\\xpos,\\hoehe){\\line(1,1){\\tiefe}\\put(0,\\tiefe){\\line(0,1){-\\hoehe}}}%\n     \\put(\\xpos,\\hoehe){\\line(1,1){\\tiefe}%\n     \\put(0,\\tiefe){\\ifnum\\hoehe<\\z@\\line(0,1){-\\hoehe}\\fi}}%\n%%%END DPC CHANGE\n   \\fi%\n   \\deltax=\\lhoehe\\bar{0}{-1}\\lhoehe=\\deltax%\n   \\thicklines%\n   \\if@yaxis\\else\\tmpa=\\ymaxII\\advance\\tmpa by-\\yminII\\advance\\tmpa by\\tiefe%\n     \\put(0,\\yminII){\\line(0,1){\\tmpa}}%\n   \\fi%\n   \\if@xaxis%\n     \\advance\\ymin by-\\ymove%\n     \\tmpe=\\exact\\global\\exact=\\xexact%\n     \\put(0,\\ymin){\\line(1,0){\\lxpos}}%\n     \\xstep=\\dxstep\\divide\\xstep by65536%\n     \\dtmpa=\\dxmax\\advance\\dtmpa by-\\dxmin%\n     \\deltax=\\dtmpa\\divide\\deltax by65536\\divide\\deltax by\\xstep%\n     \\advance\\deltax by1%\n     \\tmpa=\\breite\\divide\\tmpa by2%\n     \\tmpb=\\breite\\advance\\tmpb by\\inter%\n     \\multiput(\\tmpa,\\ymin)(\\tmpb,0){\\deltax}{%\n       \\line(0,-1){4}\\myx@value\\dxmin%\n       \\global\\advance\\dxmin by\\dxstep}%\n     \\global\\exact=\\tmpe%\n   \\fi%\n   \\put(0,0){\\line(1,0){\\lxpos}}%\n   \\if@xaxis\\tmpa=-20\\else\\tmpa=-10\\fi%\n   \\ifvoid\\xbox\\else\\put(\\lxpos,\\ymin){\\put(0,\\tmpa){\\box\\xbox}}\\fi%\n   \\tmpa=\\ymax\\advance\\tmpa by6\\advance\\tmpa by\\tiefe%\n   \\ifvoid\\ybox\\else\\put(\\tiefe,\\tmpa){\\box\\ybox}\\fi%\n   \\if@hlineon%\n     \\ifnum\\lhoehe<0%\n       \\tmpb=-\\ymin\\advance\\tmpb by\\lhoehe%\n       \\advance\\tmpb by\\ymove\\divide\\tmpb by\\ystep%\n       \\tmpa=\\ymin\\advance\\tmpa by\\tiefe\\advance\\tmpa by\\ymove%\n       \\multiput(\\lxpos,\\tmpa)(0,\\ystep){\\tmpb}{%\n         \\ifdim\\@ydim<\\lhoehe pt%\n         \\else\\ypos=-\\@ydim\\divide\\ypos by65536%\n              \\advance\\ypos by\\lhoehe\\advance\\ypos by\\tiefe%\n              \\tmpe=\\tiefe\\advance\\tmpe by-\\ypos%\n              \\ifnum\\ypos>0\\put(\\tmpe,0){\\thinlines\\my@lstyle\\ypos}\\fi%\n         \\fi%\n       }%\n     \\fi%\n     \\put(0,\\ymin){\\line(1,0){\\lxpos}}%\n     \\tmpa=\\ymax\\advance\\tmpa by-\\ymin%\n     \\ifnum\\tiefe>0\n       \\put(0,\\ymax){\\line(1,1){\\tiefe}\\put(0,\\tiefe){\\line(1,0){\\lxpos}%\n         \\line(0,-1){\\tmpa}\\put(0,-\\tmpa){\\line(-1,-1){\\tiefe}}}}%\n     \\else\\put(0,\\ymax){\\line(1,0){\\lxpos}\\line(0,-1){\\tmpa}}%\n     \\fi%\n     \\thinlines%\n     \\ifnum\\hbarI<0\\tmpa=-\\ymin\\advance\\tmpa by\\hbarI\\advance\\tmpa by-\\tiefe%\n       \\put(\\tiefe,\\tiefe){\\line(0,1){\\ymax}}%\n       \\put(\\tiefe,\\hbarI){\\line(0,-1){\\tmpa}}%\n     \\else\\tmpa=\\ymax\\advance\\tmpa by-\\hbarI\\advance\\ymax by\\tiefe%\n       \\put(\\tiefe,\\ymax){\\line(0,-1){\\tmpa}}%\n       \\ifnum\\ymin<0\\tmpa=\\ymin%\n         \\advance\\tmpa by\\tiefe\\put(\\tiefe,\\tmpa){\\line(0,1){-\\tmpa}}%\n       \\fi%\n     \\fi%\n     \\ifnum\\hbarI<0\\tmpa=\\hbarI\\tmpb=0\\else\\tmpa=0\\tmpb=\\hbarI\\fi%\n     \\tmpc=-\\ymin\\advance\\tmpc \\tmpa%\n     \\ifnum\\tmpc>\\tiefe\\tmpc=\\tiefe\\fi\n     \\ifnum\\ymove>0\\put(0,\\ymin){\\line(1,1){\\tmpc}}\\fi%\n     \\advance\\ymin by\\ymove%\n     \\multiput(0,\\ymin)(0,\\ystep){\\deltay}{%\n       \\ifdim\\@ydim<\\tmpa pt%\n         \\tmpc=-\\@ydim\\divide\\tmpc by65536\\advance\\tmpc by\\tmpa%\n         \\ifnum\\tmpc>\\tiefe\\tmpc=\\tiefe\\fi%\n         \\ifx\\l@style\\solid\\line(1,1){\\tmpc}%\n         \\else\\divide\\tmpc by 3\\multiput(0,0)(3,3){\\tmpc}{.}%\n         \\fi%\n       \\else\\ifdim\\@ydim>\\tmpb pt%\n              \\ifx\\l@style\\solid\\line(1,1){\\tiefe}%\n              \\else\\tmpe=\\tiefe\\divide\\tmpe by3\\multiput(0,0)(3,3){\\tmpe}{.}%\n              \\fi%\n            \\fi%\n       \\fi%\n     }%\n   \\fi%\n   \\thinlines%\n   \\ifnum\\ymaxII<\\ymax\\global\\ymaxII=\\ymax\\else\\global\\ymaxII=\\ymaxII\\fi%\n   \\ifnum\\yminII>\\ymin\\global\\yminII=\\ymin\\else\\global\\yminII=\\yminII\\fi%\n   \\global\\advance\\yminII by-\\ymove%\n   \\global\\xpos=\\the\\xpos\\global\\advance\\xpos by20%\n   \\end{picture}\n \\egroup%\n \\global\\advance\\ymaxII by\\tiefe\\advance\\ymaxII by-\\yminII%\n \\advance\\xpos by-\\breite%\n \\begin{picture}(\\the\\xpos,\\the\\ymaxII)\n  \\put(\\xmove,-\\yminII){\\box\\@tempboxa}\n \\end{picture}\n \\faktorfalse\n}\n\n\n\\def\\legend#1#2{%\n \\begin{picture}(20,10)\n   \\put(0,0){\\framebox(20,10){}}\n   \\ifnum #1=2\\multiput(1,0)(3,0){7}{\\line(0,1){10}}\\fi%\n   \\ifnum #1=3\\multiput(0,1)(0,3){3}{\\line(1,0){20}}\\fi%\n   \\ifnum #1=4\\multiput(1,0)(3,0){7}{\\line(0,1){10}}%\n     \\multiput(0,1)(0,3){3}{\\line(1,0){20}}%\n   \\fi%\n   \\ifnum #1=5\\multiput(1,0)(4,0){5}{\\rule{2pt}{10pt}}%\n     \\multiput(0,2)(0,4){2}{\\rule{20pt}{2pt}}%\n   \\fi%\n   \\ifnum #1=6%\n    \\put(0,0){\\line(2,1){20}}\\put(0,4){\\line(2,1){13}}\\put(8,0){\\line(2,1){12}}%\n   \\fi%\n   \\ifnum #1=7%\n    \\put(0,10){\\line(2,-1){20}}\\put(0,6){\\line(2,-1){12}}%\n    \\put(8,10){\\line(2,-1){12}}%\n   \\fi%\n   \\ifnum #1=8\\put(0,0){\\rule{20\\unitlength}{10\\unitlength}}\\fi%\n \\end{picture}%\n \\quad#2%\n}\n\n\n\n\\def\\my@vline{%\n  \\tmpa\\ymin\\advance\\tmpa-\\ymove%\n  \\put(\\xpos,\\tmpa){\\line(0,1){\\yhoehe}}\n}\n\n\n\\def\\my@hspace#1{%\n  \\dtmpa#1pt\\multiply\\dtmpa\\breite%\n  \\tmpa\\dtmpa\\divide\\tmpa65536%\n  \\global\\advance\\xpos\\tmpa\n}\n\n\n\n\\def\\mydotbox#1{\\tmpe=#1\\advance\\tmpe by2\\lower0.8pt\\hbox to\\tmpe pt{\\dotfill}}\n\n\n\\def\\mylinebox#1{\\line(1,0){#1}}\n\n\n%  Parameter:  umzuwandelnde Dimension.\n\\def\\dimIIreal#1{%\n  \\dtmpa=#1\\tmpa=\\dtmpa\\divide\\tmpa by65536\\advance\\dtmpa by-\\tmpa pt%\n  \\the\\tmpa\\ifnum\\exact>0,\\fi%\n  \\tmpb=\\exact%\n  \\@whilenum\\tmpb>0\\do{%\n    \\advance\\dtmpa by0.05pt\\dtmpa=10\\dtmpa\\advance\\dtmpa by-0.5pt%\n    \\tmpa=\\dtmpa\\divide\\tmpa by65536\\advance\\dtmpa by-\\tmpa pt%\n    \\the\\tmpa\\advance\\tmpb by-1}%\n}\n\n\n\\def\\machDachI(#1,#2){%\n \\tmpa=\\hoehe\\advance\\tmpa by-#2\\tmpd=\\tmpa\\ifnum\\tmpd<0\\tmpd=-\\tmpd\\fi%\n \\ifnum\\hoehe<0\\machDachII(#1,#2)%\n \\else\n   \\tmpb=\\breite\\advance\\tmpb by-\\tiefe%\n   \\advance\\tmpb by\\inter%\n   \\ifnum\\tmpa<\\tiefe\\advance\\tmpa by-\\tiefe\\advance\\tmpb by-\\tmpa\\fi%\n   \\ifnum\\tmpb>\\breite\\tmpb=\\breite\\fi%\n   \\ifnum\\breite<\\tiefe\\put(#1,#2){\\line(1,1){\\breite}}%\n   \\else\\put(#1,#2){\\line(1,1){\\tiefe}\\put(0,\\tiefe){\\line(1,0){\\tmpb}}}%\n   \\fi%\n \\fi%\n \\tmpa=#1\\advance\\tmpa by\\breite%\n \\ifnum\\inter>0%\n   \\ifnum\\tmpd<\\inter\\tmpb=\\tiefe\\else\\tmpb=\\inter\\fi%\n   \\put(\\tmpa,\\lhoehe){\\line(1,1){\\tmpb}}%\n \\fi%\n \\ifnum\\lhoehe<0\\put(\\tmpa,\\lhoehe){%\n   \\ifnum\\hoehe<0\\tmpb=-\\lhoehe\\advance\\tmpb by\\hoehe%\n     \\ifnum\\tmpb>\\tiefe\\tmpa=\\tiefe\\else\\tmpa=\\tmpb\\tmpb=0\\fi%\n     \\line(1,1){\\tmpa}\\put(0,\\tmpa){\\advance\\tmpb by-\\tiefe\\line(0,1){\\tmpb}}%\n   \\else\\tmpa=-\\lhoehe\\advance\\tmpa by-\\tiefe%\n     \\ifnum-\\lhoehe<\\tiefe\\tmpb=-\\lhoehe\\else\\tmpb=\\tiefe\\fi%\n     \\line(1,1){\\tmpb}\\put(0,\\tmpb){\\line(0,1){\\tmpa}}%\n   \\fi%\n  }%\n \\fi\n}\n\n\n\\def\\machDachII(#1,#2){%\n \\tmpa=#1\\advance\\tmpa by\\breite\\tmpb=0%\n \\ifnum\\hoehe>0\\ifnum\\lhoehe<0\\tmpb=\\lhoehe\\fi\n   \\put(\\tmpa,\\tmpb){\\line(1,1){\\inter}}\n \\else\\put(\\tmpa,0){\\line(1,1){\\tiefe}}\n \\fi\n \\ifnum\\hoehe<0\\tmpa=\\lhoehe\\else\\tmpa=\\lhoehe\\advance\\tmpa by-\\hoehe\\fi\n \\ifnum\\tmpa<0\\tmpa=\\inter\\else\\advance\\tmpa by\\inter\\fi%\n \\put(#1,#2){\\line(1,1){\\tiefe}\\put(0,\\tiefe){\\line(1,0){\\breite}%\n   \\line(0,-1){\\tmpa}\\line(-1,-1){\\tiefe}}}%\n}\n\n\n\\def\\machHLinesI{%\n \\tmpc=\\breite\\advance\\tmpc by2%\n \\setbox\\mybox=\\hbox to\\tmpc pt{\\dotfill}\n \\multiput(\\lxpos,\\ymin)(0,\\ystep){\\deltay}{%\n  \\ifdim\\@ydim<\\tmpa pt\\lower0.8pt\\copy\\mybox\\fi%\n  \\ifdim\\@ydim>\\tmpb pt\\lower0.8pt\\copy\\mybox\\fi%\n }\n}\n\n\n\\def\\machHLinesII{%\n \\multiput(\\lxpos,\\lypos)(0,\\ystep){\\deltay}{%\n  \\ifdim\\@ydim<\\tmpa pt%\n    \\ifdim\\@ydim>\\tmpc pt\\ypos=\\breite\\advance\\ypos by-\\tiefe%\n    \\else\\ypos=\\breite%\n    \\fi%\n    \\my@lstyle\\ypos\n  \\else%\n    \\ifdim\\@ydim>\\tmpc pt%\n    \\else%\n       \\ypos=-\\@ydim\\divide\\ypos by65536%\n       \\advance\\ypos by\\lhoehe\\advance\\ypos by\\tiefe%\n       \\tmpe=\\breite\\advance\\tmpe by-\\ypos%\n       \\ifnum\\ypos>0\\ifnum\\tmpe>0\\put(\\tmpe,0){\\my@lstyle\\ypos}\\fi\\fi%\n    \\fi%\n  \\fi%\n  \\ifdim\\@ydim>\\tmpb pt%\n   \\ypos=\\breite\\advance\\ypos by-\\tiefe%\n   \\ifdim\\@ydim>\\tmpd pt\\ypos=\\breite%\n   \\else\\ifdim\\@ydim<\\hoehe pt%\n        \\else\\tmpe=\\@ydim\\divide\\tmpe by65536\\advance\\tmpe by-\\hoehe%\n          \\advance\\ypos by\\tmpe%\n        \\fi%\n   \\fi%\n   \\my@lstyle\\ypos\n  \\fi%\n }%\n\\ifnum\\ymove>0%\n  \\tmpb=\\ymin\\advance\\tmpb by-\\ymove\\advance\\tmpb by\\tiefe%\n  \\ifnum\\lhoehe>\\tmpb\\ypos=\\breite%\n    \\ifnum\\hoehe<\\tmpb\\advance\\ypos by-\\tiefe\\fi%\n    \\put(\\lxpos,\\tmpb){\\line(1,0){\\ypos}}\n  \\fi%\n\\fi%\n}\n\n\n\\def\\machHLines{%\n \\tmpe=\\baselineskip\\divide\\tmpe by65536\\advance\\tmpe by3%\n \\ifnum\\lhoehe<0\\tmpa=\\lhoehe\\tmpb=0\\else\\tmpa=0\\tmpb=\\lhoehe\\fi%\n \\ifnum\\hoehe<0\\tmpc=\\hoehe\\tmpd=0\\else\\tmpc=0\\tmpd=\\hoehe\\fi%\n \\advance\\tmpb by\\tiefe\\advance\\tmpd by\\tiefe%\n \\advance\\lxpos by\\tiefe%\n \\lypos=\\ymin\\advance\\lypos by\\tiefe%\n \\machHLinesII%\n}\n\n\n\\def\\@user{}\n\\def\\my@empty{}\n\\def\\my@inside{%\n \\ifnum\\hoehe<0\\put(\\xpos,\\hoehe){\\makebox(\\breite,\\tmpa){{\\my@style\\@user}}}%\n \\else\\put(\\xpos,0){\\makebox(\\breite,\\tmpa){{\\my@style\\@user}}}%\n \\fi%\n}\n\\def\\my@outside{%\n  \\tmpa=\\hoehe%\n  \\ifnum\\hoehe<0\\advance\\tmpa by-6\\else\\advance\\tmpa by\\tiefe\\advance\\tmpa by6%\n  \\fi%\n  \\tmpb=\\breite\\divide\\tmpb by2\\advance\\tmpb by\\xpos%\n  \\ifnum\\hoehe>0\\advance\\tmpb by\\tiefe\\fi%\n  \\put(\\tmpb,\\tmpa){\\makebox(0,0){{\\my@style\\@user}}}%\n}\n\\def\\my@up{%\n  \\ifnum\\hoehe>0\\tmpa=\\hoehe\\advance\\tmpa by\\tiefe\\advance\\tmpa by8%\n  \\else\\tmpa=\\tiefe\\advance\\tmpa by8%\n  \\fi%\n  \\tmpb=\\breite\\divide\\tmpb by2\\advance\\tmpb by\\xpos\\advance\\tmpb by\\tiefe%\n  \\put(\\tmpb,\\tmpa){\\makebox(0,0){{\\my@style\\@user}}}%\n}\n\\def\\my@down{%\n   \\ifnum\\hoehe>0\\tmpa=-6\\else\\tmpa=\\hoehe\\advance\\tmpa by-6\\fi%\n   \\tmpb=\\breite\\divide\\tmpb by2\\advance\\tmpb by\\xpos%\n   \\put(\\tmpb,\\tmpa){\\makebox(0,0){{\\my@style\\@user}}}%\n}\n\\def\\my@axis{%\n   \\ifnum\\hoehe>0\\tmpa=-6\\else\\tmpa=6\\fi%\n   \\tmpb=\\breite\\divide\\tmpb by2\\advance\\tmpb by\\xpos%\n   \\put(\\tmpb,\\tmpa){\\makebox(0,0){{\\my@style\\@user}}}%\n}\n\n\n\\def\\Monat@#1{%\n \\tmpd=#1\\divide\\tmpd by65536\\tmpd=\\the\\tmpd%\n \\tmpc=\\tmpd\\divide\\tmpc by12\\multiply\\tmpc by12\\advance\\tmpd -\\tmpc%\n \\put(0,-10){\\makebox(0,0){{\\mytmp@style%\n   \\ifcase\\tmpd Dez\\or Jan\\or Feb\\or M\\\"ar\\or Apr\\or Mai\\or Jun\\or Jul%\n    \\or Aug\\or Sep\\or Okt\\or Nov%\n   \\fi%\n }}}%\n}\n\n\n\\def\\Tag@#1{%\n \\tmpd=#1\\divide\\tmpd by65536\\tmpd=\\the\\tmpd%\n \\tmpc=\\tmpd\\divide\\tmpc by7\\multiply\\tmpc by7\\advance\\tmpd -\\tmpc%\n \\put(0,-10){\\makebox(0,0){{\\mytmp@style%\n   \\ifcase\\tmpd Son\\or Mon\\or Die\\or Mit\\or Don\\or Fre\\or Sam\\fi%\n }}}%\n}\n\n\n\\def\\Zahl@n#1{%\n \\dtmpa=#1%\n \\put(0,-10){\\makebox(0,0){{\\mytmp@style\\dimIIreal\\dxmin}}}%\n}\n\\endinput\n"
  },
  {
    "path": "styles/tweaklist.sty",
    "content": "\\def\\enumhook{}\n\\def\\enumhooki{}\n\\def\\enumhookii{}\n\\def\\enumhookiii{}\n\\def\\enumhookiv{}\n\\def\\itemhook{}\n\\def\\itemhooki{}\n\\def\\itemhookii{}\n\\def\\itemhookiii{}\n\\def\\itemhookiv{}\n\\def\\descripthook{}\n\\def\\enumerate{%\n  \\ifnum \\@enumdepth >\\thr@@\\@toodeep\\else\n    \\advance\\@enumdepth\\@ne\n    \\edef\\@enumctr{enum\\romannumeral\\the\\@enumdepth}%\n      \\expandafter\n      \\list\n        \\csname label\\@enumctr\\endcsname\n        {\\usecounter\\@enumctr\\def\\makelabel##1{\\hss\\llap{##1}}%\n          \\enumhook \\csname enumhook\\romannumeral\\the\\@enumdepth\\endcsname}%\n  \\fi}\n\\def\\itemize{%\n  \\ifnum \\@itemdepth >\\thr@@\\@toodeep\\else\n    \\advance\\@itemdepth\\@ne\n    \\edef\\@itemitem{labelitem\\romannumeral\\the\\@itemdepth}%\n    \\expandafter\n    \\list\n      \\csname\\@itemitem\\endcsname\n      {\\def\\makelabel##1{\\hss\\llap{##1}}%\n        \\itemhook \\csname itemhook\\romannumeral\\the\\@itemdepth\\endcsname}%\n  \\fi}\n\\renewenvironment{description}\n                 {\\list{}{\\labelwidth\\z@ \\itemindent-\\leftmargin\n                          \\let\\makelabel\\descriptionlabel\\descripthook}}\n                 {\\endlist}\n\n"
  },
  {
    "path": "tasks/DoingLaundry.tex",
    "content": "\\section{Doing Laundry Challenge}\\label{test:doing-laundry}\nThe robot assists with laundry by retrieving clothes from a washing machine and folding them neatly on a table. This test evaluates deformable object manipulation, appliance interaction, and task sequencing.\\\\\n\n\\noindent \\textbf{Main goal:} Transport clothes to a table, and fold them.\\\\\n\n\\noindent \\textbf{Optional goals:}\n\\begin{enumerate}[nosep]\n    \\item Opening the washing machine door\n    \\item Retrieving clothes from inside the washing machine\n    \\item Using a laundry basket for transportation\n    \\item Folding multiple pieces of clothing and stacking them\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Deformable object manipulation}, \\emph{bimanual grasping}.\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Setup\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Setup}\n\\begin{itemize}\n    \\item \\textbf{Locations:}\n        \\begin{itemize}\n            \\item \\textbf{Start location:} Before the test, the robot waits outside the \\Arena{} and navigates to the laundry area when the door is open.\n            \\item \\textbf{Test locations:} The testing area contains a washing machine, a folding surface nearby, and a laundry basket.\n        \\end{itemize}\n    \\item \\textbf{People:}\n        \\begin{itemize}\n            \\item No people are involved in the test, unless the robot requires human assistance.\n        \\end{itemize}\n    \\item \\textbf{Furniture:}\n        \\begin{itemize}\n            \\item \\textbf{Laundry basket:} A lightweight basket requiring two arms to carry, placed near the washing machine. The basket already has 6--8 pieces of clothing placed inside.\n            \\item \\textbf{Washing machine:} Positioned with its door closed at the start. Clothes are placed inside. There are 2--4 pieces of clothing in the washing machine.\n            \\item \\textbf{Table:} Positioned near the washing machine. Used as the folding surface. There is a single piece of clothing loosely placed (or bunched up) on the table.\n        \\end{itemize}\n    \\item \\textbf{Objects}:\n        \\begin{itemize}\n            \\item \\textbf{Clothes:} A set of 8--12 pieces of laundry made from cloth or other deformable fabric.\n        \\end{itemize}\n\\end{itemize}\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n    \\item \\textbf{Location announcement:} At least two hours before the test, referees announce which washing machine and table will be used, along with the approximate location of each.\n    \\item \\textbf{Test start:} The robot enters the testing area once the arena door is opened.\n    \\item \\textbf{Retrieving laundry:} The robot retrieves the clothes from the laundry basket or directly from the washing machine and places them on the table.\n    \\item \\textbf{Folding:} The robot attempts to fold at least one piece of clothing neatly.\n\\end{enumerate}\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Additional Rules\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}\n    \\item \\textbf{Laundry Types:} The laundry will consist exclusively of T-shirts.\n    \\item \\textbf{Cloth placement:} Clothes must be placed on the table before folding. Folding on the floor is not allowed.\n    \\item \\textbf{Folding quality:} Folding is evaluated by neatness and whether the cloth is flattened and stacked.\n    \\item \\textbf{Multiple items:} Additional points are awarded for folding multiple pieces of clothing and stacking them.\n    \\item \\textbf{Basket transportation:} Using the basket to transport clothing from the washing machine to the table. The basket must be placed in reach of the folding surface.\n    \\item \\textbf{Human Assistance:} Scores are reduced if human assistance is received, in particular for:\n    \\begin{itemize}\n        \\item opening the washing machine door\n        \\item handing clothes to the robot\n        \\item \\textbf{Folding:} Penalties are proportional to the amount of help provided:\n        \\begin{itemize}[nosep]\n            \\item Minimal help (e.g., smoothing wrinkles, stabilizing cloth): small penalty (~100 points).\n            \\item Partial folding (e.g., folding one half or aligning edges): moderate penalty (~200 points).\n            \\item Major help (e.g., completing entire fold/stack): maximum penalty.\n        \\end{itemize}\n    \\end{itemize}\n\\end{enumerate}\n\n\\subsection*{OC Instructions}\nAt least two hours before the test:\n\\begin{itemize}\n    \\item Announce which washing machine and table will be used.\n\\end{itemize}\n\n\\subsection*{Referee Instructions}\nThe referee needs to:\n\\begin{itemize}\n    \\item Ensure the washing machine and basket contains the laundry before the test begins.\n    \\item Close the washing machine door at the start.\n    \\item Verify that the folding table is clear before the test.\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/DoingLaundry.tex}\n"
  },
  {
    "path": "tasks/Finals.tex",
    "content": "\\chapter{Finals}\\label{test:final}\n\nThe competition ends with the Finals on the last day, where the top teams with the highest total score compete.\n\n\\section{Scoring}\nThe final score and ranking are determined by the final scoring and the previous performance of the team, in the following manner:\n\n\\begin{enumerate}\n  \\item The influence of this tests ranking is \\SI{50}{\\percent}.\n  \\item The influence of the total sum of points scored by the team is \\SI{50}{\\percent}.\n\\end{enumerate}\n\nThere is no maximum score during the Final.\n\nThese demonstrations are carried out in a serialized fashion in one \\Arena{}.\n\n\\section{Task}\nThe robot is asked to maintain the household by cleaning up the arena and assisting people.\n\n\\noindent \\textbf{Main Goal:} Solve different problems in the arena.\\\\\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Setup\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Setup}\nThe arena is in its default state apart from problems set up for the robot to solve:\n\\begin{itemize}\n  \\item \\textbf{Trash:} Objects on the floor are to be thrown in the trash.\n  \\item \\textbf{Objects:} Objects that are not in their default location should be returned to their default location (see~\\ref{rule:scenario_objects}). \n  \\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.\n  \\item \\textbf{Closing Appliances:} The dishwasher door needs to be closed.\n  \\item \\textbf{Laundry Basket:} The Laundry basket is placed somewhere in the arena and should be moved next to the washing machine.\n  \\item \\textbf{Welcome Guest:} There is an additional person waiting behind the exit door. The robot must open the door autonomously and welcome the guest. After being welcomed, the person will state their request. The position of this person is known; therefore, no points are awarded for locating them.\n  \\item \\textbf{Custom Tasks:} Additional reasonable household task.\n\\end{itemize}\n\n\n\\subsubsection{Custom Tasks}\n\\begin{enumerate}[nosep]\n  \\item \\textbf{Requesting Additional Tasks:} Additional reasonable household tasks may be requested for scoring during the setup day team leader meetings. These tasks must be approved by the \\TC{}.\n  \\item \\textbf{Arena-Specific Tasks:} Depending on the arena setup, specific household chores may be assigned to the robot. Examples include, but are not limited to, window cleaning and picture alignment on the wall.\n  \\item \\textbf{Team-Supplied Items} If additional items are required to complete a task (e.g.,  watering cans), the requesting team must supply these items.\n  \\begin{enumerate}[nosep]\n    \\item \\textbf{Standardization} These items must be standard household items (e.g., no markers, custom modifications, or specially prepared objects).\n    \\item \\textbf{Availability} All requested items must be provided and made available to all competitors during the setup days. At least two identical copies of each item must be supplied to ensure equal access.\n  \\end{enumerate}\n\\end{enumerate}\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Test start:} The robot enters when the arena door is open.\n\t\\item \\textbf{Finding Problems:} The robot has to find problems to solve on its own.\n\\end{enumerate}\n\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Number of Problems:} The number of problems depends on the arena size the minimum count of generated problems is 8.\n\t\\item \\textbf{Repeating Problem Category:} Solving the same Category of Problem incurs a penalty. \n\t\\item \\textbf{Solving more:} You can continue solving problems to compensate for penalties.\n\t\\item \\textbf{Partial Scoring:} The main task allows partial scoring (per \\emph{solved} problem).\n\t\\begin{enumerate}[nosep]\n\t\t\\item \\textbf{Scores:} Score reduction is applied as a percentage depending on the solution.\n\t\t\\item \\textbf{Penalties:} The Repetition penalty is applied before any partial penalties\n\t\t\\item \\textbf{Example:} If picking up trash off the floor is valued as 60\\% of the solution, then requesting a 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.\n\t\\end{enumerate}\n\t\\item \\textbf{Command Generator:} Problems and commands will be generated using the official command generator\\footnote{\\url{https://github.com/RoboCupAtHome/CommandGenerator}}. Commands are generated as described in~\\ref{test:gpsr}.\n\t\\item \\textbf{Finding People:} Finding a person and stating they need help counts as finding the problem.\n\t\\item \\textbf{Understanding Commands:} The robot must correctly interpret and repeat commands given by people. Correctly repeating the command given by a person counts as partially solving the problem. Commands are issued as described in~\\ref{test:gpsr}.\n\\end{enumerate}\n\n\n\\subsubsection{The Show Must Go On}\nTo ensure a good experience for the audience the teams are allowed to restart the robot inside the arena.\n\\begin{enumerate}[nosep]\n  \\item All previously collected points will be kept.\n  \\item The tasks may be rearranged by the Referee during a restart.\n  \\item The restart penalty is only applied if the robot continues scoring afterward.\n\\end{enumerate}\n\n\\subsection{Commentator}\nThe 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.\n\n\n\\subsection*{Score sheet}\n\\input{scoresheets/Finals.tex}\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%\n\\section{Final Ranking and Winner}\n\nThe winner of the competition is the team that gets the highest ranking in the \\iterm{Finals}.\nThe second place will be the team that got the second-highest ranking in the \\iterm{Finals}.\nThe third place will be the team with the third-highest score in the \\iterm{Finals}.\nAnd so on.\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/GPSR.tex",
    "content": "\\section{General Purpose Service Robot Challenge}\\label{test:gpsr}\n\nThe robot is asked to understand and execute commands requiring a wide range of different abilities. \\\\\n\n\\noindent \\textbf{Main Goal:} Execute three commands issued by the operator.\\\\\n\n\\subsection*{Focus}\n\\emph{Task planning}, \\emph{object/people detection and recognition}, \\emph{object feature recognition}, \\emph{object manipulation}\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Setup\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n    \\item \\textbf{Locations:}\n        \\begin{itemize}\n            \\item \\textbf{Task location:} The task takes place inside the \\Arena{}. Commands may require the robot to leave the room. The \\Arena{} is in its nominal configuration for this task.\n            \\item \\textbf{Start location:} The robot starts outside the \\Arena{}. When the door opens, it must navigate towards the \\textit{Instruction Point}.\n            \\item \\textbf{Instruction point:} The robot returns to this point after completing all the commands.\n        \\end{itemize}\n    \\item \\textbf{People:}\n        \\begin{itemize}\n\t\t\t\\item \\textbf{Professional Operator:} The referee issues standard commands to the robot.\n            If the robot consistently fails to understand the command (e.g. after three tries), teams can use a custom operator.\n        \\end{itemize}\n\\end{itemize}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Instruction point:} At least two hours before the test, the referees announce the location of the \\textit{Instruction Point}.\n\t\\item \\textbf{Command execution:} The robot will decide how the commands will be issued and advise the operator, i.e., either consecutively or one-by-one. If the commands are issued one-by-one, the robot must return to the operator after completing each task.\n\t\\item \\textbf{Back to the instruction point:} The robot goes back to the \\textit{Instruction Point} after completing all the commands given by the operator.\n\t\\item \\textbf{Pausing the Timer:} The referee pauses the timer as soon as the robot reaches the instruction point to reset the arena for the next command. The timer resumes once the referee signals the start of the next command.\n\\end{enumerate}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Additional Rules\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Interleaved Task Bonus:} The robot receives an additional bonus if it successfully completes commands in an interleaved order rather than strictly consecutively. This bonus is awarded only when all three commands are received at once. The interleaved execution must be meaningful, for example by saving time or reducing unnecessary movements.\n\t\\textit{Example:} The robot first picks up an object, then performs another task along the way, and only afterward delivers the object to its original destination. \n\t\\item \\textbf{Partial Scoring:} The solution allows partial scoring.\n\t\\item \\textbf{Command generator:} Tasks will be generated using the official command generator\\footnote{\\url{https://github.com/RoboCupAtHome/CommandGenerator}}. Once a command has been generated it will be entered into an LLM to re-generate a similar phrase, e.g. the generated command is \"get me a coke from the kitchen\" re-phrased command is \"Go to the kitchen, find a coke, and bring it to me\". Each command may be re-phrased up to 3 times getting simpler with each rephrasing.   \n\t\\item \\textbf{Test start:} The robot moves to the \\textit{Instruction Point} when the arena door is open.\n\t\\item \\textbf{Team Coaching:} Teams are not allowed to coach, or instruct the operators. Doing so results in disqualification from the task.\n\t\\item \\textbf{Custom Operators:} A custom operator may be requested by the team or robot to say the commands to the robot. \n\t\t\t\t\t\t\t\t\tAfter the referee attempts the three re-phrased commands, the custom operator can be requested. \n\t\t\t\t\t\t\t\t\tThe custom operator can only choose between the three re-phrased commands to give.\n\t\t\t\t\t\t\t\t\tThe custom operator only has three attempts at commands to the robot.\n\t\t\t\t\t\t\t\t\tIt is the team/robot responsability to request a custom operator.\n\t\\item \\textbf{Autonomy Skip:} Score reductions apply in the following cases:\n\t\\begin{itemize}\n\t\t\\item Use of a custom operator.\n\t\t\\item Bypassing speech recognition.\n\t\t\\item Receiving human assistance to accomplish a command.\n\t\t\\item Instructing a human assistant to perform the whole task.\n\t\t\\item QR codes will not be available.\n\t\\end{itemize}\n\\end{enumerate}\n\n\\subsection*{Referee Instructions}\n\\begin{itemize}[nosep]\n\t\\item Provide the commands to the operators.\n\\end{itemize}\n\n\\subsection*{OC Instructions}\n\nAt least two hours before the test:\n\\begin{itemize}[nosep]\n\t\\item Generate the robot commands and pass through LLM to get a similar command (do not reveal them to the teams).\n\t\\item Announce the location of the instruction point.\n\t\\item Recruit volunteers to assist during the test.\n\\end{itemize}\n\n\\noindent During the test:\n\\begin{itemize}[nosep]\n\t\\item The arena will be setup for all command executions.\n\\end{itemize}\n\n\\subsection*{Score Sheet}\n\\input{scoresheets/GPSR.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/HumanRobotInteractionChallenge.tex",
    "content": "\\section{Human Robot Interaction Challenge}\n\\label{test:human-robot-interaction-challenge}\n\n\\subsection*{Description}\nThe robot is working as a receptionist at a party. The robot has to take two new guests to the living room, offer a free place to sit and introduce them to eachother. The second guest brings a bag for the robot to carry.\\\\\n    \n\\textbf{Main goal:}\n    The robot welcomes and assists two newcomers at a party and offers them a seat, while maintaining appropriate gaze direction during conversation. The second guest brings a bag to be placed somewhere in the house.\n\n% \\vspace{-5pt}\n\\textbf{Additional goals:}\n\\begin{enumerate}[nosep]\n\t\\item Detect doorbell sound as a signal that a guest has arrived.\n\t\\item Open the entrance door for each arriving guest.\n\t\\item Visually describe the first guest to the second guest.\n\t\\item Understand each guest's name and favorite drink without asking any confirmation or correction questions (non-essential questions).\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{\\SysI{}}, \\emph{\\HRI{}}, \\emph{\\PerDet{}}, \\emph{\\PerRec{}}\n% human detection and recognition, safe navigation and human-robot interaction with unknown people.\n\n\\subsection*{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Location}: \n\t\\begin{itemize}\n\t\\item The test takes place in the living room.\t\n\t\\item The robot starts inside the \\Arena{} at a predefined location near where guests are sitting.\n\t\\item \\textbf{Entrance:} The entrance door is open by default. The team leader can request it to be closed to allow the robot to earn additional points by opening it for the guests.\n\t\\end{itemize}\n\t\n\t\\item \\textbf{People:} \n\t\\begin{itemize}\n\t\\item \\textbf{Arriving Guests:} Both guests have a name and a favorite drink. An arriving guest will wait by the door, and the robot has to move to meet guests by the door. A guest will not move inside the house until the robot has initiated conversation. It is not allowed to instruct guests to move in front of the robot to recognize the guest and start the conversation. The robot is the one that must approach the guest. Guests have to be guided to the living room where the robot will offer a free place to sit and introduce the guests to each other. Each guest will arrive separately. \n\t\\item \\textbf{Passive Guests:} A few individuals, including possibly spectators, can be anywhere in the arena — sitting or standing in relevant places, e.g., on the couch, near the seats, or in the area with the drinks.\n\t\\end{itemize}\n\n\\end{itemize}\n\n\\subsection*{Procedure}\nBoth guests arrive separately. A doorbell will ring to signal the guest has arrived. \nThe doorbell will only ring if the robot is waiting for a new guest at the starting position.\nThe robot either opens the door for the guest or meets them at the door.\nIt greets the guest and asks for their name and favorite drink.\nThe robot escorts the guests to the living room and offers a free seat. \nOnce both guests are seated, the robot introduces them to each other. To introduce the two guests, the robot must (for both guests) look at a guest and state the other arriving guest name and favorite drink.\nThe second guest will bring a bag for the host. The robot should ask for the bag to be handed over and move to the host. The host is already waiting and instructs the robot to follow him/her. The host will move to a random place in the house and inform the robot it can drop the bag there.   \n\\begin{itemize}\n\n\t\\item \\textbf{Doorbell:} A doorbell sound will be played when a guest is by the door ready to be met. The doorbell sound will not be provided beforehand and may be any traditional doorbell sound. As an alternative, if no doorbell sound is available, the guest can knock on the door. Waiting for the doorbell is optional, robots can bypass it and directly meet the guest at the door. In order for the doorbell sound to be considered detected, the robot must be waiting at the starting position and react instantly to the sound.\n\t\n\t\\item \\textbf{Greeting guests:} The names of the guests can be any popular english names. The favorite drinks of the guests can be any english named popular drink (it may not be in the list of objects provided).\n\tThe guest paces slightly to the left and right during the conversation with the robot. Other people might appear in the background. \n\t\n\t\\item \\textbf{Looking at person:} The robot must look at the person it is talking to. Guests will move slightly to confirm the robot dynamically follows them with its gaze. Points for gaze tracking are awarded only if the robot continuously tracks the moving person.\n\t\n\t\\item \\textbf{Looking at direction of navigation:} The robot must look in the direction it is navigating. Persistently looking in an unrelated direction or at unrelated people during navigation results in a score deduction.\n    \n\t\\item \\textbf{Seating People:} The robot must clearly indicate or point to a location or seat for each guest.\n\n\t\\item \\textbf{Switching Places:} After being seated, guests may switch seats.\n\t\n\t\\item \\textbf{Introductions:} When introducing guests, the robot must clearly identify the person being introduced and state their name and favorite drink. The robot must be looking at a guest and state the other arriving guest name and favorite drink. The robot must do this for both guests. The Robot is allowed to break eye contact if it is natural to do so, e.g. looking at the guest while stating their name or indicating a free seat.\n\tIntroducing two people means to introduce them to each other.\n\t\n\t\\item \\textbf{Non-Essential Questions:} If the robot does not ask any non-essential questions to help understand, confirm, or correct information, bonus points are awarded. \n\t\tQuestions such as \"Did you say your name is James?\" or \"Is your favorite drink milk?\" are considered non-essential questions. \n\t\tHowever, asking a guest to repeat an answer because the robot could not hear is not considered a non-essential question.\n\n\t\\item \\textbf{Bag handover:} The robot must grab the bag from the second guest hand. If this is not possible, the robot can instruct the guest to place the bag somewhere in its structure \n\n\t\\item \\textbf{Follow the host:} The host will be sitting in the living room. The robot must inform the host that it has a bag and ask the host for guidance. When requested by the robot, the host will stand in front of the robot.\n\tWhen the robot is ready to follow, it should inform the host. The host then walks naturally toward the designated bag drop location. Once at the correct location, the host informs the robot that it should place the bag on the floor.\n\n\t\\item \\textbf{Not acknowledging people:} If the robot fails to attend to a person attempting to interact with it, e.g., by repeatedly looking away, not orienting towards the speaker, or focusing on unrelated objects during interaction.\n\n\\end{itemize}\n\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Misunderstanding:} Not understanding the guests and asking them again is fine. Continuing with a wrong name or favorite drink causes a score reduction.\n\t\t\n\t\\item \\textbf{Partial Scoring:} The main task allows partial scoring per guest.\n\n\t\\item \\textbf{Additional Seating:} Referees may add chairs to the living room area.\n\t\n\t\\item \\textbf{Human Assistance:} Score reduction applies per guest as follows:\n\t\\begin{itemize}[nosep]\n\t\t\\item \\textbf{Custom Operator:} Since the main focus of the test is HRI, no custom operator can be chosen.\n\t\t\\item \\textbf{Alternative HRI:} Using an alternative HRI to understand a guest causes a score reduction per information (name or favorite drink).\n\t\t\\item \\textbf{Recognizing People:} If the robot has to ask for help to identify people, the score is reduced. \n\t\t\\item \\textbf{Follow the host:} Penalties apply if the robot loses the operator and needs help recovering. The following forms of assistance are penalized:\n\t\t\\begin{enumerate}\n\t\t\\item Natural interaction (e.g., waving and calling)\n\t\t\\item Unnatural interaction (e.g., raising both hands and jumping)\n\t\t\\item Returning in front of the robot to resume following.\n\t\t\\item Physical contact (e.g., pulling the robot's hand)\n\t\t\\end{enumerate}\n\t\\end{itemize}\n\n\t\\item \\textbf{Bag handover:} If the robot has to ask the guest for help during handover, the score is reduced. If the robot tells the guest to place the bag somewhere on its structure, no points are awarded. To score the maximum amout of points:\n\t\\begin{itemize}[nosep]\n\t\t\\item The robot must clearly signal its readiness to receive the item (e.g., by holding its manipulator still, using lights, audio cues, or verbal prompts).\n\t\t\\item The manipulator must be positioned atleast within 10 cm of the operator's hand.\n\t\t\\item The operator can complete the handover; the robot should not reach, grasp, or initiate dangerous movement toward the human.\n\t\t\\item Explicit verbal guidance from the operator (e.g., \\textit{\"Place the item in my gripper, I'll close it in 3…2…1\"}) will result in penalties.\n\t\t\\item The robot may, however, issue safety cues such as: \\textit{\"I detect the object in my hand. I will close my gripper in 3 seconds, please be careful.\"}.\n\t\\end{itemize}\n\\end{enumerate}\n\n\\subsection*{Instructions}\n\n\\subsubsection*{To Referee}\n\nThe referees need to:\n\\begin{itemize}\n\t\\item Assign name and favorite drink to two volunteers.\n\t\\item Arrange and rearrange people in the living room.\n\t\\item Open the entrance door upon request from the robot.\n\\end{itemize}\n\n\\subsubsection*{To OC}\n\n\nDuring setup day:\n\\begin{itemize}\n\t\\item Announce the bag that will be used for handover.\n\\end{itemize}\n\n\nAt least two hours before test:\n\\begin{itemize}\n\t\\item Announce the starting position.\n\t\\item Recruit four volunteers: two as arriving guests and two as passive guests.\n\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/HumanRobotInteractionChallenge.tex}"
  },
  {
    "path": "tasks/PickAndPlaceChallenge.tex",
    "content": "\\section{Pick and Place Challenge}\n\\label{test:pick-and-place-challenge}\nThis challenge evaluates manipulation capabilities through cleaning and organizing the kitchen and preparing a simple breakfast.\\\\\n\n\\noindent \\textbf{Main goals:}\n\\begin{enumerate}[nosep]\n\t\\item Tidy up all objects on the dining table:\n\t\\begin{enumerate}[nosep]\n\t\t\\item Place dirty tableware and cutlery inside the dishwasher.\n\t\t\\item Place designated trash items in the trash bin.\n\t\t\\item Store other objects in the cabinet, grouping them with similar items.\n\t\\end{enumerate}\n\t\\item Set up breakfast on a clean area of the dining table, including a bowl, spoon, cereal, and milk.\n\\end{enumerate}\n\\smallskip\n\\noindent \\textbf{Optional goals:}\n\\begin{enumerate}[nosep]\n\t\\item Pick up trash from the floor.\n\t\\item Open and close the dishwasher door.\n\t\\item Pull and push the dishwasher rack.\n\t\\item Place a dishwasher tab inside the dishwasher.\n\t\\item Pour milk and cereal into the breakfast bowl.\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Object perception}, \\emph{manipulation in narrow spaces}, and \\emph{task planning}.\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Setup\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{Locations:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Start Location:} The robot waits outside the arena and enters when the door is opened.\n\t\t\t\\item \\textbf{Test location:} The test primarily takes place in the kitchen.\n\t\t\\end{itemize}\n\t\\item \\textbf{People:}\n\t\t\\begin{itemize}\n\t\t\t\\item No people are involved unless the robot explicitly requests assistance.\n\t\t\\end{itemize}\n\t\\item \\textbf{Furniture:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Dishwasher:} Located near the dining table. Closed by default; the robot may request help to open or close doors or racks.\n\t\t\t\\item \\textbf{Dining table:} A surface in the kitchen with objects to clean up.\n\t\t\t\\item \\textbf{Extra Surface:} A fixed position surface with common objects (worldwide available objects). (see Figure~\\ref{fig:scenario_common_objects}).\n\t\t\t\\item \\textbf{Cabinet:} The cabinet contains objects arranged by category or similarity on different shelves.\n\t\t\t\\item \\textbf{Trash bin:} A trash bin is located in the kitchen.\n\t\t\\end{itemize}\n\t\\item \\textbf{Objects:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Dining table setting:} Six objects arranged on the dining table in a typical post-meal setting, possibly stacked:\n\t\t\t\\begin{itemize}[nosep]\n\t\t\t\t\\item \\textit{Cutlery}: One piece (fork, knife, or spoon).\n\t\t\t\t\\item \\textit{Tableware}: One mug/cup and one plate.\n\t\t\t\t\\item \\textit{Trash}: One trash item. One object category will be treated as trash for this task.\n\t\t\t\t\\item \\textit{Other objects}: Two known objects not belonging to the above categories.\n\t\t\t\\end{itemize}\n\t\t\t\\item \\textbf{Extra Surface setting:} Two objects from the common objects set (see Figure~\\ref{fig:scenario_common_objects}), and nothing else, are arranged on the extra surface.\n\t\t\t\\item \\textbf{Breakfast items:} The breakfast items are: a bowl, a spoon, milk and cereal. \n\t\t\tThe object distribution is as follows:\n\t\t\t\\begin{itemize}[nosep]\n\t\t\t\t\\item\\textit{Bowl and Spoon}: On top a designated surface in the kitchen.\n\t\t\t\t\\item\\textit{Milk and Cereal}: Inside the cabinet, next to their respective categories. By default, the milk is closed and the cornflakes are open.\n\t\t\t\\end{itemize}\n\t\t\t\\item \\textbf{Cabinet objects:} A doorless cabinet. Each side of the shelves contains objects arranged in groups, either by category or likeliness.\n\t\t\t\\item \\textbf{Dishwasher tab:} The tab can be found on top of a designated surface and should be placed inside the dishwasher slot.\n\t\t\t\\item \\textbf{Floor Object:} One trash item will be placed near the trash bin.\n\t\t\\end{itemize}\n\\end{itemize}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Test start:} The robot moves to the kitchen when the arena door is open.\n\t\\item \\textbf{Dining Table Clean Up:} The robot tidies the dining table by placing cutlery and tableware into the dishwasher, trash into the trash bin, and all other objects into the cabinet. Objects should be grouped by category or similarity.\n\t\\item \\textbf{Serve Breakfast:} The robot sets the breakfast by placing the bowl, spoon, cereal, and milk on the dining table in a standard meal arrangement. Items should be placed with sufficient free space around them for comfortable use.\n\t\\item \\textbf{Extra Surface Clean Up:} A fixed surface in the arena will hold two objects from the common objects set. These objects are placed in an easy configuration. The robot must place them into the cabinet, grouping by category or similarity, as done for the dining table clean up.\n\t\\item \\textbf{Sequence:} The robot may determine the order and method for performing all pick-and-place tasks. No predefined sequence is required, and the robot may execute tasks in any order it deems optimal.\n\t\\textit{Note: Certain actions, such as pouring or closing the dishwasher, must occur after prerequisite steps (e.g., placing an item) to be scored.}\n\\end{enumerate}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Additional Rules\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{First Pick Bonus:} To encourage manipulation, the robot receives an additional bonus for successfully picking the first object during the test. This bonus is awarded only once.\n\t\\item \\textbf{Designated Location:} All objects designated location correspond to the appropriate furniture, either on top of or inside.\n\t\\item \\textbf{Dining table Location:} The Dining table may be moved by the referee. It can be expected to be within \\SI{50}{\\centi\\meter} of its default location.\n\t\\item \\textbf{Extra Surface:} The extra surface is not to be moved from its default location. It can be expected to be within \\SI{5}{\\centi\\meter} of its default location.\n\t\\item \\textbf{Dining table Decoration:} The Dining table may have additional decoration, such as a flower, placed on top. The Decorations are placed at the start of the setup days.\n\t\\item \\textbf{Safe placing:} Objects must be placed with care, namely the robot should place rather than throw or drop objects.\n\t\\item \\textbf{Dishwasher door:} The dishwasher door is closed by default.\n\tThe robot may ask for help to open or close the door or racks at any time during the task. If the robot fails to open/close the door/rack, it must clearly state this and request the referee to open/close the door/rack.\n\t\\item \\textbf{Dishwasher:} The dishwasher door is closed by default. The robot may request assistance to open or close the door or internal racks at any time. If the robot fails to operate the door or racks autonomously, it must explicitly notify the referee and request help. Points for closing are only awarded after at least one item has been placed inside.\n\t\\item \\textbf{Correct dishwasher item placement:} Items must be correctly positioned in the rack, as a human would place them and cleanable by the machine.\n\t\\item \\textbf{Incorrect cabinet category categorization:} Objects must be grouped with similar items. Misplaced items incur score reductions. Objects that do not semantically belong to any of the categories represented on the shelves should put in an empty part of the shelf.\n\t\\item \\textbf{Breakfast placement:} The table must be set in a typical setting for a meal. The spoon must be placed next to the bowl, and the cereal and milk must be placed next to each other. \n\t\\item \\textbf{Breakfast area cleanliness:} The area immediately surrounding the breakfast items on the dining table must be kept clear of any other objects. Items too close at (5cm) or cluttering the space, will result in a score penalty for the breakfast placement.\n\t\\item \\textbf{Pouring:} By default, the milk is closed and the cornflakes are open. If the robot needs help to open the milk container for pouring it must clearly ask for help. The robot must pour a significant amount of milk and cereal into the bowl. Pouring a couple of drops of milk or bits of cereal is not enough.\n\t\\item \\textbf{Trash:} One object category will be treated as trash for this task. Announced during \\SetupDays{}.\n\t\\item \\textbf{Human Assistance:} Scores are reduced if the robot receives help, such as pointing to objects, handing objects to the robot, repositioning items or changes to the environment. Assistance with opening the milk container or moving parts of the dishwasher does not incur a penalty.\n\tIf a robot requests human assistance for environment changes (such as chairs, decorations, ...), the score reduction is applied per item. For example, if the robot requests chairs to be moved for easier access to the dining table, a score reduction is applied per chair. For decorations, the score reduction is applied per group of nearby items moved (if three candles are touching or close to each other is considered one item, however if there is a candle on each side of the dining table and robot requests a move on both, it is considered two items).\n\t\\item \\textbf{Communicating Perception}: The robot must clearly indicate its perception to the referee. Pointing, attempting to pick objects, or visualizing one object at a time is sufficient. If visualization is utilized, the surrounding scene must remain visible and the robot needs to announce and confirm the referee perceived the visualization.\n\\end{enumerate}\n\n\\subsection*{OC Instructions}\n\nDuring the \\SetupDays:\n\\begin{itemize}\n\t\\item Provide official cutlery and tableware.\n\t\\item Provide official objects.\n\t\\item Designate a trash category.\n\t\\item Announce the dining table, extra surface and cabinet used for the test.\n\t\\item Announce locations of dishwasher tab, bowl, and spoon. (in the kitchen)\n\\end{itemize}\n\n\n\\subsection*{Referee Instructions}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Place dining table objects (1 cutlery, 1 plate, 1 mug/cup, 1 trash, 2 other objects).\n\t\\item Place extra surface objects (2 common objects).\n\t\\item Place one trash on the floor (near trash bin).\n\t\\item Arrange cabinet objects by category or similarity.\n\t\\item Place the bowl and spoon and dishwasher tab.\n\t\\item Place the milk and cereal inside the cabinet next to their respective category.\n\\end{itemize}\n\n\\subsection*{Scoresheet}\n\\input{scoresheets/PickAndPlaceChallenge.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/Restaurant.tex",
    "content": "\\section{Restaurant Challenge}\\label{test:restaurant}\n\n\\subsection*{Description}\n\nThe robot is required to retrieve and serve orders to customers in a real, previously unknown restaurant environment.\n\n\\textbf{Main goal:}\n\tDetect calling or waving customer, autonomously navigate to their tables, take their orders, and serve them accordingly.\n\t\n\\textbf{Optional goal:}\n\tUse an unattached tray to transport the order.\n\n\n\\subsection*{Focus}\nThis task focuses on\n\\emph{Task planning}, \\emph{Online mapping}, \\emph{Navigation in unknown  environments}, \\emph{Gesture detection}, \\emph{Verbal interaction} and \\emph{Object manipulation}.\t\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\t\n\t\\item \\textbf{Locations:} \n\t\\begin{itemize}\n\t\t\\item This task takes place in a real restaurant fully equipped and in business. If this is not possible, an alternative venue may be selected, provided it resembles a restaurant environment and is outside the \\Arena{}.\n\t\t\\item The \\emph{Restaurant} location will remain undisclosed until the start of the test.\n\t\t\\item The robot starts next to the \\emph{Kitchen-bar} (a designated table located near the restaurant's kitchen), facing the customer seating area (dining tables).\n\t\\end{itemize}\t \n\t\\item \\textbf{People:} \n\t\\begin{itemize}\n\t\t\\item  A \\emph{Professional Barman} (member of the \\TC{}) awaits at the other side of the \\emph{Kitchen-bar} for orders to be placed. The \\emph{Professional Barman} assists the robot on request.\n\t\t\\item There may be real customers and staff present.\n\t\t\\item There are at least three tables occupied by professional customers (member of the \\OC{}, \\TC{} or other teams). \n\t\t\\item There are at least two tables occupied with regular customers.\n\t\t\\item Customers may call the robot any time, even simultaneously.\n\t\\end{itemize}\n\n\t\\item \\textbf{Furniture:} The furniture is not standardized and remains unchanged during the test.\n\n\t\\item \\textbf{Objects:} \n\t\\begin{itemize}\n\t\\item Objects to fulfill orders are located on the \\textit{Kitchen-bar}.\n\t\\item Each order consists of 2 objects, randomly selected.\n\t\\item All edible/drinkable objects from the list of standard objects (see~\\refsec{rule:scenario_objects}) are eligible to be part of the orders.\n\t\\end{itemize}\n\\end{itemize}\n\n\\subsection*{Procedure}\n\n\\begin{enumerate}\n\t\\item The referee instructs the team to bring the robot to the start location.\n\t\\item The referee gives the start signal and starts the timer.\n\t\\item The team leaves the area after the start signal.\n\t\\item A \\TC{} member follows the robot ready to press the emergency stop button. \n\t\\item The robot detects a calling or waving customer and navigates to their table.\n\t\\item The robot take the customer's order, place the order, and deliver it.\n\t\\item \\textbf{Optionally}, the robot may use an unattached tray to transport the order.\n\\end{enumerate}\n\n\\subsection{Restart}\nTeams are allowed a single restart during the restaurant task. The following rules apply:\n\n\\begin{enumerate}[nosep]\n  \\item The team must announce the restart to the referee.\n  \\item Task time continues to run during the restart.\n  \\item The robot must be returned to the designated starting location.\n  \\item The team has a maximum of \\SI{2}{\\minute} to complete the restart.\n  \\item All points earned before the restart are voided; scoring resumes from zero after the restart.\n\\end{enumerate}\n\n\n\\subsection*{Additional rules and remarks}\n\\begin{itemize}\n\t\\item \\textbf{First Pick/Place Bonus:} The robot receives an additional bonus for successfully picking and placing the first object during the test. This bonus is awarded only once.\n\t\\item \\textbf{Alternative HRI:} Using an alternative HRI to understand an order causes a score reduction.\n\t\\item \\textbf{Remarks:}\n\t\\begin{itemize}\n\t\t\\item This test occurs in a public area. Any physical contact with people or furniture results in immediate emergency stop.\n\t\t\\item Since this task is performed outside the arena, the time limit may be longer than the others tasks.\n\t\t\\item The availability of wireless, external computing devices, or electrical outlets can't be guaranteed. Assume unavailability.\n\t\t\\item The robot must interact with the customers directly. Teams are not allowed to assist or instruct them.\n\t\t\\item The robot may use up to two minutes to instruct the \\textit{Professional Barman} per order.\n\t\t\\item Examples of instructions include, but are not limited to:\n        \\begin{itemize}[nosep]\n            \\item Request guidance to a customer’s table.\n            \\item Ask for pointing direction.\n            \\item Ask to press on the screen.\n        \\end{itemize}\n\t\t\\item The robot may:\n        \\begin{itemize}[nosep]\n            \\item Take and place several orders before delivery,\n            \\item Alternate between order-taking and serving, or\n            \\item Handle one order at a time.\n        \\end{itemize}\n\t\t\\item The robot should politely confirm the order to the client when receiving it, keeping the guest pleased.\n\t\t\\item The robot can either transport each object individually, or using a tray. All delivered objects must be placed on the customer's table.\n\t\t\\item For tray delivery, the robot must:\n        \\begin{itemize}[nosep]\n            \\item Place the items on the tray,\n            \\item Pick up and transport the tray,\n            \\item Deliver the items by either directly placing them on the table or placing the tray first.\n        \\end{itemize}\n\t\t\\item If requested, the \\textit{Professional Barman} will place the order in a basket or tray for the robot to deliver it.\n\t\t\\item Only two team members are allowed near the robot upon arrival for watching and charging.\n\t\t\\item If audience interference makes task execution impossible, the team may immediately repeat the test.\n\t\t\\item If the robot detects a customer but does not reach their table, it must clearly identify the person (e.g., show a picture) to earn partial points.\n\t\t\\item When at the front of the queue, teams may begin startup procedures with the robot stationary. Once called, the robot must be brought directly and steadily to the start location—only minor adjustments are allowed (no back-and-forth or full turns).\n\t\\end{itemize}\n\t\\item \\textbf{Disqualification:}\n\t\\begin{itemize}\n\t\t\\item Touching the robot after the start signal.\n\t\t\\item Mapping the environment in advance.\n\t\\end{itemize}\n\\end{itemize}\n\n\\subsection*{Instructions:}\n\n\\subsubsection*{To Referee}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Prepare orders for each client.\n\\end{itemize}\n\n\\subsubsection*{To OC}\nThe OC needs to:\n\\begin{itemize}[nosep]\n\t\\item \\textbf{During Setup days:} Check with local (security) management if the possible location, including a sufficient queuing area, can be used for the restaurant challenge.\n\t\\item \\textbf{1 hour before the test:} Gather all teams and robots to move to some nearby queuing area and instruct the teams how/when to move to the actual test location.\n\\end{itemize}\n\n\\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/Restaurant.tex}\n\n\\cleardoublepage{}\n"
  },
  {
    "path": "tasks/old/CleanTable.tex",
    "content": "\\section{Clean the Table}\\label{test:clean-the-table}\nThe robot cleans up a table after a meal. All dishes and cutlery must be placed inside the dishwasher and drinks must be placed inside the trash. \\\\\n\n\\noindent \\textbf{Main goals:} Clean up all the objects on the table. Tableware and cutlery must be placed correctly inside the dishwasher and drinks must be placed inside the trash bin. \\\\\n\n\\noindent \\textbf{Optional goals:}\n\\begin{enumerate}[nosep]\n\t\\item Opening the dishwasher door\n\t\\item Pulling out the dishwasher rack\n\t\\item Placing a dishwasher tab inside the dishwasher\n\t\\item Wipe the table area where the drink was\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Object perception}, \\emph{manipulation in narrow spaces}, and \\emph{task planning}.\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Setup\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{Locations:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Start Location:} Before the test, the robot waits outside the Arena and navigates to the testing area when the door is open.\n\t\t\t\\item \\textbf{Test location:} This test takes place in the kitchen.\n\t\t\\end{itemize}\n\t\\item \\textbf{People:}\n\t\t\\begin{itemize}\n\t\t\t\\item No people are involved in the test, unless the robot requires human assistance.\n\t\t\\end{itemize}\n\t\\item \\textbf{Furniture:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Dishwasher:} A dishwasher is located close to the dining table.\n\t\t\t\\item \\textbf{Trash bin:} A trash bin is located in the kitchen.\n\t\t\\end{itemize}\n\t\\item \\textbf{Objects:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Table setting:} The table has a total of seven objects in a typical setting for a meal for one person. The cutlery and tableware objects may be randomly stacked as it is common after a meal. \n\t\t\tThe object distribution is as follows:\n\t\t\t\\begin{itemize}[nosep]\n\t\t\t\t\\item\\textit{Cutlery}: Any two objects (fork, knife, or spoon).\n\t\t\t\t\\item\\textit{Tableware}: Any three objects (except cutlery), at least one of which is a dish.\n\t\t\t\t\\item\\textit{Drinks}: Any two drinks from the object set.\n\t\t\t\\end{itemize}\n\t\t\t\\item \\textbf{Dishwasher tab:} The tab can be found at a location announced before the test and should be autonomously placed inside the tab slot in the dishwasher.\n\t\t\t\\item \\textbf{Wiping Object:} The wiping object (i.e. a sponge) can be found at a location announced before the test.\n\t\t\\end{itemize}\n\\end{itemize}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Dishwasher door and rack}: Half an hour before the test, the team informs the referees:\n\t\t\\begin{itemize}\n\t\t\t\\item whether the dishwasher door should be closed and, if the door is open, whether the rack should be pushed in\n\t\t\\end{itemize}\n\t\\item \\textbf{Test start:} The robot moves to the kitchen when the arena door is open.\n\t\\item \\textbf{Table clean up:} The robot cleans the table by putting:\n\t\t\\begin{itemize}\n\t\t\t\\item cutlery and tableware items inside the dishwasher\n\t\t\t\\item drinks in the trash bin\n\t\t\\end{itemize}\n\\end{enumerate}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Additional Rules\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Safe placing:} Objects must be placed with care, namely the robot should place rather than throw or drop objects.\n\t\\item \\textbf{Dishwasher door:} The dishwasher door is open and the racks are pulled out by default.\n\tThe team leader can, however, request the dishwasher to be closed for bonus points. If the robot fails to open the door, it must clearly state this and request the referee to open the door.\n\t\\item \\textbf{Correct item placement:} The items should be placed in the rack correctly, namely in the location and in a manner as a person would put them.\n\t\\item \\textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular:\n\t\\begin{itemize}[nosep]\n\t\t\\item pointing to an object or telling the robot where an object is\n\t\t\\item handing an object over to the robot\n\t\\end{itemize}\n\t\\item \\textbf{Communicating Perception}: The robot must clearly communicate its perception to the referee.\n\tPointing at the object or attempting to pick it up is sufficent. \n\tWhen using visualization, make sure the robot tells the referee where to look and make the visualization easily accesible. \n\tIf the team wants to utilize bounding boxes make sure \\textbf{only} one object with a bounding box is shown at a time so the referee is easily able to check and verify. \n\tAlso make sure the surrounding scene is visible, i.e. just showing a cropped bounding box is not enough.\n\\end{enumerate}\n\n\\subsection*{OC Instructions}\n\nDuring the \\SetupDays{}:\n\\begin{itemize}\n\t\\item Provide official cutlery and tableware for training.\n\t\\item Announce what is the object used for wiping.\n\\end{itemize}\nAt least two hours before the test:\n\\begin{itemize}\n\t\\item Announce the predefined location of the dishwasher tab.\n\t\\item Announce the predefined location of the object used for wiping.\n\\end{itemize}\n\n\n\\subsection*{Referee Instructions}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Place objects on the table (two pieces of cutlery, three pieces of tableware and two drinks)\n\\end{itemize}\n\n\\subsection*{Score sheet}\n\\input{scoresheets/CleanTable.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/CleanUp.tex",
    "content": "\\section{Clean Up [Housekeeper]}\n\\label{test:clean-up}\n\n\\subsection*{Description}\n\tThe robot has to clean up an \\Arena{} room with some misplaced objects, placing unknown objects in a garbage bin.\n\n\\textbf{Main goal:}\n\tFind six misplaced objects in a room and bring them to their predefined locations.\n\n\\textbf{Optional goal:}\n\tManipulate heavy and tiny objects.\n\n\\subsection*{Focus}\n\tThis task focuses on \n\t\\textit{Task Planning},\n\t\\textit{Object Perception} and\n\t\\textit{Object Manipulation}.\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\t\n\t\\item \\textbf{Locations:} \n\t\t\\begin{itemize}\n\t\t\t\\item This task takes place in a random room in the \\Arena{}.\n\t\t\t\\item The robot starts inside the \\Arena{} at a predefined location near the entrance door.\n\t\t\\end{itemize}\n\t\\item \\textbf{People:} Near the entrance, an operator tells the robot which room to clean.\n\t\\item \\textbf{Furniture:} All furniture are in their predefined locations.\n\t\\item \\textbf{Objects:} \n\t\t\\begin{itemize}\n\t\t\t\\item There are 6--10 misplaced objects at random locations in the room.\n\t\t\t\\item Objects can be anywhere in the room, including the floor, seats, and on top of furniture.\n\t\t\t\\item All objects are clearly visible (i.e., no occlusions).\n\t\t\t\\item Objects can be regular and alike (see \\refsec{rule:scenario_objects}) or garbage lying around at grasping distance.\n\t\t\t\\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.\n\t\t\t\\item Objects must be placed inside the bin, not thrown or dropped.\n\t\t\\end{itemize}\n\\end{itemize}\n\n\\subsection*{Procedure}\n\n\\begin{enumerate}\n\t\\item The referee requests the team to move the robot to the start location.\n\t\\item The referee gives the start signal and starts the timer.\n\t\\item The team leaves the area after the start signal.\n\t\\item A TC member follows the robot ready to press the emergency stop button.\n\t\\item The robot finds six misplaced objects in a room and brings them to their predefined locations.\n\t\\item \\textbf{Optionally}, the robot can manipulate heavy and tiny objects.\n\\end{enumerate}\n\n\\subsection*{Additional rules and remarks}\n\tNo additional rules and remarks.\n\n\\subsection*{Instructions:}\n\n\\subsubsection*{To Referee}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Place objects in the room.\n\t\\item Recover disposed objects from the bin.\n\t\\item Ask teams whether they want a heavy or a tiny object to be \n\\end{itemize}\n\n\\subsubsection*{To OC}\nThe OC needs to:\n\\begin{itemize}[nosep]\n\t\\item \\textbf{2 hours before the test}: Announce the starting location of the robot.\n\\end{itemize}\n\n\\subsection*{Score Sheet}\n\\input{scoresheets/CleanUp.tex}\n"
  },
  {
    "path": "tasks/old/CocktailParty.tex",
    "content": "\\section{Cocktail Party}\n\nThe robot has to learn and recognize previously unknown people, and fetch orders.\n\n\\subsection{Focus}\n\nThis test focuses on human detection and recognition, safe navigation and human-robot interaction with unknown people.\n\n\\subsection{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Party room}: any (large) room inside the apartment when normally a party would be held.\n\t\\item \\textbf{Guests:} At least five people are distributed in a predefined \\textit{party room} either sitting or standing.\n                Three of the guests have drink orders.\n\t\\item \\textbf{Bar:} The bar is any flat surface where objects can be placed, in a room other than the \\textit{party room}.\n                All available beverages are on top of the bar.\n\t\\item \\textbf{Bartender:} The Bartender may be standing either behind the bar or next to it, depending on the arena setup.\n\\end{itemize}\n\n\\subsection{Task}\n\n\\begin{enumerate}\n\n\t\\item \\textbf{Entering:} The robot enters the arena and navigates to the \\textit{party room}.\n\t\\item \\textbf{Getting called:} The standing guests with an order call the robot simultaneously, either rising an arm, waving, or shouting. The robot has to approach one of them.\n        Optionally, the robot can skip the call detection and ask for a person to step in front of it (the referees determine who approaches to the robot).\n\n\tThe calling person introduces themself by name before giving the order of a drink.\n\tThe robot asks for the person's name and obtains their drink order. \\\\\n\n\n\t\\item \\textbf{Taking the order:} After the robot has taken the order of the first guest, it can either take more orders or proceed to place the order.\n\n\t\\item \\textbf{Placing the orders:} The robot has to navigate to the \\textit{Bar}. The robot must repeat each order to the \\textit{Bartender}, clearly stating:\n\t\\begin{enumerate}\n\t\t\\item The person's name\n\t\t\\item The person's chosen drink\n\t\t\\item A description of unique characteristics of that person that allow the \\textit{Bartender} to find them (e.g.~gender, hair colour, how they are dressed, etc)\n\t\\end{enumerate}\n\n\tWhile the robot places the orders, the people in the \\textit{party room} change their places within the \\textit{party room} (on request of the referees).\n\n\t  \\item \\textbf{Missing beverage:} One of the ordered drinks is not available and therefore missing from the bar.\n\tThe robot should realize this inconvenience and tell the \\textit{Bartender}, providing a list of 3 viable alternatives.\n\tIf the robot cannot detect which drink is missing, the \\textit{Bartender} can be asked to state which of the beverages is not available and provide a list of 3 alternatives.\n\n\t\\item \\textbf{Correcting an order:} The robot should navigate back to the \\textit{party room}, find the person whose drink is missing and provide the alternatives for them to choose from.\\\\\n\n\tIf the robot returns to find a person and the person is not there, it should call that person loudly and the person should respond (either through sound or by waving their hand). The robot should go to the person who is speaking and waving their hand to check their identity.\n\n\t\\item \\textbf{Placing the corrected order:} The robot should navigate to the bar and inform the bartender of the change to the guest's order.\n\\end{enumerate}\n\n\\subsection{Additional rules and remarks}\n\\begin{enumerate}\n\t\\item \\textbf{Repeating names:} The robot may ask to repeat the name if it has not understood it.\n\n\t\\item \\textbf{Misunderstood names:} If the robot misunderstands the name, the understood (wrong) name is used in the remainder of this test.\n\n\t\\item \\textbf{Misunderstood order:} If the robot does not understand the order, it can continue with an own assignment of drinks to people or with a wrong, misunderstood assignment.\n\n\t\\item \\textbf{Approaching non-people:} If the robot approaches a person that is not calling and asks for an order, the person indicates that they does not want to order anything. No points can be scored for understanding names or orders, or for grasping or delivery for a non-calling person.\n\n\t\\item \\textbf{Guest description:} The guest's description must be unique inside the scenario. For instance, it make no sense to state that a person is wearing a red T-shirt if two people are wearing them. In the same sense, stating that the ordering guest is \\textit{tall} can lead to confusion, but stating that is the \\textit{tallest} does not.\n\n\t\\item \\textbf{Changing places:} After giving the order (when the robot is not in the \\textit{party room}), the referees may re-arrange the people including their body posture. That is, a sitting person may change to a standing posture and vice versa.\n\n\t\\item \\textbf{Positions and orientations:} All test participants roughly stay where they are (if not asked to move by the referees), but they are allowed to move in certain limits (e.g.~turn around, make a step aside). They do not need to look at the robot, but are requested to do so, when instructed by the robot.\n\n\t\\item \\textbf{Empty arena:} During the test, only the robot, the guest, and the Bartender are in the arena. The door opener, the referees and other personnel that is not assigned as test people will be outside the scenario.\n\n\t\\item \\textbf{Calling instruction:} The team needs to specify before the test which ways of getting the attention of the robot are allowed for standing persons. This can be waving, calling, or both of them. The robot can also decide to skip this part, by asking for people to get close to it.\n\n\t\\item \\textbf{Sitting persons:} Sitting persons might have an order but are not actively calling the robot.\n\\end{enumerate}\n\n\\subsection{Referee instructions}\n\nThe referees need to\n\\begin{itemize}\n\t\\item Select at least 5 volunteers and assign names from the list of person names (see~\\refsec{rule:scenario_names})\n\t\\item Arrange (and re-arrange) people in the textit{party room}. At least one is sitting\n\t\\item Assign orders to two standing persons\n\t\\item Assign an order to a sitting person\n\t\\item Select the person (bartender) who will serve the drinks\n\t\\item Place drinks at the bar while one drink is missing\n\t\\item In case the robot skips the calling detection, select the ordering person to approach the robot\n\t\\item Write down the understood names and drinks during an order and update the order accordingly\n\\end{itemize}\n\n\\subsection{OC instructions}\n\n2h before test:\n\\begin{itemize}\n\t\\item Specify and announce the rooms where the test takes place\n\t\\item Specify and announce the location where the drinks are served (i.e.~bar location)\n\\end{itemize}\n\n\\newpage\n\\subsection{Score sheet}\n\\input{scoresheets/CocktailParty.tex}\n"
  },
  {
    "path": "tasks/old/EEGPSR.tex",
    "content": "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\r\n%\r\n% EEGPSR\r\n%\r\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\r\n\r\n% Number of concurrent teams\r\n\\newcommand{\\eegpsrTeams}{2~}\r\n% Maximum number of commands to be given to a robot\r\n\\newcommand{\\eegpsrMaxCmd}{3~}\r\n% Maximum amount of time given to a team to perform a single command\r\n\\newcommand{\\eegpsrMaxCmdTime}{5~}\r\n% Maximum amount of time given to a team to perform all commands\r\n\\newcommand{\\eegpsrMaxTeamTime}{\\eegpsrMaxCmd$\\times$\\eegpsrMaxCmdTime}\r\n\r\n% \\section[EEGPSR]{E\\textsuperscript{2}GPSR \\\\ \\normalsize{(Enhanced Endurance General Purpose Service Robot)}}\r\n\\section[EEGPSR]{Enhanced Endurance General Purpose Service Robot}\r\n\\label{sec:eegpsr}\r\n\r\n%\r\n% MAURICIO @2017\r\n% Short instructions based on GPSR\r\n%\r\nThis test evaluates the abilities of the robot that are required throughout the set of tests of this and previous years' RuleBooks. In this test the robot has to solve multiple tasks upon request over an extended period of time (30-45 minutes). That is, the test is not incorporated into a (predefined) story and there is neither a predefined order of tasks nor a predefined set of actions. The actions that are to be carried out by the robot are chosen randomly by the referees from a larger set of actions. These actions are organized in several categories targeting an special ability. Scoring depends on the abilities shown.\r\n\r\n\\subsection{Focus}\r\nThis test particularly focuses on the following aspects:\r\n\\begin{itemize}\r\n\t\\item No predefined order of actions to carry out (to get away from state machine-like behavior programming).\r\n\t\\item Increased complexity in speech recognition.\r\n\t\\item Environmental (high-level) reasoning.\r\n\t\\item Robust long-term operation.\r\n\\end{itemize}\r\n\r\n\r\n\\subsection{Task}\r\n\r\n\\begin{enumerate}\r\n\t\\item \\textbf{Entering and command retrieval:} The robot enters the arena and drives to a designated position where it has to wait for further commands. \\\\\r\n\r\n\t\\item \\textbf{Command generation:} A command is generated randomly, depending on the command category chosen by the team (see below). Commands are generated by the generator which is made publicly available at https://github.com/kyordhel/GPSRCmdGen. \\\\\r\n\r\n\t\\begin{enumerate}\r\n\t\t\\item \\textbf{Category I: Three at once.} The command is composed by \\textit{three simple actions}, which the robot has to show it has recognized. the actions are much like the ones of GPSR. The robot may repeat the understood command and ask for confirmation. If it can't recognize the command correctly, it can also ask the speaker to repeat the complete command.\r\n\r\n\t\t\\item \\textbf{Category II: People.} The given commands focuses in interacting with people. Tasks in this category involve following or guiding people inside and outside the arena, recognize people's gestures or a specific person given its description, and remembering previously known people.\r\n\r\n\t\t\\item \\textbf{Category III: Objects.} The given commands focuses interacting with objects. Tasks in this category involve setting up a table, describe the objects placed on a table or shelf, and deliver objects that match a description or are located inside a cupboard or drawer.\r\n\t\\end{enumerate}\r\n\r\n\tThe robot can work on at most \\eegpsrMaxCmd commands within each of the following scenarios randomly chosen by the referee: \\\\\r\n\r\n\t\\begin{itemize}\r\n\t\t\\item \\textbf{Complete command.} The robot gets a command containing all the information required for its execution.\r\n\r\n\t\t\\item \\textbf{Incomplete command.} The robot gets a command that does not include all the information necessary to accomplish the task. The robot may either request the missing information (by asking reasonable questions), or attempt to solve the command on its own.\r\n\r\n\t\t\\item \\textbf{Erroneous or misleading command.} The command contains erroneous misleading information. The robot should be able to realize what went wrong and come up with a solution. In addition, it must go back to the operator and clearly state \\textit{what} went wrong and \\textit{how} it was fixed, or \\textit{why} it wasn't able to accomplish the task.\r\n\t\\end{itemize}\r\n\r\n\t\\item \\textbf{Task assignment:} The robot is given the command by the operator and may directly start to work on the task assignment.\r\n\r\n\t\\item \\textbf{Task execution:} The robot must stop the execution of a task and return to its designated position within \\eegpsrMaxCmdTime minutes. Otherwise the robot must be moved to its designated position immediately. If a restart is still available to the team, it can be restarted at the designated position. \\\\\r\n\r\n\t\\item \\textbf{Returning:} After accomplishing the assigned task, the robot has to move back to its designated position to wait and retrieve the next command (i.e., go back to 1. without the need of re-entering the arena). \\\\\r\n\r\n\t\\item \\textbf{Timing:} The total time allotted to the robot for command retrieval and task execution is \\eegpsrMaxTeamTime minutes. If the robot is not at its designated position after the time has expired, it must be moved at its designated position immediately.\\\\\r\n\r\n\\end{enumerate}\r\n\r\n\\subsection{Additional rules and remarks}\r\n\\label{sec:eegpsr-remarks}\r\n\\begin{enumerate}\r\n\t\\item \\textbf{CONTINUE rule:} Teams are able to use the CONTINUE rule in this test, with all the standard penalties it involves as described in~\\refsec{rule:continue}.\r\n\t%The CONTINUE rule can only be used with the custom operator (e.g.~both penalties of custom speaker and CONTINUE rule will be applied).\r\n\r\n\t\\item \\textbf{Number of Teams and Scheduling:} In each test slot, \\eegpsrTeams teams may be competing in the arena concurrently. The robots will be tested in an interleaved fashion: The robots will retrieve commands and execute the task one after the other. As stated above, each robot will have a maximum amount of \\eegpsrMaxCmdTime minutes per command (including time for retrieving the command and executing it).\r\n\r\n\t\\item \\textbf{Returning to designated position:} To facilitate a fluent and untroubled performance of the robots, they must return (or being returned) to their designated position before the \\eegpsrMaxCmdTime minutes command time elapses. \\textbf{If a robot moves from its designated position while another robot is working on a command, it must be immediately disabled} and moved to its designated position. If a restart is still available to the team, it can be restarted at its designated position.\r\n\r\n\t\\item \\textbf{Referees:} Since the score system in this test involves a subjective evaluation of the robot's behavior, the referees are EC/TC members. One referee is assigned to each team to judge performance, to measure the time for working on a command, and to keep track of the overall operating time of the robot.\r\n\r\n\t\\item \\textbf{Category selection:} For every of the three commands given to the robot, the team chooses the desired command category.\r\n\r\n\t\\item \\textbf{Operator:}\r\n\t\\begin{itemize}\r\n\t\t\\item The person operating the robot is one of the referees (default operator).\r\n\t\t\\item If the robot appears to consistently not be able to understand the operator, the referees ask the team to apply the CONTINUE rule (\\refsec{rule:asrcontinue}).\r\n\t\\end{itemize}\r\n\r\n\t\\item \\textbf{Inoperative robots:} If a robot gets stuck while trying to accomplish a task during a reasonable amount of time (e.g.~30 seconds), the referee may ask the team to move back the robot to its designated position, proceeding with the next robot.\r\n\r\n\t\\item \\textbf{Restart:} Robots will be restarted at their designated position (starting outside the arena is prohibited). If a robot requires a restart, the referee will proceed with the next robot.\r\n\r\n\t\\item \\textbf{Changing/Charging batteries:} The team may install a charging station at the designated position of the robot, if it does not hinder the other robots. However, the robot must connect itself with the charging station after carrying out a command. Changing batteries or manually connecting the robot with the charging station is allowed during a restart.\r\n\r\n\t\\item \\textbf{Retrieving the command:} The robot must show it has understood the given command by repeating the command (i.e.~stating all the required information to accomplish the task).\r\n\t\\\\\r\n\t\\textit{Note:} Referees must have sufficient evidence proving the robot is actively trying to execute the commanded tasks to score. Robots skipping command execution will not receive points for understanding the command.\r\n\r\n\t\\item \\textbf{Scoring:} Robots are scored by successfully performed ability and full command completion within time.\r\n\\end{enumerate}\r\n\r\n\\subsection{OC instructions}\r\n\\textbf{2h before test:}\r\n\\begin{itemize}\r\n\t\\item Specify and announce the entrance/exit door for each robot.\r\n\t\\item Specify and announce the waiting position for each robot.\r\n\\end{itemize}\r\n\\textbf{During the test:}\r\n\\begin{itemize}\r\n\t\\item Help placing items and arranging people upon referee request.\r\n\\end{itemize}\r\n\r\n\\subsection{Referee instructions}\r\n\\textbf{During the test:}\r\n\\begin{itemize}\r\n\t\\item Generate random sentences. %by an automatic sentence generator.\r\n\t\\item Take the command and total time per team.\r\n\\end{itemize}\r\n\r\n\\subsection {Audio Data Recollection}\r\nTeams are encouraged to submit to the TC the audio data recorded during the test, specially that which was captured during speech recoginition. If so, teams are urged to provide it with annotation of what the user said and what was recognized. Audio files are expected to be mono, one per microphone (in the case array recordings), of a sample rate equal to or higher than 16 kHz, and with a sample size of at least 16 bits. Depending on the quality of the recordings and their annothations, an official certificate that formalizes these efforts may be provided to submitting teams.\r\n\r\n\\newpage\r\n\\subsection{Score sheet}\r\n\\input{scoresheets/EEGPSR.tex}\r\n\r\n% Local Variables:\r\n% TeX-master: \"Rulebook\"\r\n% End:\r\n\r\n"
  },
  {
    "path": "tasks/old/EGPSR.tex",
    "content": "\\section{Enhanced General Purpose Service Robot}\\label{test:egpsr}\nThe robot is asked to maintain the household by cleaning up the arena and assisting people.\n\n\n\\noindent \\textbf{Main Goal:} Solve different problems in the arena.\\\\\n\n\n\\subsection*{Focus}\n\\emph{Task planning}, \\emph{object/people detection and recognition}, \\emph{object feature recognition}, \\emph{object manipulation}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Setup\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Setup}\nThe arena is in its default state apart from problems set up for the robot to solve:\n\\begin{enumerate}\n    \\item \\textbf{Problems:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Trash:} Objects on the floor are to be thrown in the trash.\n\t\t\t\\item \\textbf{Objects:} Objects that are not in their default location should be returned to their default location (see~\\ref{rule:scenario_objects}). \n\t\t\t\\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.\n\t\t\\end{itemize}\n\\end{enumerate}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Test start:} The robot enters when the arena door is open.\n\t\\item \\textbf{Finding Problems:} The robot has to find problems to solve on its own.\n\\end{enumerate}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Additional Rules\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Number of Problems:} The number of problems depends on the arena size the minimum count of generated problems is 8.\n\t\\item \\textbf{Repeating Problem Category:} Solving the same Category of Problem incurs a penalty. \n\t\\item \\textbf{Solving more:} You can continue solving problems to compensate for penalties.\n\t\\item \\textbf{Partial Scoring:} The main task allows partial scoring (per \\emph{solved} problem).\n\t\\begin{enumerate}[nosep]\n\t\t\\item \\textbf{Scores:} Score reduction is applied as a percentage depending on the solution.\n\t\t\\item \\textbf{Penalties:} The Repetition penalty is applied before any partial penalties\n\t\t\\item \\textbf{Example:} If picking up trash off the floor is valued as 60\\% of the solution, then requesting a 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.\n\t\\end{enumerate}\n\t\\item \\textbf{Command Generator:} Problems and commands will be generated using the official command generator\\footnote{\\url{https://github.com/RoboCupAtHome/CommandGenerator}}.\n\t\\item \\textbf{Finding People:} Finding a person and stating they need help counts as finding the problem.\n\t\\item \\textbf{Understanding Commands:} The robot must correctly interpret and repeat commands given by people. Correctly repeating the command given by a person counts as partially solving the problem.\n\\end{enumerate}\n\n\\subsection*{Referee instructions}\n\\begin{itemize}\n\t\\item Set up the problems in the arena.\n\t\\item Provide commands to volunteers.\n\\end{itemize}\n\n\\subsection*{OC instructions}\n\nAt least two hours before the test:\n\\begin{itemize}\n\t\\item Generate the problems and commands (do not reveal them to the teams!).\n\t\\item Recruit volunteers to assist during the test.\n\\end{itemize}\n\n\n\\subsection*{Score sheet}\n\\input{scoresheets/EGPSR.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/Farewell.tex",
    "content": "\\section{Farewell [Party Host]}\n\\label{test:farewell}\n\n\\subsection*{Description}\n    Some guests are tired, and they call the robot to retrieve their coat. One guest is a medical doctor and needs to leave urgently. \n    It's raining outside and there is only one umbrella, so the robot takes the guests one by one to their cab and returns \n    with the umbrella.\\\\\n\n\n\\textbf{Main goal:}\nThe robot escorts two guests to their cab (where the cab driver is standing), with the medical doctor guest first.\n\n\n\\textbf{Optional goal:}\n\\begin{enumerate}[nosep]\n\t\\item Delivering guest's right coat.\n\t\\item Entertaining guest with conversation while ushering person to the cab.\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\PerDet{}, \\NAV{}, and \\HRI{}\n\n\\subsection*{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Locations}: \n\t\t\\begin{itemize}\n\t\t \\item The test takes place both inside and outside the \\Arena{}.\n\t\t \\item The robot starts inside the \\Arena{} at predefined location.\n\t\t\\end{itemize}\n\t\\item \\textbf{People}: Guests -- there are five  in the living room -- three sitting and two standing. At least two of them are doctors.\n\\end{itemize}\n\n\\subsection*{Procedures}\n\\begin{enumerate}\n\t\\item The guests willing to leave signal their intention.\n\t\\item Robot recognizes the guests willing to leave and escorts them to the cab, one at the time.\n\t\\item \\textbf{Optionally}, the robot brings the right coat to the person leaving the \\Arena{}.\n\\end{enumerate}\n\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Partial scoring:} The main task allows partial (per guest) scoring.\n\n\t\\item \\textbf{Guests}: All guests have a name and a coat color assigned.\n\n\t\\item \\textbf{Calling the robot}: Guests willing to leave call the robot (e.g. by waving or shouting) simultaneously.\n\n\t\\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.\n\n\n\t\\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.\n\n\t\\item \\textbf{Delivering coats:} Coats are hanging on a coat rack near the exit door.\n\tThe robot should hook off the coats autonomously and bring them back to the right people.\n\t\n\t\\item \\textbf{Entertaining conversation:} Robot can ask person being ushered about party they are leaving, tell them jokes or use other topics\n\tfor social interaction that would engage the guest. The guest migh refuse to chitchat or indicate tiredness which should cue the robot\n\tto cease the interaction. Failing to do so will result in loosing points for the item.\n\n\t\\item \\textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular:\n\t\\begin{itemize}\n\t\t\\item Telling the robot which guest is leaving (e.g. by pointing)\n\t\t\\item Guiding the robot to the cab\n\t\t\\item Guiding the robot back to the arena\n\t\t\\item Handing over a coat to the robot\n\t\\end{itemize}\n\\end{enumerate}\n\n\n\\subsection*{Instructions}\n\n\\textbf{To referee}\n\nThe referees need to:\n\\begin{itemize}\n\t\\item Select at least 5 volunteers, and assign them names and coat colors.\n\t\\item Choose the people that will call the robot.\n\t\\item Assign a location for the the cab driver.\n\t\\item Mind the robot when it goes outside the \\Arena{}.\n\\end{itemize}\n\n\\textbf{To OC}\n\nDuring the \\SetupDays:\n\\begin{itemize}\n\t\\item Provide coats for training.\n\t\\item Provide an umbrella for training.\n\t\\item Provide the cab driver's high-visibility clothing for training.\n\\end{itemize}\n\n2h before the test:\n\\begin{itemize}\n\t\\item Select and announce the robot's starting point.\n\t\\item Help with the assignment of a location for the cab driver.\n\\end{itemize}\n\n\\subsection*{Score sheet}\n\\input{scoresheets/Farewell.tex}\n\n"
  },
  {
    "path": "tasks/old/FindMyDisk.tex",
    "content": "\\section{Find My Disk [Housekeeper]}\n\\label{test:find-my-disk}\n\n\\subsection*{Description}\n   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.\\\\\n\n\\textbf{Main goal:}\n   The robot provides a description of an object that matches the operator's requirements.\n\n\\textbf{Optional goals:} Help the blind operator to find a second disk.\n\n\\subsection*{Focus}\n\\HRI{}, \\textit{NLU}, \\textit{Object Recognition}\n\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{Locations:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Test location:} The test takes place near a bookcase in the living room in the \\Arena{}.\n\t\t\t\\item \\textbf{Starting location:} The robot starts near the bookcase where task takes place.\n\t\t\\end{itemize}\n\t\\item \\textbf{People:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{The operator} who is considered to be a blind, and may be blindfolded.\n\t\t\\end{itemize}\n\t\\item \\textbf{Furniture:}\n\t\t\\begin{itemize}\n\t\t\t\\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.\n\t\t\\end{itemize}\n\t\\item \\textbf{Objects:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Disks:} All disks are in their boxes with cover.\n\t\t\\end{itemize}\n\\end{itemize}\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\n\\begin{enumerate}\n\t\\item The robot finds a disk matching operator requirements and provides a description of the item.\n\t\\item \\textbf{Optionally}, robot finds second disk matching operator requirements and provides a description of the item.\n\\end{enumerate}\n\n\\subsection*{Additional rules and remarks}\n\n\\begin{enumerate}[nosep]\n\t\\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}).\n\t\n\t\t\\begin{center}\n\t\\includegraphics[width=\\textwidth,height=3cm,keepaspectratio]{images/find_my_disk.png}\n\t\\end{center}\n\t\n\t\\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.\n\t\\item \\textbf{Test start:} The robot moves to the area near the bookcase where the items are.\n\t\n\t\\item \\textbf{Object manipulation:} All manipulation will be performed by the human operator under the supervision of the robot.\n\n\t\\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.\\\\\n\tIt is also acceptable (although not advised), to review each title one by one.\n\n\t\\item \\textbf{Clear area:} The robot may assume that the working area is clear, with no people around making loud noises.\n\t\n% \t\\item \\textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular:\n% \t\\begin{itemize}[nosep]\n% \t\t\\item Human leads the conversation\n% \t\\end{itemize}\n\n\\end{enumerate}\n\n\\subsection*{Instructions:}\n\n\\subsubsection*{To Referee}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Rearrange the disks on the bookcase.\n\t\\item Provide instruction to the operator.\n\t\\item Determine names of two different desired disks for each team with the operator. \n\t\\item Blindfold the operator.\n\\end{itemize}\n\n\\subsubsection*{To OC}\nThe OC needs to:\n\\begin{itemize}[nosep]\n\t\\item \\textbf{On setup day}: Provide media samples for practice.\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/FindMyDisk.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/FindMyMates.tex",
    "content": "\\section{Find My Mates [Party Host]}\n\\label{test:find-my-mates}\n\n\\subsection*{Description}\n    The robot collects some information about various party guests for the operator, who only knows the names of the guests.\n\n\\noindent \\textbf{Main goal:}\n    Report to the operator the description and location of at least two party guests.\n\n\\noindent \\textbf{Optional goal:}\n    Report the location and description of a third guest.\n\n\\subsection*{Focus}\n\\SysI{}, \\HRI{}, \\PerDet{}, \\PerRec{}, \\iterm{Visual Feature Detection}\n\n\\subsection*{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Location}: This test takes place inside the \\Arena{} in a predefined room (e.g. living room).\n\t\\item \\textbf{People}: There are 4 people distributed along the room.\n\\end{itemize}\n\n\\subsection*{Procedures}\n\\begin{enumerate}\n\t\\item The robot finds and reports the description and location of two guests.\n\t\\item \\textbf{Optionally,} the robot reports the description and location of the third guest.\n\\end{enumerate}\n\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Reporting:} Points are scored only when the robot goes back to the operator and delivers the report on time.\n\n    \\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.\n\n\t\\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.).\n\t\n\n\t\\item \\textbf{Deus ex Machina:} Score reduction for human assistance is applied per guest as follows:\n\n\t\t\\begin{itemize}\n\t\t    \\item Waving to the robot in order to be found\n\t\t\t\\item Telling the robot where a person is located\n\t\t\t\\item Approaching the robot (e.g. walking and standing in front of it)\n\t\t\\end{itemize}\n\n\\end{enumerate}\n\n\\subsection*{Instructions}\n\n\\textbf{To Referees}\n\nThe referees need to:\n\\begin{itemize}\n\t\\item Assign names and locations for all guests.\n\t\\item Make sure that the guests stay at their designated locations during the test.\n\\end{itemize}\n\n\\noindent \\textbf{To OC}\n\n2h before test:\n\\begin{itemize}\n\t\\item Announce the location where the robot will be instructed.\n\t\\item Announce the room in which the test will take place.\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/FindMyMates.tex}\n"
  },
  {
    "path": "tasks/old/GiveMeAHand.tex",
    "content": "\\section{Give Me a Hand}\\label{test:give-me-a-hand}\n\n\\subsection*{Description}\nThe robot assists a human in organizing new items by receiving them and placing them in specified locations using natural interaction.\n\n\\textbf{Main goal:}\nNew items have arrived at the house. The operator takes each item from a container, hands it to the robot, and instructs the robot to place it at a designated location within the room.\n\n\\subsection*{Focus}\n\\emph{Object perception}, \\emph{Human perception}, \\emph{Verbal interaction}, and \\emph{Human-Robot Interaction}.\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\t\n\t\\item \\textbf{Locations:} \n\t\\begin{itemize}\n\t\t\\item This test takes place inside the Arena in a single room.\n\t\\end{itemize}\t \n\t\\item \\textbf{People:} \n\t\\begin{itemize}\n\t\t\\item The operator remains in a fixed location during the test.\n\t\t\\item Other people (e.g., referee, assistant) may be present in the room.\n\t\\end{itemize}\n\t\\item \\textbf{Objects:}\n\t\t\\begin{itemize}\n\t\t\t\\item A container (box or bag) containing five random known objects (see \\ref{rule:scenario_objects}).\n\t\t\t\\item Several visually similar delivery locations (e.g., identical bowls, plates, or bins) placed within the room to create ambiguity.\n\t\t\\end{itemize}\n\\end{itemize}\n\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item The robot starts outside the arena and navigates to the designated room once the door is opened.\n\t\\item The robot approaches the operator, who remains stationary throughout the test.\n\t\\item The operator picks up an object from the container and hands it to the robot.\n\t\\item The operator issues a verbal instruction for where to place the item. Instructions may include gestures and references to landmarks.\n\t\\item The robot delivers the item to the specified location, then returns to the operator for the next object.\n\t\\item Steps 3--5 repeat until all five items are delivered.\n\\end{enumerate}\n\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Handover:}\n\t\\begin{itemize}[nosep]\n\t\t\\item The robot must clearly signal its readiness to receive the item (e.g., by holding its manipulator still, using lights, audio cues, or verbal prompts).\n\t\t\\item The manipulator must be positioned within 10--20 cm of the operator's hand, without initiating contact.\n\t\t\\item The operator must complete the handover; the robot must not reach, grasp, or initiate movement toward the human.\n\t\t\\item Explicit verbal guidance from the operator (e.g., \\textit{\"Place the item in my gripper, I'll close it in 3…2…1\"}) is considered \\textit{Deus ex Machina} and will result in penalties.\n\t\t\\item The robot may, however, issue natural cues such as: \\textit{\"I detect the object in my hand. I will close my gripper in 3 seconds, please be careful.\"}.\n\t\\end{itemize}\n\n\t\\item \\textbf{Delivery:}\n\t\\begin{itemize}[nosep]\n\t\t\\item Delivery instructions may combine verbal commands with gestures (e.g., \\textit{\"Put this on that plate, next to the flower vase\"} while pointing).\n\t\t\\item The robot is expected to use natural interaction to confirm ambiguous instructions.\n\t\t\\item Since the target locations are intentionally ambiguous, the robot can request clarification from the operator before proceeding. This should be done through natural interaction, such as verbal questions or multimodal cues (e.g., pointing, asking \\textit{\"Which one?”}).\n\t\t\\item Full points are awarded only if the object is placed in the correct container or within a few centimeters of the intended target.\n\t\t\\item Human-robot interaction must be natural: robots must first capture the operator's attention (e.g., by gesture, light, or audio) before initiating clarification — especially if the operator is distracted or not directly facing the robot.\n\t\t\\item Interactions where the robot talks without attention capture (e.g., asking questions while the operator is busy elsewhere) are discouraged and may affect scoring.\n\t\\end{itemize}\n\\end{enumerate}\n\n\\subsection*{Instructions:}\n\\subsubsection*{Referee instructions}\n\nThe referee needs to:\n\\begin{itemize}[nosep]\n\t\\item Randomly select five known scenario objects and corresponding delivery locations.\n\t\\item Assign the operator's location in the room.\n\\end{itemize}\n\n\\subsubsection*{OC Instructions}\nAt least two hours before the test:\n\\begin{itemize}[nosep]\n\t\\item Announce the room for the test.\n\t\\item Arrange target containers and placement items (such as similar bowls, dishes, or bins) around the room to create ambiguity in delivery instructions.\n\\end{itemize}\n\n\\subsection*{Score sheet}\n\\input{scoresheets/GiveMeAHand.tex}\n"
  },
  {
    "path": "tasks/old/HandMeThat.tex",
    "content": "\\section{Hand Me That [Party Host]}\n\\label{test:hand-me-that}\nA guest at the party speaks English, but with only a limited vocabulary. The robot will assist them in obtaining things that they gesture for.\\\\\n% Comments: In this tasks each group of items is scored separately. Hence \n\n%\\subsection{Focus}\n%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.\n\n\n\\noindent \\textbf{Main Goal:} The robot identifies (touching or naming) each object at which the operator is pointing at.\n\n\\subsection*{Focus}\n\\emph{Object perception}, \\emph{HRI}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%\n% Setup\n%\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Setup}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Location:} \n\t\\begin{itemize}[nosep]\n\t\t\\item This takes place in a room in the \\Arena{}.\n\t\t\\item The robot and the operator stand in a predefined starting location announced beforehand % (OC instructions: announce this 2 hours before the test).\n\t\\end{itemize}\n\t    \\item \\textbf{Objects:} \n\t\t\\begin{itemize}[nosep] \n\t\t\\item \\textbf{Groups of Objects: }There are five groups of 2--5 objects randomly placed along the room.\n\t\t\\item \\textbf{Deck:} The referee has a deck of objects to request, one per group, sorted by distance.\n\t\t\\end{itemize}\n\n\\end{enumerate}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%\n% Procedure\n%\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item For each group of objects, the robot asks the operator: \\emph{What do you need?}.  % We rule out natural language interaction\n\t\t\\item The operator walks near to the object and points at it.\n\t\t\\item The robot asks as many questions as necessary. \n\t\t\\item The operator replies to each question (most likely with \\emph{yes}, \\emph{no}, \\emph{I don't know}, single word, etc).\n\t\t\\\\\\textbf{Remark:} The operator does not know the name of the object.\n\\end{enumerate}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n%\n% Additional Rules\n%\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Keep going:} The robot should keep trying to determine the referred object until they score or run out of time.\n\n\t\\item \\textbf{Skipping groups:} The robot may say \\emph{Pass} or \\emph{I give up} to try with the next object.\n\n\t\\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.\n\n\t\\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.\n\n\t\\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.\n\n\t\\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.\n\tThe average distance between the starting position and each group ranges between 50cm and 150cm.\n\n\\end{enumerate}\n\n\\subsection*{Instructions:}\n\n\\subsubsection*{To Referee}\n\nThe referee needs to:\n\\begin{itemize}[nosep]\n\t\\item Rearrange and mix groups between runs.\n\t\\item Verify that the operator is pointing at the right item.\n\\end{itemize}\n\n\\subsubsection*{To OC}\nThe OC needs to:\n\\begin{itemize}[nosep]\n\t\\item \\textbf{On setup day}: Announce the starting position of the robot.\n\\end{itemize}\n\n\n\n\\subsection*{Score sheet}\n\\input{scoresheets/HandMeThat.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/HelpMeCarry.tex",
    "content": "\\section{Help Me Carry}\\label{test:carry-my-luggage}\n\nThe robot's owner needs help carrying a bag from the car to the starting location.\n\n\\noindent \\textbf{Main Goal:} The robot assists the operator in retrieving a bag from a designated car location outside and returning to the starting point.\\\\\n\n\\noindent \\textbf{Optional Goals:}\n\\begin{enumerate}[nosep]\n\t\\item Return to the starting location autonomously\n\t\\item Follow the queue of people returning to the arena in appropriate manner.\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Person following}, \\emph{navigation in unmapped environments}, \\emph{social navigation}.\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{Locations}: \n\t\t\\begin{itemize}\n\t\t \\item The test is performed outside the arena in a public space.\n\t\t \\item The robot starts at a predefined location, announced before the test.\n\t\t\\end{itemize}\n\n\t\\item \\textbf{People}:\n\t\\begin{itemize}[nosep]\n\t\t\\item The operator is standing in front of the robot.\n\t\t\\item Three to four additional people are used to simulate a crowd and later form a queue.\n\t\\end{itemize}\n\t\n\t\\item \\textbf{Objects}: \n\t\t\\begin{itemize}[nosep]\n\t\t\t\\item At least two bags are placed near the car location.\n\t\t\t\\item A small object on the ground.\n\t\t\t\\item A hard-to-see object.\n\t\t\t\\item Retractable barriers.\n\t\t\\end{itemize}\n\t\n\t\\item \\textbf{Uncontrolled environment:} There are no restrictions on other people walking by, standing near, or observing the robot throughout the test.\n\\end{itemize}\n\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Following the operator:} The robot should inform the operator when it is ready to follow them. The operator walks naturally towards the designated car location. Upon arrival, the operator points to one of the bags.\n\n\t\\item \\textbf{Obstacles:} The robot encounters the following obstacles along its way (in arbitrary order):\n\t\\begin{enumerate*}[label=(\\alph*)]\n\t\t\\item a small object on the ground,\n\t\t\\item a hard-to-see object,\n\t\t\\item a crowd of people obstructing the path, and\n\t\t\\item a small area blocked using retractable barriers.\n\t\\end{enumerate*}\n\t\\item \\textbf{Picking up the bag:} The robot must identify and pick up the bag pointed at by the operator.\n\t\\item \\textbf{Bag delivery:} The robot takes the bag to the starting location. It may place the bag on the floor.\n\n\t\\item \\textbf{Optional goals:}\n\t\\begin{enumerate}\n\t\t\t\\item \\textbf{Following the queue:} After reaching 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.\n\t\\end{enumerate}\n\n\\end{enumerate}\n\n\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}[nosep]\n\n\t\\item \\textbf{Car location:} A fixed location outside the arena is designated as the “car” area. No actual car is required.\n\n\t\\item \\textbf{Reaching the car:} The robot can reach the car location only by following the operator (the location is unknown before the test).\n\n\t\\item \\textbf{Deus ex Machina:} Penalties apply if the robot loses the operator and needs help recovering. The following forms of assistance are penalized:\n    \\begin{enumerate}\n     \\item Natural interaction (e.g., waving and calling)\n     \\item Unnatural interaction (e.g., raising both hands and jumping)\n\t \\item Returning in front of the robot to resume following.\n     \\item Physical contact (e.g., pulling the robot's hand)\n    \\end{enumerate}\n\tPenalties 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.\n\\end{enumerate}\n\n\n\\subsection*{Referee Instructions}\n\nThe referees need to:\n\\begin{itemize}[nosep]\n\t\\item Assign one volunteer as the operator.\n\t\\item Assign three to four people to obstruct the robot's path and later form a queue.\n\t\\item Choose positions for the bags and assign a bag to the operator.\n\t\\item Choose the order of the obstacles that the robot will face outside while following the operator.\n\t\\item Designate a location outside as a car location.\n\t\\item Designate a location for the queue to form. The queue is composed of the same people that form the crowd.\n\t\\item Mind the robot when it moves around.\n\t\\item Ensure the operator follows the robot's instructions, steps over small obstacles, and walks naturally around objects.\n\\end{itemize}\n\n\\subsection*{OC Instructions}\n\nAt least two hours before test:\n\\begin{itemize}[nosep]\n\t\\item Select and announce the robot's starting point.\n\t\\item Select which bags will be used in the test.\n\t\\item Organize retractable barriers.\n\\end{itemize}\n\n\\subsection*{Score Sheet}\n\\input{scoresheets/HelpMeCarry.tex}\n"
  },
  {
    "path": "tasks/old/OpenChallenge.tex",
    "content": "\\newcommand{\\bonusRobotCoop}{50~}\n\n\\section{Open Challenge}\n\\label{sec:test_open_challenge}\n\nDuring the Open Challenge teams are encouraged to demonstrate recent research results and the best of the robots' abilities. It focuses on the demonstration of new approaches/applications, human-robot interaction and scientific value.\n\n\\subsection{Task}\n\nThe Open Challenge consists of a demonstration and an interview part.\nIt is an open demonstration which means that the teams may demonstrate anything they like.\nThe performance of the teams is evaluated by a jury consisting of all team leaders, TC and EC.\n\\OpenDemonstrationTask{seven}{three}\n\n\\subsection{Presentation}\nDuring the demonstration, the team can present the addressed problem and the demonstrated approach.\n\\begin{itemize}\n\t\\item A video projector or screen, if available, may be used to present a brief (max. 2 minute) presentation relevant to the demonstration.\n\t\\item Teams may omit the video, use a more brief video, or have the robot act over the video in order to make more time for the robot demo.\n\t\\item There may be no human presenter. This is intended to be a demonstration of the robot's capabilities and not a research talk. The robot may present for itself (e.g., describing what it is doing or providing a narrative for the presentation on its own).\n\t\\item Humans may interact with the robot during the interaction, but are not to act as presenters. This judgement is left to the jury.\n\t\\item The team can also visualize robot's internals, e.g., percepts.\n\\end{itemize}\n\nIt is important to note that the jury may decide to end the demonstration if there is nothing happening or nothing \\emph{new} is happening.\n\n\\OpenDemonstrationChanges\n\n\\subsection{Jury evaluation}\n\\begin{enumerate}\n\t\\item \\textbf{Jury of team leaders:} All teams have to provide \\emph{one} person\n\t(preferably the team-leader) to follow and evaluate the entire Open Challenge.\n\t\\item \\textbf{Evaluation:} Both the demonstration of the robot(s), and the answers of the team in the interview part are evaluated.\\\\\n\tFor each of the following \\emph{evaluation criteria}, each jury member submits a score from $0-100$:\n\t\\begin{enumerate}\n\t\\item Novelty and (scientific) contribution\n\t\\item Difficulty level of the demonstrated task\n\t\\item Success of the demonstration\n\t\\item Overall (demo was convincing, fluent, interesting, etc.)\n\t\\end{enumerate}\n\tA jury member is not allowed to evaluate and give points for the own team.\n\t\\item \\textbf{Normalization and outliers}:\n\t\\begin{enumerate}\n\t\t\\item The points given by each jury member are scaled to obtain a score from $0.0-1.0$.\n\t\t\\item The normalized total score for each team is the mean of the jury member scores.\n\t\t\tTo neglect outliers, the $N$ best and worst scores are left out:\n\t\t\t$$\\mbox{score}_{norm} = \\frac{\\sum\\mbox{team-leader-score}}{\\mbox{number-of-teams} - (2N+1)}\\times\\frac{1}{100},\n\t\t\t\\quad N=\\begin{cases}2, & \\mbox{number-of-teams} \\ge 10\\\\1, & \\mbox{number-of-teams} < 10 \\end{cases}$$\n\t\t\\end{enumerate}\n\t\t\\item The final Open Challenge score for each team is computed at the end of regular tasks. The Open Challenge \\scoring{final score} is the product of the normalized score multipled by the highest score achieved in the competition:\n\t\t$$\\mbox{score} = \\mbox{score}_{norm} \\times \\frac{min\\Big(250, max\\big(\\{S_2\\}\\big)\\Big)}{250},\n\t\t\\quad \\{S_2\\}=\\mbox{All scores}\n\t\t$$\n\\end{enumerate}\n\n\\subsection{Additional rules and remarks}\n\\begin{enumerate}\n\t\\item \\textbf{Start signal:} There is no standard start-signal for this test.\n\t\\item \\textbf{Abort on request:} At any time during the demonstration, the jury may interrupt and abort the demonstration:\n\t\\begin{enumerate}\n\t\t\\item if nothing is shown: in case of longer delays (more than one minute), e.g., when the robot does not start or when it got stuck;\n\t\t\\item if nothing new is shown: the demonstrated abilities were already shown in previous tests (to avoid dull demonstrations and push teams to present novel ideas).\n\t\\end{enumerate}\n\\end{enumerate}\n\n\\subsubsection{Team-team-interaction:}\n\\label{rule:OC-team-team-interaction}\nAn extra bonus of up to \\bonusRobotCoop points can be earned if robots from two teams (4 robots maximum, 2 from each team) successfully collaborate (robot-robot interaction).\n\\begin{enumerate}\n\t\\item This bonus is earned for both teams.\n\t\\item The robot(s) of the other team must only play a minor role in the total demonstration.\n\t\\item It must be made clear that the demonstrations from the two teams are not similar, otherwise the points cannot be awarded.\n\t\\item In case a team receives two (or more) bonuses, the maximum bonus will be taken.\n\t\\item The collaboration is possible even if one of the two teams has not reached Stage 2.\n\t\\item A team not participating in Stage 2 receives no bonus points for this test.\n\\end{enumerate}\n\n% \\paragraph*{Inter-league collaboration}:\n% \\label{rule:OC-inter-league-collaboration}\n% Inter-league collaboration must be announced to the OC at least one day before the test. Teams participating in multiple @Home Leagues does receive no bonus for cooperation. Standard Platform robots are allowed to take part in the Open Challenge of the Open Platform League, but Open Platform robots can \\emph{not} participate in any Standard Platform League's test.\n\n% For sake of clarity, please consider the following example: Let be A, B two teams participating in RoboCup @Home where\n% \\begin{itemize}\n% \t\\item Team A participates in SSPL.\n% \t\\item Team B participates in both SSPL and OPL.\n% \t\\item Team A and B have qualified into Stage II.\n% \\end{itemize}\n% Then, by applying the \\textit{Inter-league collaboration Rule} (See~\\refsec{rule:OC-inter-league-collaboration}) the following statements can be concluded:\n% \\begin{itemize}\n% \t\\item B OPL can not participate in A SSPL's open challenge.\n% \t\\item B OPL can not participate in B SSPL's open challenge.\n% \t\\item A SSPL can participate in B OPL's open challenge. Team A and B get a bonus because A <> B.\n% \t\\item B SSPL can participate in B OPL's open challenge. There is no bonus because B = B.\n% \\end{itemize}\n\n\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/PnG.tex",
    "content": "\\section{Procter \\& Gamble Dishwasher Challenge [DSPL \\& OPL]}\n\n\\newcommand{\\openpart}{%\nAll teams are allowed to participate and compete in the \\textit{Procter \\& Gamble Challenge} regardless of whether they advanced to the Stage II or not, and get the award.\n}\n\nThe robot has to remove all dishes from a table (presumably after dinner) and place them into the dishwasher.\n\n\\subsection{Open Participation}\n\\openpart\n\n\\subsection{Focus}\nThis test focuses on object perception, manipulation, and planning.\n\n\\subsection{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Location:} This test takes place in the arena. A dining table is located close to the dishwasher.\n\t\\item \\textbf{Dishwasher:} The dishwasher is near the table, preferably located in the same room. The dish washer is open and with all racks out.\n\t\\item \\textbf{Tray:} A plastic tray is located either on top of the dishwasher, or onto one of its racks. The tray may have tableware and cutlery placed inside already.\n\t\\item \\textbf{Table setting:} The table has several objects disposed in a typical setting for a meal for one person. These objects include tableware (e.g.~place mats, napkins, dishes, glasses), and silverware (e.g.~forks, spoons, knives).\n\t\\item \\textbf{Spot:} There is a dirty spot on the table next to the table setting that requires cleaning.\n\\end{itemize}\n\n\\subsection{Task}\n\t\\begin{enumerate}\n\t\t\\item \\textbf{Entering the arena:} The robot enters the arena and navigates to the designated location.\n\t\t% \\item \\textbf{Fetching command:} The operator requests the robot to clean up the table.\n\t\t\\item \\textbf{Clean the table:} The robot takes all the tableware and cutlery to either the dishwasher or to the tray, as instructed (team's choice).\n\t\t\\item \\textbf{Filling the dishwasher:} If the robot placed the objects into the tray, it must proceed to put the tray onto one of the dishwasher racks.\n\t\t\\item \\textbf{Place the Cascade Pod:} The robot places the  Cascade Pod~into the dishwasher, preferrably inside the tab compartment.\n\t\t\\item \\textbf{Scrub spots and spills:} The robot detects spots and spills on the table and clean them up using the cleaning cloth or sponge it has retrieved previously.\n\t\t\\item \\textbf{Leave the arena:} The robot leaves the arena once it has finished cleaning.\n\t\\end{enumerate}\n\n\\subsection{Additional rules and remarks}\n\\begin{enumerate}\n\t\\item \\textbf{Collisions:} Slightly touching the table is allowed, as well as slightly pushing some objects. However, driving over the objects or any other form of a major collision is not allowed, and the referees directly stop the robot (see~\\refsec{rule:safetyfirst}).\n\n\t\\item \\textbf{Objects:} A total of 6 objects are used in this test following the distribution shown below:\n\t\\begin{itemize}\n\t\t\\item\\textit{Silverware}: Any two objects.\n\t\t\\item\\textit{Tableware}: Any three objects, excluding silverware. At least one must be a dish.\n\t\t\\item\\textit{Cascade Pod}: One Cascade Pod.\n\t\\end{itemize}\n\tAll objects used in this test are taken from the list of standard objects (See~\\ref{rule:scenario_objects}). All of them are considered to be known to the robot.\n\n\t\\item \\textbf{Safe placing:} Objects placed in the rack or tray must be placed gently and safely. It must be clear to the referee that the robot is trying to put the object in place and not dumping, throwing, or dropping it. Dumped and dropped objects won't be scored even if they land in the dishwasher/tray.\n\n\t\\item \\textbf{Special Objects:} The plastic tray and the Cascade Pod are provided by \\textit{Procter \\& Gamble} and are considered special objects. Teams are not allowed to use substitutes of them in this test.\n\n\t\\item \\textbf{Spots and Spills:} The referees must place a spot (e.g.~jam or chocolate syrup) or spill some liquid (e.g.milk) on the table before the test starts. The substance used to create the spot shall be clearly visible and contrasting with the table. When cleaning it, it must be clear the robot has detected the spot and is trying actively to clean it. The selection of the cleaning tool (sponge or cloth) is made by the team.\\\\\n\t\\textbf{Remark:} When possible, no tablecloth will be used to ease cleaning. If removing the tablecloth is not possible, a dry spot will be used instead (e.g.~breadcrumbs or coffee powder).\n\n\t\\item \\textbf{Dishwasher:} Is up to the team to decide whether the robot will place the objects in the dishwasher's rack or in the official tray. When using the tray, it should be loaded into the dishwasher.\n\n\t\\item \\textbf{Dishwasher door:} Unless requested otherwise by the team, the dishwasher is open and with the racks pulled out by default. The team leader can, however, request the diswasher to be closed and score additional points for opening it. If the robot fails to open the door, it must clearly state it and request the referee to open it.\n\n\t\\item \\textbf{Human-Robot Interaction:} The robot is allowed to\n\t\\begin{enumerate*}[label={\\alph*)}]\n\t\\item indicate the location of the cloth or sponge,\n\t\\item ask the human operator what to do with food leftovers,\n\tand\n\t\\item request operator's help to find the spot (e.g.~pointing at it).\n\t\\end{enumerate*}\n\tThis interaction is extensible to any kind of reasonable request from the robot when attempting to solve the task.\n\n\t\\item \\textbf{Open Participation}\n\t\\openpart\n\tHowever, scoring in this test will be only considered for those teams who have advanced to Stage II. This way, no Stage I team can have an overall score higher than a Stage II team.\n\n\\end{enumerate}\n\n% \\subsection{Data recording}\n% Please record the following data (See~\\refsec{rule:datarecording}):\n% \\begin{itemize}\n% \t\\item Images of recognized objects\n% \t\\item List of moved items\n% \\end{itemize}\n\n\\subsection{Referee instructions}\n\nThe referee needs to\n\\begin{itemize}\n\t\\item Place the table setting.\n\t\\item Clean spots smudged by the previous robot.\n\t\\item Place the new spot meant to be clean.\n\t\\item Place the tray on the dishwasher or onto the rack, as requested by the team.\n\\end{itemize}\n\n\\subsection{OC instructions}\nDuring Setup days:\n\\begin{itemize}\n\t\\item Provide official cutlery and tableware for training.\n\\end{itemize}\n\n2 hours before the test:\n\\begin{itemize}\n\t\\item Announce the predefined location to take the command.\n\t\\item Announce the predefined location of the Cascade Pod.\n\\end{itemize}\n\n\\newpage\n\\subsection{Score sheet}\n\\input{scoresheets/PnG.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n\n"
  },
  {
    "path": "tasks/old/Receptionist.tex",
    "content": "\\section{Receptionist}\\label{test:receptionist}\n\n\\subsection*{Description}\nThe robot has to guide two new guests to the living room, introduce them to each other, and offer them a seat.\\\\\n    \n\\textbf{Main goal:}\n    The robot welcomes and assists two newcomers at a party, offering them a seat and maintaining appropriate gaze direction during conversation (at person speaking, direction of navigation).\n\n% \\vspace{-5pt}\n\\textbf{Optional goals:}\n\\begin{enumerate}[nosep]\n\t\\item Open the entrance door for each arriving guest.\n\t\\item Visually describe the first guest for the second guest before reaching the living room\n\t\\item Identify similarities between the guests and the host and incorporate them into the conversation.\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{\\SysI{}}, \\emph{\\HRI{}}, \\emph{\\PerDet{}}, \\emph{\\PerRec{}}\n% human detection and recognition, safe navigation and human-robot interaction with unknown people.\n\n\\subsection*{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Location}: \n\t\\begin{itemize}\n\t\\item The test takes place in the living room.\t\n\t\\item The robot starts inside the \\Arena{} at a predefined location.\n\t\\item A table with drinks is prepared near the living room\n\t\\item \\textbf{Entrance:} The entrance door is open by default. The team leader can request it to be closed to allow the robot to earn additional points by opening it for the guests.\n\t\\end{itemize}\n\t\n\t\\item \\textbf{People:} \n\t\\begin{itemize}\n\t\\item \\textbf{Host:} The host's name, favorite drink and interest will be announced before the test. The host is the only person seated in the living room until the robot offers a seat to a guest.\n\n\t\\item \\textbf{Arriving Guests:} Each guest has a name, favorite drink, and one interest.\n\tGuests arrive separately.\n\tAn arriving guest will either step in front of the robot or wait behind the door if it is closed. \n\tThe robot must guide each guest to the beverage area and then to the living room, where they are introduced to each other.\n\t\n\t\\item \\textbf{Passive Guests:} A few other individuals (including possibly spectators) are standing in small groups of two or three throughout the arena, but do not obstruct key areas such as the couch, chairs, or beverage table.\n\t\\end{itemize}\n\n\\end{itemize}\n\n\\subsection*{Procedure}\nBoth guests arrive separately. The robot either opens the door for the guest or waits for them at the starting location. \nIt greets the guest and asks for their name.\nThe robot then guides the guest to the beverage area, asks for their favorite drink, and indicates whether that drink is available and where it is located on the table.\nAt a freely chosen moment, the robot also asks for the guest's interest.Afterward, it escorts the guest to the living room and offers a seat. Once both guests are seated, the robot introduces them to each other.\n\n\\begin{itemize}\n\t\\item \\textbf{Greeting guests:} Each guest paces slightly left and right during conversation. Other people may appear in the background.\n\t\n\t\\item \\textbf{Looking at person:} The robot must look at the person it is talking to. Guests will move slightly to confirm the robot dynamically follows them with its gaze. Points for gaze tracking are awarded only if the robot continuously tracks the moving person.\n\t\n\t\\item \\textbf{Looking at direction of navigation:} The robot must look in the direction it is navigating. Persistently looking in an unrelated direction or at unrelated people during navigation results in a score deduction.\n    \n    \\item \\textbf{Smalltalk} The robot asks each guest for one interest.\n    \n    \\item \\textbf{Finding the drink} The robot shows each guest the beverage table, asks for their favorite drink, and tells them if and where the drink is available (left, center, right).\n\t\n\t\\item \\textbf{Seating People:} The robot must clearly point to a location or seat for each guest.\n\n\t\\item \\textbf{Switching Places:} After being seated, guests may switch seats.\n\t\n\t\\item \\textbf{Introductions:} When introducing two people to each other, the robot must clearly identify each guest by name, state their favorite drink, and mention one interest.\n\n\\end{itemize}\n\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Opening Door Timing:} The test time starts either when the first guest enters the arena or 2 minutes after the start signal, whichever comes first.\n\n\t\\item \\textbf{Misunderstanding:} Asking a guest to repeat themselves is acceptable. However, using an incorrect name, drink, or interest will result in a 20 point penalty per item.\n\t\t\n\t\\item \\textbf{Partial Scoring:} The main task allows partial scoring per guest.\n\n\t\\item \\textbf{Additional Seating:} Referees may add chairs to the living room area.\n\t\n\t\\item \\textbf{Deus ex Machina:} Score reduction applies per guest as follows:\n\t\\begin{itemize}[nosep]\n\t\t\\item \\textbf{Custom Operator:} Since the main focus of the test is HRI, no custom operator is allowed.\n\t\t\\item \\textbf{Alternative HRI:} Using alternative HRI methods to understand a guest results in a 75 point penalty.\n\t\t\\item \\textbf{Recognizing People:} If the robot requires help to identify a person, 200 points are deducted.\n\t\\end{itemize}\n\\end{enumerate}\n\n\n\\subsection*{Instructions}\n\n\\subsubsection*{To Referee}\n\nThe referees need to:\n\\begin{itemize}\n\t\\item Assign name, drink and one interest to three volunteers.\n\t\\item Arrange and rearrange people in the living room.\n\t\\item Change the selection of drinks in the beverage area.\n\t\\item Open the entrance door upon request from the robot.\n\\end{itemize}\n\n\\subsubsection*{To OC}\n\n\nDuring setup day:\n\\begin{itemize}\n\t\\item Announce the location of the beverage area.\n\\end{itemize}\n\n\nAt least two hours before test:\n\\begin{itemize}\n\t\\item Announce the starting position.\n\t\\item Announce host's name, favorite drink and interest.\n\t\\item Recruit five volunteers: one as the host, two as arriving guests and two as passive guests.\n\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/Receptionist.tex}"
  },
  {
    "path": "tasks/old/SPR.tex",
    "content": "\\section{Speech and Person Recognition}\nThe robot has to identify unknown people and answer questions about them and the environment.\n\n\\subsection{Focus}\nThis test focuses on human detection, sound localization, speech recognition, and robot interaction with unknown people.\n\n\\subsection{Setup}\n\\begin{enumerate}\n    \\item \\textbf{Location:} One room of the arena is used for this test\\footnote{This test may also be held outside the arena}.\n    \\item \\textbf{Crowd:} There is a crowd of 5 to 10 people in the designated room. People may be standing, sitting, lying, and in any pose.\n    \\item \\textbf{Doors:} All doors of the apartment are open, except for the entry door.\n\\end{enumerate}\n\n\\subsection{Task}\n\\begin{enumerate}\n    \\item \\textbf{Start:} The robot starts at a designated starting position and announces it wants \\textit{to play riddles}.\n\n    \\item \\textbf{Waiting and turn:} After stating that it wants \\textit{to play a riddle game}, the robot waits for 10 seconds while a crowd is merged on it's back. When the time elapses, the robot must turn around (about $180\\degree$) and find the crowd.\n\n    \\item \\textbf{Requesting an operator:} After turning around, the robot must state the size of the crowd (including male and female count\\footnotemark) and request for an operator (e.g.~\\textit{who want to play riddles with me?}). The crowd will move and surround the robot, letting the operator to stand in front of the robot.\n    \\footnotetext{It is possible to state the number of people whose gender couldn't be determined by the robot, therefore stating correctly the size of the crowd and, possibly, one of the gender groups.}\n\n    \\item \\textbf{The riddle game:} Standing in front of the robot, the operator will ask 5 questions.\\\\\n    The robot must answer the question without asking confirmation. Questions will only be asked only once; no repetitions are allowed.\n\n    \\newcounter{enumTempSPR}\n    \\setcounter{enumTempSPR}{\\theenumi}\n    \\item {[DSPL only]} \\textbf{Blind man's bluff game: Crowd line-up.} The crowd will reposition, lining up in front of the robot. A random person from the crowd standing in front of the robot will ask a question. The robot may\n    \\begin{itemize}\n        \\item Turn towards the person who asked the question and answer the question\n        \\item Directly answer the question without turning\n        \\item Turn towards the person and ask them to repeat the question\n    \\end{itemize}\n    This process is repeated with 10 (possibly) different people.\n    The game will end when the 10th question has been made, following a similar distribution of questions as in the riddle game. The robot must answer the question without asking confirmation. Questions may be repeated once.\n\n    \\setcounter{enumi}{\\theenumTempSPR}\n    \\item {[OPL]} \\textbf{Blind man's bluff game: Circling Crowd.} The crowd will reposition, making a circle around the robot. A random person from the crowd surrounding the robot will ask a question. The robot may\n    \\begin{itemize}\n        \\item Turn towards the person who asked the question and answer the question\n        \\item Directly answer the question without turning\n        \\item Turn towards the person and ask them to repeat the question\n    \\end{itemize}\n    This process is repeated with 5 (possibly) different people.\n    The game will end when the 5th question has been made, following the same distribution of questions as in the riddle game. The robot must answer the question without asking confirmation. Questions may be repeated once.\n\n    \\item \\textbf{Leave} The robot must leave the arena/test area after all questions have been asked or when instructed to do so.\n\\end{enumerate}\n\n\\subsection{Additional rules and remarks}\n\n\\begin{enumerate}\n    \\item \\textbf{Bypassing ASR:} Bypassing Automated Speech Recognition via the CONTINUE rule (see~\\refsec{rule:asrcontinue}) is not allowed during this test.\n    \\item \\textbf{Asked questions:} The distribution of questions to be randomly asked is a follows:\n    \\begin{itemize}\n        \\item One is a predefined question\n        \\item Between one and two are about the arena and its status\n        \\item Between one and two are about the crowd\n        \\item Between one and two are about the list of official objects\n    \\end{itemize}\n    Question examples see Appendix~\\refsec{chap:robogame-appendix}. Questions are generated by the generator which is made publicly available at https://github.com/kyordhel/GPSRCmdGen.\n    \\item \\textbf{Distance to the robot:} The distance between each person and the robot must be between 0.75 and 1.0 meters away from the robot position (See Figure~\\ref{fig:asrsetup}). In the \\textit{riddle game} the operator shall be between -60$^{\\circ}$ and 60$^{\\circ}$ from the robot's center (front range).\n    \\item \\textbf{Precise turning:} When the robot finishes turning toward an operator, it must be clear that the robot is facing the person who made the question.\n    \\item \\textbf{Question repetition:} In the \\textit{blind man's bluff game}, if the robot asks for repetition, it should be done clear and loud, and after the robot has ended turning.\n    \\item \\textbf{Question timeout:} If the robot does not answer within 10 seconds, the question is considered as \\textit{missed}, and referee will proceed with the next one.\n    \\item \\textbf{Standing still operators} Operators are not allowed to move to or turn towards the robot or shout to the robot.\n    \\item \\textbf{Water-clear answers:} If the referee is unable to hear or understand the robot's answer, the question is considered as \\textit{incorrect}. Single-word and short answers should be avoided\n\\end{enumerate}\n\n\\begin{figure}[!h]\n\t\\centering\n\t\\includegraphics[width=0.5\\columnwidth]{images/asrsetup.pdf}\n\t\\caption{Speech recognition test: person setup around the robot for 2nd part.}\n\t\\label{fig:asrsetup}\n\\end{figure}\n\n% \\subsection{Data recording}\n% Please record the following data (See~\\refsec{rule:datarecording}):\n% \\begin{itemize}\n%     \\item Audio\n%     \\item Commands\n%     \\item Images\n% \\end{itemize}\n\n\\subsection{Referee instructions}\n\nThe referee needs to\n\\begin{itemize}\n    \\item avoid shouting to the robot\n    \\item avoid getting closer to the robot (or even move)\n    \\item speak to the robot loud and clear with plain standard English\n    \\item avoid repeating questions for the same robot\n    \\item distribute the questions among the volunteers\n\\end{itemize}\n\n\\subsection{OC instructions}\n\n\\textbf{1 day before the test}\n\\begin{itemize}\n    \\item Provide the set of predefined questions\n\\end{itemize}\n\n\\textbf{2 hours before the test}\n\\begin{itemize}\n    \\item Announce the placement of the robots\n    \\item choose the volunteers for the second part of the test, and clearly explain the procedure to them.\n    \\item When the test is held outside the arena, announce the (way)point through which the robot shall leave\n\\end{itemize}\n\n\\subsection {Audio Data Recollection}\nTeams are encouraged to submit to the TC the audio data recorded during the test, specially that which was captured during speech recoginition. If so, teams are urged to provide it with annotation of what the user said and what was recognized. Audio files are expected to be mono, one per microphone (in the case array recordings), of a sample rate equal to or higher than 16 kHz, and with a sample size of at least 16 bits. Depending on the quality of the recordings and their annothations, an official certificate that formalizes these efforts may be provided to submitting teams.\n\n\\newpage\n\\subsection{Score sheet}\n\\input{scoresheets/SPR.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/ServeBreakfast.tex",
    "content": "\\section{Serve Breakfast}\n\\label{test:serve-breakfast}\nThe robot has to set a table for breakfast for one person and prepare cereal for them.\\\\\n\n\\noindent \\textbf{Main Goal:} Place breakfast items on a table (bowl, spoon, cereal box, and milk carton) and prepare cereal.\\\\\n\n\\noindent \\textbf{Optional Goals:}\n\\begin{enumerate}[nosep]\n\t\\item Pour milk into the bowl\n\t\\item Place the spoon next to the bowl\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Object perception}, \\emph{manipulation}, and \\emph{task planning}.\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{Locations:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Start location:} Before the test, the robot waits outside the \\Arena{} and navigates to the kitchen when the door is open.\n\t\t\t\\item \\textbf{Test location:} The test itself takes place in the kitchen.\n\t\t\\end{itemize}\n\t\t\\item \\textbf{People:}\n\t\t\t\\begin{itemize}\n\t\t\t\t\\item No people are involved in the test unless the robot requires human assistance.\n\t\t\t\\end{itemize}\n\t\\item \\textbf{Furniture:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Table:} The robot serves breakfast on the table which is announced beforehand.\n\t\t\t\\item \\textbf{Chairs:} Chairs may be placed around the table and won't be removed.\n\t\t\t\\item \\textbf{Doors:} The robot does not need to open any doors to find the breakfast items.\n\t\t\\end{itemize}\n\t\\item \\textbf{Objects:}\n\t\t\\begin{itemize}\n\t\t\t\\item All objects used in the test are in their predefined locations when the test starts.\n\t\t\\end{itemize}\n\\end{itemize}\n\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Table selection:} At least two hours before the test, the referees announce the surface that will be used as a table.\n\t\\item \\textbf{Test start:} The robot moves to the kitchen when the arena door is open.\n\t\\item \\textbf{Serving breakfast:} To serve breakfast, the robot has to place breakfast items on a table (bowl, spoon, cereal box, and milk carton).\n\t\\item \\textbf{Pouring cereal:} After placing the breakfast items on the table, the robot should pour cereal into the bowl.\n\t\\item \\textbf{Optional goals:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Pouring milk:} After pouring cereal, the robot pours milk into the bowl in order to fully prepare the breakfast.\n\t\t\t\\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.\n\t\t\\end{itemize}\n\\end{enumerate}\n\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Safe placing:} Objects must be placed with care, namely the robot should place rather than throw or drop objects.\n\t\\item \\textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular for:\n\t\\begin{itemize}[nosep]\n\t\t\\item pointing to an object or telling the robot where an object is or where to place it\n\t\t\\item handing an object over to the robot\n\t\t\\item having a human place objects on the table\n\t\t\\item having a human pour cereal into the bowl\n\t\\end{itemize}\n\\end{enumerate}\n\n\\subsection*{OC Instructions}\n\nDuring the \\SetupDays:\n\\begin{itemize}\n\t\\item Provide official cutlery and tableware for training.\n\\end{itemize}\n\nAt least two hours before the test:\n\\begin{itemize}\n\t\\item Announce the table that will be used.\n\t\\item Announce a rough location of the table.\n\\end{itemize}\n\n\n\\subsection*{Referee Instructions}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Remove all objects from the table.\n\t\\item Place all objects in their default locations.\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/ServeBreakfast.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/ServingDrinks.tex",
    "content": "\\section{Serving Drinks [Party Host]}\n\\label{test:serving-drinks}\nThe robot takes orders of drinks from party guests and delivers them.\n\n\\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.\\\\\n\n\\noindent \\textbf{Optional Goals:}\n\\begin{enumerate}[nosep]\n\t\\item Inform a guest of drink unavailability upon request.\n\t\\item Correct the bartender.\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Human-Robot interaction}, \\emph{person recognition}, \\emph{object recognition}.\n\n\\subsection*{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Locations}: \n\t\t\\begin{itemize} \n\t\t\t\\item The test takes place in the living room.\n\t\t\t\\item The robot starts inside the \\Arena{} at a predefined location near the entrance door.\n\t\t\\end{itemize}\n\t\\item \\textbf{People}:\n\t\t\\begin{itemize} \t\t\t\n\t\t\t\\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.\n\t\t\t\\item The party host is also in the living room, and is known to the robot (including name and favourite drinks).\n\t\t\t\\item The bartender may be standing either behind the bar or next to it, depending on the \\Arena{} setup.\n\t\t\\end{itemize}\n\t\\item \\textbf{Furniture}: The bar can be any flat surface where objects can be placed, in any room but the living room.\n\t\\item \\textbf{Objects}: All available beverages are on top of the bar. One of the drink requests is not available.\n\\end{itemize}\n\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\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.\n\t\n\t\\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.\n\t\n\t\\item \\textbf{Changing places:} when the robot is not in the living room, the referee may re-arrange the guests.\n\n\t\n\t\\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. \n\n\t\\item \\textbf{Optional Goals:}\n\t\\begin{enumerate}\n\t \\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.\n\t\\end{enumerate}\n\n\t\n\\end{enumerate}\n\n\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}\n\n\t\\item \\textbf{Deus ex Machina:} Score reductions are applied for requesting the following forms of human assistance:\n\t\\begin{itemize}[nosep]\n\t\t\\item \\textbf{Actively placing order:} Approaching the robot to place an order.\n\n\t\t\\item \\textbf{Calling to place order:} Calling the robot (either by shouting or waving).\n\n\t\t\\item \\textbf{Avoiding manipulation:} Asking the bartender to place a drink on the robot.\n\t\t\n\t\\end{itemize}\n\n\t\\item \\textbf{Empty \\Arena{}:} For this task only the robot, the guests, the host, and the Bartender are allowed to be in the \\Arena{}.\n\\end{enumerate}\n\n\\subsection*{Referee instructions}\n\nThe referees need to\n\\begin{itemize}\n\t\\item Select at least 5 volunteers and assign predefined names.\n\t\\item Assign a preferred drink and an alternative to at least three guests\n\t\\item Give drinks to the other guests\n\t\\item Select the person (bartender) who will serve the drinks\n\t\\item Tell guests when to switch places\n\t\\item Make sure one preferred drink is missing\n\\end{itemize}\n\n\\subsection*{OC instructions}\n\nDuring the \\SetupDays{}:\n\\begin{itemize}\n\t\\item Choose the volunteers (at least two, in case one is not available for a particular test) to be the host.\n\\end{itemize}\n\n2h before test:\n\\begin{itemize}\n\t\\item Specify and announce the bar location.\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/ServingDrinks.tex}\n"
  },
  {
    "path": "tasks/old/SetTable.tex",
    "content": "\\section{Set the Table [Housekeeper]}\n\\label{test:set-the-table}\nThe robot has to set the table for dinner for one person.\n\n% \\subsection*{Focus}\n% This test focuses on object perception, manipulation, and planning.\n\n\\noindent \\textbf{Main Goal:} Neatly lay tableware and cutlery on the dining table (5 objects).\n\n\\noindent \\textbf{Optional goals:}\n\\begin{enumerate}[nosep]\n\t\\item Picking all utensils from the cupboard drawer\n\t\\item Closing the cupboard drawer\n\t\\item Laying a place mat first\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Object recognition}, \\emph{Object manipulation}.\n\n%move pick utensils from drawer to bonus\n% remove one of the items from pick ups\n% add open cupboard to deus ex machina\n%\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{Locations:} This test takes place in the \\Arena{}, in a room with a table and a cupboard.\n\t\\item \\textbf{Furniture:}\n\t\t\\begin{itemize}\n\t\t \\item Chairs may be placed around the table and will not be removed.\n\t\t \\item The cupboard doors and drawers are initially closed.\n\t\t\\end{itemize}\n\t\\item \\textbf{Objects}: \n\t\\begin{itemize}\n\t\t \\item \tThe objects used in this test can be found in the cupboard, not in their predefined locations.\n\t\t \\item The following objects will be available in the cupboard:\n\t\t \\begin{itemize}\n\t\t\t\\item\\textit{Silverware}: Any two different objects (fork, knife, or spoon).\n\t\t\t\\item\\textit{Tableware}: A dish and any other object (bowl, cup, or mug).\n\t\t\t\\item\\textit{Napkin}: A cloth or paper napkin.\n\t\t\t\\item\\textit{Place mat}: A place mat will be at the bottom of all the object in the cupboard.\n\t\t \\end{itemize}\n\t\t \n\t\t\\end{itemize}\n\\end{itemize}\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\n\t\\item \\textbf{Open cupboard door:} The robot goes to the cupboard and opens the door.\n\t\\item \\textbf{Table setup:} The robot picks up five objects from the cupboard, and sets them on the table according to the following placement: \n\t\t\\begin{itemize}[nosep]\n\t\t \\item Knife and spoon must be placed to the right of the plate.\n\t\t \\item The mug or cup must be placed in front of the cutlery.\n\t\t \\item Fork and napkin must be placed to the left of the plate.\n\t\t \\item The bowl must be stacked on top of the plate.\n\t\t\\end{itemize}\n\n\\end{enumerate}\n\n\n\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\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.\n\n\t\\item \\textbf{Deus ex Machina:} Score reductions are applied for requesting the following forms of human assistance:\n\t\\begin{itemize}[nosep]\n\t\t\\item \\textbf{Handover:} Handing over an object.\n\t\t\n\t\t\\item \\textbf{Showing objects:} Pointing, or telling to the robot where an object is or where to place it.\n\n\t\\end{itemize}\n\n\t\\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.\n\n\\end{enumerate}\n\n\\subsection*{Referee instructions}\n\nThe referee needs to\n\\begin{itemize}\n\t\\item Remove all objects from the table\n\t\\item Place objects in their starting position (in the drawer or in the cupboard)\n\t\\item Close the door or drawer, depending on which one the robot is going to attempt to open.\n\\end{itemize}\n\n\\subsection*{OC instructions}\nDuring \\SetupDays\n\\begin{itemize}\n\t\\item Provide official cutlery and tableware for training.\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/SetTable.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n\n"
  },
  {
    "path": "tasks/old/SmoothieChef.tex",
    "content": "\\section{Smoothie Chef (Placeholder)}\n\\label{test:smoothie-chef}\nThe home owner teaches the robot how to make a smoothie and the robot repeats the task on its own.\\\\\n\n\\noindent \\textbf{Main goal:} The robot prepares a smoothie as taught, placing 3 fruits, milk, and sugar in a blender.\\\\\n\n\\noindent \\textbf{Optional goals:}\n\\begin{enumerate}[nosep]\n\t\\item Pouring \\emph{milk} without spilling\n\t\\item Pouring \\emph{sugar} without spilling\n\\end{enumerate}\n\n% 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.\n\n\\subsection*{Focus}\n\\emph{Action recognition and understanding}, \\emph{demonstration-based learning}, \\emph{object recognition and manipulation}.\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n    \\item \\textbf{Locations:}\n        \\begin{itemize}\n            \\item \\textbf{Test location:} The test takes place in the kitchen.\n            \\item \\textbf{Start Location:} The robot starts the test at the kitchen counter.\n            \\item \\textbf{Operator location:} The operator is standing in front of the robot behind the counter.\n        \\end{itemize}\n    \\item \\textbf{People:}\n        \\begin{itemize}\n            \\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.\n        \\end{itemize}\n    \\item \\textbf{Furniture:}\n\t    \\begin{itemize}\n            \\item \\textbf{Kitchen counter:} Either the kitchen table or counter can be used in this test.\n        \\end{itemize}\n    \\item \\textbf{Objects:}\n        \\begin{itemize}\n            \\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}).\n            \\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).\n            \\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).\n            \\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.\n            \\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.\n\t\t\tThe score is reduced if an incorrect fruit (which has not been used in the demonstration) is placed inside the blender.\n        \\end{itemize}\n\\end{itemize}\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n    \\item \\textbf{Test start:} The referee asks the team to move the robot to the start location and then gives a start signal.\n    \\item \\textbf{Smoothie demonstration:} The operator shows the robot how to prepare the smoothie.\n    \\item \\textbf{Smoothie preparation:} The robot prepares the smoothie as demonstrated.\n\\end{enumerate}\n\n\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}\n\t\\item \\textbf{Deus ex Machina:} The scores are reduced if human assistance is received, in particular for:\n\t\\begin{itemize}[nosep]\n\t\t\\item starting the test in front of the kitchen counter\n\t\t\\item telling the robot which ingredient comes next (such as by pointing, naming, etc.)\n\t\t\\item handing an object over to the robot\n\t\\end{itemize}\n\\end{enumerate}\n\n\\subsection*{OC Instructions}\nDuring the \\SetupDays:\n\\begin{itemize}\n\t\\item Announce which object will be used as a blender.\n\\end{itemize}\n2 hours before the test:\n\\begin{itemize}\n\t\\item Announce the location of the kitchen counter.\n\t\\item Announce the location where the operator and the robot will perform the task.\n\\end{itemize}\n\n\\subsection*{Referee Instructions}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Clean any spills as necessary.\n\t\\item Shuffle the fruits and put all utensils within a reachable distance from the robot.\n\t\\item Perform a demonstration of the smoothie preparation process for the robot.\n\\end{itemize}\n\n\\subsection*{Score sheet}\n\\input{scoresheets/SmoothieChef.tex}\n"
  },
  {
    "path": "tasks/old/SticklerForRules.tex",
    "content": "\\section{Stickler for the Rules}\n\\label{test:stickler-for-the-rules}\n\n\\subsection*{Description}\nThe robot needs to make sure the house rules are followed.\n\n\\textbf{Main goal:}\nIdentify party guests breaking the house rules, politely clarify to the guest what to do and confirm that the guest is following the rule.\n\n\\textbf{Optional goal:}\nPolitely clarify to the guest what rule is being broken.\n\n\n\\subsection*{Focus}\nThis task focuses on\n\\textit{Object perception},\n\\textit{Human perception},\n\\textit{Action recognition} and\n\\textit{Verbal interaction}.\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\t\n\t\\item \\textbf{Locations:} \n\t\\begin{itemize}\n\t\t\\item This task takes place inside the \\Arena{}.\n\t\t\\item The robot starts at a predefined location in the living room.\n\t\t\\item There are a forbidden room in the house.\n\t\\end{itemize}\t \n\t\\item \\textbf{People:} \n\t\\begin{itemize}\n\t\t\\item There are at least five party guests inside the \\Arena{}.\n\t\t\\item Four of the guests are breaking rules.\n\t\t\\item Guests may not follow the robot's instructions.\n\t\\end{itemize}\n\t\\item \\textbf{Furniture:} All furniture are in their predefined locations.\n\t\\item \\textbf{Objects:} All objects are in their predefined locations.\n\\end{itemize}\n\n\\subsection*{Procedure}\n\t\\begin{enumerate}[nosep]\n\t\t\\item The referee requests the team to move the robot to the start location.\n\t\t\\item The referee gives the start signal and starts the timer.\n\t\t\\item The team leaves the area after the start signal.\t\t\n\t\t\\item A TC member follows the robot ready to press the emergency stop button.\n\t\t\\item The robot Identify party guests breaking the house rules.\n\t\t\\item The robot politely clarify to the guest what to do. \n\t\t\\item The robot confirm that the guest is following the rule.\t\n\t\t\\item \\textbf{Optionally} and Politely, the robot clarify to the guest what rule is being broken.\n\t\\end{enumerate}\n\n\n\\subsection*{Additional rules and remarks}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{House Rules:}\n\t\\begin{enumerate}[nosep]\n\t\t\\item \\textit{No shoes inside the house.}\\\\\n\t\t\\textbf{Policy:} All guests have to take off their shoes at the entrance.\\\\\n\t\t\\textbf{Action:} Take the guests to the entrance and verify they take off their shoes.\n\t\n\t\t\\item \\textit{Forbidden room}\\\\\n\t\t\\textbf{Policy:} No guests are allowed in the \\emph{Forbidden Room}. \\\\\n\t\t\\textbf{Action:} Take the offenders to the other party guests and verify they don't enter back.\n\t\n\t\t\\item \\textit{No littering}\\\\\n\t\t\\textbf{Policy:} Guests are not allowed to leave garbage on the floor.\\\\\n\t\t\\textbf{Action:} Make the (closest) offender pick up the garbage and throw it into the bin.\n\t\n\t\t\\item \\textit{Compulsory hydration}\\\\\n\t\t\\textbf{Policy:} All guests must have a drink in hand at all times.\\\\\n\t\t\\textbf{Action:} Take the guests to the kitchen/bar and make sure they grab a drink.\n\t\\end{enumerate}\n\t\\item \\textbf{Talking to no one:} If the robot is talking to the empty arena or a wall, no additional penalty is applied. \n\t\\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.\n\t\\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.\n\\end{itemize}\n\n\\subsection*{Instructions:}\n\\subsubsection*{Referee instructions}\n\n\\begin{itemize}\n\t\\item Instruct party guests on which rules to break.\n\t\\item Assign each party guest a drink.\n\\end{itemize}\n\n\\subsubsection*{OC Instructions}\nAt least two hours before the test:\n\\begin{itemize}\n\t\\item Select and announce the robot start location.\n\t\\item Select and announce which room is forbidden.\n\\end{itemize}\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/SticklerForRules.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n\n"
  },
  {
    "path": "tasks/old/StoringGroceries.tex",
    "content": "\\section{Storing Groceries}\\label{test:storing-groceries}\nThe robot stores groceries into a cabinet with shelves. Objects are sorted on the shelves based on similarity, for instance an apple is stored next to other fruits.\\\\\n\n\\noindent \\textbf{Main goal:} Move objects from a table to the cabinet, grouping them by category or similarity. Refilling the cereal container.\\\\\n\n\\noindent \\textbf{Optional goals:}\n\\begin{enumerate}[nosep]\n\t\\item Opening the cabinet doors\n\t\\item Moving a \\emph{tiny} object\n\t\\item Moving a \\emph{heavy} object\n\t\\item Picking Objects from the shopping bag\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Object detection and recognition}, \\emph{object feature recognition}, \\emph{object manipulation}.\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Setup\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Locations:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Start location:} Before the test, the robot waits outside the \\Arena{} and navigates to the testing area when the door is open.\n\t\t\t\\item \\textbf{Test location:} The testing area has a cabinet and a table nearby.\n\t\t\\end{itemize}\n\t\\item \\textbf{People:}\n\t\t\\begin{itemize}\n\t\t\t\\item No people are involved in the test, unless the robot requires human assistance.\n\t\t\\end{itemize}\n\t\\item \\textbf{Furniture:}\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Table:} The table has 5--10 objects placed on it and the robot can choose which ones to grasp and in what order. On smaller tables, new objects will be added as the robot frees up space.\n\t\t\t\\item \\textbf{Shopping Bag:} A shopping bag with 5--10 additional items is placed on the ground next to the table.\n\t\t\t\\item \\textbf{Cabinet:} The cabinet contains objects arranged in groups --- either by category or similarity --- on different shelves.\n\t\t\t\\item \\textbf{Cabinet door:} The cabinet is initially closed. If the robot cannot open the door, it must clearly request assistance from the referee.\n\t\t\\end{itemize}\n\t\\item \\textbf{Objects}:\n\t\t\\begin{itemize}\n\t\t\t\\item \\textbf{Table objects:} The object on the table are arranged arbitrarily.\n\t\t\t\\item \\textbf{Cabinet objects:} The objects are placed behind the cabinet doors and cannot be accessed unless the doors are open.\n\t\t\t\\item \\textbf{Containers:} The container for the cornflakes is placed on the table.\n\t\t\\end{itemize}\n\\end{itemize}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Procedure\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Table location:} At least two hours before the test, the referees announce which table and cabinet that will be used in the test, along with the approximate table location.\n\t\\item \\textbf{Test start:} The robot enters the testing area once the arena door is opened.\n\t\\item \\textbf{Storing groceries:} After identifying the table, the robot moves the objects from the table to the cabinet.\n\t\\item \\textbf{Pouring cereal:} The robot pours cereal into the designated open container.\n\\end{enumerate}\n\n\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n% Additional Rules\n% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}\n\t\\item \\textbf{Table:} The approximate location of the table will be announced in advance, and it will be positioned near the cabinet.\n\t\\item \\textbf{Incorrect categorization:} The score is reduced if an object is stored on the cabinet, but not on a shelf with similar objects; this reduction is applied per incorrectly stored object.\n\t\\item \\textbf{New category:} Objects that do not semantically belong to any of the categories represented on the shelves should be grouped together on a new shelf.\n\t\\item \\textbf{Deus Ex Machina:} The scores are reduced if human assistance is received, in particular for:\n\t\\begin{itemize}\n\t\t\\item telling or pointing out to the robot where to place an object\n\t\t\\item moving an object instead of the robot\n\t\t\\item opening the cabinet doors\n\t\\end{itemize}\n\t\\item \\textbf{Communicating Perception}: The robot must clearly communicate its perception to the referee.\n\tPointing at the object or attempting to pick it up is sufficient.\n\tIf using visualization, the robot must indicate where the referee should look and ensure the display is clearly accessible.\n\tIf the team wants to utilize bounding boxes make sure \\textbf{only} one object with a bounding box is shown at a time, so the referee is easily able to check and verify.\n\tThe surrounding scene must also be visible, cropped views alone are insufficient.\n\\end{enumerate}\n\n\\subsection*{OC Instructions}\n\nAt least two hours before the test:\n\\begin{itemize}\n\t\\item Announce which table and cabinet will be used.\n\t\\item Announce a rough location for the table.\n\t\\item Select which bags will be used.\n\t\\item Select which container will be used.\n\\end{itemize}\n\n\\subsection*{Referee Instructions}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Place 5--10 objects on the table.\n\t\\item Place container and cornflakes on the table.\n\t\\item Place 5--10 objects in a bag near the table.\n\t\\item Place objects in the cabinet, grouping them by category or likeliness.\n\t\\item Close the door of the cabinet.\n\\end{itemize}\n\n\n% \\newpage\n\\subsection*{Score sheet}\n\\input{scoresheets/StoringGroceries.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/TakeOutGarbage.tex",
    "content": "\\section{Take Out the Garbage}\n\\label{test:take-out-the-garbage}\n\n\\subsection*{Description}\n\tAll garbage bins in the \\Arena{} are emptied and the garbage has been moved to a specified collection zone.\n\n\\textbf{Main goal:}\n\tThe robot takes out the trash bags from the two bins in the \\Arena{}.\n\n\\textbf{Optional goal:}\n\tRemoving the lid of the trash bin and handling the garbage with two arms.\n\n\\subsection*{Focus}\n\tThis task focuses on \n\t\\textit{Object Perception},\n\t\\textit{Object Manipulation} and\n\t\\textit{Task Planning}\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\t\n\t\\item \\textbf{Locations:}\n\t\t\\begin{itemize}\n\t\t\t\\item This test takes place inside the \\Arena{}.\n\t\t\t\\item The robot starts inside the \\Arena{} at a predefined location near the entrance door.\n\t\t\t\\item The collection zone is a designated area near the entrance.\n\t\t\\end{itemize}\n\t\\item \\textbf{People:} Only the referee is allowed in the \\Arena{}.\n\t\\item \\textbf{Furniture:} \n\t\t\\begin{itemize}\n\t\t\t\\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.\n\t\t\t\\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.\n\t\t\t\\item The team leader may request to place a lid on one or both of the bins to score the bonus points.\n\t\t\\end{itemize}\n\t\\item \\textbf{Objects:} All objects are in their predefined locations.\n\\end{itemize}\n\n\\subsection*{Procedure}\n\n\\begin{enumerate}\n\t\\item The referee requests the team to move the robot to the start location.\n\t\\item The referee gives the start signal and starts the timer.\n\t\\item The team leaves the area after the start signal.\n\t\\item A TC member follows the robot ready to press the emergency stop button.\n\t\\item The robot navigates to the bins.\n\t\\item \\textbf{Optionally}, the robot can remove the lid of the trash bins.\n\t\\item The robot takes out the trash bags from the two bins in the \\Arena{}.\n\t\\item \\textbf{Optionally}, the robot can handle the garbage with two arms.\n\n\\end{enumerate}\n\n\\subsection*{Additional rules and remarks}\n\tNo additional rules and remarks.\n\n\\subsection*{Instructions:}\n\n\\subsubsection*{To Referee}\n\nThe referee needs to:\n\\begin{itemize}\n\t\\item Place sealed bags with some light contents in the bins\n\t\\item Ask team leader whether bins should be closed.\n\t\\item Make sure collection zone is clear.\n\\end{itemize}\n\n\\subsubsection*{To OC}\nThe OC needs to:\n\\begin{itemize}[nosep]\n\t\\item \\textbf{During Setup days:} Provide official bins and bags for training.\n\t\\item \\textbf{2 hours before the test:} Announce the collection zones.\n\\end{itemize}\n\n\\subsection*{Score sheet}\n\\input{scoresheets/TakeOutGarbage.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n\n"
  },
  {
    "path": "tasks/old/ThemedFinals.tex",
    "content": "\\chapter{Finals}\n\nThe competition ends with the Finals on the last day, where the two teams with the highest total score compete.\nThe \\iterm{Finals} are conducted as a final themed demonstration.\n\n%To avoid logistical issues during the last day of the competition, the \\iterm{Finals} are divided into two sets of demonstrations: the Bronze Competition and the RoboCup @Home Grand Finale.\n%The Bronze Competition is a set of demonstrations that are carried out before the RoboCup @home Grand Finale. Here, all the leagues run in parallel, with the fourth and third highest scored teams competing for the bronze.\n%Finally, the two teams with the highest score in each League present their demonstrations in a serialized manner during the RoboCup @Home Grand Finale.\n\nEven 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.\n\n\\section{Structure and Theme}\n\nThe \\iterm{Finals} are a demonstration of achieving an objective that is pre-selected by the TC/EC. These objectives are chosen as a type of yearly theme of the competition, and to provide a baseline for the juries (not to mention the audience) to state which team is the winner.\n\nThe objectives for each league for this year are:\n\n\\begin{itemize}\n    \\item The robot helps a person in preparing dinner.\n\\end{itemize}\n\n\nThe teams are expected to provide a demonstration that is telling a story which includes achieving the objective. The teams can choose freely how to achieve it, which includes choosing the participants, what items to use, the methods employed, etc. The juries, as explained later, will reward elegance and difficulty.\n\nAs it can be seen, the objectives are open enough that a story can be told around them which can include additional objectives that the team wants their robot to also solve. Thus, the teams are welcome to include in their demonstration any additional tasks to be solved, which can serve as a type of forum where they can present their own research. The innovation and success of these tasks will also be used as part of the score (as it is described later). In this regard, it is expected that teams present the scientific and technical contributions they submitted in both \\iterm{team description paper} and the \\iterm{RoboCup\\char64Home Wiki}.\n\nIn addition, teams may provide a printed document to the jury (max 1 page) that summarizes the demonstrated robot capabilities and contributions. However, teams are discouraged to provide any material that would distract from their demonstration.\n\nStory-telling is an important factor, so it is recommended to spend the least amount of time using the microphone to explain the demonstration and let the demonstration speak for itself.\n\n\n\\section{Evaluating Juries for Final Demonstrations}\nThe \\iterm{Finals} are evaluated by two juries, here described.\n\n\\begin{enumerate}\n\\item\\textbf{League-internal jury:} The league-internal jury is formed by the Executive Committee. The evaluation of the league-internal jury is based on the following criteria:\n  \\begin{compactenum}\n  \\item Efficacy/elegance of the solution\n  \\item Innovation/contribution to the league of the additional tasks solved\n  \\item Difficulty of the overall demonstration\n  \\end{compactenum}\n\n\\item \\textbf{League-external jury:} The league-external jury consists of people not being involved in the RoboCup@Home league, but having a related background (not necessarily robotics). They are appointed by the Executive Committee. The evaluation of the league-external jury is based on the following criteria:\n  \\begin{compactenum}\n  \\item Originality and presentation (story-telling is to be rewarded)\n  \\item Relevance/usefulness to everyday life\n  \\item Elegance/success of overall demonstration\n  \\end{compactenum}\n\\end{enumerate}\n\n\\section{Scoring}\nThe 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:\n\n\\begin{enumerate}\n  \\item The influence of the league-internal jury to the final ranking is \\SI{25}{\\percent}.\n  \\item The influence of the league-external jury to the final ranking is \\SI{25}{\\percent}.\n  \\item The influence of the total sum of points scored by the team in Stage I and II is \\SI{50}{\\percent}.\n\\end{enumerate}\n\nThese demonstrations are carried out in a serialized fashion, one League performing after another in one \\Arena{}.\n\n\n\\subsection{Task}\nThe procedure for the demonstration and the timing of slots is as follows:\n\\OpenDemonstrationTask{ten}{five}\n\n\\OpenDemonstrationChanges\n\n%% %%%%%%%%%%%%%%%%%%%%%%%%\n\\section{Final Ranking and Winner}\n\nThere will be an award for 1st, 2nd and 3rd place of each league.\n\nThe winner of the competition is the team that gets the highest ranking in the \\iterm{Finals}.\n\nThe second place will be the team that got the second-highest ranking in the \\iterm{Finals}.\n\nThe third place will be the team with the highest score that did not made it to the \\iterm{Finals}.\n\nAdditional certificates would be granted if:\n\n\\begin{enumerate}\n  \\item If the number of teams in the league is above 11, a certificate will be awarded to the 4th ranked team.\n  \\item If the number of teams in the league is above 14, a certificate will be awarded to the 5th ranked team.\n\\end{enumerate}\n\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/TidyUp.tex",
    "content": "\\section{Tidy Up}\n\\label{test:tidy-up}\n 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.\n\n\\noindent \\textbf{Focus:} \\SysI, \\NAV, \\CV, \\OR, \\MAN.\n\n\\subsection*{Main Goal}\nFind 5 misplaced objects in a room and bring them to their predefined locations.\n\n\\noindent\\textbf{Reward:} 500pts (100pts per object)\n\n\\subsection*{Bonus Rewards}\n\\begin{enumerate}[nosep]\n\t\\item Taking out the garbage (100pts)\n\t\\item Moving a \\emph{tiny} object (200pts)\n\t\\item Moving a \\emph{heavy} object (200pts)\n\\end{enumerate}\n\n\n\\subsection*{Setup and Procedure}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{Location:} A random room in the arena.\n\t\\item \\textbf{Instruction:} Nearby the entrance, an operator tells the robot which room to clean.\n\t\\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.\n\tAll objects are clearly visible (i.e.~no occlusions) and can be:\n\t\\begin{itemize}[nosep]\n\t\t\\item\\KnownObjects{}: Regular, alike, and standard objects.\n\t\t\\item\\UnknownObjects{}: Garbage lying around (2--3 objects).\n\t\\end{itemize}\n\t\\item \\textbf{Heavy and Tiny Objects:} Objects used in this test are lightweight and average-sized.\n\tHowever, the team leader can request a tiny and a heavy object to be used and score additional points for moving them.\n\t\\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.\n\\end{itemize}\n\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Partial Scoring:} The main task allows partial (per object) scoring.\n\t\n\t\\item \\textbf{Deus ex Machina:} Score reduction for requesting human assistance is applied per object as follows:\n\t\\begin{itemize}[nosep]\n\t\t\\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.\n\t\t\n\t\t\\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.\n\t\t\n\t\t\\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.\n\t\t\n\t\t\\item \\textbf{Request Object Interaction by a Human:} Having a human pick up or place an object causes a reduction of 60pts.\n\t\\end{itemize}\n\\end{enumerate}\n\n\\newpage\n\n\\subsection*{Referee Instructions}\nThe referee needs to\n\\begin{itemize}\n\t\\item Place the objects in the room.\n\t\\item Recover disposed objects from the bin and place the trash bag inside.\n\t\\item Ask teams whether they want a heavy or tiny object.\n\\end{itemize}\n\n\\subsection*{OC Instructions}\n2 hours before the test:\n\\begin{itemize}\n\t\\item Announce the location of the garbage collection zone.\n\\end{itemize}\n\n\\subsection*{Score Sheet}\n\\input{scoresheets/TidyUp.tex}\n"
  },
  {
    "path": "tasks/old/TourGuide.tex",
    "content": "\\section{Tour guide}\nThe robot guides spectators to the audience area and answer their questions after explaining what's @Home about.\n\n\\subsection{Focus}\nThis test focuses in safe outdoor navigation, people detection, gesture recognition, unconstrained natural language processing, and Human-Robot Interaction\n\n\\subsection{Setup}\n\\begin{itemize}\n\t\\item \\textbf{Location:} This test takes place outside the arena in a public space close to the @Home area.\n\n\t\\item \\textbf{Other people:} There are no restrictions on other people walking by or standing around throughout the complete task.\n\n\t\\item \\textbf{In Parallel:} This test can run in parallel, with several teams tested simultaneously.\n\\end{itemize}\n\n\\subsection{Task}\n\n\\begin{enumerate}\n\t\\item \\textbf{Start:} The robot waits at a designated starting position for the referee to give the start signal. When the referees start the time, the team is allowed to (briefly) provide some remarks about the robot's operation. After the instruction, the referee gives the start signal to the robot.\\\\\n\n\t\\item \\textbf{Finding spectators:} The robot starts moving to an open area and looks for (preferably large) groups of people. Once located the robot must approach to the spectators while calling for their attention in a \\emph{friendly} way.\\\\\n\n\tPeople trying to call the attention of the robot (e.g.~by waving or shouting) have priority over those just walking by despite the number of the crowd. The robot may also approach to a single person.\\\\\n\n\t\\item \\textbf{Greeting an spectator:} Once the robot has gained the attention of the spectators, it must introduce itself (i.e.~saying it's name), and greet one of the spectators as customary in the venue's country (e.g.~bowing, handshaking, waving, etc).\\\\\n\n\tNote that all spectators may also want to greet the robot. The robot is expected to be polite and continue greeting on demand.\\\\\n\n\t\\item \\textbf{Guiding the spectators:} The robot must gently ask the spectators to follow it to any of the @Home audience areas and guide them there. Should the people not be willing to follow the robot, it must thank them and start looking for another group of spectators.\\\\\n\n\t\\item \\textbf{Explaining the league:} Once at the @Home audience area, the robot must ask the spectators to take seat. The robot proceeds to \\textit{briefly} introduce RoboCup@Home and explain the League's objectives. \\\\\n\n\t\\item \\textbf{Answering questions:} At the end of the speech, the robot asks for questions from the spectators regarding what it just explained, answering at least two of them. The robot is allowed to rephrase questions before answering them.\\\\\n\n\\end{enumerate}\n\n\\subsection{Additional rules and remarks}\n\\begin{enumerate}\n\t\\item \\textbf{Safety First!} The robot will be stop at the slightest possibility of a human being harmed or molested. The robot must not force interaction with humans, nor scare them or make them feel uncomfortable. \\\\\n\n\t\\item \\textbf{Referee guard:} During the entire test, a referee will be following the robot from behind for keeping people safe and for scoring purposes.\\\\\n\n\t\\item \\textbf{Approaching to spectators:} When approaching to people the robot should act in a natural way by reducing its velocity as it approaches to the people. The robot must look safe and friendly.\\\\\n\n\tShall the people flee, the robot must not chase them.\\\\\n\n\t\\item \\textbf{Spectators:} Spectators are people attending to the venue to see the competition with no restriction of any kind, therefore, their numbers, grouping, and behaviour are not controlled by the league. Were the case of no spectators available, volunteers can be used instead.\\\\\n\n\t\\item \\textbf{Bilingual robots:} Robots are allowed (and encouraged) to interact with people in a language other than English. In such cases, the robot must utter the English equivalent right after synthesising the localized sentence. \\\\\n\n\tNotice that spectators may prefer to ask questions in their native language when interacting with a bilingual robot. In such cases, the robot must translate the question for the Referee to understand it and answer the question in both languages.\\\\\n\n\t\\item \\textbf{Handshaking:} When handshaking, the robot must stay at a safe distance from the people (e.g.~about 1.5m) and reach out its \\textit{hand}, but it must be a human, not the robot, who accepts and completes the handshake. If the human refuses to shake hands, the robot must retreat its manipulator immediately.\\\\\n\n\t\\item \\textbf{Disturbances from outside:} If a person from the audience (severely) interferes with the robot in a way that makes it impossible to solve the task, the team may repeat the test immediately.\\\\\n\n\t\\item \\textbf{Show must go on:} If the robot has engaged with a group of spectators when the allotted time for the test elapses, the robot is allowed to continue and finish the demonstration. However, no points are scored once the test is over.\n\\end{enumerate}\n\n\\subsection{Referee instructions}\n\nThe referees need to\n\\begin{itemize}\n\t\\item Follow the robot at any time.\n\t\\item Immediately stops the robot when considered necessary.\n\t\\item Verify that the given answers are correct.\n\\end{itemize}\n\n\\subsection{OC instructions}\n\n2h before test:\n\\begin{itemize}\n\t\\item Recruit volunteers for the test (just in case).\n\t\\item Announce the Start Location for the robots.\n\\end{itemize}\n\nDuring the test:\n\\begin{itemize}\n\t\\item Keep at least one area free in the audience area for robots to perform there.\n\t\\item Send volunteers to join the Q\\&A session to ask questions if necessary.\n\\end{itemize}\n\n\\newpage\n\\subsection{Score sheet}\n\\input{scoresheets/TourGuide.tex}"
  },
  {
    "path": "tasks/old/WhatisThat.tex",
    "content": "\\section{What is That?}\n\\label{test:what-is-that}\nA guest asks the robot to identify objects in the household.\n\n\\noindent \\textbf{Focus:} \\SysI{}, \\HRI{}, \\GestRec{}, \\CV{}, \\OR{}.\n\n\n\\subsection*{Main Goal}\nThe robot names 5 objects, the guest is pointing at.\n\n\\noindent\\textbf{Reward:} 1000pts (200pts per object)\n\n\n\\subsection*{Bonus Rewards}\n\\begin{enumerate}[nosep]\n\t\\item The robot understands two different non-verbal commands, e.g., nodding, gesturing for the robot to follow (250pts)\n\t\\item The robot names one feature that is unique to the object in its group (100pts, each)\n\\end{enumerate}\n\n\n\\subsection*{Setup and Procedure}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Location:} This test takes place inside the \\Arena{}.\n\n\t\\item \\textbf{Groups of Objects:} There are five groups of 2--5 \\KnownObjects{} randomly placed on the floor.\n\t\n\t\\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.\n\n\t\\item \\textbf{Naming:} The robot needs to tell the guest the official name of the object.\n\n\t\\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.\n\t\n\t\\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.\n\\end{enumerate}\n\n\n\\subsection*{Additional Rules and Remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Partial Scoring:} The main task allows partial (per object) scoring.\n\t\n\t\\item \\textbf{Deus ex Machina:} Score reduction applies per object as follows:\n\t\\begin{itemize}[nosep]\n\t\t\\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.\n\t\t\\item \\textbf{Asking Attribute Questions:} Asking questions about attributes of the object (e.g. What color is the object?), reduces the score by 100pts.\n\t\t\\item \\textbf{Interacting with Objects:} Asking the operator to pick up the object or move it closer reduces the score by 150pts.\n\t\\end{itemize}\n\\end{enumerate}\n\n\\newpage\n\n\\subsection*{Referee Instructions}\n\nThe referee needs to\n\\begin{itemize}[nosep]\n\t\\item Place the groups of objects.\n\t\\item Choose which objects to point at.\n\\end{itemize}\n\n\\subsection*{Score Sheet}\n\\input{scoresheets/HandMeThat.tex}\n\n% Local Variables:\n% TeX-master: \"Rulebook\"\n% End:\n"
  },
  {
    "path": "tasks/old/WhereIsThis.tex",
    "content": "\\section{Where is This? [Party Host]}\n\\label{test:where-is-this}\nThe 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.\n\n\\noindent \\textbf{Main Goal:} Give accurate directions and guide at least 3 people.\n\n\\noindent \\textbf{Optional goals:}\n\\begin{enumerate}[nosep]\n\t\\item Lead a non-expert operator to the destination correctly.\n\t\\item Provide new instructions based on the previous ones.\n\t\\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).\n\\end{enumerate}\n\n\\subsection*{Focus}\n\\emph{Person Leading}, \\emph{Social Navigation}, \\emph{Human-Robot Interaction}.\n\n\n\\subsection*{Setup}\n\\begin{itemize}[nosep]\n\t\\item \\textbf{Locations:} \n\t\\begin{itemize}\n\t \\item All predefined locations inside the \\Arena{} are valid destinations.\n\t \\item \\textbf{Start Location}:  The robot starts outside the \\Arena{}. \n\t \\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. \n\t\\end{itemize}\n\t\t\\item \\textbf{People:} three people will act as operators. Upon request from the team, non-expert people may be recruited.\n\\end{itemize}\n\n\n\\subsection*{Procedure}\n\\begin{enumerate}[nosep]\n\n\t\\item \\textbf{Robot enters:} When the door opens, the robot navigates to the \\emph{Information Point}.\n\t\\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.\n\t\\item \\textbf{Give instructions:} The robot gives instructions to the operator and then starts to follow them.\n\t\\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.\n\t\\item \\textbf{Execution monitoring:} The robot monitors the operator to provide additional instructions or corrections as needed.\n\t\\item \\textbf{Return to \\emph{Information Point}:} After guiding each operator, the robot must return to the \\emph{Information Point}.\n\n\\end{enumerate}\n\n\\subsection*{Additional rules and remarks}\n\\begin{enumerate}[nosep]\n\t\\item \\textbf{Deus ex Machina:} scores are reduced if the robot requires assistance as follows:\n\t\\begin{itemize}[nosep]\n\t\t\\item \\textbf{Bypassing speech recognition:} communicating with the robot through a graphical interface, or any other way.\n\t\t\n\t\t\\item \\textbf{Operator's assistance:} Helping the robot find the operator (for instance, through waving or shouting).\n\t\\end{itemize}\n\n\t\\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.\n\t\\\\\\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}.\n\n\t\\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.\n\t\n\t\\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.\n\n\\end{enumerate}\n\n\\subsection*{OC instructions}\n2 hours before the test:\n\\begin{itemize}\n\t\\item Generate two destinations per volunteer, such that the directions for the second one can be based on directions for the first one.\n\t\\item Recruit at least 2 volunteers for the test\n\t\\item Instruct volunteers where things are in the house\n\t\\item Announce the location of the \\emph{Information Point}.\n\\end{itemize}\n\n\\subsection*{Referee instructions}\nThe referee needs to\n\\begin{itemize}\n\t\\item Assign destinations to each volunteer.\n\\end{itemize}\n\n\\subsection*{Score sheet}\n\\input{scoresheets/WhereIsThis.tex}\n"
  },
  {
    "path": "teams/teams.tex",
    "content": "% all participating teams. \n\\newcommand{\\TEAMS}{\n\tChief Scientist Office,\n\tEPFL@Home,\n\teR@sers,\n\tFBOT@Home,\n\tGentlebots,\n\tHibikino-Musashi@Home,\n\tKIARO,\n\tLAR@Home,\n\tLASR,\n\tLCASTOR,\n\tLyonTech,\n\tNimbRo@Home,\n\tPumas,\n\tPUMAS-DSPL,\n\tRoboCanes-VISAGE,\n\tRoboFEI@Home,\n\tRoBorregos\n\trUNSWeep,\n\tSerious Cybernetics Corporation (SCC),\n\tSinfonia Uniandes,\n\tSKUBA,\n\tSOBITS,\n\tSocRob@Home,\n\tSUTURO-VaB,\n\tTeam of Bielefeld (ToBi),\n\tTech United Eindhoven,\n\tTidyboy-DSPL,\n\tTidyboy-OPL,\n\tTinker,\n\tTRAIL,\n\tUT Austin Villa@Home,\n}\n\n% All teams in the finals: best 3 teams (possibly 4 if the difference between #3 and #4 is less than 1%)\n\\newcommand{\\TEAMSFINALS}{\n\tFourth,\n\tThird,\n\tSecond,\n\tFirst\n}\n\n\n"
  }
]