Exemplo n.º 1
0
        private void DeterminePath()
        {
            double ball = AlgorithmDetails.GetBallValue();

            var vertexes = _cityTransitionProbability.Where(x => x.Key < ball).Select(v => v.Value).FirstOrDefault();

            _currentCity = vertexes.GetNextVertex(_currentCity);
        }
Exemplo n.º 2
0
        public Ant(AlgorithmDetails detail, AntKind kind)
        {
            _detail = detail;

            _alpha = kind == AntKind.Elite ? 0 : _detail.Alpha;

            _tabuList = new List <City>();

            _currentCity = _detail.StartCity;

            _isTransitionDenominatorDetermined = true;

            // _cityTransitionProbability = new Dictionary<double, Vertexes>();
        }
Exemplo n.º 3
0
 private void P(Vertexes cities, List <Vertexes> tabuList)
 {
     _cityTransitionProbability.Add(PreviousResult() + AlgorithmDetails.TransitionPossibility(cities, tabuList),
                                    cities);
 }