public List <Machine> GetConfiguratedMachinesFor(AlgorithmChoice algorithm)
        {
            if (currentAlgorithm == algorithm)
            {
                return(configuration.ConfiguredMachines);
            }
            switch (algorithm)
            {
            case AlgorithmChoice.NotSpecified:
                throw new Exception("You have to specify algorithm type to simulate it's scenario!");

            case AlgorithmChoice.Johnson:
                throw new NotImplementedException();

            case AlgorithmChoice.NEH:
                configuration = new AlgorithmNEH();
                break;
            }
            configuration.GenerateConfiguration(scenarioMachines);
            return(configuration.ConfiguredMachines);
        }
 public Scenario(List <Machine> scenarioMachines)
 {
     this.scenarioMachines = scenarioMachines;
     currentAlgorithm      = AlgorithmChoice.NotSpecified;
 }