Code Duplication    Length = 55-56 lines in 4 locations

tests/test_optimizers/test_early_stop.py 2 locations

@@ 207-262 (lines=56) @@
204
    assert n_performed_iter == (n_iter_no_change + 1)
205
206
207
@pytest.mark.parametrize(*optimizers)
208
def test_early_stop_6(Optimizer):
209
    def objective_function(para):
210
        return para["x1"]
211
212
    search_space = {
213
        "x1": np.arange(0, 100, 0.01),
214
    }
215
216
    n_iter_no_change = 5
217
    early_stopping = {
218
        "n_iter_no_change": 5,
219
        "tol_abs": None,
220
        "tol_rel": 10,
221
    }
222
223
    start1 = {"x1": 1}
224
    start2 = {"x1": 1.1}
225
    start3 = {"x1": 1.22}
226
    start4 = {"x1": 1.35}
227
    start5 = {"x1": 1.48}
228
229
    warm_start_l = [
230
        start1,
231
        start1,
232
        start1,
233
        start1,
234
        start1,
235
        start2,
236
        start2,
237
        start2,
238
        start3,
239
        start3,
240
        start3,
241
        start4,
242
        start4,
243
        start4,
244
        start5,
245
        start5,
246
        start5,
247
    ]
248
    n_iter = len(warm_start_l)
249
250
    opt = Optimizer(search_space, initialize={"warm_start": warm_start_l})
251
    opt.search(
252
        objective_function,
253
        n_iter=n_iter,
254
        early_stopping=early_stopping,
255
    )
256
    search_data = opt.results
257
    n_performed_iter = len(search_data)
258
259
    print("\n n_performed_iter \n", n_performed_iter)
260
    print("\n n_iter_no_change \n", n_iter_no_change)
261
262
    assert n_performed_iter == n_iter
263
264
265
@pytest.mark.parametrize(*optimizers)
@@ 99-154 (lines=56) @@
96
    assert n_performed_iter == (n_iter_no_change + 1)
97
98
99
@pytest.mark.parametrize(*optimizers)
100
def test_early_stop_4(Optimizer):
101
    def objective_function(para):
102
        return para["x1"]
103
104
    search_space = {
105
        "x1": np.arange(0, 100, 0.1),
106
    }
107
108
    n_iter_no_change = 5
109
    early_stopping = {
110
        "n_iter_no_change": 5,
111
        "tol_abs": 0.1,
112
        "tol_rel": None,
113
    }
114
115
    start1 = {"x1": 0}
116
    start2 = {"x1": 0.1}
117
    start3 = {"x1": 0.2}
118
    start4 = {"x1": 0.3}
119
    start5 = {"x1": 0.4}
120
121
    warm_start_l = [
122
        start1,
123
        start1,
124
        start1,
125
        start1,
126
        start1,
127
        start2,
128
        start2,
129
        start2,
130
        start3,
131
        start3,
132
        start3,
133
        start4,
134
        start4,
135
        start4,
136
        start5,
137
        start5,
138
        start5,
139
    ]
140
    n_iter = len(warm_start_l)
141
142
    opt = Optimizer(search_space, initialize={"warm_start": warm_start_l})
143
    opt.search(
144
        objective_function,
145
        n_iter=n_iter,
146
        early_stopping=early_stopping,
147
    )
148
    search_data = opt.results
149
    n_performed_iter = len(search_data)
150
151
    print("\n n_performed_iter \n", n_performed_iter)
152
    print("\n n_iter_no_change \n", n_iter_no_change)
153
154
    assert n_performed_iter == n_iter
155
156
157
@pytest.mark.parametrize(*optimizers)

tests/test_early_stop.py 2 locations

@@ 203-257 (lines=55) @@
200
    assert n_performed_iter == (n_iter_no_change + 1)
201
202
203
def test_early_stop_6():
204
    def objective_function(para):
205
        return para["x1"]
206
207
    search_space = {
208
        "x1": np.arange(0, 100, 0.01),
209
    }
210
211
    n_iter_no_change = 5
212
    early_stopping = {
213
        "n_iter_no_change": 5,
214
        "tol_abs": None,
215
        "tol_rel": 10,
216
    }
217
218
    start1 = {"x1": 1}
219
    start2 = {"x1": 1.1}
220
    start3 = {"x1": 1.22}
221
    start4 = {"x1": 1.35}
222
    start5 = {"x1": 1.48}
223
224
    warm_start_l = [
225
        start1,
226
        start1,
227
        start1,
228
        start1,
229
        start1,
230
        start2,
231
        start2,
232
        start2,
233
        start3,
234
        start3,
235
        start3,
236
        start4,
237
        start4,
238
        start4,
239
        start5,
240
        start5,
241
        start5,
242
    ]
243
    n_iter = len(warm_start_l)
244
245
    opt = HillClimbingOptimizer(search_space, initialize={"warm_start": warm_start_l})
246
    opt.search(
247
        objective_function,
248
        n_iter=n_iter,
249
        early_stopping=early_stopping,
250
    )
251
    search_data = opt.results
252
    n_performed_iter = len(search_data)
253
254
    print("\n n_performed_iter \n", n_performed_iter)
255
    print("\n n_iter_no_change \n", n_iter_no_change)
256
257
    assert n_performed_iter == n_iter
258
259
260
def test_early_stop_7():
@@ 97-151 (lines=55) @@
94
    assert n_performed_iter == (n_iter_no_change + 1)
95
96
97
def test_early_stop_4():
98
    def objective_function(para):
99
        return para["x1"]
100
101
    search_space = {
102
        "x1": np.arange(0, 100, 0.1),
103
    }
104
105
    n_iter_no_change = 5
106
    early_stopping = {
107
        "n_iter_no_change": 5,
108
        "tol_abs": 0.1,
109
        "tol_rel": None,
110
    }
111
112
    start1 = {"x1": 0}
113
    start2 = {"x1": 0.1}
114
    start3 = {"x1": 0.2}
115
    start4 = {"x1": 0.3}
116
    start5 = {"x1": 0.4}
117
118
    warm_start_l = [
119
        start1,
120
        start1,
121
        start1,
122
        start1,
123
        start1,
124
        start2,
125
        start2,
126
        start2,
127
        start3,
128
        start3,
129
        start3,
130
        start4,
131
        start4,
132
        start4,
133
        start5,
134
        start5,
135
        start5,
136
    ]
137
    n_iter = len(warm_start_l)
138
139
    opt = HillClimbingOptimizer(search_space, initialize={"warm_start": warm_start_l})
140
    opt.search(
141
        objective_function,
142
        n_iter=n_iter,
143
        early_stopping=early_stopping,
144
    )
145
    search_data = opt.results
146
    n_performed_iter = len(search_data)
147
148
    print("\n n_performed_iter \n", n_performed_iter)
149
    print("\n n_iter_no_change \n", n_iter_no_change)
150
151
    assert n_performed_iter == n_iter
152
153
154
def test_early_stop_5():