993

Методы поиска минимума функции на отрезке. Программная реализация

Курсовая

Информатика, кибернетика и программирование

Нахождение минимума функции на заданном отрезке - одна из простейших задач в разделе численных методов анализа. Существует множество различных способов определения минимума функции с разным количеством итераций и уровнем определения точности. Так же возможно комбинировать некоторые способы для достижения большей эффективности алгоритма.

Русский

2013-01-06

579.5 KB

361 чел.

Санкт-Петербургский

Государственный Университет

Факультет Прикладной Математики - Процессов Управления

Курсовая работа по технологии программирования

на тему: “ Методы поиска минимума функции на отрезке. Программная реализация”

                    

                                        Выполнил:

студент 1 курса 161 группы

Жуков Н.К.

                                 Руководитель:

Кривцов А.Н.

Санкт-Петербург. 2007г.

Содеожание:

  1.  Введение…………………………………………………………………. стр.3
  2.  Метод пассивного поиска...……………………………………………...стр.4
  3.  Метод половинного деления (дихотомии)……………………………...стр.5
  4.  Метод золотого сечения …………………………………………………стр.6
  5.  Метод Фибоначчи…………………………………………………………стр.8
  6.  Метод парабол…………...……………………………………………… стр.10
  7.  Таблицы промежуточных значений…………………………………….стр.12
  8.  Заключение……………………………………………………………….стр.18
  9.  Список литературы……………………………………………………….стр.19
  10.   Приложение………………………………………………………………стр.20

Введение

Нахождение минимума функции на заданном отрезке -  одна из простейших задач в разделе численных методов анализа. Существует множество различных способов определения минимума функции с разным количеством итераций и уровнем определения точности. Так же возможно комбинировать некоторые способы для достижения большей эффективности алгоритма. В этой работе будет рассмотрено пять классических примеров нахождения минимума функции: метод пассивного поиска, дихотомии, золотого сечения, Фибоначчи, и метод парабол. Нам предстоит выяснить какой же из этих способов наиболее эффективен при конкретной задаче.

Метод пассивного поиска

Метод половинного деления (дихотомии)

Метод золотого сечения

Метод Фибоначчи

Метод парабол

Существенное уменьшение числа итераций для вычислений минимума с высокой точностью даёт метод парабол. Хотя он и является наиболее трудоёмким в расчётах и выполнении, при использовании этого метода число шагов оказывается меньше, чем у остальных методов поиска.

Цель этого метода – найти параболу, максимально близко проходящую от графика исследуемой функции вблизи точки, подозрительной на минимум. Найти минимум функции, графиком которой является парабола, намного проще, чем для более сложных функций: минимум параболы совпадает с её вершиной, а вершину параболы совсем нетрудно найти с помощью средств математического анализа.

В этом методе парабола будет проходить через три заданные точки: любые близкие к минимуму точки из предыдущих методов. Сравнивая значения в точках экстремума параболы, можно предположить, какой из них наиболее близок к точке, в которой функция имеет минимальное на отрезке значение.

Каждое последующее приближение можно вычислять по формулам, приведённым ниже:

где  - три точки приближения

Мы будем строить параболу, соответствующую графику функции , начальные значения С0, С1, С2 могут быть вычислены по формулам:

где  - три точки приближения. Равенства имеют место в силу теоремы о среднем Лагранжа и выбора точек, через которые пройдёт парабола.

Метод пассивного поиска

 -----------------------------

 Ит|         x        |

  0 | -5.000  |  28.413159 |

  1 | -4.990  |  27.674924 |

  2 | -4.980  |  26.948390 |

  3 | -4.970  |  26.233414 |

  4 | -4.960  |  25.529860 |

  5 | -4.950  |  24.837589 |

  6 | -4.940  |  24.156466 |

  7 | -4.930  |  23.486355 |

  8 | -4.920  |  22.827125 |

  9 | -4.910  |  22.178643 |

 10 | -4.900  |  21.540780 |

 11 | -4.890  |  20.913405 |

 12 | -4.880  |  20.296392 |

 13 | -4.870  |  19.689614 |

 14 | -4.860  |  19.092946 |

 15 | -4.850  |  18.506265 |

 16 | -4.840  |  17.929448 |

 17 | -4.830  |  17.362374 |

 18 | -4.820  |  16.804923 |

 19 | -4.810  |  16.256977 |

 20 | -4.800  |  15.718418 |

 21 | -4.790  |  15.189130 |

 22 | -4.780  |  14.668998 |

 23 | -4.770  |  14.157909 |

 24 | -4.760  |  13.655750 |

 25 | -4.750  |  13.162410 |

 26 | -4.740  |  12.677778 |

 27 | -4.730  |  12.201745 |

 28 | -4.720  |  11.734205 |

 29 | -4.710  |  11.275049 |

 30 | -4.700  |  10.824172 |

 31 | -4.690  |  10.381471 |

 32 | -4.680  |  9.946841 |

 33 | -4.670  |  9.520179 |

 34 | -4.660  |  9.101386 |

 35 | -4.650  |  8.690361 |

 36 | -4.640  |  8.287004 |

 37 | -4.630  |  7.891217 |

 38 | -4.620  |  7.502904 |

 39 | -4.610  |  7.121969 |

 40 | -4.600  |  6.748316 |

 41 | -4.590  |  6.381851 |

 42 | -4.580  |  6.022482 |

 43 | -4.570  |  5.670117 |

 44 | -4.560  |  5.324664 |

 45 | -4.550  |  4.986033 |

 46 | -4.540  |  4.654136 |

 

47 | -4.530  |  4.328884 |

 48 | -4.520  |  4.010190 |

 49 | -4.510  |  3.697968 |

 50 | -4.500  |  3.392131 |

 51 | -4.490  |  3.092597 |

 52 | -4.480  |  2.799281 |

 53 | -4.470  |  2.512100 |

 54 | -4.460  |  2.230973 |

 55 | -4.450  |  1.955819 |

 56 | -4.440  |  1.686558 |

 57 | -4.430  |  1.423110 |

 58 | -4.420  |  1.165397 |

 59 | -4.410  |  0.913343 |

 60 | -4.400  |  0.666869 |

 61 | -4.390  |  0.425900 |

 62 | -4.380  |  0.190361 |

 63 | -4.370  |  -0.039821 |

 64 | -4.360  |  -0.264722 |

 65 | -4.350  |  -0.484412 |

 66 | -4.340  |  -0.698965 |

 67 | -4.330  |  -0.908450 |

 68 | -4.320  |  -1.112940 |

 69 | -4.310  |  -1.312502 |

 70 | -4.300  |  -1.507206 |

 71 | -4.290  |  -1.697121 |

 72 | -4.280  |  -1.882312 |

 73 | -4.270  |  -2.062847 |

 74 | -4.260  |  -2.238793 |

 75 | -4.250  |  -2.410213 |

 76 | -4.240  |  -2.577172 |

 77 | -4.230  |  -2.739735 |

 78 | -4.220  |  -2.897964 |

 79 | -4.210  |  -3.051921 |

 80 | -4.200  |  -3.201669 |

 81 | -4.190  |  -3.347268 |

 82 | -4.180  |  -3.488779 |

 83 | -4.170  |  -3.626261 |

 84 | -4.160  |  -3.759773 |

 85 | -4.150  |  -3.889375 |

 86 | -4.140  |  -4.015123 |

 87 | -4.130  |  -4.137074 |

 88 | -4.120  |  -4.255286 |

 89 | -4.110  |  -4.369813 |

 90 | -4.100  |  -4.480712 |

 91 | -4.090  |  -4.588037 |

 92 | -4.080  |  -4.691842 |

 93 | -4.070  |  -4.792180 |

 94 | -4.060  |  -4.889105 |

 95 | -4.050  |  -4.982668 |

 96 | -4.040  |  -5.072921 |

 97 | -4.030  |  -5.159916 |

 

