Beispiel #1
0
 public Problem(IComponentInvalidator <T> invalidator, IHeuristicValueCalculator <T> calculator, ISolutionQualityEvaluator <T> evaluator, ILocalSearch <T> localSearch)
 {
     this._invalidator = invalidator;
     this._calculator  = calculator;
     this._evaluator   = evaluator;
     this._localSearch = localSearch;
 }
Beispiel #2
0
        public static BayesianNetworkClassifier CreateABCMinerClassifier(int seed, int iterations, int colonySize, int convergence, int dependencies, Dataset trainingSet, DataMining.ClassificationMeasures.IClassificationQualityMeasure qualityEvaluator, IHeuristicValueCalculator <Edge> calculator, bool performLocalSearch, bool fireEvents)
        {
            DataMining.Utilities.RandomUtility.Initialize(seed);

            CyclicRelationInvalidator invalidator              = new CyclicRelationInvalidator();
            BayesianClassificationQualityEvaluator evaluator   = new BayesianClassificationQualityEvaluator(qualityEvaluator);
            BackwardRemovalLocalSearch             localSearch = new BackwardRemovalLocalSearch(evaluator);

            Problem <Edge> problem = new Problem <Edge>(invalidator, calculator, evaluator, localSearch);

            ABCMiner abcminer = new ABCMiner(iterations, colonySize, convergence, problem, dependencies, performLocalSearch);

            abcminer.Dataset = trainingSet;

            if (fireEvents)
            {
                abcminer.OnPostAntSolutionContruction += new EventHandler(abclassifier_OnPostAntSolutionContruction);
                abcminer.OnPostColonyIteration        += new EventHandler(abclassifier_OnPostColonyIteration);
            }


            BayesianNetworks.Model.BayesianNetworkClassifier bnclassifier = abcminer.CreateClassifier() as BayesianNetworkClassifier;
            return(bnclassifier);
        }
Beispiel #3
0
        public static BayesianMultinetClassifier CreateGMNAntBayesianClassification(int seed, int iterations, int colonySize, int convergence, int dependencies, Dataset trainingSet, ISolutionQualityEvaluator <Edge> qualityEvaluator, IHeuristicValueCalculator <Edge> calculator, bool fireEvents)
        {
            DataMining.Utilities.RandomUtility.Initialize(seed);

            CyclicRelationInvalidator  invalidator = new CyclicRelationInvalidator();
            BackwardRemovalLocalSearch localSearch = new BackwardRemovalLocalSearch(qualityEvaluator);

            Problem <Edge> problem = new Problem <Edge>(invalidator, calculator, qualityEvaluator, localSearch);

            ABCMinerGMN mnabcminer = new ABCMinerGMN(iterations, colonySize, convergence, problem, dependencies, trainingSet);

            if (fireEvents)
            {
                mnabcminer.OnPostAntSolutionContruction += new EventHandler(abclassifier_OnPostAntSolutionContruction);
                mnabcminer.OnPostColonyIteration        += new EventHandler(GMNabclassifier_OnPostColonyIteration);
            }

            mnabcminer.Work();

            BayesianNetworks.Model.BayesianMultinetClassifier mnbclassifier = mnabcminer.MultinetBayesianClassifier;
            return(mnbclassifier);
        }