标签: simplex

Scipy fmin 与整数解

我需要最小化一个只允许整数输入的函数。我可以用 解决scipy.optimize.fmin吗?否则,还有其他选择吗?

python integer minimize scipy simplex

5
推荐指数
0
解决办法
321
查看次数

Nelder Mead约束优化算法?

我已经读到Nelder Mead算法可用于无约​​束优化。 http://www.scholarpedia.org/article/Nelder-Mead_algorithm 我认为在Matlab中,Nelder Mead也用于无约束的优化。但是,我有点困惑,因为我找到了用于优化的Java API http://www.ee.ucl.ac.uk/~mflanaga/java/Minimisation.html(Flanagan 科学图书馆),该类具有实现Nelder Mead单纯形并允许定义约束和界限。那么,在Flanagan API中实现的版本是否是“经典” Nelder Mead算法的修改版本?

optimization mathematical-optimization simplex

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

Python linprog 最小化误差 - 单纯形法

我正在使用 scipy.optimize.linprog 库来使用单纯形法计算最小化。我有两种情况会出现错误:

“ValueError:单纯形法的第 1 阶段未能找到可行的解决方案。伪目标函数的计算结果为 3.1e-12,超出了解决方案“足够接近”零所需的容差 1e-12。一个基本的解决方案。考虑将容差增加到大于 3.1e-12。如果这个容差大得不可接受,则问题可能不可行。”

也许有人会发现问题出在哪里。

Minimaze:     45x1 + 54x2 + 42x3 + 36x4

Subject to:   x1 + x2 + x3 + x4 = 1600
              30x1 + 60x2 + 70x3 + 80x4 = 100000
              30x1 + 40x2 + 0x3 + 20x4 = 30000
Run Code Online (Sandbox Code Playgroud)

我写的代码:

A = np.array([[-30, -60, -70, -80], [-30, -40, 0, -20], [-1, -1, -1, -1]])
b = np.array([-100000, -30000, -1600])
c = np.array([45, 54, 42, 36])

res = linprog(c, A_eq=A, b_eq=b, bounds=(0, None)) …
Run Code Online (Sandbox Code Playgroud)

python optimization numpy scipy simplex

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

为什么所有Simplex Noise算法都有Permutation&Gradient表?

我一直在努力实现Simplex Noise大约一个月,我确实理解使用Simplices来减少所需的计算量以及渐变侧的安全功率.然而,将其实现为任何语言,似乎都是不可能的任务.

在我找到的每一个,每一个,每个代码中,我读到的资源,无处不在,代码似乎都有一个G和一个P表.从一些谷歌搜索和询问周围我了解到他们是一个排列和一个渐变表.他们在做什么?我们为什么需要它们?

我目前的想法是排列表只包含随机值,因此不必在运行时计算它们.

例子:

algorithm procedural-generation noise simplex

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

生成介于-1和1之间的随机数?

所以我发现这个有用的网站有很多代码和解释perlin和单纯形噪声.但是,代码是用不同的语言编写的.我能够为java重写大部分内容,但是有一个函数1.我不明白,而且2.我不知道如何在java中编写它.代码是:

function IntNoise(32-bit integer: x)             

    x = (x<<13) ^ x;
    return ( 1.0 - ( (x * (x * x * 15731 + 789221) + 1376312589) & 7fffffff) / 1073741824.0);    

  end IntNoise function
Run Code Online (Sandbox Code Playgroud)

同样,我不知道它是用什么语言编写的.但是,作者声明该函数返回-1到1之间的随机数.有人可以解释&符号的确切含义吗?为什么有一堆看似随机的数字呢?有没有一种简单的方法将其转换为java?

java random simplex

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