public void ReportFailTrial(TrialSettings settings, Exception exp)
        {
            var result = new BinaryClassificationTrialResult
            {
                TrialSettings = settings,
                Exception     = exp,
            };

            RunDetails.Add(result);
        }
 public void ReportCompletedTrial(TrialResult result)
 {
     if (result is BinaryClassificationTrialResult binaryClassificationResult)
     {
         RunDetails.Add(binaryClassificationResult);
         OnTrialCompleted?.Invoke(this, binaryClassificationResult);
     }
     else
     {
         throw new ArgumentException($"result must be of type {typeof(BinaryClassificationTrialResult)}");
     }
 }