/ challenges-old / string-solutions
Sign in
challenges-old / string-solutions
string-solutions
Go to fileHistoryFork
.mochiCheck out the challenge repository at main
solutionsAdd modal-series and fd-second-order submissions for string-pluck-v1, with results workflow
solversAdd modal-series and fd-second-order submissions for string-pluck-v1, with results workflow
.gitignoreAdd modal-series and fd-second-order submissions for string-pluck-v1, with results workflow
README.mdAdd modal-series and fd-second-order submissions for string-pluck-v1, with results workflow

Solutions to the string challenges#

This repository collects solutions to the challenges defined in challenges/string. The results, with errors, timings, audio players, and links, are published at challenges/string-solutions/site and regenerated by a workflow on every push to main.

Layout#

solutions/<challenge-id>/<submission-id>.json    one submission: metadata and one or more solutions
solutions/<challenge-id>/<submission-id>/*.wav   the output files, referenced from the JSON
solvers/                                         source code of the example submissions

Submitting#

  1. Read the challenge specification, for example string-pluck-v1, and produce the output file exactly as specified (format, sample rate, length, scale).
  2. Choose a submission ID (lowercase letters, digits, hyphens) and write solutions/<challenge-id>/<submission-id>.json following the schema. The two files in solutions/string-pluck-v1/ are complete examples.
  3. Put the wav files in solutions/<challenge-id>/<submission-id>/ and reference them by relative path, or host them elsewhere and reference them by URL. Files over 1 MiB must be pushed with git rather than written through the web interface.
  4. If your submission contains several solutions of known relative accuracy (for example, a sequence of increasing resolution), record that in more_accurate_than on each solution. This is what allows the reference solution to be chosen automatically; see the challenge repository README for the rule.
  5. Open a pull request. The workflow validates the files; once merged, the results site is rebuilt.

Timing is self-reported wall-clock time for producing the output signal, excluding file I/O, on the hardware named in the hardware field.

Validating locally#

pip install git+https://vault1.magland.org/challenges/string
challenge-tools validate --challenges <path-to-string-repo>/challenges --solutions solutions
↑↓ move↵openescclose