98 | -4.020  |  -5.243702 |

 99 | -4.010  |  -5.324330 |

100 | -4.000  |  -5.401850 |

101 | -3.990  |  -5.476310 |

102 | -3.980  |  -5.547758 |

103 | -3.970  |  -5.616242 |

104 | -3.960  |  -5.681810 |

105 | -3.950  |  -5.744508 |

106 | -3.940  |  -5.804383 |

107 | -3.930  |  -5.861479 |

108 | -3.920  |  -5.915843 |

109 | -3.910  |  -5.967519 |

110 | -3.900  |  -6.016551 |

111 | -3.890  |  -6.062982 |

112 | -3.880  |  -6.106857 |

113 | -3.870  |  -6.148217 |

114 | -3.860  |  -6.187105 |

115 | -3.850  |  -6.223562 |

116 | -3.840  |  -6.257630 |

117 | -3.830  |  -6.289349 |

118 | -3.820  |  -6.318760 |

119 | -3.810  |  -6.345902 |

120 | -3.800  |  -6.370816 |

121 | -3.790  |  -6.393539 |

122 | -3.780  |  -6.414110 |

123 | -3.770  |  -6.432568 |

124 | -3.760  |  -6.448950 |

125 | -3.750  |  -6.463293 |

126 | -3.740  |  -6.475634 |

127 | -3.730  |  -6.486009 |

128 | -3.720  |  -6.494454 |

129 | -3.710  |  -6.501004 |

130 | -3.700  |  -6.505696 |

131 | -3.690  |  -6.508562 |

132 | -3.680  |  -6.509638 |

133 | -3.670  |  -6.508957 |

134 | -3.660  |  -6.506553 |

135 | -3.650  |  -6.502459 |

136 | -3.640  |  -6.496707 |

137 | -3.630  |  -6.489330 |

138 | -3.620  |  -6.480360 |

139 | -3.610  |  -6.469828 |

140 | -3.600  |  -6.457766 |

141 | -3.590  |  -6.444203 |

142 | -3.580  |  -6.429171 |

143 | -3.570  |  -6.412700 |

144 | -3.560  |  -6.394819 |

145 | -3.550  |  -6.375558 |

146 | -3.540  |  -6.354945 |

147 | -3.530  |  -6.333009 |

148 | -3.520  |  -6.309780 |

149 | -3.510  |  -6.285283 |

150 | -3.500  |  -6.259548 |

151 | -3.490  |  -6.232601 |

152 | -3.480  |  -6.204470 |

153 | -3.470  |  -6.175181 |

154 | -3.460  |  -6.144759 |

155 | -3.450  |  -6.113233 |

156 | -3.440  |  -6.080626 |

157 | -3.430  |  -6.046964 |

158 | -3.420  |  -6.012273 |

159 | -3.410  |  -5.976577 |

160 | -3.400  |  -5.939900 |

161 | -3.390  |  -5.902267 |

162 | -3.380  |  -5.863701 |

163 | -3.370  |  -5.824226 |

164 | -3.360  |  -5.783865 |

165 | -3.350  |  -5.742641 |

166 | -3.340  |  -5.700577 |

167 | -3.330  |  -5.657695 |

168 | -3.320  |  -5.614017 |

169 | -3.310  |  -5.569566 |

170 | -3.300  |  -5.524361 |

171 | -3.290  |  -5.478425 |

172 | -3.280  |  -5.431779 |

173 | -3.270  |  -5.384444 |

174 | -3.260  |  -5.336439 |

175 | -3.250  |  -5.287785 |

176 | -3.240  |  -5.238502 |

177 | -3.230  |  -5.188610 |

178 | -3.220  |  -5.138128 |

179 | -3.210  |  -5.087075 |

180 | -3.200  |  -5.035470 |

181 | -3.190  |  -4.983332 |

182 | -3.180  |  -4.930678 |

183 | -3.170  |  -4.877529 |

184 | -3.160  |  -4.823900 |

185 | -3.150  |  -4.769810 |

186 | -3.140  |  -4.715277 |

187 | -3.130  |  -4.660317 |

188 | -3.120  |  -4.604948 |

189 | -3.110  |  -4.549187 |

190 | -3.100  |  -4.493049 |

191 | -3.090  |  -4.436551 |

192 | -3.080  |  -4.379710 |

193 | -3.070  |  -4.322540 |

194 | -3.060  |  -4.265059 |

195 | -3.050  |  -4.207281 |

196 | -3.040  |  -4.149221 |

197 | -3.030  |  -4.090894 |

198 | -3.020  |  -4.032316 |

199 | -3.010  |  -3.973501 |

200 | -3.000  |  -3.914463 |

201 | -2.990  |  -3.855217 |

202 | -2.980  |  -3.795775 |

203 | -2.970  |  -3.736153 |

204 | -2.960  |  -3.676364 |

205 | -2.950  |  -3.616421 |

206 | -2.940  |  -3.556338 |

207 | -2.930  |  -3.496127 |

208 | -2.920  |  -3.435801 |

209 | -2.910  |  -3.375372 |

210 | -2.900  |  -3.314855 |

211 | -2.890  |  -3.254259 |

212 | -2.880  |  -3.193599 |

213 | -2.870  |  -3.132885 |

214 | -2.860  |  -3.072129 |

215 | -2.850  |  -3.011343 |

216 | -2.840  |  -2.950538 |

217 | -2.830  |  -2.889726 |

218 | -2.820  |  -2.828917 |

219 | -2.810  |  -2.768123 |

220 | -2.800  |  -2.707353 |

221 | -2.790  |  -2.646619 |

222 | -2.780  |  -2.585931 |

223 | -2.770  |  -2.525299 |

224 | -2.760  |  -2.464733 |

225 | -2.750  |  -2.404243 |

226 | -2.740  |  -2.343839 |

227 | -2.730  |  -2.283530 |

228 | -2.720  |  -2.223326 |

229 | -2.710  |  -2.163235 |

230 | -2.700  |  -2.103268 |

231 | -2.690  |  -2.043433 |

232 | -2.680  |  -1.983739 |

