1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function [ light ] = test_strategy_range_qs(mut_strat_test,param_range)
%               [fnull +-fN UN +-fTB UTB +-fTA UTA]
%test_strategy = [0.1      -0.2 8 0.9 8 0.1 8];
 
mut_strat_test = mut_strat_test(1:9);
 
f_strat_test = mut_strat_test([1,2,4,6,8]);
 
if not(isempty(find(abs(f_strat_test)>1,1))) || ... % any f bigger than 1
                            not(isempty(find(cumsum(f_strat_test)>1,1))) || ... % sum of all f bigger than 1
                            not(isempty(find(cumsum(f_strat_test)<0,1))) || ... % sum of all f smaller than 0
                            not(isempty(find(cumsum(f_strat_test([1,3,4]))>1,1))) || ...
                            not(isempty(find(cumsum(f_strat_test([1,3,4]))<0,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,2,4]))>1,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,2,4]))<0,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,4,5]))>1,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,4,5]))<0,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,2,5]))>1,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,2,5]))<0,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,3,5]))>1,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,3,5]))<0,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,3,4,5]))>1,1))) || ...
                            not(isempty(find(sum(f_strat_test([1,3,4,5]))<0,1))) || ...
                            f_strat_test(1) + f_strat_test(3) > 1 || ...
                            f_strat_test(1) + f_strat_test(3) < 0 || ...
                            f_strat_test(1) + f_strat_test(4) > 1 || ...
                            f_strat_test(1) + f_strat_test(4) < 0 || ...
                            f_strat_test(1) + f_strat_test(5) > 1 || ...
                            f_strat_test(1) + f_strat_test(5) < 0 || ...
                            mut_strat_test(3) < 0 || mut_strat_test(5) < 0 || mut_strat_test(7) < 0 || mut_strat_test(9) < 0 || ...
                            sum([mut_strat_test < param_range(:,1)',mut_strat_test > param_range(:,3)'])>0
                        light = 0; % red light
else light = 1; % green light
end
%light
end