Package com.mockturtlesolutions.snifflib.datatypes

Examples of com.mockturtlesolutions.snifflib.datatypes.DblParamSet


   
    //System.out.println("Instantiating DefaultComplexBufferPredictorGenerator.");
   
   
    this.optimizationListeners = new Vector();
    this.parameterGuesses = new DblParamSet();
    this.currentEstimates = new DblParamSet();
    this.priorParameters = new DblParamSet();
    this.mixingParameters = new DblParamSet();
   
    this.maxIterations = 10;
    //this.parent = par;
    //this.storage = stor;
    //this.mcmc_complete = false;
View Full Code Here


//     }
//    
//     BufferStorage backingBuffer =  conn.getBuffer(repos,buffName);
//    

    DblParamSet pars = null;
    DblParamSet pars2 = null;
    String descriptor = null;
    Vector persistentParams = null;
   
    descriptor = "configuration";
    persistentParams = backingBuffer.getGeneratorParametersForDescriptor(descriptor);
    for (int j=0;j<persistentParams.size();j++)
    {
      PersistentParameter pp = (PersistentParameter)persistentParams.get(j);
      this.setGeneratorParameterValue(pp.getName(),descriptor,pp.getValue());
     
    }
   
   
   
    descriptor = "parameter";
    //pars = this.parameterGuesses;;
    //pars2 = this.currentEstimates;
    pars = this.parameterGuesses;
    pars2 = this.currentEstimates;
   
    persistentParams = backingBuffer.getGeneratorParametersForDescriptor(descriptor);
    for (int j=0;j<persistentParams.size();j++)
    {
      PersistentParameter pp = (PersistentParameter)persistentParams.get(j);
      pars.setParam(pp.getName(),new DblMatrix(new Double(pp.getValue())));
      pars2.setParam(pp.getName(),new DblMatrix(new Double(pp.getValue())))
    }
   
   
    descriptor = "prior";
    //pars = this.priorParameters;
View Full Code Here

   
    //BufferStorage backingBuffer =  conn.getBuffer(repos,buffName);
   
   
    String[] pnames;
    DblParamSet pars = null;
    String descriptor = "parameter";
    pars = this.parameterGuesses;;
    pnames = pars.parameterSet();
    for (int j=0;j<pnames.length;j++)
    {
      backingBuffer.addGeneratorParameter(pnames[j],descriptor);
      //backingBuffer.setGeneratorParameterDescriptor(pnames[j],descriptor);
      backingBuffer.setGeneratorParameterValue(pnames[j],descriptor,pars.getParam(pnames[j]).getDoubleAt(0).toString());
     
    }
   
    descriptor = "prior";
    pars = this.priorParameters;
    pnames = pars.parameterSet();
    for (int j=0;j<pnames.length;j++)
    {
      backingBuffer.addGeneratorParameter(pnames[j],descriptor);
      //backingBuffer.setGeneratorParameterDescriptor(pnames[j],descriptor);
      backingBuffer.setGeneratorParameterValue(pnames[j],descriptor,pars.getParam(pnames[j]).getDoubleAt(0).toString());
     
     
    }
   
    descriptor = "mixing";
    pars = this.mixingParameters;
    pnames = pars.parameterSet();
    for (int j=0;j<pnames.length;j++)
    {
      backingBuffer.addGeneratorParameter(pnames[j],descriptor);
      //backingBuffer.setGeneratorParameterDescriptor(pnames[j],descriptor);
      backingBuffer.setGeneratorParameterValue(pnames[j],descriptor,pars.getParam(pnames[j]).getDoubleAt(0).toString());
     
    }
   
    descriptor = "configuration";
    Set pset = this.configurationMap.keySet();
