数学建模社区-数学中国

标题: 罚函数指的是什么? [打印本页]

作者: from911    时间: 2004-12-31 10:25
标题: 罚函数指的是什么?

好像是解非线性规划里的,具体怎么用?


作者: qinjin    时间: 2004-12-31 12:44

罚函数针对不同的问题而有所不同,基本的意思应该是如果违反了某一约束条件,就会在目标值中加以惩罚,即显著的增大或减小函数目标值!

不知道我这样说对不对,反正我是这么理解的

[em07]
作者: ilikenba    时间: 2005-1-1 22:51

我知道有指数罚函数和对数罚函数(极大熵法就属于这一类)!


作者: Allos    时间: 2005-1-3 21:04

在不规则可行域里寻找最优值的问题中

有些算法允许同时从可行域里面和外面进行搜索

从而可以有效的找到位于边界的最优值

当搜索点落在可行域外面的时候

需要用一些修正方法来计算它们的目标函数值

这就是所谓的罚函数的思想

至于具体的实现方式

可以有不同的形式


作者: sunchuren    时间: 2005-1-5 00:01

对于问题

min f(x)

s.t g_i(x)<=0,i=1,\cdots,m

构造如下函数

h(x,t)=u(f(x))+\sum_{i=1}^m v(g_i(x),t)

其中,u()是增函数,v满足

v(y,t)={0,y<=0,

{+\infty y>0

这就是说,当点x可行,就在可行域搜索,不然,在可行域外,就强迫它回到可行域,这就是罚函数思想。

由于v(y,t)比较难实现,实际中都是用连续可微函数v(y,t)来逼近它。不同的函数构成了不同的罚方法 。


作者: zhonggang_nuaa    时间: 2005-1-7 15:59
罚函数是求解约束问题的,他的主要思想是把约束条件进行变换,然后添加到目标函数上,把问题化为无约束问题。那么我们就可以用求解无约束问题的算法来求解约束问题。值得注意的是算法迭代点到达约束边界时,罚函数就会在目标值中加以惩罚,即显著的增大或减小函数目标值,从而达到使得迭代点永远在可行域里。有内点罚函数和外点罚函数。(我是新手,全作狗尾续貂之作)
作者: lufangyuan    时间: 2005-1-7 22:35
任何一本非线性规划著作都有介绍。
作者: lnf2008    时间: 2005-5-31 15:01
感觉还是二楼说得浅显易懂,就那么回事。
作者: monkeytail    时间: 2005-6-10 01:44
又学到东西了




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5