233 | -2.670  |  -1.924194 |

234 | -2.660  |  -1.864807 |

235 | -2.650  |  -1.805586 |

236 | -2.640  |  -1.746540 |

237 | -2.630  |  -1.687677 |

238 | -2.620  |  -1.629004 |

239 | -2.610  |  -1.570530 |

240 | -2.600  |  -1.512262 |

241 | -2.590  |  -1.454207 |

242 | -2.580  |  -1.396374 |

243 | -2.570  |  -1.338769 |

244 | -2.560  |  -1.281399 |

245 | -2.550  |  -1.224271 |

246 | -2.540  |  -1.167393 |

247 | -2.530  |  -1.110771 |

248 | -2.520  |  -1.054411 |

249 | -2.510  |  -0.998321 |

250 | -2.500  |  -0.942506 |

251 | -2.490  |  -0.886973 |

252 | -2.480  |  -0.831728 |

253 | -2.470  |  -0.776776 |

254 | -2.460  |  -0.722124 |

255 | -2.450  |  -0.667778 |

256 | -2.440  |  -0.613743 |

257 | -2.430  |  -0.560025 |

258 | -2.420  |  -0.506629 |

259 | -2.410  |  -0.453560 |

260 | -2.400  |  -0.400824 |

261 | -2.390  |  -0.348425 |

262 | -2.380  |  -0.296369 |

263 | -2.370  |  -0.244661 |

264 | -2.360  |  -0.193305 |

265 | -2.350  |  -0.142305 |

266 | -2.340  |  -0.091667 |

267 | -2.330  |  -0.041395 |

268 | -2.320  |  0.008506 |

269 | -2.310  |  0.058034 |

270 | -2.300  |  0.107182 |

271 | -2.290  |  0.155949 |

272 | -2.280  |  0.204328 |

273 | -2.270  |  0.252318 |

274 | -2.260  |  0.299913 |

275 | -2.250  |  0.347111 |

276 | -2.240  |  0.393907 |

277 | -2.230  |  0.440299 |

278 | -2.220  |  0.486283 |

279 | -2.210  |  0.531855 |

280 | -2.200  |  0.577013 |

281 | -2.190  |  0.621754 |

282 | -2.180  |  0.666074 |

283 | -2.170  |  0.709971 |

284 | -2.160  |  0.753442 |

285 | -2.150  |  0.796483 |

286 | -2.140  |  0.839094 |

287 | -2.130  |  0.881270 |

288 | -2.120  |  0.923009 |

289 | -2.110  |  0.964310 |

290 | -2.100  |  1.005170 |

291 | -2.090  |  1.045586 |

292 | -2.080  |  1.085557 |

293 | -2.070  |  1.125080 |

294 | -2.060  |  1.164154 |

295 | -2.050  |  1.202776 |

296 | -2.040  |  1.240945 |

297 | -2.030  |  1.278659 |

298 | -2.020  |  1.315917 |

299 | -2.010  |  1.352716 |

300 | -2.000  |  1.389056 |

301 | -1.990  |  1.424935 |

302 | -1.980  |  1.460351 |

303 | -1.970  |  1.495303 |

304 | -1.960  |  1.529791 |

305 | -1.950  |  1.563813 |

306 | -1.940  |  1.597367 |

307 | -1.930  |  1.630453 |

308 | -1.920  |  1.663070 |

309 | -1.910  |  1.695218 |

310 | -1.900  |  1.726894 |

311 | -1.890  |  1.758100 |

312 | -1.880  |  1.788833 |

313 | -1.870  |  1.819093 |

314 | -1.860  |  1.848881 |

315 | -1.850  |  1.878195 |

316 | -1.840  |  1.907034 |

317 | -1.830  |  1.935400 |

318 | -1.820  |  1.963290 |

319 | -1.810  |  1.990706 |

320 | -1.800  |  2.017647 |

321 | -1.790  |  2.044113 |

322 | -1.780  |  2.070104 |

323 | -1.770  |  2.095620 |

324 | -1.760  |  2.120661 |

325 | -1.750  |  2.145228 |

326 | -1.740  |  2.169319 |

327 | -1.730  |  2.192937 |

328 | -1.720  |  2.216080 |

329 | -1.710  |  2.238750 |

330 | -1.700  |  2.260947 |

331 | -1.690  |  2.282672 |

332 | -1.680  |  2.303924 |

333 | -1.670  |  2.324705 |

334 | -1.660  |  2.345015 |

335 | -1.650  |  2.364855 |

336 | -1.640  |  2.384226 |

337 | -1.630  |  2.403128 |

338 | -1.620  |  2.421562 |

339 | -1.610  |  2.439530 |

340 | -1.600  |  2.457032 |

341 | -1.590  |  2.474070 |

342 | -1.580  |  2.490644 |

343 | -1.570  |  2.506755 |

344 | -1.560  |  2.522405 |

345 | -1.550  |  2.537595 |

346 | -1.540  |  2.552326 |

347 | -1.530  |  2.566600 |

348 | -1.520  |  2.580417 |

349 | -1.510  |  2.593780 |

350 | -1.500  |  2.606689 |

351 | -1.490  |  2.619147 |

352 | -1.480  |  2.631154 |

353 | -1.470  |  2.642712 |

354 | -1.460  |  2.653824 |

355 | -1.450  |  2.664490 |

356 | -1.440  |  2.674712 |

357 | -1.430  |  2.684492 |

358 | -1.420  |  2.693832 |

359 | -1.410  |  2.702734 |

360 | -1.400  |  2.711200 |

361 | -1.390  |  2.719231 |

362 | -1.380  |  2.726830 |

363 | -1.370  |  2.733998 |

364 | -1.360  |  2.740737 |

365 | -1.350  |  2.747051 |

366 | -1.340  |  2.752940 |

367 | -1.330  |  2.758406 |

368 | -1.320  |  2.763453 |

369 | -1.310  |  2.768083 |

370 | -1.300  |  2.772297 |

371 | -1.290  |  2.776098 |

372 | -1.280  |  2.779488 |

373 | -1.270  |  2.782470 |

374 | -1.260  |  2.785045 |

375 | -1.250  |  2.787218 |

376 | -1.240  |  2.788989 |

377 | -1.230  |  2.790363 |

378 | -1.220  |  2.791340 |

379 | -1.210  |  2.791924 |

380 | -1.200  |  2.792117 |

381 | -1.190  |  2.791922 |

382 | -1.180  |  2.791342 |

383 | -1.170  |  2.790380 |

384 | -1.160  |  2.789037 |

385 | -1.150  |  2.787318 |

386 | -1.140  |  2.785224 |

387 | -1.130  |  2.782760 |

388 | -1.120  |  2.779926 |

389 | -1.110  |  2.776727 |

390 | -1.100  |  2.773166 |

391 | -1.090  |  2.769245 |

392 | -1.080  |  2.764968 |

393 | -1.070  |  2.760336 |

394 | -1.060  |  2.755355 |

395 | -1.050  |  2.750026 |

