Docs


Reading a result

What the result page shows, what you can do on it, and how to re-run.

Last updated June 3, 2026

Every finished submission has a result page. The URL looks like /@<your-username>/result/<id>. Open it to see what the run produced and to take action on it.

What is on the page

The result page surfaces both the data the run produced and the controls for what to do next.

Data and visualizations

  • Best solution. The genes of the highest-fitness candidate the run found, with its fitness value.
  • Fitness chart. Best fitness per generation. Hover the chart to read exact values. Use the Download as Image button below the chart to save it as a PNG.
  • Problem-specific chart. When the submission is for a problem type that benefits from a custom view (for example a 2D clustering scatter or a travelling-salesman route), Vilvik renders it under the fitness chart. It has its own Download as Image button.
  • Genes heatmap. A heatmap of the best individual's genes, useful for spotting patterns and dead variables. Downloadable as an image.
  • 3D genes chart. When applicable, a 3D rendering of the gene vector. Also downloadable as an image.
  • Run information. Number of generations completed, time spent, and any other notes the worker recorded for the run.
  • Custom charts. Below the built-in charts, the Your custom charts panel lets you build your own views of the run and pin them here, to every result of the problem, or across all your results. See Custom charts.

Downloads

  • Best solution. Click Download in the Best solution card to save the best individual as a file you can read in your own code.
  • Run log. When the run produced a log, a Download logs button appears in the header. It saves the log as a plain-text file.
  • Download PDF. Click Download PDF in the action row of the result page to save a clean, shareable summary of the run as a PDF. The button is enabled once the run completes; it stays disabled while a job is still queued or running.

    What the PDF contains, in order:

    • The submission name and the problem type, with the date the run was created and a Run by label so the reader knows whose run this is.
    • A Parameters table with every value you set when you started the run (number of generations, population size, parents mating, parent selection, crossover, mutation, stop criteria, and so on). Defaults you did not override are still listed.
    • A Final result block with the best fitness, the generation that produced it, the number of generations actually run, and whether the run completed normally.
    • The best solution as an array of gene values, when the run produced one.
    • The fitness-evolution chart captured from the page so the PDF carries the same curve you see in the browser.
    • A footer with the Vilvik logo and the canonical result URL, so anyone reading the PDF can open the original page.

    The filename includes the problem type and the run timestamp so saved copies sort sensibly side by side.

    The PDF is available to the result owner and to anyone the result has been shared with (public link or invited email). It is generated by your browser when you click the button. There is no API or SDK call to fetch it programmatically today; download it from the page when you need a copy. - Chart images. Every chart on the page has its own Download as Image button.

We do not currently offer a single download everything bundle. Each download targets one specific artifact.

Actions

  • Continue. Starts a new run from the final population of this one. See Continue a submission.
  • Re-execute. Run the same submission again from scratch. Useful when you want a second sample under the same parameters (especially when the algorithm has a random component).
  • Edit and re-execute. Open the parameters in the form, change what you want, and run the new submission as a child of this one.
  • Share. Open the share modal to make the result public, copy a link, or invite specific email addresses. A result can be shared independently of the submission it belongs to, with one caveat: the parent submission must already be public or invite-only. See Sharing a submission or result publicly.
  • Delete. Removes the result. This cannot be undone; the result and its downloads stop being available immediately. The parent submission is not affected.

Status indicators

Above the page body, you may see one or two pill-shaped indicators:

  • A submission indicator appears when the parent submission is not private (Public / Invite-only).
  • A result indicator appears when this specific result has been shared.

Both link to the public URL so you can quickly copy or open it.

When the chart looks flat

A flat chart usually means one of these:

  • The fitness function returns the same value for many candidates. This can happen if your gene encoding is too coarse, or your function is dominated by one term.
  • The mutation rate is too low and the population converged early.

Adjust and run again. Continue is a good way to test a new mutation rate without losing the population you already paid for.

Where the result lives

A result is stored on Vilvik until you delete it. By default it is private to your account. You can change visibility from the share menu.

Fitness landscape

When your run has exactly two continuous-float genes and a single fitness number, the result page shows a 3-D chart of where the GA explored in the (gene1, gene2) plane and how its best fitness moved over generations. Each point is the best solution from one generation, colour-coded from early (dark) to late (bright). A faint line connects them in generation order so you can trace the search path. The diamond marker is the overall best.

The chart is hidden for runs with three or more genes (the Genes 3D surface chart covers that case) and for multi-objective runs (the Pareto chart covers that case). You can toggle it on or off per submission in the share modal.

Pareto explorer

When your problem is multi-objective, the result page shows a Pareto explorer alongside the per-objective rails. With two objectives it is an interactive scatter; with three or more it is a parallel-coordinates chart. Pareto-optimal solutions are highlighted in colour; the others are muted. Hover any point to see its objective values and the corresponding genome. Drag a rectangle (scatter) or pull the axis handles (parallel) to brush a region; the count of selected solutions appears below the chart, and the "Show selected" panel lists them.

The chart only appears for multi-objective runs. You can toggle the entire problem-specific chart family on or off per submission in the share modal.

Thanks for the feedback!