Exemplo n.º 1
0
        public IIndividual Solve()
        {
            ISolverEngine engine = new SolverEngine();

            engine.Init(_solverOptions);

            using (ProgressBar progressBar = new ProgressBar())
            {
                for (int i = 0; i < _solverOptions.GenerationsCount; i++)
                {
                    engine.Select();
                    engine.Populate();
                    engine.Mutate();

                    var progressPercent = (float)i / (float)_solverOptions.GenerationsCount;
                    progressBar.Report(progressPercent);
                }
            }

            return(engine.GetBestIndividual());
        }