Class HuberLawSampler

java.lang.Object
jline.lib.perm.PermSolver
jline.lib.perm.HuberLawSampler

public class HuberLawSampler extends PermSolver
Sampling method to approximate the permanent using the Huber-Law bound. The Huber-Law algorithm uses acceptance-rejection sampling with a carefully constructed bound to estimate the permanent. The method rescales the matrix to be doubly stochastic and then uses the Huber-Law bound for efficient sampling.
  • Constructor Details

    • HuberLawSampler

      public HuberLawSampler(Matrix matrix)
    • HuberLawSampler

      public HuberLawSampler(Matrix matrix, double delta, double alpha2, double epsilon, String mode, int numberOfSamples, long maximumTime, boolean solve)
  • Method Details

    • getSampleAccepted

      public List<Integer> getSampleAccepted()
    • getSampleTime

      public List<Long> getSampleTime()
    • getPermStep

      public List<Double> getPermStep()
    • compute

      public void compute()
      Description copied from class: PermSolver
      Compute the permanent or approximation for the given matrix. This method must be implemented by all concrete solver classes. The result should be stored in the value field.
      Specified by:
      compute in class PermSolver