Егор писал(а):
В учебниках по численным методам можно посмотреть методы для поиска экстремумов. Если будут значения разных знаков, то дальше уже проще.
Угу, спасибо. Возможно это дествительно, то что надо.
Егор писал(а):
Хотелось бы подробнее узнать ситуацию. Откуда именно известно, что функция обязательно имеет корень? В каком виде дана функция?
Это задача у меня возникла в квантовой физики. Функция обязана иметь корень... так сказать из общей теории. Если корня нету... то это будет катастрофа, атом водорода перестанет существовать, настанет Апокалипсис, ну или по крайней мере что-то плохое точно случится

Егор писал(а):
Нужно ещё уточнить, что именно требуется найти. Вот два варианта.
Задача 1. На вход подаются равномерно непрерывная функция

(пусть даже меняющая знак на отрезке) и число

. Найти точку, которая отличается менее чем на

от истинного корня.
Задача 1 алгоритмически неразрешима.
Задача 2. На вход подаются равномерно непрерывная функция

, которая обязана иметь корень, и число

. Нужно найти такую точку

, что

.
Можно ли тут поподробнее. В чем эти две ситуации, принципиально отличаются?
Наверное все же второй случай, с очень малой

Егор писал(а):
Тут есть простой, но долгий алгоритм: покрыть область определения сеткой и посчитать значения функции в каждом узле сетки. Если шаг сетки достаточно мал, то хотя бы в одном узле значение функции будет достаточно малым.
Конечно, есть эвристические приёмы, которые обычно ускоряют поиск:
1) сначала брать крупную сетку, потом в первую очередь измельчать ячейки с малыми значениями функции;
2) пытаться двигаться по направлению убывания функции (метод градиентного спуска), и т. д.
bugmaker писал(а):
Метод градиентного спуска ИМХО может помочь, не без проблем однако.
Мда... боюсь как бы не было проблем, что все это надо посчитать за конечный промежуток времени, ограниченный моей продолжительностью учебы %)
Время вычисления значения функции в данной точке является весьма продолжительным.
Действительно, начитавшись всякой литературы нашел разные алгоритмы... ПОсмотрим, что из этого получится.
Спасибо всем