@@ -17,20 +17,30 @@ MADS-poll step
17
17
18
18
© Ahmed H. Bayoumy
19
19
---
20
- ## How to use
20
+ ## How to
21
+ ### Use OMADS package
21
22
22
- After installing the libraries listed in the ` requirements.txt ` , ` OMADS.py ` can be called directly from a
23
+ After installing the ` OMADS ` package from [ PYPI] ( https://pypi.org/ ) website, the functions and classes of ` OMADS ` basic module can be imported
24
+ directly to the python script as follows:
25
+
26
+ ``` pycon
27
+ from OMADS import *
28
+ ```
29
+
30
+ ### Run OMADS from terminal
31
+ After installing the libraries listed in the ` requirements.txt ` , ` OMADS/BASIC.py ` can be called directly from a
23
32
terminal window under the src directory. The path of the JSON template, which contains the problem input parameters,
24
- should be entered as an input argument to the ` OMADS .py` call.
33
+ should be entered as an input argument to the ` BASIC .py` call.
25
34
26
35
``` commandline
27
- python OMADS.py ../examples /rosenbrock.json
36
+ python ./ OMADS/BASIC .py ../../tests/unconstrained /rosenbrock.json
28
37
```
29
38
30
- Input parameters are provided in the ` JASON ` template using predefined attributes (keywords) under three dictionaries;
31
- evaluator, param, and options. Here is a brief description of each dictionary and its attributes.
39
+ ## Input parameters
40
+ Input parameters are serialized in a ` JSON ` template using predefined attributes (keywords) under three dictionaries;
41
+ ` evaluator ` , ` param ` , and ` options ` . Here is a brief description of each dictionary and its key attributes.
32
42
33
- * ` evaluator ` : in this dictionary we define the blackbox location and the name of input and output files (if exist)
43
+ * ` evaluator ` : in this dictionary, we define the blackbox location and the name of input and output files (if exist)
34
44
* ` blackbox ` : blackbox executable file name, or the function name if this is an internal function defined within the BM_suite
35
45
* ` internal ` : the name of the testing category that holds your internal/external test function or blackbox evaluator
36
46
* ` con ` : internal constrained single-objective function
@@ -45,11 +55,11 @@ evaluator, param, and options. Here is a brief description of each dictionary an
45
55
* ` ub ` : uber bounds vector
46
56
* ` var_names ` : list of design variables name
47
57
* ` scaling ` : scaling factor
48
- * ` post_dir ` : the location of the post directory where results file shall be saved if requested
58
+ * ` post_dir ` : the location of the post directory where the results file shall be saved if requested
49
59
---
50
60
* ` options ` : algorithmic options
51
61
* ` seed ` : the random generator seed that ensures results reproducibility. This should be an integer value
52
- * ` budget ` : the evaluation budget; maximum number of evaluations for the blackbox defined
62
+ * ` budget ` : the evaluation budget; the maximum number of evaluations for the blackbox defined
53
63
* ` tol ` : the minimum poll size tolerance; the algorithm terminates once the poll size falls below this value
54
64
* ` psize_init ` : initial poll size
55
65
* ` display ` : a boolean for displaying verbose outputs per iteration in the terminal window
@@ -70,14 +80,13 @@ evaluator, param, and options. Here is a brief description of each dictionary an
70
80
71
81
## Benchmarking
72
82
73
- Two benchmarking (BM) suits are provided in the ` BM_suite.py ` code. The BM suits have different constrained and
74
- unconstrained optimization problems with various characteristics. You can run the BM by calling the following commands
75
- in the terminal window. The number entered at the end of the command line represents the number of the BM tests
76
- repetition.
77
- ``` commandline
78
- python OMADS.py bm uncon 16
79
- python OMADS.py bm con 16
83
+ To benchmark ` OMADS ` , per se, you need to install the non-linear optimization benchmarking package ` NOBM ` from ` pypi.com ` .
84
+ Two benchmarking suits are provided under the ` BMDFO ` benchmarking module; ` BMDFO ` stands for benchmarking derivative-free optimization algorithms.
85
+ The benchmarking suits have different constrained and unconstrained optimization problems with various characteristics.
86
+ The benchmarking package modules can be imported directly to the python script as shown below:
87
+ ``` pycon
88
+ from BMDFO import toy
80
89
```
81
-
82
- After the BM is finished, a ` BM_report.csv ` file will be generated in the post directory under
83
- the ` examples ` folder.
90
+ For more details about the ` NOBM ` package and its use, check this [ link ] ( https://github.com/Ahmed-Bayoumy/NOBM ) .
91
+ After running the benchmarking suite using various seed values, which are used to initialize the random number generator,
92
+ a ` BM_report.csv ` file will be created in the post directory under the ` examples ` folder.
0 commit comments