示例#1
0
文件: Task.cs 项目: Ring-r/opt
        public void Calculate(bool is_auto_sort)
        {
            for (int i = 0; i <= number_of_upgrade; i++)
            {
                #region Итерация метода значимых переменных.
                #region Создание нового размещения и установка сортировки.
                placement_last = Placement.Create(this, objects_sizes);
                #region Установка сортировки для первого размещения.
                if (is_auto_sort)
                    #region Установка случайной сортировки.
                    placement_last.SortCreateRandom();
                    #endregion
                #endregion
                #endregion

                #region Расчёт нового размещения.
                placement_last.Calculate();
                #endregion

                #region Определение лучшего размещения.
                if (double.IsNaN(placement_opt.ObjectFunction) || placement_opt.ObjectFunction > placement_last.ObjectFunction)
                    placement_opt = placement_last;
                #endregion
                #endregion
            }
        }