Examples of DetermineDiagonalAndRightHandSide


Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

  @Test
  public final void testCountMatchingOutgoing6a()
  {
    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph("A-a-#B\nA-b-#B1\nQ-a->R", "testCountMatchingOutgoing1"), Configuration.getDefaultConfiguration());
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, false);
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_default();
    getMatcherValue(gr,ndGraph,ndGraph.matrixForward, matcher,"A","R");
    Assert.assertEquals(0,matcher.getRightHandSide(),Configuration.fpAccuracy);
  }
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

  public final void testCountMatchingOutgoing6b()
  {
    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph("A-a-#B\nA-b-#B1\nQ-a->R", "testCountMatchingOutgoing1"), Configuration.getDefaultConfiguration());
    gr.linear.moveRejectToHighlight();
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, false);
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_highlight();
    getMatcherValue(gr,ndGraph,ndGraph.matrixForward, matcher,"A","R");
    Assert.assertEquals(0,matcher.getRightHandSide(),Configuration.fpAccuracy);
  }
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

  @Test
  public final void testCountMatchingOutgoing_nd1()
  {
    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph("A1-a->C\nA2-a->C\nA3-a->C<-b-G\nB1-a->D<-a-B2\nE-b->D<-b-F", "testCountMatchingOutgoing_nd1"), Configuration.getDefaultConfiguration());
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, false);
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_default();
    getMatcherValue(gr,ndGraph,ndGraph.matrixInverse, matcher,"C","D");
    Assert.assertEquals(8,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(8*2,matcher.getDiagonal(),Configuration.fpAccuracy);
  }
 
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

  public final void testCountMatchingOutgoing_nd2a()
  {
    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph("A1-a->C\nA2-a->C\nA3-a->C<-b-G\nB1-a->D<-a-B2\nE-b->D<-b-F\n"
        +"N-c->C", "testCountMatchingOutgoing_nd2a"), Configuration.getDefaultConfiguration());
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, false);
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_default();
    getMatcherValue(gr,ndGraph,ndGraph.matrixInverse, matcher,"C","D");
    Assert.assertEquals(8,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(9*2,matcher.getDiagonal(),Configuration.fpAccuracy);
  }
 
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph("A1-a->C\nA2-a->C\nA3-a->C<-b-G\nB1-a->D<-a-B2\nE-b->D<-b-F\n"
        +"N-c->C\n"
        +"M-d->D"
        , "testCountMatchingOutgoing_nd2b"), Configuration.getDefaultConfiguration());
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, false);
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_default();
    getMatcherValue(gr,ndGraph,ndGraph.matrixInverse, matcher,"C","D");
    Assert.assertEquals(8,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(10*2,matcher.getDiagonal(),Configuration.fpAccuracy);
  }
 
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

  {
    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph("A1-a->C\nA2-a->C\nA3-a->C<-b-G\nB1-a->D<-a-B2\nE-b->D<-b-F\n"
        +"N-c->C\n"
        +"N-a->C", "testCountMatchingOutgoing_nd3a"), Configuration.getDefaultConfiguration());
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, false);
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_default();
    getMatcherValue(gr,ndGraph,ndGraph.matrixInverse, matcher,"C","D");
    Assert.assertEquals(10,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(11*2,matcher.getDiagonal(),Configuration.fpAccuracy);
  }
 
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph("A1-a->C\nA2-a->C\nA3-a->C<-b-G\nB1-a->D<-a-B2\nE-b->D<-b-F\n"
        +"N-c->C<-f-U\n"
        +"N-a->C\nS-r->D", "testCountMatchingOutgoing_nd3b"), Configuration.getDefaultConfiguration());
    //Visualiser.updateFrame(gr, null);
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, false);
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_default();
    getMatcherValue(gr,ndGraph,ndGraph.matrixInverse, matcher,"C","D");
    Assert.assertEquals(10,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(13*2,matcher.getDiagonal(),Configuration.fpAccuracy);
  }
 
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

    config.setGdScoreComputationAlgorithm_RandomWalk_ExtraLength(0);
    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph(NDGraph, "testCount_computeGraphs"), config);
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, true);
    ndGraph.computeWalkSequences(new StateBasedRandom(new Random(80)), 1);
   
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_BCR();
    getMatcherValue(gr,ndGraph,ndGraph.matrixForward, matcher,"C","D");
    Assert.assertEquals(0,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(2*2,matcher.getDiagonal(),Configuration.fpAccuracy);

    getMatcherValue(gr,ndGraph,ndGraph.matrixForward, matcher,"E","B");
    Assert.assertEquals(0.5,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(2*2,matcher.getDiagonal(),Configuration.fpAccuracy);

  }
 
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

    config.setGdScoreComputationAlgorithm(GDScoreComputationAlgorithmEnum.SCORE_TESTSET);
    LearnerGraph gr=new LearnerGraph(FsmParser.buildGraph(NDGraph, "testCount_computeGraphs"), config);
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,LearnerGraphND.ignoreRejectStates, true);
    ndGraph.computeWalkSequences(new StateBasedRandom(new Random(80)), 1);
   
    DetermineDiagonalAndRightHandSide matcher = ndGraph.new DDRH_BCR();
    getMatcherValue(gr,ndGraph,ndGraph.matrixForward, matcher,"C","D");
    Assert.assertEquals(1./3.,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(2*2,matcher.getDiagonal(),Configuration.fpAccuracy);

    getMatcherValue(gr,ndGraph,ndGraph.matrixForward, matcher,"E","B");
    Assert.assertEquals(1,matcher.getRightHandSide(),Configuration.fpAccuracy);
    Assert.assertEquals(2*2,matcher.getDiagonal(),Configuration.fpAccuracy);
  }
 
View Full Code Here

Examples of statechum.analysis.learning.rpnicore.GDLearnerGraph.DetermineDiagonalAndRightHandSide

  {
    int size=gr.getStateNumber()*(gr.getStateNumber()+1)/2;
    DoubleMatrix1D result = DoubleFactory1D.dense.make(size);
    StatesToConsider filter = LearnerGraphND.ignoreRejectStates;
    GDLearnerGraph ndGraph = new GDLearnerGraph(gr,filter, false);
    DetermineDiagonalAndRightHandSide ddrhInstance = ndGraph.new DDRH_default();
    for(Entry<CmpVertex,Map<String,List<CmpVertex>>> entryA:ndGraph.matrixForward.transitionMatrix.entrySet())
    {
      // Now iterate through states
      Iterator<Entry<CmpVertex,Map<String,List<CmpVertex>>>> stateB_It = ndGraph.matrixForward.transitionMatrix.entrySet().iterator();
      while(stateB_It.hasNext())
      {
        Entry<CmpVertex,Map<String,List<CmpVertex>>> stateB = stateB_It.next();

        int currentStatePair = ndGraph.vertexToIntNR(stateB.getKey(),entryA.getKey());
        ddrhInstance.compute(entryA.getKey(),stateB.getKey(),entryA.getValue(),stateB.getValue());
        result.setQuick(currentStatePair, ddrhInstance.getRightHandSide());
       
        if (stateB.getKey().equals(entryA.getKey())) break; // we only process a triangular subset.
      }
    }
   
View Full Code Here
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.