线性与非线性规划:三次拟合


前言

本系列涉及线性与非线性规划中的几种规划算法:

1.本节介绍三次拟合方法
2.参考:陈宝林-最优化理论与算法
3.采用python编程实现,已测试,代码可行。


一、三次拟合方法

三次拟合方法(三次插值方法),具体方法参考陈宝林的三次插值法这一小节。
需要自行给定可行的初始点,并计算目标函数值。

二、代码实现

1.代码

代码如下(示例):

#参考资料,陈宝林
#实现三次拟合,求解一维搜索的无约束问题,初始的两个点需要自己给出来。
from sympy import *
import numpy as np
import math
class Sancinihe_Function:
    def __init__(self,F,Xi):
        self.Xi = Xi
        self.f = F
    def d_function(self,df,X0):
        #导数df已知,计算值
        dfk=[]
        for index, item in enumerate(X0):
            df1_2 = df.evalf(subs={
   self.Xi: item})
            dfk.append(df1_2)
        return dfk
    ##################################################acc1停止计算,acc2判断是否为极点
    def iteration_x(self,X0,acc1,acc2):
        k=
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值