396 | -1.040  |  2.744353 |

397 | -1.030  |  2.738339 |

398 | -1.020  |  2.731987 |

399 | -1.010  |  2.725300 |

400 | -1.000  |  2.718282 |

401 | -0.990  |  2.710935 |

402 | -0.980  |  2.703264 |

403 | -0.970  |  2.695271 |

404 | -0.960  |  2.686960 |

405 | -0.950  |  2.678335 |

406 | -0.940  |  2.669397 |

407 | -0.930  |  2.660152 |

408 | -0.920  |  2.650602 |

409 | -0.910  |  2.640752 |

410 | -0.900  |  2.630603 |

411 | -0.890  |  2.620161 |

412 | -0.880  |  2.609428 |

413 | -0.870  |  2.598408 |

414 | -0.860  |  2.587105 |

415 | -0.850  |  2.575522 |

416 | -0.840  |  2.563663 |

417 | -0.830  |  2.551532 |

418 | -0.820  |  2.539132 |

419 | -0.810  |  2.526467 |

420 | -0.800  |  2.513541 |

421 | -0.790  |  2.500357 |

422 | -0.780  |  2.486920 |

423 | -0.770  |  2.473233 |

424 | -0.760  |  2.459300 |

425 | -0.750  |  2.445125 |

426 | -0.740  |  2.430712 |

427 | -0.730  |  2.416064 |

428 | -0.720  |  2.401185 |

429 | -0.710  |  2.386080 |

430 | -0.700  |  2.370753 |

431 | -0.690  |  2.355207 |

432 | -0.680  |  2.339446 |

433 | -0.670  |  2.323474 |

434 | -0.660  |  2.307296 |

435 | -0.650  |  2.290916 |

436 | -0.640  |  2.274337 |

437 | -0.630  |  2.257564 |

438 | -0.620  |  2.240600 |

439 | -0.610  |  2.223450 |

440 | -0.600  |  2.206119 |

441 | -0.590  |  2.188609 |

442 | -0.580  |  2.170926 |

443 | -0.570  |  2.153074 |

444 | -0.560  |  2.135057 |

445 | -0.550  |  2.116878 |

446 | -0.540  |  2.098543 |

447 | -0.530  |  2.080055 |

448 | -0.520  |  2.061420 |

449 | -0.510  |  2.042640 |

450 | -0.500  |  2.023721 |

451 | -0.490  |  2.004667 |

452 | -0.480  |  1.985482 |

453 | -0.470  |  1.966171 |

454 | -0.460  |  1.946738 |

455 | -0.450  |  1.927187 |

456 | -0.440  |  1.907523 |

457 | -0.430  |  1.887751 |

458 | -0.420  |  1.867874 |

459 | -0.410  |  1.847897 |

460 | -0.400  |  1.827825 |

461 | -0.390  |  1.807662 |

462 | -0.380  |  1.787413 |

463 | -0.370  |  1.767082 |

464 | -0.360  |  1.746673 |

465 | -0.350  |  1.726193 |

466 | -0.340  |  1.705644 |

467 | -0.330  |  1.685031 |

468 | -0.320  |  1.664360 |

469 | -0.310  |  1.643634 |

470 | -0.300  |  1.622859 |

471 | -0.290  |  1.602038 |

472 | -0.280  |  1.581178 |

473 | -0.270  |  1.560281 |

474 | -0.260  |  1.539354 |

475 | -0.250  |  1.518400 |

476 | -0.240  |  1.497425 |

477 | -0.230  |  1.476433 |

478 | -0.220  |  1.455429 |

479 | -0.210  |  1.434417 |

480 | -0.200  |  1.413403 |

481 | -0.190  |  1.392391 |

482 | -0.180  |  1.371385 |

483 | -0.170  |  1.350392 |

484 | -0.160  |  1.329415 |

485 | -0.150  |  1.308459 |

486 | -0.140  |  1.287530 |

487 | -0.130  |  1.266631 |

488 | -0.120  |  1.245769 |

489 | -0.110  |  1.224947 |

490 | -0.100  |  1.204171 |

491 | -0.090  |  1.183445 |

492 | -0.080  |  1.162775 |

493 | -0.070  |  1.142165 |

494 | -0.060  |  1.121621 |

495 | -0.050  |  1.101146 |

496 | -0.040  |  1.080747 |

497 | -0.030  |  1.060428 |

498 | -0.020  |  1.040193 |

499 | -0.010  |  1.020049 |

500 | -0.000  |  1.000000 |

501 |  0.010  |  0.980051 |

502 |  0.020  |  0.960207 |

503 |  0.030  |  0.940473 |

504 |  0.040  |  0.920853 |

505 |  0.050  |  0.901354 |

506 |  0.060  |  0.881981 |

507 |  0.070  |  0.862737 |

508 |  0.080  |  0.843628 |

509 |  0.090  |  0.824660 |

510 |  0.100  |  0.805837 |

511 |  0.110  |  0.787165 |

512 |  0.120  |  0.768648 |

513 |  0.130  |  0.750292 |

514 |  0.140  |  0.732102 |

515 |  0.150  |  0.714083 |

516 |  0.160  |  0.696240 |

517 |  0.170  |  0.678578 |

518 |  0.180  |  0.661102 |

519 |  0.190  |  0.643818 |

520 |  0.200  |  0.626731 |

521 |  0.210  |  0.609845 |

522 |  0.220  |  0.593167 |

523 |  0.230  |  0.576701 |

524 |  0.240  |  0.560452 |

525 |  0.250  |  0.544426 |

526 |  0.260  |  0.528628 |

527 |  0.270  |  0.513062 |

528 |  0.280  |  0.497736 |

529 |  0.290  |  0.482653 |

530 |  0.300  |  0.467818 |

531 |  0.310  |  0.453238 |

532 |  0.320  |  0.438917 |

533 |  0.330  |  0.424861 |

534 |  0.340  |  0.411074 |

535 |  0.350  |  0.397563 |

536 |  0.360  |  0.384332 |

537 |  0.370  |  0.371387 |

538 |  0.380  |  0.358733 |

539 |  0.390  |  0.346376 |

540 |  0.400  |  0.334320 |

541 |  0.410  |  0.322571 |

542 |  0.420  |  0.311135 |

543 |  0.430  |  0.300016 |

544 |  0.440  |  0.289220 |

545 |  0.450  |  0.278753 |

546 |  0.460  |  0.268620 |

547 |  0.470  |  0.258825 |

548 |  0.480  |  0.249375 |

549 |  0.490  |  0.240275 |

550 |  0.500  |  0.231531 |

551 |  0.510  |  0.223147 |

552 |  0.520  |  0.215129 |

553 |  0.530  |  0.207482 |

554 |  0.540  |  0.200212 |

555 |  0.550  |  0.193325 |

556 |  0.560  |  0.186825 |

557 |  0.570  |  0.180718 |

558 |  0.580  |  0.175010 |

559 |  0.590  |  0.169706 |

560 |  0.600  |  0.164812 |

