⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 data.c

📁 RoboCup 2D 仿真组冠军源代码之1997年冠军队——CMUnited97源代码
💻 C
📖 第 1 页 / 共 2 页
字号:
    /** Unsetting Mem->NewCoach in RecordCollectResult **/  }  if (PdataFile == NULL) {    PdataFile = fopen(PdataFileName,"a");  }  /* Player distance, other 9 teammates angs and dists sorted by ang? 11 opponents sorted by ang , teammates 9 players sorted by dist, 11 opponents sorted by dist */  char outStream[MAXMESG];  GetPassData(outStream,receiver,'a',Mem);  fprintf(PdataFile,"%s",outStream);  /* Put in the receiver's data.  Fast forward past the data msg */    fprintf(PdataFile,"%s",Mem->GetData(receiver));#endif}/*****************************************************************************/#if DETAILED_PASS_STATSextern char  _PredictedClass_;extern float _PredictedProb_;#endifvoid RecordPassResult(char Result){#if SAVE_PASS_DATA     if ( PdataFile != NULL ){     /** Only the client that recorded data **/    static int counter   = 0;    static int successes = 0;    static int failures  = 0;    static int misses    = 0;#if DETAILED_PASS_STATS    static int successesSpoint9 = 0;    static int failuresSpoint9  = 0;    static int missesSpoint9    = 0;    static int successesSpoint8 = 0;    static int failuresSpoint8  = 0;    static int missesSpoint8    = 0;    static int successesSpoint7 = 0;    static int failuresSpoint7  = 0;    static int missesSpoint7    = 0;    static int successesSpoint6 = 0;    static int failuresSpoint6  = 0;    static int missesSpoint6    = 0;    static int successesSpoint5 = 0;    static int failuresSpoint5  = 0;    static int missesSpoint5    = 0;    static int successesSpoint0 = 0;    static int failuresSpoint0  = 0;    static int missesSpoint0    = 0;    static int successesFpoint9 = 0;    static int failuresFpoint9  = 0;    static int missesFpoint9    = 0;    static int successesFpoint8 = 0;    static int failuresFpoint8  = 0;    static int missesFpoint8    = 0;    static int successesFpoint7 = 0;    static int failuresFpoint7  = 0;    static int missesFpoint7    = 0;    static int successesFpoint6 = 0;    static int failuresFpoint6  = 0;    static int missesFpoint6    = 0;    static int successesFpoint5 = 0;    static int failuresFpoint5  = 0;    static int missesFpoint5    = 0;    static int successesFpoint0 = 0;    static int failuresFpoint0  = 0;    static int missesFpoint0    = 0;#endif    if ( Mem->NewCoach ){ /** First time through, reset everything **/      counter = successes = failures = 0;      Mem->NewCoach = FALSE;    }    fprintf(PdataFile,"%c\n",Result);    switch(Result){    case PASS_SUCCESS:       successes++;  #if DETAILED_PASS_STATS      if (_PredictedClass_ == 'S'){	if (_PredictedProb_ > .9)	  successesSpoint9++;        else if (_PredictedProb_ > .8)	  successesSpoint8++;        else if (_PredictedProb_ > .7)	  successesSpoint7++;        else if (_PredictedProb_ > .6)	  successesSpoint6++;        else if (_PredictedProb_ > .5)	  successesSpoint5++;	else 	  successesSpoint0++;      }      else if (_PredictedClass_ == 'F'){	if (_PredictedProb_ > .9)	  successesFpoint9++;        else if (_PredictedProb_ > .8)	  successesFpoint8++;        else if (_PredictedProb_ > .7)	  successesFpoint7++;        else if (_PredictedProb_ > .6)	  successesFpoint6++;        else if (_PredictedProb_ > .5)	  successesFpoint5++;	else 	  successesFpoint0++;      }#endif      break;    case PASS_FAILURE:       failures++;   #if DETAILED_PASS_STATS      if (_PredictedClass_ == 'S'){	if (_PredictedProb_ > .9)	  failuresSpoint9++;        else if (_PredictedProb_ > .8)	  failuresSpoint8++;        else if (_PredictedProb_ > .7)	  failuresSpoint7++;        else if (_PredictedProb_ > .6)	  failuresSpoint6++;        else if (_PredictedProb_ > .5)	  failuresSpoint5++;	else 	  failuresSpoint0++;      }      else if (_PredictedClass_ == 'F'){	if (_PredictedProb_ > .9)	  failuresFpoint9++;        else if (_PredictedProb_ > .8)	  failuresFpoint8++;        else if (_PredictedProb_ > .7)	  failuresFpoint7++;        else if (_PredictedProb_ > .6)	  failuresFpoint6++;        else if (_PredictedProb_ > .5)	  failuresFpoint5++;	else 	  failuresFpoint0++;      }#endif      break;     case PASS_MISS:          misses++;     #if DETAILED_PASS_STATS      if (_PredictedClass_ == 'S'){	if (_PredictedProb_ > .9)	  missesSpoint9++;        else if (_PredictedProb_ > .8)	  missesSpoint8++;        else if (_PredictedProb_ > .7)	  missesSpoint7++;        else if (_PredictedProb_ > .6)	  missesSpoint6++;        else if (_PredictedProb_ > .5)	  missesSpoint5++;	else 	  missesSpoint0++;      }      else if (_PredictedClass_ == 'F'){	if (_PredictedProb_ > .9)	  missesFpoint9++;        else if (_PredictedProb_ > .8)	  missesFpoint8++;        else if (_PredictedProb_ > .7)	  missesFpoint7++;        else if (_PredictedProb_ > .6)	  missesFpoint6++;        else if (_PredictedProb_ > .5)	  missesFpoint5++;	else 	  missesFpoint0++;      }#endif      break;    }        if ( !strcmp(BehaviorName,"TreePass") )      printf("%c %.2f\n",_PredictedClass_,_PredictedProb_);    if ( ++counter%(SAVE_FREQ)==0 ){      fprintf(PdataFile,"| misses: %d/%d = %4.1f%%   successes: %d/%d = %4.1f%%   failures: %d/%d = %4.1f%%\n",	      misses,counter,(float)100*misses/counter,	      successes,counter,(float)100*successes/counter,	      failures,counter,(float) 100*failures/counter);#if DETAILED_PASS_STATSif ( !strcmp(BehaviorName,"TreePass") ){      int counterSpoint9 = missesSpoint9+failuresSpoint9+successesSpoint9;      fprintf(PdataFile,"| missesS.9: %d/%d = %4.1f%%   successesS.9: %d/%d = %4.1f%%   failuresS.9: %d/%d = %4.1f%%\n",	      missesSpoint9,counterSpoint9,(float)100*missesSpoint9/counterSpoint9,	      successesSpoint9,counterSpoint9,(float)100*successesSpoint9/counterSpoint9,	      failuresSpoint9,counterSpoint9,(float) 100*failuresSpoint9/counterSpoint9);      int counterSpoint8 = missesSpoint8+failuresSpoint8+successesSpoint8;      fprintf(PdataFile,"| missesS.8: %d/%d = %4.1f%%   successesS.8: %d/%d = %4.1f%%   failuresS.8: %d/%d = %4.1f%%\n",	      missesSpoint8,counterSpoint8,(float)100*missesSpoint8/counterSpoint8,	      successesSpoint8,counterSpoint8,(float)100*successesSpoint8/counterSpoint8,	      failuresSpoint8,counterSpoint8,(float) 100*failuresSpoint8/counterSpoint8);      int counterSpoint7 = missesSpoint7+failuresSpoint7+successesSpoint7;      fprintf(PdataFile,"| missesS.7: %d/%d = %4.1f%%   successesS.7: %d/%d = %4.1f%%   failuresS.7: %d/%d = %4.1f%%\n",	      missesSpoint7,counterSpoint7,(float)100*missesSpoint7/counterSpoint7,	      successesSpoint7,counterSpoint7,(float)100*successesSpoint7/counterSpoint7,	      failuresSpoint7,counterSpoint7,(float) 100*failuresSpoint7/counterSpoint7);      int counterSpoint6 = missesSpoint6+failuresSpoint6+successesSpoint6;      fprintf(PdataFile,"| missesS.6: %d/%d = %4.1f%%   successesS.6: %d/%d = %4.1f%%   failuresS.6: %d/%d = %4.1f%%\n",	      missesSpoint6,counterSpoint6,(float)100*missesSpoint6/counterSpoint6,	      successesSpoint6,counterSpoint6,(float)100*successesSpoint6/counterSpoint6,	      failuresSpoint6,counterSpoint6,(float) 100*failuresSpoint6/counterSpoint6);      int counterSpoint5 = missesSpoint5+failuresSpoint5+successesSpoint5;      fprintf(PdataFile,"| missesS.5: %d/%d = %4.1f%%   successesS.5: %d/%d = %4.1f%%   failuresS.5: %d/%d = %4.1f%%\n",	      missesSpoint5,counterSpoint5,(float)100*missesSpoint5/counterSpoint5,	      successesSpoint5,counterSpoint5,(float)100*successesSpoint5/counterSpoint5,	      failuresSpoint5,counterSpoint5,(float) 100*failuresSpoint5/counterSpoint5);      int counterSpoint0 = missesSpoint0+failuresSpoint0+successesSpoint0;      fprintf(PdataFile,"| missesS.0: %d/%d = %4.1f%%   successesS.0: %d/%d = %4.1f%%   failuresS.0: %d/%d = %4.1f%%\n",	      missesSpoint0,counterSpoint0,(float)100*missesSpoint0/counterSpoint0,	      successesSpoint0,counterSpoint0,(float)100*successesSpoint0/counterSpoint0,	      failuresSpoint0,counterSpoint0,(float) 100*failuresSpoint0/counterSpoint0);      int counterFpoint9 = missesFpoint9+failuresFpoint9+successesFpoint9;      fprintf(PdataFile,"| missesF.9: %d/%d = %4.1f%%   successesF.9: %d/%d = %4.1f%%   failuresF.9: %d/%d = %4.1f%%\n",	      missesFpoint9,counterFpoint9,(float)100*missesFpoint9/counterFpoint9,	      successesFpoint9,counterFpoint9,(float)100*successesFpoint9/counterFpoint9,	      failuresFpoint9,counterFpoint9,(float) 100*failuresFpoint9/counterFpoint9);      int counterFpoint8 = missesFpoint8+failuresFpoint8+successesFpoint8;      fprintf(PdataFile,"| missesF.8: %d/%d = %4.1f%%   successesF.8: %d/%d = %4.1f%%   failuresF.8: %d/%d = %4.1f%%\n",	      missesFpoint8,counterFpoint8,(float)100*missesFpoint8/counterFpoint8,	      successesFpoint8,counterFpoint8,(float)100*successesFpoint8/counterFpoint8,	      failuresFpoint8,counterFpoint8,(float) 100*failuresFpoint8/counterFpoint8);      int counterFpoint7 = missesFpoint7+failuresFpoint7+successesFpoint7;      fprintf(PdataFile,"| missesF.7: %d/%d = %4.1f%%   successesF.7: %d/%d = %4.1f%%   failuresF.7: %d/%d = %4.1f%%\n",	      missesFpoint7,counterFpoint7,(float)100*missesFpoint7/counterFpoint7,	      successesFpoint7,counterFpoint7,(float)100*successesFpoint7/counterFpoint7,	      failuresFpoint7,counterFpoint7,(float) 100*failuresFpoint7/counterFpoint7);      int counterFpoint6 = missesFpoint6+failuresFpoint6+successesFpoint6;      fprintf(PdataFile,"| missesF.6: %d/%d = %4.1f%%   successesF.6: %d/%d = %4.1f%%   failuresF.6: %d/%d = %4.1f%%\n",	      missesFpoint6,counterFpoint6,(float)100*missesFpoint6/counterFpoint6,	      successesFpoint6,counterFpoint6,(float)100*successesFpoint6/counterFpoint6,	      failuresFpoint6,counterFpoint6,(float) 100*failuresFpoint6/counterFpoint6);      int counterFpoint5 = missesFpoint5+failuresFpoint5+successesFpoint5;      fprintf(PdataFile,"| missesF.5: %d/%d = %4.1f%%   successesF.5: %d/%d = %4.1f%%   failuresF.5: %d/%d = %4.1f%%\n",	      missesFpoint5,counterFpoint5,(float)100*missesFpoint5/counterFpoint5,	      successesFpoint5,counterFpoint5,(float)100*successesFpoint5/counterFpoint5,	      failuresFpoint5,counterFpoint5,(float) 100*failuresFpoint5/counterFpoint5);      int counterFpoint0 = missesFpoint0+failuresFpoint0+successesFpoint0;      fprintf(PdataFile,"| missesF.0: %d/%d = %4.1f%%   successesF.0: %d/%d = %4.1f%%   failuresF.0: %d/%d = %4.1f%%\n",	      missesFpoint0,counterFpoint0,(float)100*missesFpoint0/counterFpoint0,	      successesFpoint0,counterFpoint0,(float)100*successesFpoint0/counterFpoint0,	      failuresFpoint0,counterFpoint0,(float) 100*failuresFpoint0/counterFpoint0);} #endif      fclose(PdataFile);      PdataFile = NULL; /** Set it back to Null so RecordPassData knows to reopen **/    }  }#endif}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -