抛物线法
抛物线法也叫做二次插值法,基本思想为:在搜索的区间中不断的使用二次多相似去近似目标函数,并且逐步用插值多项式去逼近线搜索问题。具体推导见《最优化方法及其matlab程序设计》P18。
代码如下
import numpy as np
import matplotlib.pyplot as plt
import math
def phi(x):
'''
测试函数1
:param x:
:return:
'''
return x * x - 2 * x + 1
def complicated_func(x):
'''
测试函数2
:param x:
:return:
'''
return x * x * x + 5 * math.sin(2 * x)
def parabolic_search(f, a, b, epsilon=1e-1</