Submission GuidelinesΒΆ
Participants must submit the following items via the official competition portal:
π Link to Submission Portal will be provided here soonβ¦
β Submission ChecklistΒΆ
Item |
Description |
|---|---|
π Encrypted output files |
The three |
π§ Controller script |
|
π Controller report |
A concise document describing your control strategy and main design choices. |
π requirements.txt |
List of any additional pure-Python packages used by your controller (see details below). |
π Self-contained submission |
All items necessary for reproducibility must be included β except large package folders. |
π Recommended Submission StructureΒΆ
Please see the following example structure for submission:
submission_package/
βββ my_controller.py
βββ control_helpers/
β βββ my_filters.py
β βββ my_optimizer.py
β βββ helper_functions.py
βββ requirements.txt
βββ controller_report.pdf
βββ evaluation_outputs/
βββ waveID_1_2026_02_10_12_48_compressed.enc.enc
βββ waveID_2_2026_02_10_12_48_compressed.enc.enc
βββ waveID_3_2026_02_10_12_48_compressed.enc.enc
File/Folder |
Description |
|---|---|
|
Main controller script β entry point used by WAPPAC to run your control algorithm. |
|
(Optional, recommended) Folder containing auxiliary control-related modules such as filters, optimizers, and utility functions. |
|
List of additional pure-Python dependencies (not bundled with WAPPAC). Enables COER team to recreate your environment. |
|
Short report (max ~3 pages) explaining control concept, methodology, and main design decisions. |
|
Folder automatically generated after Evaluation Mode runs. Must contain three encrypted |
|
Encrypted output files containing your evaluated performance data. Generated automatically β do not edit manually. |
Below you will find detailed descriptions of each item.
1. π Encrypted Evaluation FilesΒΆ
Submit the three encrypted files (.enc) found in your evaluation_outputs/ directory.
These files are automatically produced after running the WAPPAC simulator with:
"eval_flag": true
Each file corresponds to one of the three official sea-state scenarios used in evaluation.
Important
All three .enc files are required for a valid submission. Incomplete or mismatched outputs when re-running participantsβ controllers may be deemed invalid.
Note
Results exhibiting numerical instability or unrealistic dynamics (see Numerical Implementation and Writing Your Controller) may be subject to manual review. If the reported performance is determined to arise from numerical artifacts rather than consistent dynamic behavior, the corresponding results will be excluded from the official evaluation, ensuring fairness and compliance with the physical modeling assumptions and numerical limits of the WAPPAC platform.
2. π§ Controller ScriptΒΆ
Include the final version of your controller script used to generate the encrypted outputs, typically named:
my_controller.py
If your implementation uses additional local modules (other Python scripts), include them alongside my_controller.py.
Important
A dedicated folder named control_helpers/ (or similar) is optional but strongly encouraged to organize all auxiliary controller-related files (e.g., parameter definitions, sub-functions, or model abstractions).
All import paths should refer only to this folder, e.g.:
from control_helpers.my_filters import moving_average
All file paths and imports should be relative and self-contained β no absolute or OS-specific paths or online resources.
Note: Controllers will be re-run on the official WAPPAC simulation platform to verify results under identical conditions.
3. π Requirements File for External PackagesΒΆ
If your controller uses additional Python packages beyond those bundled with WAPPAC simulation platform,
you must specify them in a requirements.txt file.
Important
Do not upload the external_packages/ folder or the actual package source files β
these can be large and are unnecessary for evaluation.
The requirements.txt allows the COER evaluation team to reproduce your software environment.
β ExampleΒΆ
If your controller relies on additional packages, such as control, cvxpy, or sympy,
your requirements.txt should look like:
control==0.10.1
cvxpy==1.5.2
sympy==1.13.0
Place this file in the same directory as your controller:
Important:
Only include pure-Python packages compatible with CPU execution.
All packages must be installable from PyPI via standard
pip install -r requirements.txt.Custom binary libraries or GPU-dependent code are not permitted.
Internet access is disabled during official evaluation runs β the COER team will recreate your environment offline using the provided
requirements.txt.
Core Packages Already Included in WAPPACΒΆ
Do not list or re-install the following packages β they are pre-bundled with the official simulator:
torch==2.8.0+cpu
torchdiffeq==0.2.5
numpy==2.3.3
scipy==1.16.2
matplotlib==3.10.6
4. π Controller ReportΒΆ
Provide a concise Controller Report describing your control strategy and methodology.
Recommended structure (max 3 pages):
Overview of your control concept
Description of tuning parameters and overall control design
Outline of controller structure and algorithmic flow
Discussion of key assumptions or limitations
Notes on computational complexity (if applicable)
This document should be clear enough for the organizers to understand and verify the conceptual basis of your design.
5. π Reproducibility and VerificationΒΆ
Your submission must be self-contained and reproducible.
Controllers will be re-executed by the COER team on the official WAPPAC platform.
Execution will occur in a CPU-only, offline environment with fixed seeds and solver settings.
The reproduced encrypted results must match the ones you submitted.
If your controller fails to reproduce its own
.encfiles or cannot execute correctly, the submission may be excluded from final evaluation.Ensure your code runs without requiring user input or manual file browsing dialogs.
π‘ Tip: Before submitting, test your controller locally in Evaluation Mode to confirm that all three
.encfiles are produced correctly under the provided simulator version.