rbmatlab  1.16.09
 All Classes Namespaces Files Functions Variables Modules Pages
porsche_x3_y3_grid_search.m
1 function sol = porsche_x3_y3_grid_search(model,data)
2 
3 
4 
5 % Gitter Grid-Search
6 % x3_min = model.mu_ranges{1}(1);
7 % x3_max = model.mu_ranges{1}(2);
8 % y3_min = model.mu_ranges{2}(1);
9 % y3_max = model.mu_ranges{2}(2);
10 %
11 % X = x3_min:1:x3_max;
12 % Y = y3_min:1:y3_max;
13 %
14 % for x_ind=1:length(X)
15 % for y_ind=1:length(Y)
16 % model = set_mu(model,[X(x_ind), Y(y_ind)]);
17 % sim_data(x_ind,y_ind) = model.optimization.objective_function(model,data);
18 % end
19 % end
20 % sol_quadrat.outputs = sim_data;
21 % sol_quadrat.X = X;
22 % sol_quadrat.Y = Y;
23 
24 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
25 %Kreis Grid-search
26 %
27 %Kreis parametrisieren:
28 r = 10; %Kreisradius
29 n= 10000; % anzahl der punkte auf dem kreis
30 
31 x_fix = model.pmacro(3,1);
32 y_fix = model.pmacro(3,2);
33 t=linspace(0,2*pi,n);
34 circle = repmat([x_fix; y_fix],1,n) + r*[cos(t); sin(t)];
35 obj_function=zeros(1,n);
36 for k=1:n
37  model = set_mu(model, circle(:,k));
38  obj_function(k) = model.optimization.objective_function(model,data);
39  disp(['Durchgang ', num2str(k), ' von ', num2str(n)]);
40 end
41 [min_obj, min_ind]=min(obj_function);
42 x_min=circle(1,min_ind);
43 y_min=circle(2,min_ind);
44 
45 sol.obj_function = obj_function;
46 sol.min_obj = min_obj;
47 sol.min_ind = min_ind;
48 sol.x_min = x_min;
49 sol.y_min = y_min;
50 sol.circle = circle;
51 
52 %nur zum speichern:
53 gridsearch_sol = sol;
54 save gridsearch_det_x3_y3_10000pts gridsearch_sol