智慧合約互助遊戲開發運營版丨FDF智慧合約互助遊戲系統開發(詳情及流程)

xiaofufu發表於2023-03-08

  DAPP的全稱是Decentralized Application,也就是說,分散的應用在業內被稱為分散的應用,是基於區塊鏈底層技術的新應用模式。DAPP類似於區塊鏈技術APP與安卓系統的關係是基於底層系統開發的衍生產品。


  //expand target bins to i bins


  //將0~targetBinNums空間逆對映會0~i的空間


  for(int j=0;j<targetBinNums;++j){


  const float start=j*binInterval;


  const float end=start+binInterval;


  float count=0;


  const int leftUpper=static_cast<int>(std::ceil(start));


  float leftScale=0.0f;


  if(leftUpper>start){


  leftScale=leftUpper-start;


  if(distribution[leftUpper-1]!=0){


  count+=leftScale;


  }


  }本文由系統開發對接唯:MrsFu123編輯整理釋出。


  const int rightLower=static_cast<int>(std::floor(end));


  float rightScale=0.0f;


  if(rightLower<end){

  rightScale=end-rightLower;


  if(distribution[rightLower]!=0){


  count+=rightScale;


  }


  }


  std::for_each(distribution.begin()+leftUpper,distribution.begin()+rightLower,[&](float n){


  if(n!=0){


  count+=1;


  }


  });


  if(count==0){


  continue;


  }


  const float toExpandValue=quantizedDistribution[j]/count;


  if(leftUpper>start&&distribution[leftUpper-1]!=0){


  expandedDistribution[leftUpper-1]+=toExpandValue*leftScale;


  }

  if(rightLower<end&&distribution[rightLower]!=0){


  expandedDistribution[rightLower]+=toExpandValue*rightScale;


  }


  for(int k=leftUpper;k<rightLower;++k){


  if(distribution[k]!=0){


  expandedDistribution[k]+=toExpandValue;


  }


  }


  }


  //計算兩個空間的KL散度,並記錄最小的情況


  const float curKL=_klDivergence(candidateDistribution,expandedDistribution);


  //std::cout<<"=====>KL:"<<i<<"==>"<<curKL<<std::endl;


  if(curKL<minKLDivergence){


  minKLDivergence=curKL;


  threshold=i;


  }


  }


  }else if(mThresholdMethod==THRESHOLD_MAX){


  threshold=mBinNumber-1;


  }else{


  //TODO,support other method


  MNN_ASSERT(false);


  }


  //KL散度最小的情況,所對應的threshold就是我們尋找的最優解


  return threshold;


  }


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69956839/viewspace-2938694/,如需轉載,請註明出處,否則將追究法律責任。

相關文章