View Full Code Here

   
  }
 
  public void removeGeneratorParameter(String parametername,String descriptor)
  {
    DblParamSet pars = null;
   
    if (descriptor.equals("parameter"))
    {
      pars = this.parameterGuesses;
      pars.remove(parametername);
      pars = null;
     
      pars = this.currentEstimates;
      pars.remove(parametername);
      pars = null;
    }
   
    if (descriptor.equals("prior"))
    {
      pars = this.priorParameters;
      pars.remove(parametername);
      pars = null;
    }
   
    if (descriptor.equals("mixing"))
    {
      pars = this.mixingParameters;
      pars.remove(parametername);
      pars = null;
    }
   
   
    if (descriptor.equals("configuration"))
View Full Code Here

  }
 
  public void addGeneratorParameter(String parametername,String descriptor)
  {
   
    DblParamSet pars = null;
   
    if (descriptor.equals("parameter"))
    {
      //System.out.println("Adding parameter");
      pars = this.parameterGuesses;
      pars.setParam(parametername,new DblMatrix(0.0));
     
      pars = this.currentEstimates;
      pars.setParam(parametername,new DblMatrix(0.0));
     
     
    }
    else if (descriptor.equals("prior"))
    {
      //System.out.println("Adding prior");
      pars = this.priorParameters;
      pars.setParam(parametername,new DblMatrix(0.0));
     
    }
    else if (descriptor.equals("mixing"))
    {
      //System.out.println("Adding mixing "+ parametername);
      pars = this.mixingParameters;
      pars.setParam(parametername,new DblMatrix(0.0));
     
    }
    else if (descriptor.equals("configuration"))
    {
      //System.out.println("Adding configuration");
View Full Code Here

  public void setGeneratorParameterValue(String parametername,String descriptor,String val)
  { 
 
    //System.out.println("IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII  setGeneratorParameterValue of actual");
   
    DblParamSet pars = null;
   
    if (descriptor.equals("parameter"))
    {
      pars = this.parameterGuesses;
      if (!pars.hasParameter(parametername))
      {
        throw new RuntimeException("Parameter "+parametername+" must be added before it can be set.");
      }
      pars.setParam(parametername,new DblMatrix(new Double(val)));
     
      pars = this.currentEstimates;
      if (!pars.hasParameter(parametername))
      {
        throw new RuntimeException("Parameter "+parametername+" must be added before it can be set.");
      }
      pars.setParam(parametername,new DblMatrix(new Double(val)));
      //System.out.println("Setting parameter:"+ parametername+" to "+val);
    }
   
    if (descriptor.equals("prior"))
    {
      pars = this.priorParameters;
      if (!pars.hasParameter(parametername))
      {
        throw new RuntimeException("Prior parameter "+parametername+" must be added before it can be set.");
      }
      pars.setParam(parametername,new DblMatrix(new Double(val)));
    }
   
    if (descriptor.equals("mixing"))
    {
      //System.out.println("Setting mixing parameter:"+ parametername);
      pars = this.mixingParameters;
      if (!pars.hasParameter(parametername))
      {
        throw new RuntimeException("Mixing parameter "+parametername+" must be added before it can be set.");
      }
      pars.setParam(parametername,new DblMatrix(new Double(val)));
      //System.out.println("Setting mixing parameter:"+ parametername+" to "+val);
    }
   
    if (descriptor.equals("configuration"))
    {
View Full Code Here

  }
 
  public String getGeneratorParameterValue(String parametername,String descriptor)
  {
   
    DblParamSet pars = null;
    String out = null;
   
    if (descriptor.equals("parameter"))
    {
      pars = this.currentEstimates;
      out = pars.getParam(parametername).getDoubleAt(0).toString();     
    }
   
    if (descriptor.equals("prior"))
    {
      pars = this.priorParameters;
      out = pars.getParam(parametername).getDoubleAt(0).toString();
    }
   
    if (descriptor.equals("mixing"))
    {
      pars = this.mixingParameters;
      out = pars.getParam(parametername).getDoubleAt(0).toString();
     
    }
   
    if (descriptor.equals("configuration"))
    {
View Full Code Here

 
  public Vector getGeneratorParametersForDescriptor(String descript)
  {
    Vector outSet = new Vector();
   
    DblParamSet pars = null;
   
    String descriptor = "";
    String[] params;
   
    if (descript.equals("parameter"))
    {
   
      descriptor = "parameter";
   
      pars = this.currentEstimates;
      params = pars.parameterSet();
   
      for (int j=0;j<params.length;j++)
      {
        DblMatrix val = pars.getParam(params[j]);
        outSet.add(new PersistentParameter(params[j],descriptor,val.getDoubleAt(0).toString()));
      }
    }
   
   
    if (descript.equals("prior"))
    {
   
      descriptor = "prior";
     
      pars = this.priorParameters;
      params = pars.parameterSet();
     
      for (int j=0;j<params.length;j++)
      {
        DblMatrix val = pars.getParam(params[j]);
        outSet.add(new PersistentParameter(params[j],descriptor,val.getDoubleAt(0).toString()));
      }
    }
   
    if (descript.equals("mixing"))
    {
   
      descriptor = "mixing";
      pars = this.mixingParameters;
      params = pars.parameterSet();

      for (int j=0;j<params.length;j++)
      {
        DblMatrix val = pars.getParam(params[j]);
        outSet.add(new PersistentParameter(params[j],descriptor,val.getDoubleAt(0).toString()));
      }
    }
   
    if (descript.equals("configuration"))
View Full Code Here

   
    this.repository = repos;
    this.connection = conn;
    this.dataSetStartRow = 0;
   
    this.setPriorParams(new DblParamSet());
   
    //this.avgcoefficients = new DblParamSet(); //Stores the average buffercoefficients for each buffer.
    //This is needed to implement the prior distribution for the
    //buffer coefficients. Presumably we can add functionality that
    //the imperical averages are over-ridden by some user-supplied
View Full Code Here

  */
  public DblParamSet negLogPrior()
        {      
    //There will be one prior probability for each parameter.
    //Get the uniform priors for all parameters first. This initializes with default priors.
              DblParamSet priors = super.negLogPrior()
 
    String[] names = priors.parameterSet();
    DblParamSet priorParameters = this.getPriorParams();
   
   
    for (int j=0;j<names.length;j++)
    {
      String priorname = "mean_"+names[j];
     
      if (priorParameters.hasParameter(priorname))
      {
        DblMatrix mean = (DblMatrix)priorParameters.getParam(priorname);

        priorname = "var_"+names[j];
        DblMatrix var = (DblMatrix)priorParameters.getParam(priorname);

        this.normal.setMean(mean);
        this.normal.setVariance(var);

        //Calculate and set the prior probability for the current value of the parameter.
        DblMatrix VAL = this.getParam(names[j]);
        priors.setParam(names[j],this.normal.pdf(VAL));
      }
      else
      {
        priorname = "mean_log_"+names[j];
        if (priorParameters.hasParameter(priorname)) //Parameter is log-normal...
        {
          DblMatrix mean = (DblMatrix)priorParameters.getParam(priorname);

          priorname = "var_log_"+names[j];
          DblMatrix var = (DblMatrix)priorParameters.getParam(priorname);

          this.normal.setMean(mean);
          this.normal.setVariance(var);

          //Calculate and set the prior probability for the current value of the parameter.
          DblMatrix VAL = this.getParam(names[j]);
          priors.setParam(names[j],this.normal.pdf(DblMatrix.log(VAL)));
        }
        else
        {
          priorname = "mean_log_delta_"+names[j]; //Order restricted parameters.
          if (priorParameters.hasParameter(priorname)) //Parameter is order-restricted...
          {
            DblMatrix mean_log_delta = (DblMatrix)priorParameters.getParam(priorname);

            priorname = "var_log_delta_"+names[j];
            DblMatrix var_log_delta = (DblMatrix)priorParameters.getParam(priorname);

            this.normal.setMean(mean_log_delta);
            this.normal.setVariance(var_log_delta);

            //Calculate delta.
View Full Code Here

TOP

Related Classes of com.mockturtlesolutions.snifflib.datatypes.DblParamSet

Copyright © 2018 www.massapicom. 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.