561 |  0.610  |  0.160332 |

562 |  0.620  |  0.156272 |

563 |  0.630  |  0.152639 |

564 |  0.640  |  0.149436 |

565 |  0.650  |  0.146671 |

566 |  0.660  |  0.144347 |

567 |  0.670  |  0.142472 |

568 |  0.680  |  0.141049 |

569 |  0.690  |  0.140085 |

570 |  0.700  |  0.139585 |

571 |  0.710  |  0.139555 |

572 |  0.720  |  0.140000 |

573 |  0.730  |  0.140926 |

574 |  0.740  |  0.142338 |

575 |  0.750  |  0.144242 |

576 |  0.760  |  0.146642 |

577 |  0.770  |  0.149546 |

578 |  0.780  |  0.152958 |

579 |  0.790  |  0.156884 |

580 |  0.800  |  0.161329 |

581 |  0.810  |  0.166299 |

582 |  0.820  |  0.171800 |

583 |  0.830  |  0.177836 |

584 |  0.840  |  0.184415 |

585 |  0.850  |  0.191540 |

586 |  0.860  |  0.199218 |

587 |  0.870  |  0.207455 |

588 |  0.880  |  0.216255 |

589 |  0.890  |  0.225625 |

590 |  0.900  |  0.235570 |

591 |  0.910  |  0.246095 |

592 |  0.920  |  0.257207 |

593 |  0.930  |  0.268911 |

594 |  0.940  |  0.281212 |

595 |  0.950  |  0.294116 |

596 |  0.960  |  0.307629 |

597 |  0.970  |  0.321756 |

598 |  0.980  |  0.336503 |

599 |  0.990  |  0.351876 |

600 |  1.000  |  0.367879 |

601 |  1.010  |  0.384520 |

602 |  1.020  |  0.401803 |

603 |  1.030  |  0.419734 |

604 |  1.040  |  0.438319 |

605 |  1.050  |  0.457563 |

606 |  1.060  |  0.477472 |

607 |  1.070  |  0.498052 |

608 |  1.080  |  0.519308 |

609 |  1.090  |  0.541245 |

610 |  1.100  |  0.563871 |

611 |  1.110  |  0.587190 |

612 |  1.120  |  0.611208 |

613 |  1.130  |  0.635930 |

614 |  1.140  |  0.661363 |

615 |  1.150  |  0.687512 |

616 |  1.160  |  0.714382 |

617 |  1.170  |  0.741980 |

618 |  1.180  |  0.770311 |

619 |  1.190  |  0.799380 |

620 |  1.200  |  0.829194 |

621 |  1.210  |  0.859758 |

622 |  1.220  |  0.891078 |

623 |  1.230  |  0.923160 |

624 |  1.240  |  0.956008 |

625 |  1.250  |  0.989630 |

626 |  1.260  |  1.024030 |

627 |  1.270  |  1.059215 |

628 |  1.280  |  1.095189 |

629 |  1.290  |  1.131960 |

630 |  1.300  |  1.169532 |

631 |  1.310  |  1.207911 |

632 |  1.320  |  1.247103 |

633 |  1.330  |  1.287114 |

634 |  1.340  |  1.327950 |

635 |  1.350  |  1.369615 |

636 |  1.360  |  1.412117 |

637 |  1.370  |  1.455460 |

638 |  1.380  |  1.499651 |

639 |  1.390  |  1.544694 |

640 |  1.400  |  1.590597 |

641 |  1.410  |  1.637364 |

642 |  1.420  |  1.685002 |

643 |  1.430  |  1.733516 |

644 |  1.440  |  1.782912 |

645 |  1.450  |  1.833195 |

646 |  1.460  |  1.884372 |

647 |  1.470  |  1.936448 |

648 |  1.480  |  1.989430 |

649 |  1.490  |  2.043322 |

650 |  1.500  |  2.098130 |

651 |  1.510  |  2.153861 |

652 |  1.520  |  2.210520 |

653 |  1.530  |  2.268113 |

654 |  1.540  |  2.326645 |

655 |  1.550  |  2.386123 |

656 |  1.560  |  2.446552 |

657 |  1.570  |  2.507938 |

658 |  1.580  |  2.570287 |

659 |  1.590  |  2.633605 |

660 |  1.600  |  2.697897 |

661 |  1.610  |  2.763169 |

662 |  1.620  |  2.829427 |

663 |  1.630  |  2.896677 |

664 |  1.640  |  2.964924 |

665 |  1.650  |  3.034175 |

666 |  1.660  |  3.104435 |

667 |  1.670  |  3.175710 |

668 |  1.680  |  3.248006 |

669 |  1.690  |  3.321329 |

670 |  1.700  |  3.395684 |

671 |  1.710  |  3.471077 |

672 |  1.720  |  3.547514 |

673 |  1.730  |  3.625001 |

674 |  1.740  |  3.703544 |

675 |  1.750  |  3.783149 |

676 |  1.760  |  3.863821 |

677 |  1.770  |  3.945566 |

678 |  1.780  |  4.028390 |

679 |  1.790  |  4.112299 |

680 |  1.800  |  4.197299 |

681 |  1.810  |  4.283395 |

682 |  1.820  |  4.370594 |

683 |  1.830  |  4.458901 |

684 |  1.840  |  4.548321 |

685 |  1.850  |  4.638862 |

686 |  1.860  |  4.730529 |

687 |  1.870  |  4.823327 |

688 |  1.880  |  4.917262 |

689 |  1.890  |  5.012341 |

690 |  1.900  |  5.108569 |

691 |  1.910  |  5.205951 |

692 |  1.920  |  5.304495 |

693 |  1.930  |  5.404205 |

694 |  1.940  |  5.505088 |

695 |  1.950  |  5.607149 |

696 |  1.960  |  5.710394 |

697 |  1.970  |  5.814830 |

698 |  1.980  |  5.920461 |

699 |  1.990  |  6.027294 |

700 |  2.000  |  6.135335 |

----------------------------

Итераций: 700

Конечные значения: x=-3.680    y=-6.509638

Метод деления попалам (дихотомии)

--------------------------------------------------

 Итер| (a+b)/2 |F((a+b)/2)|     a      |     b   |

--------------------------------------------------

 1 |-1.500000 |2.606689 | [-5.000000,|2.000000]

 2 |-3.249500 |-5.285336 | [-5.000000,|-1.499000]

 3 |-4.124250 |-4.205499 | [-5.000000,|-3.248500]

 4 |-3.686875 |-6.509089 | [-4.125250,|-3.248500]

 5 |-3.468188 |-6.169750 | [-3.687875,|-3.248500]

 6 |-3.577531 |-6.425237 | [-3.687875,|-3.467188]

 7 |-3.632203 |-6.491094 | [-3.687875,|-3.576531]

 8 |-3.659539 |-6.506401 | [-3.687875,|-3.631203]

 9 |-3.673207 |-6.509365 | [-3.687875,|-3.658539]

10 |-3.680041 |-6.509637 | [-3.687875,|-3.672207]

