Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
10/17/18 04:47:09 (5 years ago)
Author:
hmaislin
Message:

#2929: Fixed result error

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2929_PrioritizedGrammarEnumeration/HeuristicLab.Algorithms.DataAnalysis.PGE/3.3/go-code/go-pge/plug/pge.go

    r16230 r16231  
    3232var probDepndNames []string
    3333
    34 var stepResult []*pge.PeelResult
    35 var lastStepRes *pge.PeelResult
     34var stepResult probs.ExprReportArray
     35var lastStepRes *probs.ExprReport
    3636var resultNr int
    3737
    3838var nCurrentCoeff int
    3939var nMaxCoeff int
     40
     41var nLastResults int
    4042
    4143//export InitSearch
     
    4850  testDatasN = 0
    4951  trainDatasN = 0
    50 
     52  nLastResults = 0
    5153  cps.CreateDS(maxGen, pgeRptEpoch, pgeRptCount, pgeArchiveCap, peelCnt, evalrCount, zeroEpsilon, goInitMethod, goGrowMethod, sortType)
    5254 
     
    7981  probDepndNames = goDepndNames
    8082 
    81   trainData.InitTrainDataF(goIndepNames, goDepndNames, matrix, nEntries)
     83  trainData.InitTrainData(goIndepNames, goDepndNames, matrix, nEntries)
    8284 
    8385  trainDatas[trainDatasN] = trainData
     
    9395  goDepndNames := strings.Split(C.GoString(depndNames), " ")
    9496 
    95   testData.InitTestDataF(goIndepNames, goDepndNames, matrix, nEntries)
     97  testData.InitTrainData(goIndepNames, goDepndNames, matrix, nEntries)
    9698  testDatas[testDatasN] = testData
    9799  testDatasN++
     
    135137    epcomm.Rpts = make(chan *probs.ExprReportArray, 64)
    136138  epcomm.Gen = make(chan [2]int, 64)
     139 
    137140  fmt.Printf("6\n")
    138141 
     
    195198  *testscore = 0
    196199 
    197   if resultNr < cps.GetPeelCount() {
     200  if resultNr < len(stepResult) && stepResult != nil {
    198201    elem := stepResult[resultNr]
    199202    resultNr++
    200203    lastStepRes = elem
     204    *bestlen1 = len(stepResult)
    201205    if(elem != nil) {
    202       if elem.Nobestpush {
    203         *nobestpush = 1;
    204       } else {
    205         if elem.BestNewMinErr {
    206           *bestnewminerr = 1
    207         }
    208         *testscore = elem.TestScore
    209         *ncoeff = len(elem.Coeff)
     206      //if elem.Nobestpush {
     207      //  *nobestpush = 1;
     208      //} else {
     209      //  if elem.BestNewMinErr {
     210          *bestnewminerr = int(elem.TestError())
     211      //  }
     212        *testscore = elem.TestScore()
     213        *ncoeff = len(elem.Coeff())
    210214        nCurrentCoeff = 0
    211         nMaxCoeff = len(elem.Coeff)
    212         *bestlen1 = elem.Bestlen1
    213         *bestlen2 = elem.Bestlen2
    214         return C.CString(elem.Expre.String())
    215       }
     215        nMaxCoeff = len(elem.Coeff())
     216        //*bestlen1 = 0 //elem.Bestlen1
     217        *bestlen2 = 0 //elem.Bestlen2
     218        return C.CString(elem.Expr().String())
     219      //}
    216220    }
    217221  }
     
    226230    //*item = elem.Coeff[i]
    227231   
    228     res = lastStepRes.Coeff[nCurrentCoeff]
     232    coeffs := lastStepRes.Coeff()
     233    res = coeffs[nCurrentCoeff]
    229234  }
    230235  nCurrentCoeff++
     
    233238
    234239//export StepW
    235 func StepW() {
     240func StepW() int {
    236241  resultNr = 0
    237   stepResult = cps.SingleStep()
     242  stepResult = nil
     243  nRes := cps.Step()
     244 
     245  resu, ok := <-epcomm.Rpts
     246 
     247  //_ = ok
     248 
     249  resultNr = nLastResults
     250 
     251  nNew := 0
     252  if ok && resu != nil {
     253    stepResult = *resu
     254    nNew = nRes - nLastResults
     255    nLastResults = nRes
     256  }
     257   
     258  return nNew
    238259}
    239260
Note: See TracChangeset for help on using the changeset viewer.