use of com.sri.ai.praise.core.representation.interfacebased.factor.core.table.TableVariable in project aic-praise by aic-sri-international.
the class AnytimeExactBPTest2 method getListOfListOfInstantiations.
public static List<List<Integer>> getListOfListOfInstantiations(List<Variable> ListOfVariables) {
List<List<Integer>> listOflistOfInstantiations = new ArrayList<>();
for (Variable v : ListOfVariables) {
TableVariable tv = (TableVariable) v;
ArrayList<Integer> toAdd = new ArrayList<>(tv.getCardinality());
for (int i = 0; i < tv.getCardinality(); i++) {
toAdd.add(i);
}
listOflistOfInstantiations.add(toAdd);
}
return listOflistOfInstantiations;
}
use of com.sri.ai.praise.core.representation.interfacebased.factor.core.table.TableVariable in project aic-praise by aic-sri-international.
the class AnytimeExactBPTest2 method isingModel.
public static Pair<TableVariable, TableFactorNetwork> isingModel(String queryName, int gridSize, double potential) {
Pair<TableVariable, TableFactorNetwork> pairQueryNet;
// TestCases.isingModelGridWithRandomWeigthsAndPotetial(gridSize, potential);
List<TableFactor> factors = null;
TableVariable query = null;
for (TableFactor f : factors) {
for (TableVariable v : f.getVariables()) {
if (v.getName().equals(queryName)) {
query = v;
// Util.println("Query not null");
}
}
// Util.println(f.getVariables());
}
TableFactorNetwork tfn = new TableFactorNetwork(factors);
pairQueryNet = new Pair<>(query, tfn);
return pairQueryNet;
}
use of com.sri.ai.praise.core.representation.interfacebased.factor.core.table.TableVariable in project aic-praise by aic-sri-international.
the class BenchmarkingIsingModel method testAEBP.
private static void testAEBP(AEBPTestingDataFrame df, int nRepetitions, int timeLimit, int complexity, LinkedList<Pair<Double, Double>> weights, BiFunction<Integer, Pair<Double, Double>, List<? extends Factor>> networkGenerator, BiFunction<Integer, List<TableFactor>, TableVariable> getQuery, String netName) {
for (Pair<Double, Double> weight : weights) {
for (int i = 0; i < nRepetitions; i++) {
@SuppressWarnings("unchecked") List<TableFactor> network = (List<TableFactor>) networkGenerator.apply(complexity, weight);
TableVariable query = getQuery.apply(complexity, network);
testAEBPP(df, i, timeLimit, network, query, netName + " - " + complexity);
}
}
}
use of com.sri.ai.praise.core.representation.interfacebased.factor.core.table.TableVariable in project aic-praise by aic-sri-international.
the class BenchmarkingIsingModel method testEBP.
private static void testEBP(AEBPTestingDataFrame df, int nRepetitions, LinkedList<Integer> complexities, LinkedList<Pair<Double, Double>> weights, BiFunction<Integer, Pair<Double, Double>, List<? extends Factor>> networkGenerator, BiFunction<Integer, List<TableFactor>, TableVariable> getQuery, String netName) {
// TestEBP
for (Integer complexity : complexities) {
for (Pair<Double, Double> weight : weights) {
@SuppressWarnings("unchecked") List<TableFactor> network = (List<TableFactor>) networkGenerator.apply(complexity, weight);
TableVariable query = getQuery.apply(complexity, network);
testEBPP(df, nRepetitions, network, query, netName + " - " + complexity);
}
}
}
use of com.sri.ai.praise.core.representation.interfacebased.factor.core.table.TableVariable in project aic-praise by aic-sri-international.
the class TableFactorTest method testf2SumOutV2.
public void testf2SumOutV2() {
println();
println("SUM OUT V2 from F2");
println("------------------");
ArrayList<TableVariable> variablesToSumOut = Util.arrayList(V2);
TableFactor f2SumOutV2 = (TableFactor) f2.sumOut(variablesToSumOut);
f2SumOutV2.setName("f2SumOutV2");
println(f2SumOutV2);
assertEquals("f2SumOutV2[{V4:card=2}]: [63.0, 66.0]", f2SumOutV2.toString());
println();
}
Aggregations