--------------------------------------------------

Итераций: 10

Конечные значения: x=-3.676624   y=-6.509603

Метод золотого сечения

----------------------------------------------------------

Итер|  (a+b)/2   |  F((a+b)/2) |     a       |     b     |

----------------------------------------------------------

 1 | -1.500000  |  2.606689  | [-5.000000, | 2.000000]|

 2 | -2.836881  |  -2.931572  | [-5.000000, | -0.673762]|

 3 | -3.663119  |  -6.507486  | [-5.000000, | -2.326238]|

 4 | -3.152476  |  -4.783244  | [-3.978714, | -2.326238]|

 5 | -3.468071  |  -6.169399  | [-3.978714, | -2.957428]|

 6 | -3.663119  |  -6.507486  | [-3.978714, | -3.347524]|

 7 | -3.783665  |  -6.406817  | [-3.978714, | -3.588617]|

 8 | -3.709164  |  -6.501468  | [-3.829710, | -3.588617]|

 9 | -3.663119  |  -6.507486  | [-3.737621, | -3.588617]|

10 | -3.691576  |  -6.508230  | [-3.737621, | -3.645531]|

11 | -3.673989  |  -6.509437  | [-3.702446, | -3.645531]|

12 | -3.684858  |  -6.509337  | [-3.702446, | -3.667271]|

13 | -3.678140  |  -6.509643  | [-3.689010, | -3.667271]|

14 | -3.682292  |  -6.509548  | [-3.689010, | -3.675574]|

----------------------------------------------------------

Итераций: 14

Конечные значения: -3.679726  |  -6.509643

Метод Фибоначчи

----------------------------------------------------------

Итер|  (a+b)/2   |  F((a+b)/2) |     a       |     b     |

----------------------------------------------------------

 1 | -1.500000  |  2.606689  | [-5.000000, | 2.000000]|

 2 | -2.836879  |  -2.931562  | [-5.000000, | -0.673759]|

 3 | -3.663121  |  -6.507486  | [-5.000000, | -2.326241]|

 4 | -3.152482  |  -4.783279  | [-3.978723, | -2.326241]|

 5 | -3.468085  |  -6.169442  | [-3.978723, | -2.957447]|

 6 | -3.663121  |  -6.507486  | [-3.978723, | -3.347518]|

 7 | -3.783688  |  -6.406772  | [-3.978723, | -3.588652]|

 8 | -3.709220  |  -6.501437  | [-3.829787, | -3.588652]|

 9 | -3.663121  |  -6.507486  | [-3.737589, | -3.588652]|

10 | -3.691489  |  -6.508249  | [-3.737589, | -3.645390]|

11 | -3.673759  |  -6.509417  | [-3.702128, | -3.645390]|

12 | -3.684397  |  -6.509383  | [-3.702128, | -3.666667]|

13 | -3.677305  |  -6.509626  | [-3.687943, | -3.666667]|

----------------------------------------------------------

Итераций: 13

Конечные значения: x=-3.680851  y=-6.509615

Метод парабол

-------------------------------------------------------------------------------

Итер |      a     |       b       |       c       |      c1       |    f(a)      |     f(b)   

-------------------------------------------------------------------------------

 1| -5.000000|2.000000|-3.680000|-1.111653|28.413159|6.135335|

 2| -5.000000|-1.111653|-3.680000|-2.629593|28.413159|2.777281|

 3| -5.000000|-2.629593|-3.680000|-3.330112|28.413159|-1.685286|

 4| -5.000000|-3.330112|-3.680000|-3.575386|28.413159|-5.658179|

 5| -5.000000|-3.575386|-3.680000|-3.649616|28.413159|-6.421748|

 6| -5.000000|-3.649616|-3.680000|-3.670942|28.413159|-6.502269|

 7| -5.000000|-3.670942|-3.689058|-3.679509|28.413159|-6.509095|

 8| -3.689058|-3.670942|-3.679509|-3.678881|-6.508739|-6.509095|

--------------------------------------------------------------------------------

Итераций:  8

Конечные значения: x=-3.679509  y=-6.509645

Заключение

Одним из первых вопросов, возникающих при поиске минимума, является вопрос эффективности алгоритма. Из рассмотренных алгоритмов с данной задачей лучше остальных справился метод парабол. Ему понадобилось всего 8 итераций для нахождения минимума с точностью 0.01. В то время как самый «медленный» алгоритм –  метод пассивного поиска –  справился с этой же задачей за 700 итераций. 

Список литературы:

  1.  Харчистов Борис Федорович. Методы оптимизации.
  2.  В.А. Буслов, С.Л.Яковлев. Численные методы I. Исследование функций.
  3.  http://alglib.sources.ru/optimization/goldensection.php
  4.  http://alglib.sources.ru/optimization/
  5.  http://elib.ispu.ru/library/math/sem1/kiselev1/node87.html

Приложение

 

Код реализации программы на С++:

// minimum.cpp : main project file.

#include "stdafx.h"

#include "iostream"

#include "conio.h"

#include "math.h"

#include "stdio.h"

using namespace std;

double *method=new double[5]; //массив для числа итераций каждого метода

//////////////////////////////////////////////////////////

//////////определение функции/////////////////////////////

//////////////////////////////////////////////////////////

double F(double x)

{

 return pow(x, 3) - x + exp(-x);

}

//////////////////////////////////////////////////

////////процедура для пассивного поиска///////////

//////////////////////////////////////////////////

void pass(double a, double b, double e, short scr)//создаем функцию с //параметрами a – левый конец отрезка,  b –правый, e -погрешность

{

FILE *ps;

ps=fopen("D://minimum//passive.txt", "w");//создаем текстовый  файл в //который будут записываться выходные данные

 double Ymin=F(a), Xmin=a;

fprintf(ps, "Метод пассивного поиска\n");

fprintf(ps, "-----------------------------\n");

fprintf(ps, " Итер |    Y    |      x     |\n"); //«шапка» таблицы

fprintf(ps, "-----------------------------\n");

 for(double i=a; i<=b; i=i+e) // «пробегаем» отрезок с шагом е

 {

  fprintf(ps, "%4.0f | %6.3f  |  %6.6f |\n", (i-a)/e, i, F(i));// записываем в файл промежуточные значения

  if (F(i)<Ymin)//сравним текущее значение функции с новым

 {

  Ymin=F(i);//если оно  меньше, то оно записывается в переменную Ymin

  Xmin=i;//значение аргумента при данном минимуме

 }

 }

 

fprintf(ps, "----------------------------\n");

fprintf(ps, "\nИтераций:%4.0f\nКонечные значения: x=%6.3f    y=%6.6f", (b-a)/e, Xmin, Ymin);//Запись в файл кол-ва итераций, точку //минимума и зн-е ф-ии в ней

 

 /// если этот метод самый оптимальный, выводим его результаты на экран

 if (scr==1) printf("Kone4nie zna4eni9: x=%6.3f,  y=%6.6f", Xmin, Ymin);

method[0]=floor( (b-a)/e);

}

