Package aima.test.core.unit.probability.bayes.model

Source Code of aima.test.core.unit.probability.bayes.model.FiniteBayesModelTest

package aima.test.core.unit.probability.bayes.model;

import org.junit.Test;

import aima.core.probability.bayes.BayesInference;
import aima.core.probability.bayes.exact.EliminationAsk;
import aima.core.probability.bayes.exact.EnumerationAsk;
import aima.core.probability.bayes.model.FiniteBayesModel;
import aima.core.probability.example.BayesNetExampleFactory;
import aima.test.core.unit.probability.CommonFiniteProbabilityModelTests;

public class FiniteBayesModelTest extends CommonFiniteProbabilityModelTests {

  //
  // ProbabilityModel Tests
  @Test
  public void test_RollingPairFairDiceModel() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_RollingPairFairDiceModel(new FiniteBayesModel(
          BayesNetExampleFactory.construct2FairDiceNetwor(), bi));
    }
  }

  @Test
  public void test_ToothacheCavityCatchModel() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_ToothacheCavityCatchModel(new FiniteBayesModel(
          BayesNetExampleFactory
              .constructToothacheCavityCatchNetwork(),
          bi));
    }
  }

  @Test
  public void test_ToothacheCavityCatchWeatherModel() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_ToothacheCavityCatchWeatherModel(new FiniteBayesModel(
          BayesNetExampleFactory
              .constructToothacheCavityCatchWeatherNetwork(),
          bi));
    }
  }

  @Test
  public void test_MeningitisStiffNeckModel() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_MeningitisStiffNeckModel(new FiniteBayesModel(
          BayesNetExampleFactory
              .constructMeningitisStiffNeckNetwork(),
          bi));
    }
  }

  @Test
  public void test_BurglaryAlarmModel() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_BurglaryAlarmModel(new FiniteBayesModel(
          BayesNetExampleFactory.constructBurglaryAlarmNetwork(), bi));
    }
  }

  //
  // FiniteProbabilityModel Tests
  @Test
  public void test_RollingPairFairDiceModel_Distributions() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_RollingPairFairDiceModel_Distributions(new FiniteBayesModel(
          BayesNetExampleFactory.construct2FairDiceNetwor(), bi));
    }
  }

  @Test
  public void test_ToothacheCavityCatchModel_Distributions() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_ToothacheCavityCatchModel_Distributions(new FiniteBayesModel(
          BayesNetExampleFactory
              .constructToothacheCavityCatchNetwork(),
          bi));
    }
  }

  @Test
  public void test_ToothacheCavityCatchWeatherModel_Distributions() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_ToothacheCavityCatchWeatherModel_Distributions(new FiniteBayesModel(
          BayesNetExampleFactory
              .constructToothacheCavityCatchWeatherNetwork(),
          bi));
    }
  }

  @Test
  public void test_MeningitisStiffNeckModel_Distributions() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_MeningitisStiffNeckModel_Distributions(new FiniteBayesModel(
          BayesNetExampleFactory
              .constructMeningitisStiffNeckNetwork(),
          bi));
    }
  }

  @Test
  public void test_BurglaryAlarmModel_Distributions() {
    for (BayesInference bi : getBayesInferenceImplementations()) {
      test_BurglaryAlarmModel_Distributions(new FiniteBayesModel(
          BayesNetExampleFactory.constructBurglaryAlarmNetwork(), bi));
    }
  }

  //
  // PRIVATE METHODS
  //
  private BayesInference[] getBayesInferenceImplementations() {
    return new BayesInference[] { new EnumerationAsk(),
        new EliminationAsk() };
  }
}
TOP

Related Classes of aima.test.core.unit.probability.bayes.model.FiniteBayesModelTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.