File tree Expand file tree Collapse file tree 6 files changed +12
-46
lines changed
Expand file tree Collapse file tree 6 files changed +12
-46
lines changed Original file line number Diff line number Diff line change 2727int main (int nargs, char *args[])
2828{
2929 bayesopt::Parameters par;
30+
3031 par.verbose_level = 0 ;
3132 par.noise = 1e-10 ;
32- par.force_jump = 30 ;
3333
3434 std::ofstream log;
3535 std::clock_t start_t ;
Original file line number Diff line number Diff line change @@ -97,12 +97,6 @@ namespace bayesopt {
9797 bool l_all; /* *< Learn all hyperparameters or only kernel */
9898
9999 double epsilon; /* *< For epsilon-greedy exploration */
100- size_t force_jump; /* *< If >0, and the difference between two
101- consecutive observations is pure noise,
102- for n consecutive steps, force a random
103- jump. Avoid getting stuck if model is bad
104- and there is few data, however, it might
105- reduce the accuracy. */
106100
107101 KernelParameters kernel; /* *< Kernel parameters */
108102 MeanParameters mean; /* *< Mean (parametric function) parameters */
Original file line number Diff line number Diff line change @@ -111,30 +111,6 @@ namespace bayesopt
111111 // Find what is the next point.
112112 vectord xNext = nextPoint ();
113113 double yNext = evaluateSampleInternal (xNext);
114-
115- // If we are stuck in the same point for several iterations, try a random jump!
116- if (mParameters .force_jump )
117- {
118- if (std::pow (mYPrev - yNext,2 ) < mParameters .noise )
119- {
120- mCounterStuck ++;
121- FILE_LOG (logDEBUG) << " Stuck for " << mCounterStuck << " steps" ;
122- }
123- else
124- {
125- mCounterStuck = 0 ;
126- }
127- mYPrev = yNext;
128-
129- if (mCounterStuck > mParameters .force_jump )
130- {
131- FILE_LOG (logINFO) << " Forced random query!" ;
132- xNext = samplePoint ();
133- yNext = evaluateSampleInternal (xNext);
134- mCounterStuck = 0 ;
135- }
136- }
137-
138114 double expectation = getPrediction (xNext)->getMean ();
139115
140116 mModel ->addSample (xNext,yNext);
Original file line number Diff line number Diff line change @@ -91,9 +91,9 @@ namespace bayesopt
9191 }
9292
9393 fp.readOrWrite (" mParameters.l_all" , mParameters .l_all );
94+
9495 fp.readOrWrite (" mParameters.epsilon" , mParameters .epsilon );
95- fp.readOrWrite (" mParameters.force_jump" , mParameters .force_jump );
96-
96+
9797 fp.readOrWrite (" mParameters.kernel.name" , mParameters .kernel .name );
9898 fp.readOrWrite (" mParameters.kernel.hp_mean" , mParameters .kernel .hp_mean );
9999 fp.readOrWrite (" mParameters.kernel.hp_std" , mParameters .kernel .hp_std );
Original file line number Diff line number Diff line change @@ -199,8 +199,7 @@ bopt_params initialize_parameters_to_default(void)
199199 params.sc_type = SC_MAP;
200200
201201 params.epsilon = 0.0 ;
202- params.force_jump = 20 ;
203-
202+
204203 params.crit_name = new char [128 ];
205204 strcpy (params.crit_name ,CRIT_NAME.c_str ());
206205 params.n_crit_params = 0 ;
@@ -274,10 +273,9 @@ namespace bayesopt {
274273 l_type = c_params.l_type ;
275274
276275 l_all = c_params.l_all ;
277-
276+
278277 epsilon = c_params.epsilon ;
279- force_jump = c_params.force_jump ;
280-
278+
281279 kernel.name = std::string (c_params.kernel .name );
282280 kernel.hp_mean = bayesopt::utils::array2vector (c_params.kernel .hp_mean ,
283281 c_params.kernel .n_hp );
@@ -325,10 +323,9 @@ namespace bayesopt {
325323 c_params.l_type = l_type;
326324
327325 c_params.l_all = l_all;
328-
326+
329327 c_params.epsilon = epsilon;
330- c_params.force_jump = force_jump;
331-
328+
332329 strcpy (c_params.kernel .name , kernel.name .c_str ());
333330 // TODO (Javier): Should it be necessary to check size?
334331 for (size_t i=0 ; i<kernel.hp_mean .size (); i++){
@@ -404,10 +401,9 @@ namespace bayesopt {
404401 l_all = false ;
405402 l_type = L_EMPIRICAL;
406403 sc_type = SC_MAP;
407-
404+
408405 epsilon = 0.0 ;
409- force_jump = 20 ;
410-
406+
411407 crit_name = CRIT_NAME;
412408 }
413409}// namespace bayesopt
Original file line number Diff line number Diff line change @@ -74,9 +74,9 @@ namespace bayesopt
7474 }
7575
7676 fp.readOrWrite (" l_all" , par.l_all );
77+
7778 fp.readOrWrite (" epsilon" , par.epsilon );
78- fp.readOrWrite (" force_jump" , par.force_jump );
79-
79+
8080 fp.readOrWrite (" kernel.name" , par.kernel .name );
8181 fp.readOrWrite (" kernel.hp_mean" , par.kernel .hp_mean );
8282 fp.readOrWrite (" kernel.hp_std" , par.kernel .hp_std );
You can’t perform that action at this time.
0 commit comments