Customizable solver config, remove simulator emplace/displace methods

This commit is contained in:
Asriel Camora
2023-06-21 10:38:08 -07:00
parent 11b4b7f6d9
commit f3445f3cb9
12 changed files with 103 additions and 90 deletions
+29
View File
@@ -0,0 +1,29 @@
using System.Runtime.InteropServices;
namespace Craftimizer.Solver.Crafty;
[StructLayout(LayoutKind.Auto)]
public readonly struct SolverConfig
{
public readonly int Iterations;
public readonly float ScoreStorageThreshold;
public readonly float MaxScoreWeightingConstant;
public readonly float ExplorationConstant;
public readonly int MaxStepCount;
public SolverConfig() : this(30000, 1f, 0.1f, 4, 25) { }
public SolverConfig(
int iterations = 30000,
float scoreStorageThreshold = 1f,
float maxScoreWeightingConstant = 0.1f,
float explorationConstant = 4f,
int maxStepCount = 25)
{
Iterations = iterations;
ScoreStorageThreshold = scoreStorageThreshold;
MaxScoreWeightingConstant = maxScoreWeightingConstant;
ExplorationConstant = explorationConstant;
MaxStepCount = maxStepCount;
}
}