二阶响应曲面分析

本文介绍了二阶响应曲面在实验设计中的关键应用场景,包括处理非线性关系、寻找极值、复杂交互作用和高精度需求。通过实例演示了如何在化学工程中优化反应条件,通过最小二乘法拟合并分析二阶模型,确定了最大值点。
摘要由CSDN通过智能技术生成


参考自《实验设计与数据处理》一书

一、二阶响应曲面介绍

1.1 什么时候用二阶响应曲面

了解何时优先使用二阶响应曲面而非一阶响应曲面对于进行精确和有效的分析至关重要。下面是几种情况,表明在这些特定情况下,使用二阶响应曲面可能比一阶更合适:

1. 非线性关系

当数据表明变量之间的关系超出了简单的线性关系,即存在明显的曲线效应时,一阶模型(仅考虑变量的线性组合)可能无法准确拟合数据。二阶响应曲面通过包含平方项和交互项来有效捕捉这些非线性关系。

2. 探寻极值(最大化或最小化)

一阶响应曲面通常用于找到稳定的操作点,但当目标是寻找一个过程或设计的最优点(即最大化或最小化某个响应)时,二阶响应曲面因为其能够模拟曲线关系,更适合用来确定这些极值点。

3. 复杂的交互作用

如果预期变量间存在复杂的交互作用,这些交互作用可能对结果产生显著影响,一阶模型就显得力不从心,因为它只能考虑变量的独立效应。二阶模型通过引入交互项能够更好地解释变量之间如何相互作用影响响应。

4. 精度要求高

在某些情况下,即使是轻微的非线性关系也可能对最终结果产生重要影响,特别是在精密工程和科学研究中。在这种情况下,即使是为了提高模型的精度,也可能需要使用二阶响应曲面分析来捕捉细微的非线性效应。

5. 探索性分析阶段

在早期的探索性分析阶段,当我们对系统或过程的行为了解不多,不确定哪些因素是重要的,或如何相互作用时,直接使用二阶模型可以帮助快速理解系统的复杂动态。这比先使用一阶模型后再逐步过渡到二阶模型更为高效。

总之,当存在非线性关系、寻找极值、处理复杂的变量交互作用、追求高精度或处于探索性分析阶段时,使用二阶响应曲面分析而不是一阶模型更为合适。它提供了一种更为复杂和精细的方法来探索和优化多变量系统的性能。
下面是二阶模型的一般表达式:
在这里插入图片描述
这里面xi指的是各个影响因素,那么我们的目标是找出x1,x2,x3…xk的水平值使响应最优,这个点如果存在,那么它应该使函数对各自偏导数为零,应该最优点一般是极点,在曲面中,就是凹凸点,或者鞍点,因此,需要满足:
在这里插入图片描述
式中:
在这里插入图片描述

1.2响应曲面的特征

确定稳定点后,通常表示出响应曲面在这一点的临近区域内的特征,即这个点究竟是最大值点、最小值点还是鞍点,同时还希望研究响应对(x1,x2,x3…xk
的相对灵敏度,这时候我们需要考察拟合模型的等高线图或者正则分析,其中正则分析更加准确,方法如下:
在这里插入图片描述

二、实例说明

问题描述:一位化学工程师要确定使化工产品收率最高的操作条件,考虑影响产率的两个因素:反应时间和反应温度。工程师当前使用的运行条件是155°F下反应35min,产率为40%。因为此区域不大可能包含最优值,于是应用最速上升法拟合一阶模型(可以点击这个了解一下):
在这里插入图片描述
初步确定一阶模型的试验区域是反应时间30~40min,反应温度150—160°F,w为了简化计算,将自变量进行规范,使其落在(-1,1)区间内。即:

在这里插入图片描述
t为为时间,T为温度

在这里插入图片描述
用来收集这些数据的设计是增加五个中心点的22析因设计。在中心点处的重复观察值是用来估计实验误差的,并可以用来检验一阶模型的适合性。过程的当前运行条件在设计的中心点出。
用二水平设计法,以一阶模型进行最小二乘拟合,求得以下模型(其实计算跟二因子析因实验一致,但是也不用了解,实验的时候不用我们计算):
在这里插入图片描述
这个实验里面没有加护作用,所有不能拟合二阶模型,因此需要增大设计拟合二阶模型;

2.1 二阶模型求解

我们在(x1=0,x2=±1.141)和(x1=±1.141,x2=0)处增加4个观测点以完成中心组合设计:
在这里插入图片描述
然后用最小二乘法对规范数据进行二阶拟合,得:
在这里插入图片描述
进行正则分析:
由于,
在这里插入图片描述
在这里插入图片描述
稳定点为:
在这里插入图片描述
此方程的根
在这里插入图片描述
,因此所拟合模型的正则形式是:
在这里插入图片描述
因为两个特征值均为负值,且稳定点在探测区域内,所以,稳定点是最大值。

  • 31
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
响应曲面是一种用于描述两个或更多变量之间关系的数学模型,可以用于预测和优化特定系统或过程的性能。 在Python中,可以使用scikit-learn库中的多项式回归模型来实现响应曲面。以下是一个简单的示例: 首先,需要导入所需的库: ```python import numpy as np import matplotlib.pyplot as plt from sklearn.preprocessing import PolynomialFeatures from sklearn.linear_model import LinearRegression ``` 然后,创建一个随机数据集,包含两个自变量X1和X2以及一个因变量Y,如下所示: ```python # 随机生成数据集 np.random.seed(0) n_samples = 100 X = np.random.rand(n_samples, 2) Y = (X[:,0] + X[:,1] - 0.5 + 0.1*np.random.randn(n_samples)) ``` 接下来,使用PolynomialFeatures类将自变量X1和X2转换为多项式特征,以便拟合一个多项式回归模型: ```python # 将自变量转换为多项式特征 poly = PolynomialFeatures(degree=2) X_poly = poly.fit_transform(X) ``` 然后,使用LinearRegression类训练多项式回归模型,并预测响应曲面: ```python # 训练多项式回归模型 model = LinearRegression() model.fit(X_poly, Y) # 预测响应曲面 x1 = np.linspace(0, 1, 50) x2 = np.linspace(0, 1, 50) X1, X2 = np.meshgrid(x1, x2) Y_pred = model.predict(poly.fit_transform(np.vstack([X1.ravel(), X2.ravel()]).T)) Y_pred = Y_pred.reshape(X1.shape) ``` 最后,使用matplotlib库绘制响应曲面: ```python # 绘制响应曲面 fig = plt.figure() ax = fig.add_subplot(projection='3d') surf = ax.plot_surface(X1, X2, Y_pred, cmap='coolwarm', alpha=0.8) ax.scatter(X[:,0], X[:,1], Y, color='black', alpha=1) ax.set_xlabel('X1') ax.set_ylabel('X2') ax.set_zlabel('Y') plt.show() ``` 运行以上代码,即可得到一个二次响应曲面的三维图形。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值