线性规划求极值问题-系统架构设计师-最“稳准狠”解题方法

相信大家之前考试的时候,最恨的事情是,明明这个题会做,“一顿操作”之后,结果算错了。

从小到大,经历了大大小小的考试,数也数不清了,但是“会做的题做错”,这样的现象,经常发生,事后特别后悔。

我们来看一个2018年系统架构设计师真题:

在如下线性约束条件下:2x+3y≤30;x+2y≥10;x≥y;x≥5;y≥0,目标函数2x+3y的极小值为()。

题目描述非常简单粗暴, 给了5个不等式,然后求极值。

这类型的题,是典型的线性规划问题,简单粗暴点,可以这样求解:

    1. 使用两两条件结合,求得x、y的值;

    2. 看其他条件是否满足

    2.1 如果满足,然后求2x+3y的值是多少, 记录下这个值记作 min_n(n为1、2、3、4...),然后回到1

    2.2 如果不满足,回到1

    3. 从 min_n 中选最小值

这样解题的话,很容易漏掉两两组合的问题,同时验证的时候,也很可能漏掉某个条件。条件少的话可以这样做,但是本题条件太多了,不建议这样做。

 

下面介绍一种“稳准狠”的方法,画图...

所有的条件等于时,将函数的坐标图画出来,条件为“不等”的区域就是每条直线上的箭头方向指示的区域。

 

我们发现,所有的条件都满足,会围成一个多边形,也就是图中五个灰色的圆圈围成的区域。

因为是需要求2x+3y 的极值问题,对于 2x+3y<=N,是一条直线加某个区域,极小值应该在上图中某个圆圈的位置。

粗暴点,可以将上面的5个交点 (12,18), (5,5), (5,5/2), (10,0), (15,0),的坐标一个个带入 2x+3y 求值。

最终 2x+3y  在 (5,5/2)点上值最小,最小值为 17.5

平时可以练习下画图,两个点就可以决定一条直线,快速的画个图,花不了多长时间,按道理应该比两两结合求解x、y的值更快、更稳!!!!

おすすめ

転載: blog.csdn.net/asdfjklingok/article/details/119580841
おすすめ