问题标签 [inequalities]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
65 浏览

python - Python:自动生成可变数量的 if 语句

我有两个类似于这些的numpy数组,它们代表坐标:

我也有n正方形:

我想计算每个正方形内的点数。这归结为评估n不平等。

我的方法很冗长并且(可能)效率低下:

给定我的两个数组,这将返回:

我真正的问题包括可变数量的正方形(可能是 6,也可能是 36,等等)。

有没有一种方法可以自动生成count变量以及if语句的数量和边界?

0 投票
0 回答
106 浏览

python - 动态生成满足多个标准的约束解决方案

我觉得有一个优雅的 Python 解决方案可以解决我一直在尝试用 VBA 解决的这个问题。有人可以帮忙吗?

如何生成满足以下条件的数字列表:

  1. 都是整数吗
  2. 总数首先在类型之间进行拆分。
  3. 这些数字进一步分为子类型并进行优化以满足所需的百分比。
  4. 总和不超过指定的 Total。

这个问题的例子:

  • 您计划建造最多 102 个住宅单元。
  • 建筑类型:其中 40% 将是工作室,60% 将是联排别墅建筑类型。(可以有更多或更少的类型)
  • 公寓的未来居住者有两个优先级列表:辅助和无辅助
    • 需要完全满足辅助(A)列表中的单元分配百分比,并且非辅助(U)列表是灵活的。如果可能,我们希望非辅助 (U) 列表最多占总单位的 20%,但我们绝对需要至少 80% 的总单位是辅助(A) 单位。
  • Assisted(A) 单位总数为 102x80% = 81.6 个单位(已经不是整数)
    • 至少 10% 的辅助 (A) 列表单元必须针对老年人。
    • 至少 40% 的辅助 (A) 列表单元必须用于家庭。
    • 其余 50% 的辅助 (A) 列表单元面向有抱负的数据科学家。

其余 20% 的总单位是无人协助 (U) 入住单位。

所以:

  • 总计:102 个单位。
  • Construction_type_categories=[.4, .6](102 个单位分为工作室和联排别墅:40% 和 60%)
  • Assisted=[.1,.4,.5](80% 以上的总单位是辅助型,根据列表中的百分比进一步分类为老年人、家庭、其他入住)
  • 无协助单位是不属于协助名单 80% 以上的剩余单位。(最多占总单位的 20%)

结果:

分解:

  • 4个工作室单位协助长者
  • 为家庭提供 16 个工作室单位
  • 12 个工作室单元,用于其他辅助入住类型
  • 8 个工作室单元(无辅助)
  • 7个联排别墅单位协助长者
  • 为家庭提供 25 套联排别墅
  • 19 套其他辅助入住类型的联排别墅单位
  • 11 个联排别墅单元(独立)。

我想首先生成一个初步的四舍五入数组,然后循环并进行调整。它看起来很乏味,我开始考虑使用 numpy 生成一个大的数字矩阵并按概述的标准进行过滤。

手动生成和优化数字非常耗时,因此我感谢任何有关更好解决方案的帮助。

0 投票
0 回答
69 浏览

matlab - 在 Matlab 中制作高质量的重叠不等式图?

我需要制作出版质量图,显示由各种不等式(f1(x,y)> 0,f2(x,y)> 0,...)限制的参数空间中的域,其中某些区域将满足几个不等式并且应该混合平面颜色。

提出了各种制作不等式图的方法,但似乎都没有产生很好的结果:

  • 使用带有 imagesc 的网格会引入锯齿状边缘(除非我使用大得离谱的矩阵来达到打印分辨率)。
  • Contourf(x,y,f1,[0 0]) 并坚持几乎可以得到我想要的,除了显然不可能赋予轮廓区域透明度。
  • 使用 surf(x,y,f1),一个白色 z=0 平面进行剪裁,view(0,90) 看起来也不错并且可以实现透明,但是如果我要绘制两个或多个不等式,则会引入伪影,因为颜色不同如果 f1(x,y)>f2(x,y) 或 f2(x,y)>f1(x,y)。
  • 使用前一种方法将轴堆叠在一起会失败,因为剪切平面不透明。
  • 当 countour 到达两侧轴的边缘时,使用 fill(C(1,:),C(2,:)) 获取 countour 矩阵并填充会遇到麻烦,因为现在是 1,2 甚至 3 个角点缺少,填充曲线将由穿过图像的直线封闭。

有人知道实现这一目标的方法吗?通过制作透明的轮廓区域,无论排序如何,其颜色以相同方式组合的表面,使用透明剪切平面的 z 剪切表面的方法,或将必要的额外边缘点添加到填充轮廓的算法。

0 投票
1 回答
33 浏览

python - 对切​​片执行计算后如何创建新的ndarray

我有一个 4d numpy 数组,我想对它的几个切片执行计算,然后创建一个包含所有值的新数组。主要问题是我有 3 维的固定切片,但是第四轴的几个范围如何请按第 4 轴上的范围切片

0 投票
0 回答
106 浏览

javascript - 如何为简单的数学不等式生成解决方案?