////////////////////////////////////////////////////////////////

//////////////процедура для метода дихотомии////////////////////

////////////////////////////////////////////////////////////////

void dihotomia(double a, double b, double e,short scr)

{

FILE *dih;

dih=fopen("D://minimum//dih.txt", "w");

 double l=a, m=b; //создаем переменные для значений функции и значений //аргумента

 int iter=1;

fprintf(dih, "Метод деления попалам (дихотомии)\n");

fprintf(dih, "--------------------------------------------------\n");

fprintf(dih, " Итер| (a+b)/2 |F((a+b)/2)|     a      |     b   |\n");

fprintf(dih, "--------------------------------------------------\n");

 while ((b-a)>e)

 {

 fprintf(dih, "%3d |%6.6f |%6.6f | [%6.6f,|%6.6f]\n",iter,(a+b)/2, F((a+b)/2), a, b);// записываем в файл промежуточные значения

 l=(a+b)/2 - e/10;

 m=(a+b)/2 + e/10;

 if (F(l)<F(m))

  b=m;

 else a=l;

 iter++;

  }

fprintf(dih, "--------------------------------------------------\n");

fprintf(dih, "\nИтераций:%3d\nКонечные значения: x=%6.6f   y=%6.6f",iter-1, (a+b)/2, F((a+b)/2));

 /// если этот метод самый оптимальный, выводим его результаты на экран

 if (scr==1) printf( "Kone4nie zna4eni9: x=%6.3f, y=%6.6f", (a+b)/2, F( (a+b)/2 ));

method[1]=iter-1;

}

//////////////////////////////////////////////////////////

//////Процедура для метода золотого сечения //////////////

//////////////////////////////////////////////////////////

void zol_sechenie(double a, double b, double e, short scr)

{

FILE *zol;

zol=fopen("D://minimum//sechenie.txt", "w");

fprintf(zol, "Метод золотого сечения\n");

fprintf(zol, "----------------------------------------------------------\n");

fprintf(zol, "Итер|  (a+b)/2   |  F((a+b)/2) |     a       |     b     |\n");

fprintf(zol, "----------------------------------------------------------\n");

 double fi=sqrt(5.0)/2 - 0.5, l=a+(1-fi)*(b-a), m=a+fi*(b-a), d1=F(l), d2=F(m);

 int iter=1;

 while ((b-a)>e)

  {

   fprintf(zol, "%3d | %6.6f  |  %6.6f  | [%6.6f, | %6.6f]|\n",iter,(a+b)/2, F((a+b)/2), a, b);

   if (d1>d2)

    {

     a=l; l=m; d1=d2;

     m=a+fi*(b-a); d2=F(m);

    }

   else

    {

     b=m; m=l; d2=d;

     l=a+(1-fi)*(b-a); d1=F(l);

    }

   iter++;

  }

fprintf(zol, "----------------------------------------------------------\n");

fprintf(zol, "\nИтераций:%3d\nКонечные значения: %6.6f  |  %6.6f",iter-1, (a+b)/2, F((a+b)/2));

 /// если этот метод самый оптимальный, выводим его результаты на экран

 if (scr==1) printf("Kone4nie zna4eni9: x=%6.6f, y=%6.6f", (a+b)/2, F((a+b)/2));

method[2]=iter-1;

}

///////////////////////////////////////////////////////

//////Процедура для метода Фибоначи ///////////////////

///////////////////////////////////////////////////////

void fibonachi(double a, double b, double e, short scr)

{

FILE *fibo;

fibo=fopen("D://minimum//Fibonachi.txt", "w");

fprintf(fibo, "Метод Фибоначчи\n");

fprintf(fibo, "----------------------------------------------------------\n");

fprintf(fibo, "Итер|  (a+b)/2   |  F((a+b)/2) |     a       |     b     |\n");

fprintf(fibo, "----------------------------------------------------------\n");

 int fib[80]; //массив с числами Фибоначчи

fib[0]=1; fib[1]=1; //в первые два эл-та записываем 1 тк так начин-ся последовательность Фибоначчи

 int i=1;

 while ( (b-a)/e >fib[i])

   {

    i++; fib[i]=fib[i-2] + fib[i-1];

   }

 double l=a+fib[i-2]*(b-a) / fib[i], m=a+fib[i-1]*(b-a)/fib[i], d1=F(l), d2=F(m);

 for (int k=i-1; k>=2; k--)

{

  fprintf(fibo, "%3d | %6.6f  |  %6.6f  | [%6.6f, | %6.6f]|\n",i-k,(a+b)/2, F((a+b)/2), a, b);

  if (d1<d2)

 {

  b=m; m=l; d2=F(l);

  l=a+fib[k-2]*(b-a)/fib[k];

  d1=F(l);

 }

   else

 {

  a=l; l=m; d1=d2;

  m=a+fib[k-1]*(b-a)/fib[k];

  d2=F(m);

 }

}

fprintf(fibo, "----------------------------------------------------------\n");

fprintf(fibo,"\Итераций:%3d\nКонечные значения: x=%6.6f  y=%6.6f",i-2, (a+b)/2, F((a+b)/2));

 /// если этот метод самый оптимальный, выводим его результаты на экран

 if (scr==1) printf("Kone4nie zna4eni9: x=%6.6f, y=%6.6f", (a+b)/2, F((a+b)/2));

method[3]=i-2;

}

//////////////////////////////////////////////

///////Процедура для метода парабол///////////

//////////////////////////////////////////////

void parabola(double a, double b, double e, short scr)

