Esempio n. 1
0
void AddWalkSat() {

  ALGORITHM *pCurAlg;

  pCurAlg = CreateAlgorithm("walksat","",FALSE,
    "WALKSAT: Original WalkSAT algorithm (SKC variant)",
    "Selman, Kautz, Cohen [AAAI 94]",
    "PickWalkSatSKC",
    "DefaultProcedures,Flip+FalseClauseList",
    "default","default");
  
  AddParmProbability(&pCurAlg->parmList,"-wp","walk probability [default %s]","with probability PR, select a random variable from a~randomly selected unsat clause","",&iWp,0.50);

  CreateTrigger("PickWalkSatSKC",ChooseCandidate,PickWalkSatSKC,"","");


  pCurAlg = CreateAlgorithm("walksat","",TRUE,
    "WALKSAT: Original WalkSAT algorithm (SKC variant) (weighted)",
    "Selman, Kautz, Cohen [AAAI 94]",
    "PickWalkSatSKCW",
    "DefaultProceduresW,Flip+FalseClauseListW",
    "default_w","default");
  
  CopyParameters(pCurAlg,"walksat","",FALSE);

  CreateTrigger("PickWalkSatSKCW",ChooseCandidate,PickWalkSatSKCW,"","");
 
}
Esempio n. 2
0
void AddRNOVELTYPLUS() {

  ALGORITHM *pCurAlg;

  pCurAlg = AddAlg("rnovelty+","",0,
    "WALKSAT-RNOVELTY+: Hoos [AAAI 99]",
    "Defaults,PickRNOVELTYPLUS,FlipFalseInfo");
    
  CopyParameters(pCurAlg,"novelty+","",0);

  AddFunction("PickRNOVELTYPLUS",ChooseCandidate,PickRNOVELTYPLUS,"FalseInfo,VarLastChange","");

}
Esempio n. 3
0
void AddHWSAT() {

    ALGORITHM *pCurAlg;

    pCurAlg = AddAlg("hwsat","",0,
                     "HWSAT: Gent, Walsh [Hybrid Problems... 95]",
                     "Defaults,PickHWSAT,FlipVarScore");

    CopyParameters(pCurAlg,"hsat","",0);

    AddParmRatio(&pCurAlg->parmList,"-wp","walk probability","Choose random variable from an unsat clause with prob N/[M]","",&iWpNum,&iWpDen,10,100);

    AddFunction("PickHWSAT",ChooseCandidate,PickHWSAT,"VarScore,VarLastChange","");

}
Esempio n. 4
0
void AddRNoveltyPlus() {

  ALGORITHM *pCurAlg;

  pCurAlg = CreateAlgorithm("rnovelty+","",FALSE,
    "RNovelty+: RNovelty with random walk",
    "Hoos [AAAI 99]",
    "PickRNoveltyPlus",
    "DefaultProcedures,Flip+FalseClauseList,VarLastChange",
    "default","default");
    
  CopyParameters(pCurAlg,"novelty+","",FALSE);

  CreateTrigger("PickRNoveltyPlus",ChooseCandidate,PickRNoveltyPlus,"","");

}
Esempio n. 5
0
void AddRNovelty() {

  ALGORITHM *pCurAlg;

  pCurAlg = CreateAlgorithm("rnovelty","",FALSE,
    "RNovelty",
    "McAllester, Selman, Kautz [AAAI 97]",
    "PickRNovelty",
    "DefaultProcedures,Flip+FalseClauseList,VarLastChange",
    "default","default");
  
  CopyParameters(pCurAlg,"novelty","",FALSE);

  CreateTrigger("PickRNovelty",ChooseCandidate,PickRNovelty,"","");

}
Esempio n. 6
0
/**
 * Execute already prepared query with data provided in data.frame-like data 
 * structure.
 * 
 * If query fetches data it may be read using sqlFetchMore().
 *
 * @param chan R ODBC handle
 * @param data data.frame-like structure with query data (columns refer
 *   to query parameters, rows to query executions)
 * @param row number of row in data to copy values from
 * @param vtest debug level: 
 *   0-no debug, 
 *   1-verbose, 
 *   2-verbose with no query execution
 * @retval 1 on success, -1 on error
 */
SEXP RODBCExecute(SEXP chan, SEXP data, SEXP nrows)
{
  pRODBCHandle thisHandle = R_ExternalPtrAddr(chan);
  int rows, row, stat = 1;
  SQLRETURN res = 0;

  /* Clear error list */
  errorFree(thisHandle->msglist);
  thisHandle->msglist = NULL;
  
  /* Bind Query parameters  */
  res = BindParameters(thisHandle, data);
  if(res != 1){
    return ScalarInteger(-1);
  }

  if(0 == LENGTH(data)){
    res = SQLExecute(thisHandle->hStmt);
    SQL_RESULT_CHECK(res, thisHandle, _("[RODBCext] Error: SQLExecute failed"), ScalarInteger(-1));
  }
  else{
    rows = LENGTH(VECTOR_ELT(data, 0));
    for(row = 0; row < rows; row++) {
      /* Discard any pending data from previous query executions */
      SQLCloseCursor(thisHandle->hStmt);

      CopyParameters(thisHandle->ColData, data, row);
  
      res = SQLExecute(thisHandle->hStmt);
      SQL_RESULT_CHECK(res, thisHandle, _("[RODBCext] Error: SQLExecute failed"), ScalarInteger(-1));
    }
  }
  
  /* Prepare result for fetching */
  stat = cachenbind(thisHandle, asInteger(nrows));

  return ScalarInteger(stat);
}
Esempio n. 7
0
ToneTab::ToneTab(ProfileDoc *dc,WindowPtr d):WindowTab(d,ST_DITL_ID)
{

	int i;
	int	num_cmp[1];
	double	hmi[1],hma[1],vmi[1],vma[1];
	int		ec[5],pr[5];
	double	xd[2],yd[2];

	doc = dc;
	
	short	curve_ids[] = CURVE_IDS;
	short	grid_ids[] = GRID_IDS;

// set up the slider



	
// set up the controls


	numControls = 0;
	controls[0] = new CurveControl(dp,curve_ids,startNum,1,0,(baseWin*)this,0);
	if (controls[0]) 
		{
		numControls++;
		num_cmp[0] = 4;
		hmi[0] = 0;
		hma[0] = 100;
		vmi[0] = 0;
		vma[0] = 100;
		((CurveControl*)(controls[0]))->SetUpCurves(1,num_cmp,hmi,hma,vmi,vma);
		}
		
	// set up editable fields	
	for (i=0; i<5; i++) ec[i] = 1;
	ec[0] = 0;	
	
	for (i=0; i<5; i++) pr[i] = 1;
	pr[0] = 0;		
	// create the grid control
	controls[1] = new GridControl(dp,grid_ids,startNum,5,101,ec,pr);
	if (controls[1])  numControls++;	
	
	xd[0] = 0;
	xd[1] = 100;
	yd[0] = 0;
	yd[1] = 100;
	((GridControl*)(controls[1]))->SetUpDelete(2,xd,yd);
	
	//copy the data into the controls
	CopyIntoControl(-1);		
		
		
// set up the parameters

	CopyParameters();	
	
	last_changed = 0;	
	
}