1
當我嘗試運行我的代碼時,只是遇到以下錯誤。我不明白我做錯了什麼。有什麼建議麼?com.cra.figaro.algorithm.NotATargetException當在Scala中使用Figaro時
com.cra.figaro.algorithm.NotATargetException
at com.cra.figaro.algorithm.ProbQueryAlgorithm$class.check(ProbQueryAlgorithm.scala:68)
at com.cra.figaro.algorithm.ProbQueryAlgorithm$class.probability(ProbQueryAlgorithm.scala:138)
at com.cra.figaro.algorithm.sampling.WeightedSampler.probability(WeightedSampler.scala:25)
at prob1.BetaBinomial$.runner1(BetaBinomial.scala:24)
林在SBT與runner1("HHHHTHHHHHHTHHTHHHTHH")
執行,我還有其他的代碼在工作費加羅但是這只是一個將無法啓動。
package prob1
import com.cra.figaro.library.atomic.continuous.Beta
import com.cra.figaro.library.atomic.discrete.Binomial
import com.cra.figaro.language.Flip
import com.cra.figaro.algorithm.sampling.Importance
object BetaBinomial {
def runner1(data: String){
val outcomes = data
val numTosses = outcomes.length
val numObservedHeads = outcomes.count((c: Char) => c == 'H')
val bias = Beta(2,5)
val numberOfHeads = Binomial(numTosses, bias)
val nextToss = Flip(bias)
numberOfHeads.observe(numObservedHeads)
val algorithm = Importance(bias)
algorithm.start()
Thread.sleep(1000)
algorithm.stop()
//This is where i get the error
val probHeads = algorithm.probability(nextToss, true)
println("Probability of heads = " + probHeads)
algorithm.kill()
numberOfHeads.unobserve()
}
}
這樣做的伎倆,謝謝! – user3139545 2014-09-19 15:44:59