{

 int iter;

FILE *par;

par=fopen("D://minimum//parabola.txt", "w");

fprintf(par, "Метод парабол \n");

fprintf(par, "----------------------------------------------------------------\n");

fprintf(par, "Итер |    a   |    b    |    c    |   c1    |  f(a)   |  f(b)   \n");

fprintf(par, "----------------------------------------------------------------\n");

//Здесь методом пассивного поиска выбирается точка для начала метода парабол

 double min=F(a), x0=a;

 for (double i=a; i<=b; i+=e)

 {

  if (F(i)<min)

   {

    min=F(i);

    x0=i;

   }

 }

//Начнём выбирать по 3 точки, через которые проходит парабола

 double c=x0,c1,x2,x3;

 for (iter=1; (b-a)>e; iter++)

  {

   c1=0.5*( (a+b)*(a-b)*(F(c)-F(b)) - (c+b)*(c-b)*(F(a)-F(b)) ) / ( (a-b)*(F(c)-F(b)) - (c-b)*(F(a)-F(b)) );

   x2=0.5*( (a+b)*(b-a)*(F(a)-F(c)) - (a+c)*(a-c)*(F(b)-F(a)) ) / ( (b-a)*(F(a)-F(c)) - (a-c)*(F(b)-F(a)) );

   x3=0.5*( (c+b)*(c-b)*(F(a)-F(b)) - (a+b)*(a-b)*(F(c)-F(b)) ) / ( (c-b)*(F(a)-F(b)) - (a-b)*(F(c)-F(b)) );

//Найдём минимум параболической функции (у параболы два экстремума => один из них - минимум)

   if (( (c1<=x2)&&(x2<=x3) ) || ( (x2<=x3)&&(x2<=c1) )) c1=x2;

   if (( (c1<=x3)&&(x3<=x2) ) || ( (x2<=x3)&&(x3<=c1) )) c1=x3;

   fprintf(par, "%3d| %6.6f|%6.6f|%6.6f|%6.6f|%6.6f|%6.6f|\n", iter, a, b, c, c1, F(a), F(b));

   if (c1>c)

    {

     double temp=c1; c1=c; c=temp;

    }

//Проверим, не дал ли этот шаг более точный результат    

   if (F(c1)<F(c))

    {

     b=c; c=c1;

    }

    else a=c1;

   if ( (c-a)/(b-a)<=e ) c=2*c-a;

   if ( (b-c)/(c-a)<=e ) c=2*c-b;

   if (iter>20) break; //если итераций стало более 20, то выйти, так как точность метода

           //парабол дотаточна высока и дальнейшие изменения точки минимума

           //не выйдет за пределы точности

  }

 fprintf(par, "----------------------------------------------------------------\n");

 fprintf(par, "\nИтераций:%3d\nКонечные значения: x=%6.6f  y=%6.6f",iter-1, a, F(a));

 /// если этот метод самый оптимальный, выводим его результаты на экран

 if (scr==1) printf("Kone4nie zna4eni9: x=%6.6f, y=%6.6f", a, F(a));

 method[4]=iter-1;

}

///////////////////////////////////////////////////////

/////////////...Главная процедура...///////////////////

///////////////////////////////////////////////////////

void main(void)

{

 cout<<"f(x)=x^3 - x + exp(-x)\n\n";

 double a,b,e;

 cout<<"vvedite otrezok i pogreshnost' \n";

 cin>> a >> b >> e;

 pass(a,b,e,0);

 dihotomia(a,b,e,0);

 zol_sechenie(a,b,e,0);

 fibonachi(a,b,e,0);

 parabola(a,b,e,0);

 cout<<"\nProgramma zapisala faili v papky 'D:\\minimum\n\n";

//Начнём искать метод, давший результат за наименьшее число итераций

 int optim=0;

  for (int i=1; i<=4; i++)

   if (method[i]<method[optim]) optim=i;// ищем наименьшее число итераций

  char* result;

  switch (optim)

   {

    case 0 : result="metod passivnogo poiska"; pass(a,b,e,1); break;

    case 1 : result="method dihotomii";  dihotomia(a,b,e,1); break;

    case 2 : result="method zolotogo secheniya"; zol_sechenie(a,b,e,1); break;

    case 3 : result="method FIbonachi"; fibonachi(a,b,e,1); break;

    case 4 : result="method parabol"; parabola(a,b,e,1); break;

   }

  cout << "\n\noptimalni metod - "<< result << ", " <<method[optim] << " step(s)";

  cout << "\n\n";

 getch();

}

Таблицы промежуточных значений


 

А также другие работы, которые могут Вас заинтересовать

73310. Мошенничество как преступление 134.5 KB
  Характерной чертой мошенничества выделяющей его среди других видов преступлений против собственности является факт того, что собственник (либо другой владелец имущества), будучи введенным в заблуждение, по собственной воле передаёт мошеннику имущество (право на имущество)
73311. Организация финансовых результатов в ООО СФ «Жилпромстрой» 152.5 KB
  Учет, прогнозирование и планирование финансово-хозяйственной деятельности необходимы на любой стадии производствa. Любые ресурсы имеют свои ограничения и задача руководителя добиться максимального эффектa от их использования. Хозяйственные операции сопровождаются образованием и расходованием денежных средств, соотношение доходов и расходов организации определяют его финансовый результат.
73312. ВИДИ ПРАВ, СВОБОД І ОБОВЯЗКІВ ЛЮДИНИ І ГРОМАДЯНИНА. ЇХ СИСТЕМА В КОНСТИТУЦІЇ УКРАЇНИ 189 KB
  Дослідити ґенезу прав і свобод людини і громадянина на різних історичних етапах становлення держави; визначення поняття та змісту гарантій прав і свобод людини та громадянина; конкретизація ролі та місця держави, та органів державної влади щодо гарантування прав і свобод людини та громадянина; визначення сутності теоретичних засад гарантій прав і свобод людини та громадянина; проаналізувати концептуальні проблеми механізму реалізації права людини і громадянина в Україні...
73313. Основные задачи развития в период первой зрелости (молодости) 269 KB
  Основные задачи развития в период первой зрелости молодости. Обзор теорий развития психики отечественных и зарубежных психологов. Главной целью работы является выделить основные задачи развития как психологического так и социального.
73314. Чувство взрослости как центральное новообразование в структуре личности подростка 287.5 KB
  Исследование личности подростка в возрастной психологии Возрастная психология как область психологического знания. Новообразования и особенности развития личности подростка. Чувство взрослости как центральное новообразование в структуре личности подростка...
73315. Особенности агрессивных проявлений в раннем возрасте 410.5 KB
  Основные теоретические подходы к понятию агрессивности и агрессии. Типология агрессивного поведения у детей. Организация и методы исследования агрессивных проявлений у детей в раннем возрасте. Результаты собственного исследования агрессивных проявлений у детей в раннем возрасте.
73316. ВОСПРИЯТИЕ РЕКЛАМНОЙ ПРОДУКЦИИ (ТВ - РОЛИКОВ) ДЕТЬМИ ДОШКОЛЬНОГО ВОЗРАСТА 247 KB
  Реклама в мире бизнеса обрушивает на потребителей огромное количество информации. Психологическое воздействие рекламной информации проявляется в процессах переработки рекламных сообщений - эмоциях, мыслях, возможных решениях, обусловливающих конкретные поведенческие акты покупателя. Так или иначе, рекламный процесс оказываются вовлеченными феномены переработки информации - ощущения, восприятия, внимание, память.
73317. Биопленки, Методы изучения 324.5 KB
  Дальнейшее изучение механизмов формирования биопленки и ее функций открывает новые возможности для лечения и профилактики целого ряда заболеваний. Для того чтобы доказать присутствие именно биопленки а не других бактериальных структур используют разнообразные методические подходы направленные на обнаружение: элементов биопленочного внеклеточного матрикса...
73318. Застосування прогресивних технологій у сфері торгівлі 310 KB
  Інновації в оптовій торгівлі в основному обумовлені тенденціями розвитку оптового ринку такими як: глобалізація міжнародного бізнесу і ресурсні обмеження; висока швидкість матеріальних фінансових і інформаційних потоків; великі обсяги операцій; асортимент товарів що розширюється; складна територіально розгалужена структура філій складів і керуючих центрів; скорочення життєвих циклів товарів; прагнення роздрібну до зниження обсягів Тому в умовах модернізації економіки особливу значимість набувають прогресивні технології які повинні...