Skip to content

Commit e6c9114

Browse files
committed
2 parents b92a5f9 + 25371cd commit e6c9114

File tree

10 files changed

+81
-23
lines changed

10 files changed

+81
-23
lines changed

workflows/nt3_mlrMBO/R/mlrMBO3.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,9 @@ main_function <- function(max.budget = 110, max.iterations = 10, design.size=10,
5959

6060

6161
surr.rf = makeLearner("regr.randomForest", predict.type = "se")
62-
ctrl = makeMBOControl(n.objectives = 1, propose.points = 20,
62+
ctrl = makeMBOControl(n.objectives = 1, propose.points = min(20, propose.points),
6363
impute.y.fun = function(x, y, opt.path, ...) .Machine$integer.max * 0.1 )
64-
ctrl = setMBOControlInfill(ctrl, crit=makeMBOInfillCritCB(), interleave.random.points=propose.points-20)
64+
ctrl = setMBOControlInfill(ctrl, crit=makeMBOInfillCritCB(), interleave.random.points=max(0,propose.points-20))
6565
ctrl = setMBOControlMultiPoint(ctrl, method = "cb")
6666
ctrl = setMBOControlTermination(ctrl, max.evals = max.budget)
6767
ctrl = setMBOControlTermination(ctrl, iters = max.iterations)

workflows/nt3_mlrMBO/data/parameter_set3.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ param.set <- makeParamSet(
66
makeIntegerParam("epochs", lower = 5, upper = 500),
77
makeDiscreteParam("activation", values = c("softmax", "elu", "softplus", "softsign", "relu", "tanh", "sigmoid", "hard_sigmoid", "linear")),
88
makeDiscreteParam("dense", values = c("500 100 50", "1000 500 100 50", "2000 1000 500 100 50", "2000 1000 1000 500 100 50", "2000 1000 1000 1000 500 100 50")),
9-
makeDiscreteParam("optimizer", values = c("adam", "sgd", "rmsprop", "adagrad", "adadelta","adamax","nadam")),
9+
makeDiscreteParam("optimizer", values = c("adam", "sgd", "rmsprop", "adagrad", "adadelta")),
1010
makeNumericParam("drop", lower = 0, upper = 0.9),
1111
makeNumericParam("learning_rate", lower = 0.00001, upper = 0.1),
1212
makeDiscreteParam("conv", values = c("50 50 50 50 50 1", "25 25 25 25 25 1", "64 32 16 32 64 1", "100 100 100 100 100 1", "32 20 16 32 10 1"))

workflows/nt3_mlrMBO/swift/ai_workflow3.swift

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,17 +68,23 @@ app (file out, file err) run_log_end(file shfile)
6868
o = propagate();
6969
}
7070

71+
(string obj_result) get_results(string result_file) {
72+
if (file_exists(result_file)) {
73+
file line = input(result_file);
74+
obj_result = trim(read(line));
75+
} else {
76+
obj_result = "NaN";
77+
}
78+
}
79+
7180
(string obj_result) obj(string params, string iter_indiv_id) {
7281
string outdir = "%s/run_%s" % (turbine_output, iter_indiv_id);
7382
file out <"%s/out.txt" % outdir>;
7483
file err <"%s/err.txt" % outdir>;
7584

76-
//printf("%s", params);
77-
//string fname = "%s/params.json" % outdir =>
78-
//file params_file <fname> = write(params) =>
7985
(out,err) = run_model(model_script, params, outdir, iter_indiv_id) =>
80-
file line = input("%s/result.txt" % outdir) =>
81-
obj_result = trim(read(line));
86+
string result_file = "%s/result.txt" % outdir;
87+
obj_result = get_results(result_file);
8288
printf(obj_result);
8389
}
8490

workflows/p2b1_mlrMBO/R/mlrMBO3.R

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,15 @@ simple.obj.fun = function(x){}
5757

5858
main_function <- function(max.budget = 110, max.iterations = 10, design.size=10, propose.points=10){
5959

60+
6061
surr.rf = makeLearner("regr.randomForest", predict.type = "se")
61-
ctrl = makeMBOControl(n.objectives = 1, propose.points = propose.points)
62+
ctrl = makeMBOControl(n.objectives = 1, propose.points = min(20, propose.points),
63+
impute.y.fun = function(x, y, opt.path, ...) .Machine$integer.max * 0.1 )
64+
ctrl = setMBOControlInfill(ctrl, crit=makeMBOInfillCritCB(), interleave.random.points=max(0,propose.points-20))
65+
ctrl = setMBOControlMultiPoint(ctrl, method = "cb")
6266
ctrl = setMBOControlTermination(ctrl, max.evals = max.budget)
6367
ctrl = setMBOControlTermination(ctrl, iters = max.iterations)
68+
6469
# ctrl = setMBOControlInfill(ctrl, crit =makeMBOInfillCritCB(), opt.focussearch.points = 500)
6570
design = generateDesign(n = design.size, par.set = getParamSet(obj.fun))
6671
configureMlr(show.info = FALSE, show.learner.output = FALSE, on.learner.warning = "quiet")

workflows/p2b1_mlrMBO/data/parameter_set3.R

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,21 @@
22
# the parameter names should match names of the arguments expected by
33
# the benchmark
44
param.set <- makeParamSet(
5-
makeDiscreteParam("batch_size", values = c(32, 64, 128)),
6-
makeIntegerParam("epochs", lower = 1, upper = 3)
5+
makeDiscreteParam("batch_size", values = c(16, 32, 64, 128, 256, 512)),
6+
makeIntegerParam("epochs", lower = 1, upper = 2),
7+
makeDiscreteParam("activation", values = c("softmax","elu","softplus","softsign",
8+
"relu", "tanh","sigmoid","hard_sigmoid",
9+
"linear")),
10+
makeDiscreteParam("optimizer", values = c("adam", "sgd", "rmsprop","adagrad",
11+
"adadelta")),
12+
makeNumericParam("learning_rate", lower = 0.001, upper = 0.2),
13+
makeNumericParam("noise", lower = 0.001, upper = 0.5)
14+
#makeDiscreteParam("num_hidden", values = c("512 256 128 64 32 16", "512 64")),
15+
#makeDiscreteParam("molecular_num_hidden", values = c("54 12", "32 16 8"))
16+
## DEBUG PARAMETERS: DON'T USE THESE IN PRODUCTION RUN
17+
## makeDiscreteParam("conv", values = c("32 20 16 32 10 1"))
718
)
19+
20+
21+
22+

workflows/p2b1_mlrMBO/scripts/theta_run_model.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ MODEL_CMD="python ${arg_array[@]}"
7373
set +e
7474
echo $MODEL_CMD
7575
$TIMEOUT_CMD python "${arg_array[@]}"
76+
sleep 60
7677

7778
RES=$?
7879
if [ "$RES" -ne 0 ]; then

workflows/p2b1_mlrMBO/swift/ai_workflow3.swift

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,19 +68,30 @@ app (file out, file err) run_log_end(file shfile)
6868
o = propagate();
6969
}
7070

71+
72+
(string obj_result) get_results(string result_file) {
73+
if (file_exists(result_file)) {
74+
file line = input(result_file);
75+
obj_result = trim(read(line));
76+
} else {
77+
obj_result = "NaN";
78+
}
79+
}
80+
7181
(string obj_result) obj(string params, string iter_indiv_id) {
7282
string outdir = "%s/run_%s" % (turbine_output, iter_indiv_id);
7383
file out <"%s/out.txt" % outdir>;
7484
file err <"%s/err.txt" % outdir>;
7585

76-
//string fname = "%s/params.json" % outdir =>
77-
//file params_file <fname> = write(params) =>
7886
(out,err) = run_model(model_script, params, outdir, iter_indiv_id) =>
79-
file line = input("%s/result.txt" % outdir) =>
80-
obj_result = trim(read(line));
87+
string result_file = "%s/result.txt" % outdir;
88+
obj_result = get_results(result_file);
8189
printf(obj_result);
8290
}
8391

92+
93+
94+
8495
(void v) loop(location ME, int ME_rank) {
8596

8697
for (boolean b = true, int i = 1;

workflows/p3b1_mlrMBO/R/mlrMBO3.R

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,13 @@ simple.obj.fun = function(x){}
5858
main_function <- function(max.budget = 110, max.iterations = 10, design.size=10, propose.points=10){
5959

6060
surr.rf = makeLearner("regr.randomForest", predict.type = "se")
61-
ctrl = makeMBOControl(n.objectives = 1, propose.points = propose.points)
61+
ctrl = makeMBOControl(n.objectives = 1, propose.points = min(20, propose.points),
62+
impute.y.fun = function(x, y, opt.path, ...) .Machine$integer.max * 0.1 )
63+
ctrl = setMBOControlInfill(ctrl, crit=makeMBOInfillCritCB(), interleave.random.points=max(0,propose.points-20))
64+
ctrl = setMBOControlMultiPoint(ctrl, method = "cb")
6265
ctrl = setMBOControlTermination(ctrl, max.evals = max.budget)
6366
ctrl = setMBOControlTermination(ctrl, iters = max.iterations)
67+
6468
# ctrl = setMBOControlInfill(ctrl, crit =makeMBOInfillCritCB(), opt.focussearch.points = 500)
6569
design = generateDesign(n = design.size, par.set = getParamSet(obj.fun))
6670
configureMlr(show.info = FALSE, show.learner.output = FALSE, on.learner.warning = "quiet")
Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
# see https://cran.r-project.org/web/packages/ParamHelpers/ParamHelpers.pdfmakeNum
2-
# the parameter names should match names of the arguments expected by
3-
# the benchmark
2+
# the parameter names should match names of the arguments expected by the benchmark
3+
44
param.set <- makeParamSet(
5-
makeIntegerParam("epochs", lower = 1, upper = 3)
5+
makeDiscreteParam("batch_size", values = c(16, 32, 64, 128, 256, 512)),
6+
makeIntegerParam("epochs", lower = 5, upper = 500),
7+
makeDiscreteParam("activation", values = c("softmax", "elu", "softplus", "softsign", "relu", "tanh", "sigmoid", "hard_sigmoid", "linear")),
8+
makeDiscreteParam("optimizer", values = c("adam", "sgd", "rmsprop", "adagrad", "adadelta")),
9+
makeNumericParam("dropout", lower = 0, upper = 0.9),
10+
makeNumericParam("learning_rate", lower = 0.00001, upper = 0.1)
11+
## DEBUG PARAMETERS: DON'T USE THESE IN PRODUCTION RUN
12+
## makeDiscreteParam("conv", values = c("32 20 16 32 10 1"))
613
)

workflows/p3b1_mlrMBO/swift/ai_workflow3.swift

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,19 +67,28 @@ app (file out, file err) run_log_end(file shfile)
6767
o = propagate();
6868
}
6969

70+
71+
(string obj_result) get_results(string result_file) {
72+
if (file_exists(result_file)) {
73+
file line = input(result_file);
74+
obj_result = trim(read(line));
75+
} else {
76+
obj_result = "NaN";
77+
}
78+
}
79+
7080
(string obj_result) obj(string params, string iter_indiv_id) {
7181
string outdir = "%s/run_%s" % (turbine_output, iter_indiv_id);
7282
file out <"%s/out.txt" % outdir>;
7383
file err <"%s/err.txt" % outdir>;
7484

75-
//string fname = "%s/params.json" % outdir =>
76-
//file params_file <fname> = write(params) =>
7785
(out,err) = run_model(model_script, params, outdir, iter_indiv_id) =>
78-
file line = input("%s/result.txt" % outdir) =>
79-
obj_result = trim(read(line));
86+
string result_file = "%s/result.txt" % outdir;
87+
obj_result = get_results(result_file);
8088
printf(obj_result);
8189
}
8290

91+
8392
(void v) loop(location ME, int ME_rank) {
8493

8594
for (boolean b = true, int i = 1;

0 commit comments

Comments
 (0)