private void _maze_TrainingEpisodeCompleted(object sender, QLearning.Core.TrainingEpisodeCompletedEventArgs e) { if (e.Success) { _successfulRuns++; _totalMoves += e.TotalMoves; _totalScore += e.TotalScore; _averageMoves = _totalMoves / _successfulRuns; _averageScore = _totalScore / _successfulRuns; } _runEpochs++; _percentComplete = (double)e.CurrentEpisode / (double)e.TotalEpisodes; if (e.CurrentEpisode % trainingProgressBar.Step == 0) { string message = $"Episode: {e.CurrentEpisode.ToString("#,##0")} | " + $"{_percentComplete.ToString("0%")} Complete"; UpdateLabel(message); UpdateProgressBar(); } if ((e.CurrentEpisode + 1) % _showEvery == 0 && e.CurrentEpisode > 1) { _episodeStartSpace = e.StartPoint; RenderTraining(); } }
private void AgentTrainingEpisodeCompleted(object sender, QLearning.Core.TrainingEpisodeCompletedEventArgs e) { TrainingEpisodesCompleted++; }