Class GAEQOracle

java.lang.Object
net.maswag.falcaun.GAEQOracle
All Implemented Interfaces:
de.learnlib.oracle.EquivalenceOracle<net.automatalib.automaton.transducer.MealyMachine<?,String,?,String>,String,net.automatalib.word.Word<String>>, de.learnlib.oracle.EquivalenceOracle.MealyEquivalenceOracle<String,String>, EvaluationCountable, EvaluationCountable.MealyEquivalenceOracle<String,String>

class GAEQOracle extends Object implements de.learnlib.oracle.EquivalenceOracle.MealyEquivalenceOracle<String,String>, EvaluationCountable.MealyEquivalenceOracle<String,String>
Equivalence query using genetic algorithm
Author:
Masaki Waga

We use uniform crossover and random mutation.

  • Field Details

    • algorithm

      private final org.uma.jmetal.algorithm.Algorithm<org.uma.jmetal.solution.IntegerSolution> algorithm
    • problem

      private final EQSearchProblem problem
    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • ltlOracle

      private final de.learnlib.oracle.PropertyOracle.MealyPropertyOracle<String,String,String> ltlOracle
  • Constructor Details

  • Method Details

    • isDisproved

      private boolean isDisproved()
      Returns:
      whether the property is disproved.
    • findCounterExample

      @Nullable @ParametersAreNonnullByDefault public de.learnlib.query.DefaultQuery<String,net.automatalib.word.Word<String>> findCounterExample(net.automatalib.automaton.transducer.MealyMachine<?,String,?,String> hypothesis, Collection<? extends String> symbolList)
      Specified by:
      findCounterExample in interface de.learnlib.oracle.EquivalenceOracle<net.automatalib.automaton.transducer.MealyMachine<?,String,?,String>,String,net.automatalib.word.Word<String>>
    • getEvaluateCount

      public int getEvaluateCount()
      Specified by:
      getEvaluateCount in interface EvaluationCountable