Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
05/04/10 20:09:14 (14 years ago)
Author:
abeham
Message:

Changed Island OSGA #976

  • removed mainloop
  • added mainoperator
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Algorithms.GeneticAlgorithm/3.3/IslandGeneticAlgorithmMainLoop.cs

    r3609 r3611  
    171171      QualityDifferenceCalculator islandQualityDifferenceCalculator2 = new QualityDifferenceCalculator();
    172172      Placeholder islandVisualizer2 = new Placeholder();
    173       // END GA mainloop
     173      IntCounter generationsCounter = new IntCounter();
    174174      IntCounter generationsSinceLastMigrationCounter = new IntCounter();
    175175      Comparator migrationComparator = new Comparator();
     
    182182      UniformSubScopesProcessor uniformSubScopesProcessor4 = new UniformSubScopesProcessor();
    183183      Placeholder immigrationReplacer = new Placeholder();
    184       IntCounter generationsCounter = new IntCounter();
    185184      Comparator generationsComparator = new Comparator();
    186185      BestQualityMemorizer bestQualityMemorizer3 = new BestQualityMemorizer();
     
    272271      resultsCollector.ResultsParameter.ActualName = ResultsParameter.Name;
    273272
    274       // START GA mainloop
    275273      selector.Name = "Selector (placeholder)";
    276274      selector.OperatorParameter.ActualName = SelectorParameter.Name;
     
    321319      islandVisualizer2.Name = "Visualizer";
    322320      islandVisualizer2.OperatorParameter.ActualName = "Visualizer";
    323       // END GA mainloop
    324 
     321
     322      generationsCounter.Name = "Generations + 1";
     323      generationsCounter.Increment = new IntValue(1);
     324      generationsCounter.ValueParameter.ActualName = "Generations";
     325
     326      generationsSinceLastMigrationCounter.Name = "GenerationsSinceLastMigration + 1";
    325327      generationsSinceLastMigrationCounter.ValueParameter.ActualName = "GenerationsSinceLastMigration";
    326328      generationsSinceLastMigrationCounter.Increment = new IntValue(1);
    327329
     330      migrationComparator.Name = "GenerationsSinceLastMigration = MigrationInterval ?";
    328331      migrationComparator.LeftSideParameter.ActualName = "GenerationsSinceLastMigration";
    329332      migrationComparator.Comparison = new Comparison(ComparisonType.Equal);
     
    331334      migrationComparator.ResultParameter.ActualName = "Migrate";
    332335
     336      migrationBranch.Name = "Migrate?";
    333337      migrationBranch.ConditionParameter.ActualName = "Migrate";
    334338
    335       resetGenerationsSinceLastMigrationAssigner.Name = "Reset Counter";
     339      resetGenerationsSinceLastMigrationAssigner.Name = "Reset GenerationsSinceLastMigration";
    336340      resetGenerationsSinceLastMigrationAssigner.LeftSideParameter.ActualName = "GenerationsSinceLastMigration";
    337341      resetGenerationsSinceLastMigrationAssigner.RightSideParameter.Value = new IntValue(0);
     
    350354      immigrationReplacer.OperatorParameter.ActualName = ImmigrationReplacerParameter.Name;
    351355
    352       generationsCounter.Name = "Generations + 1";
    353       generationsCounter.Increment = new IntValue(1);
    354       generationsCounter.ValueParameter.ActualName = "Generations";
    355 
     356      generationsComparator.Name = "Generations >= MaximumGenerations ?";
    356357      generationsComparator.Comparison = new Comparison(ComparisonType.GreaterOrEqual);
    357358      generationsComparator.LeftSideParameter.ActualName = "Generations";
     
    385386      qualityDifferenceCalculator2.SecondQualityParameter.ActualName = "BestQuality";
    386387
     388      generationsTerminationCondition.Name = "Terminate?";
    387389      generationsTerminationCondition.ConditionParameter.ActualName = "TerminateGenerations";
    388390      #endregion
     
    406408      resultsCollector.Successor = uniformSubScopesProcessor1;
    407409      uniformSubScopesProcessor1.Operator = selector;
    408       uniformSubScopesProcessor1.Successor = generationsSinceLastMigrationCounter;
     410      uniformSubScopesProcessor1.Successor = generationsCounter;
    409411      selector.Successor = subScopesProcessor1;
    410412      subScopesProcessor1.Operators.Add(new EmptyOperator());
     
    432434      islandQualityDifferenceCalculator2.Successor = islandVisualizer2;
    433435      islandVisualizer2.Successor = null;
     436      generationsCounter.Successor = generationsSinceLastMigrationCounter;
    434437      generationsSinceLastMigrationCounter.Successor = migrationComparator;
    435438      migrationComparator.Successor = migrationBranch;
    436439      migrationBranch.TrueBranch = resetGenerationsSinceLastMigrationAssigner;
    437440      migrationBranch.FalseBranch = null;
    438       migrationBranch.Successor = generationsCounter;
     441      migrationBranch.Successor = generationsComparator;
    439442      resetGenerationsSinceLastMigrationAssigner.Successor = migrationsCounter;
    440443      migrationsCounter.Successor = uniformSubScopesProcessor3;
     
    444447      uniformSubScopesProcessor4.Operator = immigrationReplacer;
    445448      uniformSubScopesProcessor4.Successor = null;
    446       generationsCounter.Successor = generationsComparator;
    447449      generationsComparator.Successor = bestQualityMemorizer3;
    448450      bestQualityMemorizer3.Successor = bestQualityMemorizer4;
Note: See TracChangeset for help on using the changeset viewer.