Class RatioBasedEdaAlgorithm<G>

java.lang.Object
com.knezevic.edaf.v3.core.api.AbstractEdaAlgorithm<G>
com.knezevic.edaf.v3.algorithms.RatioBasedEdaAlgorithm<G>
Type Parameters:
G - genotype type
All Implemented Interfaces:
Algorithm<G>
Direct Known Subclasses:
BlockCovarianceEdaAlgorithm, BmdaAlgorithm, BoaAlgorithm, CemAlgorithm, CgaAlgorithm, ChowLiuEdaAlgorithm, CmaEsAlgorithm, CopulaEdaAlgorithm, DependencyTreeEdaAlgorithm, EbnaAlgorithm, EhbsaAlgorithm, EhmPermutationEdaAlgorithm, FactorizedDiscreteEdaAlgorithm, FlowEdaAlgorithm, FullCovarianceEdaAlgorithm, GaussianDiagEdaAlgorithm, GmmEdaAlgorithm, HBoaAlgorithm, IgoAlgorithm, IndicatorEdaAlgorithm, KdeEdaAlgorithm, KendallPermutationEdaAlgorithm, LowRankCovarianceEdaAlgorithm, MallowsEdaAlgorithm, MimicAlgorithm, MimicContinuousAlgorithm, MoEdaSkeletonAlgorithm, ParetoEdaAlgorithm, PbilAlgorithm, PbilRealAlgorithm, PlackettLuceEdaAlgorithm, PositionBasedPermutationEdaAlgorithm, SNesAlgorithm, TreeEdaAlgorithm, UmdaAlgorithm, UmdaContinuousAlgorithm, XNesAlgorithm

public class RatioBasedEdaAlgorithm<G> extends AbstractEdaAlgorithm<G>
Generic ratio-based EDA driver.

This base class implements the canonical EDA cycle from AbstractEdaAlgorithm: initialize population, evaluate, select elites, fit model, sample offspring, and apply replacement. The only strategy detail overridden here is elite size:

   eliteCount = round(selectionRatio * populationSize)
 
clipped to at least one individual.

Dedicated algorithm aliases (UMDA, BOA, PBIL, etc.) inherit this behavior and express algorithm identity through plugin/model selection in configuration.

  • Constructor Details

    • RatioBasedEdaAlgorithm

      public RatioBasedEdaAlgorithm(String id, double selectionRatio)
      Parameters:
      id - stable algorithm identifier used in events, persistence and CLI
      selectionRatio - fraction of population used for model fitting
  • Method Details