标签: minimization

使用scipy来最小化也采用非变分参数的函数

我想使用该scipy.optimize模块来最小化一个功能.假设我的功能是f(x,a):

def f(x,a):
 return a*x**2
Run Code Online (Sandbox Code Playgroud)

对于一个固定的a,我希望尽量减少f(x,a)关于x.

scipy我可以导入例如fmin功能(I有一个旧SciPy的:v.0.9.0),得到一个初始值x0,然后优化(文档):

from scipy.optimize import fmin
x0 = [1]
xopt = fmin(f, x0, xtol=1e-8)
Run Code Online (Sandbox Code Playgroud)

失败因为f有两个参数并且fmin只传递一个(实际上,我还没有定义a).如果我做:

from scipy.optimize import fmin
x0 = [1]
a = 1
xopt = fmin(f(x,a), x0, xtol=1e-8)
Run Code Online (Sandbox Code Playgroud)

计算也将失败,因为"x未定义".但是,如果我定义x那么没有要优化的变量参数.

如何在此处将非变分参数用作函数参数?

python numpy mathematical-optimization minimization scipy

3
推荐指数
1
解决办法
8068
查看次数

最小化正则表达式的程序/计算器

我只是想知道是否有任何免费软件可以有效地减少正则表达式。

regex minimization

2
推荐指数
1
解决办法
6188
查看次数

如何优化 R 中的两个变量函数

我一直在尝试优化以下功能,但没有成功:

parametros <- data.frame(ap=c(11.1,7.07,6.3,4.75,4,3.35), 
fx=c(41.2012,39.3732,25.2912,10.3455,1.2253,0.4017))
xm<-11.2

fxcalc <- function(s,t){(1-(1-(parametros$ap/xm)^(s))^t)*100}
suma <- function(s,t){(parametros$fx-fxcalc(s,t))^2}

func <- function(s,t){sum(suma(s,t))}
Run Code Online (Sandbox Code Playgroud)

作为“func()”,我试图最小化“s”和“t”的函数。

显然,函数“optim()”不能处理多个变量。

非常感谢!

optimization r minimization frequency-distribution

2
推荐指数
1
解决办法
3810
查看次数

scipy.optimize 被困在局部最小值中。我能做什么?

 from numpy import *; from scipy.optimize import *; from math import *
def f(X):
    x=X[0];    y=X[1]
    return x**4-3.5*x**3-2*x**2+12*x+y**2-2*y

bnds = ((1,5), (0, 2))
min_test = minimize(f,[1,0.1], bounds = bnds); 
print(min_test.x)
Run Code Online (Sandbox Code Playgroud)

我的函数f(X)有一个x=2.557, y=1我应该能够找到的局部最小值。

上面显示的代码只会给出结果 where x=1。我尝试了不同的公差和所有三种方法:L-BFGS-B、TNC 和 SLSQP。这是到目前为止我一直在看的线程: Scipy.optimize:如何限制参数值

我怎样才能解决这个问题?

我正在使用 Spyder(Python 3.6)。

在此处输入图片说明

python minimization scipy spyder

2
推荐指数
2
解决办法
3681
查看次数

最小化多变量函数

我知道fminsearch函数,但它似乎只能解决一个变量.

如果我的函数看起来像f(x,y,z)并且我想找到给出最低结果的x,y,z的值,我将如何在MatLab中执行此操作?f的复杂性会使计算偏导数变得不合理.

任何帮助将不胜感激,谢谢!

matlab minimization

1
推荐指数
1
解决办法
8584
查看次数

为什么我的 scipy.optimize.minimize 失败?

我尝试使用 fmin_bfgs 来找到绝对函数的局部最小值abs(x)。初始点设置为100.0;预期答案是 0.0。但是,我得到:

In [184]: op.fmin_bfgs(lambda x:np.abs(x),100.0)
Warning: Desired error not necessarily achieved due to precision loss.
         Current function value: 100.000000
         Iterations: 0
         Function evaluations: 64
         Gradient evaluations: 20
Out[184]: array([100.0])
Run Code Online (Sandbox Code Playgroud)

为什么?

python minimization scipy

1
推荐指数
1
解决办法
2520
查看次数

在Python中查找从曲线中最近点到有界n维空间中任意点的距离

我正在使用 Python 解决这个问题。

假设我在 n 维(紧凑)空间中有一些点 p 和一维任意曲线。如何在曲线中找到最接近指定点 p 的点?我在Find minimum distance from point to complex curve 中找到了答案,但 Shapely 仅适用于平面,并且我正在处理的曲线的表达式驻留在维度数范围为 2 到 16 的空间中,这是由于定义了曲线。这些曲线的表达式总是明确知道的。

我也尝试使用scipy.optimizewithSLSQP来最小化距离函数,但它并不总是有效。例如,如果曲线是np.sin(15*x),并且点仅位于以 为中心的单位正方形(0.5, 0.5)中,则曲线的某些部分仅在两个维度中的一个维度中位于正方形内,并且某些点的最小化失败。

python optimization minimization scipy

1
推荐指数
1
解决办法
327
查看次数

当问题不可行时纸浆约束

我正在尝试使用 Python 中的 Pulp 来解决线性优化问题。

这是代码:

import pandas as pd
import pulp

D_XB = 20
D_XP = 0
D_XC = 0

Available_Time = 1440 #in minutes

test = [['A1', 'A2', 'A3', 'A4', 'A5'], [1,2,1,0,3], [16,32,0,16,32], [10,10,10,10,10], [120,210,180,180,350]]

Cycles = pd.DataFrame(test, index=['Cycles', 'QTA1', 'QTA2', 'QTA3', 'T_TOT']).T

A1 = pulp.LpVariable("Cycle_A1", lowBound=0, cat='Integer')
A2 = pulp.LpVariable("Cycle_A2", lowBound=0, cat='Integer')
A3 = pulp.LpVariable("Cycle_A3", lowBound=0, cat='Integer')
A4 = pulp.LpVariable("Cycle_A4", lowBound=0, cat='Integer')
A5 = pulp.LpVariable("Cycle_A5", lowBound=0, cat='Integer')
    
# Defining the problem as a minimization problem (Minimize Storage) …
Run Code Online (Sandbox Code Playgroud)

python optimization constraints minimization pulp

1
推荐指数
1
解决办法
3120
查看次数

如何通过使其成为一行代码来最小化HTML代码?

所以我创建了一个HTML,Inline CSS和JS的网页.由于此页面将通过JS函数生成

 opened.document.write();
Run Code Online (Sandbox Code Playgroud)

我想将所有网页代码放在一行中,可以在之前提到的功能中使用,而不是为每个新行重复相同的功能.我无法手动执行此操作,因为该页面包含太多代码行.

有一种快速而干净的方法吗?

注意:我使用SOME PROGRAM一键替换所有"with",所以我希望用(Backspace)或类似的东西替换所有(Enter)s.


我想在用户点击一个按钮时生成整个页面,该按钮将调用JS函数,该函数将生成一个新页面并使用前面提到的函数编写它.

html javascript css line minimization

0
推荐指数
1
解决办法
2049
查看次数