我有一组具有 X 和 Y 值的元素。每个元素代表屏幕上的一个事物。我正在尝试根据规则在屏幕上放置东西。我还有一套规则,leftOf,rightOf,上面:

我想呈现一个搜索标签,然后是一个搜索框,然后是一个搜索按钮。都在同一个 Y 上,但由 X 区分。一种解决方案是 0、1、2。

我不知道如何从下面的问题中生成这些数字 0、1、2。

如果我说 searchLabel.x 在 searchBox.x 的左边,这意味着它在屏幕上出现在它之前。如果我说 searchBox.x 在 searchButton.x 的左边,那么它在 searchLabel.x 之后但在 searchButton.x 之前。

我有很多这样的规则:

如何为每个 X 和 Y 生成此问题的解决方案(数字)?同时!我已经尝试过根据规则简单地减去或增加每一侧的数字的代码。例如,如果它是 < than 关系。它减去两侧之间的差,使左侧小于右侧。

这不起作用,因为另一个规则可能会导致该规则与原始值无关。

代码在这里。这应该可以粘贴到 HTML 文件中。我正在尝试根据数学规则将 GUI 组件布局到屏幕上。有点像食火鸡。

0 投票
1 回答
80 浏览

matlab - 具有非零不等式约束的 fmincon

我想解决 MATLAB 中的最小化问题。

fmincon()

x = fmincon(fun,x0,Aeq,beq, nonlcon)服从定义的非线性不等式 c(x)nonlcon使得 c(x) < 0

是否可以将 c(x) < 0 更改为 c(x) ≤ 0 并使用fmincon()函数?它对我获得的结果有影响吗?我尝试fmincon并获得了合理的结果,但我不知道这种变化对我的结果有何影响?你建议在 MATLAB 中使用哪个函数来解决这个问题?

0 投票
2 回答
164 浏览

matplotlib - 使用 matplotlib,有没有办法创建基本不等式的简单二维图

在此处输入图像描述

如何创建一个基本不等式的简单二维图。结果是一条带有一两条线的编号线。一条或多条线将以箭头、实心圆或空心圆开始或结束。

0 投票
1 回答
118 浏览

python - 如何将两个不等式答案合并到同一行

所以基本上我在课堂上被要求解决一个不等式 -1<(7-x)/3<=4,老师想要在同一行使用solveset. 所以这最终是solveset(-1<((7-x)/3),x,domain=S.Reals) and solveset (((7-x)/3)<=4,x,domain=S.Reals) 但是每当我最终将它们放在&and在它们之间以使它们在同一行输出上时,我会得到第一个的答案或第二个的答案,这与我想要的完全相反。我应该如何输入这个?我正在使用 Jupyter Python 的东西。具体来说,我们已经导入了 sympy 的东西。

0 投票
1 回答
29 浏览

list - 如何从特定标准中对列表进行排序

我有这个列表,我想对列表进行排序。这只是我想做的一个较小的例子,但我得到了同样的错误。我不明白为什么我不能完成这项工作。我曾尝试使用谷歌来解决问题,但没有运气。

我该怎么做

TypeError:'<' 在 'list' 和 'in 的实例之间不支持

0 投票
1 回答
300 浏览

javascript - 如何检查是否存在满足一组线性不等式的解集?

是否可以确定是否存在一组满足 Matlab 之外的一组线性不等式的解决方案(以编程方式)只需一个真/假就足够了,但是否可以在 JavaScript 中使用库(最好是因为它只是一个小工作原型)或者如果没有,那么任何简单的python库?

我可以通过具有一些约束的自写函数来做到这一点,但是该解决方案可能非常不稳定,因此在重新发明轮子之前需要一些专家的意见。

到目前为止,我对确定一组不等式是否存在解集的理解如下:

假设不等式是:

在这里以 Y 为主题,我可以尝试输入 X 的一些有限正值和 X 的一些有限负值,包括零。

更容易说所有不等式的域是 [3,2,1,0,-1,-2,-3]

并将获得范围(每个不等式的 Y 值)

稍后将比较 Y 的所有值,并查看在给定 X 值上是否存在一些交叉区域。

例如:

所以 X = 1 没有找到任何共同点,我将转向另一个 X 值。

但我不太确定何时停止?每个方向上的几个值(正或负)将定义良好的约束并帮助我确定是否存在不等式的解决方案集?

因为不等式的重叠区域可能位于图的一个角落,并且 X 域两侧的一些初始值将证明它们是不相交的独立区域,但我们需要继续迭代可能会非常X 的较大值,其中两个不等式都有重叠区域,有时即使这样它们也不会相交。

那么是否有已经编写的基本库或函数可以帮助我解决这个问题?或者如果不是,那么我解决这种情况的逻辑/理解是否正确?

而不是 Matlab,而只是 JavaScript 中的简单编程库。

稍后的解决方案将扩展到超过 2 个也可能是 3 个变量不等式。

我的问题与过去在这个问题中提出的问题有些相似或非常相似

我对求解数学方程真的很陌生,因此我希望能很好地解释我的问题。