【发布时间】:2013-08-06 03:35:25
【问题描述】:
我有函数 - 非线性(我想)和一组变量
S=[(x1,y1),(x2,y2)...]。
目标是找到x 和y 的值,使得
sum of( max(|x-xi|,|y-yi|) for each (xi,yi) element of S is minimized and | | represents absolute value.
我在 python 中遇到了一个函数 optimize(),但我真的不知道这是否适用于这种情况。有什么算法我可以自己编写代码来找到解决方案,即 x 和 y。
eg : S=[(1,4),(2,3),(0,1),(1,1)]
for x=1.5 and y=2.5(and some other values as well) the function gives the minimum value : 5
max(|1.5-1|,|2.5-4|)=1.5
max(|1.5-2|,|2.5-3|)=0.5
max(|1.5-0|,|2.5-1|)=1.5
max(|1.5-1|,|2.5-1|)=1.5
sum:5.0
【问题讨论】:
-
请明确
S是字典还是列表。 -
这听起来像是一个简单的回归问题,尽管您正在最小化直接残差而不是平方残差。我会使用基本的代数/微积分来最小化目标函数,而不是把一些东西拼凑在一起来蛮力它。
-
@Xaranke 正如他所说和展示的那样,它是元组的
set。 -
@roippi 据我所知,大括号用于字典。
-
@Xaranke 扩展您的理解。