Skip to content

Create a test for the alignment loss where we can make sure that we can absolutely converge #13

@l3th4l

Description

@l3th4l

Sanity Check Tests for Alignment Loss Convergence

We need to verify that the alignment_loss function is capable of fully converging in idealized settings. These tests serve as sanity checks to ensure the loss behaves correctly and is optimizable under controlled conditions. In theory, with perfect alignment and no conflicting signals, the loss should go to zero or near-zero, indicating successful overfitting.

The following test scenarios must be implemented and passed sequentially, increasing in complexity:

1. Identical Sun Position and Mechanical Errors

All parallel simulations use:

  • the same sun position
  • the same mechanical errors
  • and identical heliostat(s)

Expected outcome: The alignment loss should fully converge.


2. Different Sun Positions, Same Mechanical Errors

All parallel simulations use:

  • different sun positions
  • the same mechanical errors
  • and identical heliostat(s)

Expected outcome: Despite the varying sun positions, the heliostat alignment should still be learnable and consistent under the shared mechanical error model.


3. Different Sun Positions and Different Mechanical Errors

All parallel simulations use:

  • different sun positions
  • different mechanical errors
  • and identical heliostat(s)

Expected outcome: The alignment loss should remain optimizable and show convergence, demonstrating robustness to a diverse error distribution.


Each of these tests should be added to the training pipeline or unit test suite and clearly logged. If any of the tests fail, the implementation of the loss or the training procedure may need to be revised.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requesthelp wantedExtra attention is needed

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions