1+ import numpy as np
2+ from spotPython .fun .objectivefunctions import analytical
3+ from spotPython .spot import spot
4+
5+ def test_initialize_design ():
6+ # number of initial points:
7+ ni = 7
8+ fun = analytical ().fun_sphere
9+ lower = np .array ([- 1 ])
10+ upper = np .array ([1 ])
11+ design_control = {"init_size" : ni }
12+ S = spot .Spot (fun = fun ,
13+ lower = lower ,
14+ upper = upper ,
15+ show_progress = False ,
16+ design_control = design_control ,)
17+ S .initialize_design ()
18+ assert S .X .shape [0 ] == ni
19+ assert S .X .shape [1 ] == lower .size
20+
21+ def test_initialize_design_2 ():
22+ # number of initial points:
23+ ni = 7
24+ # start point
25+ X_start = np .array ([0 , 0.5 ])
26+ fun = analytical ().fun_sphere
27+ lower = np .array ([- 1 , - 1 ])
28+ upper = np .array ([1 , 2 ])
29+ design_control = {"init_size" : ni }
30+
31+ S = spot .Spot (fun = fun ,
32+ lower = lower ,
33+ upper = upper ,
34+ show_progress = True ,
35+ design_control = design_control ,)
36+ S .initialize_design ()
37+ assert S .X .shape [0 ] == ni
38+ assert S .X .shape [1 ] == lower .size
39+
40+ def test_initialize_design_3 ():
41+ # number of initial points:
42+ ni = 7
43+ # start point
44+ X_start = np .array ([0 , 0 ]).reshape (1 , - 1 )
45+ fun = analytical ().fun_sphere
46+ lower = np .array ([- 1 , - 1 ])
47+ upper = np .array ([1 , 1 ])
48+ design_control = {"init_size" : ni }
49+ S = spot .Spot (fun = fun ,
50+ lower = lower ,
51+ upper = upper ,
52+ show_progress = True ,
53+ design_control = design_control ,)
54+ S .initialize_design (X_start = X_start )
55+ assert S .X .shape [0 ] == ni + np .atleast_2d (X_start ).shape [0 ]
56+ assert S .X .shape [1 ] == lower .size
57+
58+ def test_initialize_design_4 ():
59+ # number of initial points:
60+ ni = 7
61+ # start point
62+ X_start = np .array ([0 , 0 ])
63+ fun = analytical ().fun_sphere
64+ lower = np .array ([- 1 , - 1 ])
65+ upper = np .array ([1 , 1 ])
66+ design_control = {"init_size" : ni }
67+ S = spot .Spot (fun = fun ,
68+ lower = lower ,
69+ upper = upper ,
70+ show_progress = True ,
71+ design_control = design_control ,)
72+ S .initialize_design (X_start = X_start )
73+ assert S .X .shape [0 ] == ni + np .atleast_2d (X_start ).shape [0 ]
74+ assert S .X .shape [1 ] == lower .size
75+
76+ def test_initialize_design_5 ():
77+ # number of initial points:
78+ ni = 7
79+ # start point
80+ X_start = np .array ([[0 , 0 ], [0 , 1 ], [1 , 0 ], [1 , 1 ]])
81+ fun = analytical ().fun_sphere
82+ lower = np .array ([- 1 , - 1 ])
83+ upper = np .array ([1 , 1 ])
84+ design_control = {"init_size" : ni }
85+ S = spot .Spot (fun = fun ,
86+ lower = lower ,
87+ upper = upper ,
88+ show_progress = True ,
89+ design_control = design_control ,)
90+ S .initialize_design (X_start = X_start )
91+ assert S .X .shape [0 ] == ni + np .atleast_2d (X_start ).shape [0 ]
92+ assert S .X .shape [1 ] == lower .size
93+
94+ def test_initialize_design_noX0 ():
95+ # number of initial points is zero, but a start point is given
96+ ni = 0
97+ X_start = np .array ([[0 , 0 ], [0 , 1 ], [1 , 0 ], [1 , 1 ]])
98+ fun = analytical ().fun_sphere
99+ lower = np .array ([- 1 , - 1 ])
100+ upper = np .array ([1 , 1 ])
101+ design_control = {"init_size" : ni }
102+
103+ S = spot .Spot (fun = fun ,
104+ lower = lower ,
105+ upper = upper ,
106+ show_progress = True ,
107+ design_control = design_control ,)
108+ S .initialize_design (X_start = X_start )
109+ assert S .X .shape [0 ] == ni + np .atleast_2d (X_start ).shape [0 ]
110+ assert S .X .shape [1 ] == lower .size
0 commit comments