一些数学经验总结——关于将原一元二次函数增加一些限制条件后最优结果的对比(主要针对公平关切相关的建模)

本文主要是介绍一些数学经验总结——关于将原一元二次函数增加一些限制条件后最优结果的对比(主要针对公平关切相关的建模),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.没有分段的情况

原函数为一元二次凹函数(开口向下),如下:

f_0(x)=(ax-b)(d-cx), where\ a>0,b>0,c>0, d>0, and\ \frac{b}{a} < \frac{d}{c}.

因为要使得其存在正解,必须满足\frac{b}{a} < x < \frac{d}{c},那么\frac{b}{a} < \frac{d}{c}

上述函数的最优结果为:x^*=\frac{a d+b c}{2 a c}f(x^*)=\frac{a^2 d^2-2 a b c d+b^2 c^2}{4 a c}

对应的mathematica代码如下:

Clear["Global`*"]
f0[x_, a_, b_, c_, d_] := (a*x - b)*(d - c*x);(*(b c+a d)/(2 a c)*)
Maximize[{f0[x, a, b, c, d], a > 0 && b > 0 && c > 0 && d > 0}, x]

对应的mathematica结果如下:

2. 两个分段的情况

其中,

(1)第一个分段的函数为原函数;

(2)第二分段的函数为原函数的变体,即:
(i)第一因式与原函数的第一因式一样,即都为ax-b;

(ii)第二因式在原函数的第二因式基础上减去一部分(即ex-f),即为(d-cx)-(ex-f)

(3)其中分段点为减去部分为零时候的x值(即ex-f=0\Rightarrow x=\frac{f}{e}

\begin{array}{l} F(x) = \left\{ {\begin{array}{*{20}{c}} {​{f_0}(x)}&{x \le \frac{​{​{f_1}}}{​{​{e_1}}}}\\ {​{f_{1}}(x)}&{x > \frac{​{​{f_1}}}{​{​{e_1}}}} \end{array}} \right. = \left\{ {\begin{array}{*{20}{c}} {(ax - b)(d - cx)}&{x \le \frac{​{​{f_1}}}{​{​{e_1}}}}\\ {(ax - b)[(d - cx) - ({e_1}x - {f_1})]}&{x > \frac{​{​{f_1}}}{​{​{e_1}}}} \end{array}} \right.\\ = \left\{ {\begin{array}{*{20}{c}} {(ax - b)(d - cx)}&{x \le \frac{​{​{f_1}}}{​{​{e_1}}}}\\ {(ax - b)[(d + {f_1}) - (c + {e_1})x]}&{x > \frac{​{​{f_1}}}{​{​{e_1}}}.} \end{array}} \right. \end{array}

where\ a>0,b>0,c>0, d>0, \frac{b}{a} < \frac{d}{c}, e_1>0, f_1>0, and\ \frac{b}{a} < \frac{​{d + {f_1}}}{​{c + {e_1}}}.

针对第一分段f_0(x),在无限制条件情况下,最优结果为:x^*=\frac{a d+b c}{2 a c}f_0(x^*)=\frac{a^2 d^2-2 a b c d+b^2 c^2}{4 a c}

针对第二分段f_1(x),在无限制条件情况下,最优结果为:{x^*} = \frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}}f_1(x^*)={\frac{​{​{​{(b(c + e_1) - a(d + f_1))}^2}}}{​{4a(c + e_1)}}}

外生参数的大小关系(可以利用mathematica验证):

(1)成立的一些:

(i)\frac{b}{a}<\frac{a d+b c}{2 a c}<\frac{d}{c}

(ii)\frac{b}{a} < \frac{​{\left( {bc + ad} \right) + \left( {b{e_1} + af_1} \right)}}{​{2\left( {ac + a{e_1}} \right)}} < \frac{​{d + {f_1}}}{​{c + {e_1}}}

(2)不成立的一些:

(i)\frac{​{ad + bc}}{​{2ac}} < \frac{​{​{f_1}}}{​{​{e_1}}} < \frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}}

(ii)\frac{​{​{f_1}}}{​{​{e_1}}} < \frac{​{ad + bc}}{​{2ac}} < \frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}}

mathematica的代码如下:

Clear["Global`*"]
f0[x_, a_, b_, c_, d_] := (a*x - b)*(d - c*x);(*(b c+a d)/(2 a c)*)
f1[x_, a_, b_, c_, d_, e1_, f1_] := (a*x - b)*((d - c*x) - (e1*x - f1));(*((b c+a d)+(b e+a f))/(2 (a c+a e) )*)
(*f1[x_,a_,b_,c_,d_,e1_,f1_]:=(a*x-b)*((d+f1)-(c+e1)*x);*)Fx[x_, a_, b_, c_, d_, e1_, f1_] := Piecewise[{{f0[x, a, b, c, d], x <= f1/e1}, {f1[x, a, b, c, d, e1, f1], x > f1/e1}}];Reduce[a > 0 && b > 0 && c > 0 && d > 0 && e1 > 0 && f1 > 0 && b/a < d/c && b/a < (d + f1)/(c + e1)]Reduce[a > 0 && b > 0 && c > 0 && d > 0 && e1 > 0 && f1 > 0 && b/a < d/c && b/a < (d + f1)/(c + e1) && b/a < (b c + a d)/(2 a c) < d/c]
Reduce[a > 0 && b > 0 && c > 0 && d > 0 && e1 > 0 && f1 > 0 && b/a < d/c && b/a < (d + f1)/(c + e1) && b/a < ((b c + a d) + (b e1 + a f1))/(2 (a c + a e1) ) < (d + f1)/(c + e1)]
Reduce[a > 0 && b > 0 && c > 0 && d > 0 && e1 > 0 && f1 > 0 && b/a < d/c && b/a < (d + f1)/(c + e1) && (b c + a d)/(2 a c) < f1/e1 < ((b c + a d) + (b e1 + a f1))/(2 (a c + a e1) )]
Reduce[a > 0 && b > 0 && c > 0 && d > 0 && e1 > 0 && f1 > 0 && b/a < d/c && b/a < (d + f1)/(c + e1) && f1/e1 < (b c + a d)/(2 a c) < ((b c + a d) + (b e1 + a f1))/(2 (a c + a e1) )](*Reduce[a>0&&b>0&&c>0&&d>0&&e1>0&&f1>0&&b/a<d/c&&b/a<(d+f1)/(c+e1)&&(\
b c+a d)/(2 a c)>f1/e1&&f1/e1<((b c+a d)+(b e1+a f1))/(2 (a c+a e1) \
)&&f1[((b c+a d)+(b e1+a f1))/(2 (a c+a e1) ),a,b,c,d,e1,f1]>f0[(b \
c+a d)/(2 a c),a,b,c,d]]*)

比较重要的结论

(1)当\frac{​{ad + bc}}{​{2ac}} \le \frac{​{​{f_1}}}{​{​{e_1}}},那么最优的结果为${x^*} = \frac{​{ad + bc}}{​{2ac}}$

(2)当\frac{​{ad + bc}}{​{2ac}} > \frac{​{​{f_1}}}{​{​{e_1}}}

(2.1)当\frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}} \le \frac{​{​{f_1}}}{​{​{e_1}}},那么最优的结果为{x^*} = \frac{​{​{f_1}}}{​{​{e_1}}},注意{f_0}(\frac{​{ad + bc}}{​{2ac}}) > {f_0}(\frac{​{​{f_1}}}{​{​{e_1}}})

(2.2)当\frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}} > \frac{​{​{f_1}}}{​{​{e_1}}},那么最优的结果为{x^*} = \frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}},注意{f_0}(\frac{​{ad + bc}}{​{2ac}}) > {f_1}(\frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}})(可以利用mathematica验证)。

那么,总而言之,我们可以得出F(x)\leq f_0(x),当且仅当${x^*} = \frac{​{ad + bc}}{​{2ac}}$时,等号取到,即F(x)= f_0(x)

mathematica的代码如下:

Clear["Global`*"]
f0[x_, a_, b_, c_, d_] := (a*x - b)*(d - c*x);(*(b c+a d)/(2 a c)*)
f1[x_, a_, b_, c_, d_, e1_, f1_] := (a*x - b)*((d - c*x) - (e1*x - f1));(*((b c+a d)+(b e+a f))/(2 (a c+a e) )*)
(*f1[x_,a_,b_,c_,d_,e1_,f1_]:=(a*x-b)*((d+f1)-(c+e1)*x);*)Fx[x_, a_, b_, c_, d_, e1_, f1_] := Piecewise[{{f0[x, a, b, c, d], x <= f1/e1}, {f1[x, a, b, c, d, e1, f1], x > f1/e1}}];(*Reduce[a>0&&b>0&&c>0&&d>0&&e1>0&&f1>0&&b/a<d/c&&b/a<(d+f1)/(c+e1)]Reduce[a>0&&b>0&&c>0&&d>0&&e1>0&&f1>0&&b/a<d/c&&b/a<(d+f1)/(c+e1)&&b/\
a<(b c+a d)/(2 a c)<d/c]
Reduce[a>0&&b>0&&c>0&&d>0&&e1>0&&f1>0&&b/a<d/c&&b/a<(d+f1)/(c+e1)&&b/\
a<((b c+a d)+(b e1+a f1))/(2 (a c+a e1) )<(d+f1)/(c+e1)]
Reduce[a>0&&b>0&&c>0&&d>0&&e1>0&&f1>0&&b/a<d/c&&b/a<(d+f1)/(c+e1)&&(b \
c+a d)/(2 a c)<f1/e1<((b c+a d)+(b e1+a f1))/(2 (a c+a e1) )]
Reduce[a>0&&b>0&&c>0&&d>0&&e1>0&&f1>0&&b/a<d/c&&b/a<(d+f1)/(c+e1)&&f1/\
e1<(b c+a d)/(2 a c)<((b c+a d)+(b e1+a f1))/(2 (a c+a e1) )]*)Reduce[a > 0 && b > 0 && c > 0 && d > 0 && e1 > 0 && f1 > 0 && b/a < d/c && b/a < (d + f1)/(c + e1) && (b c + a d)/(2 a c) > f1/e1 && f1/e1 < ((b c + a d) + (b e1 + a f1))/(2 (a c + a e1) ) && f1[((b c + a d) + (b e1 + a f1))/(2 (a c + a e1) ), a, b, c, d, e1, f1] > f0[(b c + a d)/(2 a c), a, b, c, d]]

3. 三个分段的情况

其中,

(1)第一个分段的函数为原函数;

(2)第二分段的函数为原函数的变体,即:
(i)第一因式与原函数的第一因式一样,即都为ax-b;

(ii)第二因式在原函数的第二因式基础上减去一部分(即ex-f),即为(d-cx)-(e_1x-f_1)

(3)其中第二分段点为减去部分为零时候的x值(即e_1x-f_1=0\Rightarrow x=\frac{f_1}{e_1}

(4)第三分段的函数为原函数的变体,即:
(i)第一因式与原函数的第一因式一样,即都为ax-b;

(ii)第二因式在原函数的第二因式基础上减去一部分(即e_2x - f_2),即为(d-cx)-(e_2x-f_2)

(5)其中第三分段点为减去部分为零时候的x值(即e_2x-f_2=0\Rightarrow x=\frac{f_2}{e_2}

\begin{array}{l} G(x) = \left\{ {\begin{array}{*{20}{c}} {​{f_0}(x)}&{x \le \frac{​{​{f_1}}}{​{​{e_1}}}}\\ {​{f_1}(x)}&{\frac{​{​{f_1}}}{​{​{e_1}}} < x \le \frac{​{​{f_2}}}{​{​{e_2}}}}\\ {​{f_2}(x)}&{x > \frac{​{​{f_2}}}{​{​{e_2}}}} \end{array}} \right. = \left\{ {\begin{array}{*{20}{c}} {(ax - b)(d - cx)}&{x \le \frac{​{​{f_1}}}{​{​{e_1}}}}\\ {(ax - b)[(d - cx) - ({e_1}x - {f_1})]}&{\frac{​{​{f_1}}}{​{​{e_1}}} < x \le \frac{​{​{f_2}}}{​{​{e_2}}}}\\ {(ax - b)[(d - cx) - ({e_2}x - {f_2})]}&{x > \frac{​{​{f_2}}}{​{​{e_2}}}} \end{array}} \right.\\ = \left\{ {\begin{array}{*{20}{c}} {(ax - b)(d - cx)}&{x \le \frac{​{​{f_1}}}{​{​{e_1}}}}\\ {(ax - b)[(d + {f_1}) - (c + {e_1})x]}&{\frac{​{​{f_1}}}{​{​{e_1}}} < x \le \frac{​{​{f_2}}}{​{​{e_2}}}}\\ {(ax - b)[(d + {f_2}) - (c + {e_2})x]}&{x > \frac{​{​{f_2}}}{​{​{e_2}}}.} \end{array}} \right. \end{array}

where\ a>0,b>0,c>0, d>0, \frac{b}{a} < \frac{d}{c}, e_1>0, f_1>0, \frac{b}{a} < \frac{​{d + {f_1}}}{​{c + {e_1}}}, e_2>0, f_2>0, \frac{b}{a} < \frac{​{d + {f_2}}}{​{c + {e_2}}}, and\ \frac{​{​{f_1}}}{​{​{e_1}}} < \frac{​{​{f_2}}}{​{​{e_2}}}.

针对第一分段f_0(x),在无限制条件情况下,最优结果为:x^*=\frac{a d+b c}{2 a c}f_0(x^*)=\frac{a^2 d^2-2 a b c d+b^2 c^2}{4 a c}

针对第二分段f_1(x),在无限制条件情况下,最优结果为:{x^*} = \frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}}f_1(x^*)={\frac{​{​{​{(b(c + e_1) - a(d + f_1))}^2}}}{​{4a(c + e_1)}}}

针对第三分段f_2(x),在无限制条件情况下,最优结果为:{x^*} = \frac{​{(ad + bc) + (a{f_2} + b{e_2})}}{​{2(ac + a{e_2})}}f_2(x^*)={\frac{​{​{​{(b(c + e_2) - a(d + f_2))}^2}}}{​{4a(c + e_2)}}}

外生参数的大小关系(可以利用mathematica验证):

(1)成立的一些:

(i)\frac{b}{a}<\frac{a d+b c}{2 a c}<\frac{d}{c}

(ii)\frac{b}{a} < \frac{​{\left( {bc + ad} \right) + \left( {b{e_1} + af_1} \right)}}{​{2\left( {ac + a{e_1}} \right)}} < \frac{​{d + {f_1}}}{​{c + {e_1}}}

(iii)\frac{b}{a} < \frac{​{\left( {bc + ad} \right) + \left( {b{e_2} + af_2} \right)}}{​{2\left( {ac + a{e_2}} \right)}} < \frac{​{d + {f_2}}}{​{c + {e_2}}}

(2)不成立的一些:

(i)\frac{​{ad + bc}}{​{2ac}} < \frac{​{​{f_1}}}{​{​{e_1}}} < \frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}}

(ii)\frac{​{​{f_1}}}{​{​{e_1}}} < \frac{​{ad + bc}}{​{2ac}} < \frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}}

(i)\frac{​{ad + bc}}{​{2ac}} < \frac{​{​{f_2}}}{​{​{e_2}}} < \frac{​{(ad + bc) + (a{f_2} + b{e_2})}}{​{2(ac + a{e_2})}}

(ii)\frac{​{​{f_2}}}{​{​{e_2}}} < \frac{​{ad + bc}}{​{2ac}} < \frac{​{(ad + bc) + (a{f_2} + b{e_2})}}{​{2(ac + a{e_2})}}

比较重要的结论

(1)当\frac{​{ad + bc}}{​{2ac}} \le \frac{​{​{f_1}}}{​{​{e_1}}},那么最优的结果为${x^*} = \frac{​{ad + bc}}{​{2ac}}$

(2)当\frac{​{ad + bc}}{​{2ac}} > \frac{​{​{f_1}}}{​{​{e_1}}}

(2.1)当\frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}} \le \frac{​{​{f_1}}}{​{​{e_1}}},那么第一分段与第二分段对比下最优的结果为{x^*} = \frac{​{​{f_1}}}{​{​{e_1}}},注意{f_0}(\frac{​{ad + bc}}{​{2ac}}) > {f_0}(\frac{​{​{f_1}}}{​{​{e_1}}})

(2.2)当\frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}} > \frac{​{​{f_1}}}{​{​{e_1}}},那么第一分段与第二分段对比下最优的结果为{x^*} = \frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}},注意{f_0}(\frac{​{ad + bc}}{​{2ac}}) > {f_1}(\frac{​{(ad + bc) + (a{f_1} + b{e_1})}}{​{2(ac + a{e_1})}})(可以利用mathematica验证);

(3)当\frac{​{ad + bc}}{​{2ac}} > \frac{​{​{f_2}}}{​{​{e_2}}}

(3.1)当\frac{​{(ad + bc) + (a{f_2} + b{e_2})}}{​{2(ac + a{e_2})}} \le \frac{​{​{f_2}}}{​{​{e_2}}},那么第一分段与第三分段对比下最优的结果为{x^*} = \frac{​{​{f_2}}}{​{​{e_2}}},注意{f_0}(\frac{​{ad + bc}}{​{2ac}}) > {f_0}(\frac{​{​{f_1}}}{​{​{e_1}}})

(3.2)当\frac{​{(ad + bc) + (a{f_2} + b{e_2})}}{​{2(ac + a{e_2})}} > \frac{​{​{f_2}}}{​{​{e_2}}},那么第一分段与第三分段对比下最优的结果为{x^*} = \frac{​{(ad + bc) + (a{f_2} + b{e_2})}}{​{2(ac + a{e_2})}},注意{f_0}(\frac{​{ad + bc}}{​{2ac}}) > {f_2}(\frac{​{(ad + bc) + (a{f_2} + b{e_2})}}{​{2(ac + a{e_2})}})(可以利用mathematica验证)。

那么,总而言之,我们可以得出G(x)\leq f_0(x),当且仅当${x^*} = \frac{​{ad + bc}}{​{2ac}}$时,等号取到,即G(x)= f_0(x)

该结论可以扩展到N个分段的情况下,也就是N个分段的函数的最优结果不会优于原函数f_0(x)的最优结果。

这篇关于一些数学经验总结——关于将原一元二次函数增加一些限制条件后最优结果的对比(主要针对公平关切相关的建模)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1147868

相关文章

便携式气象仪器的主要特点

TH-BQX9】便携式气象仪器,也称为便携式气象仪或便携式自动气象站,是一款高度集成、低功耗、可快速安装、便于野外监测使用的高精度自动气象观测设备。以下是关于便携式气象仪器的详细介绍:   主要特点   高精度与多功能:便携式气象仪器能够采集多种气象参数,包括但不限于风速、风向、温度、湿度、气压等,部分高级型号还能监测雨量和辐射等。数据采集与存储:配备微电脑气象数据采集仪,具有实时时钟、数据存

hdu1171(母函数或多重背包)

题意:把物品分成两份,使得价值最接近 可以用背包,或者是母函数来解,母函数(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v) 其中指数为价值,每一项的数目为(该物品数+1)个 代码如下: #include<iostream>#include<algorithm>

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

uva 10014 Simple calculations(数学推导)

直接按照题意来推导最后的结果就行了。 开始的时候只做到了第一个推导,第二次没有继续下去。 代码: #include<stdio.h>int main(){int T, n, i;double a, aa, sum, temp, ans;scanf("%d", &T);while(T--){scanf("%d", &n);scanf("%lf", &first);scanf

uva 10025 The ? 1 ? 2 ? ... ? n = k problem(数学)

题意是    ?  1  ?  2  ?  ...  ?  n = k 式子中给k,? 处可以填 + 也可以填 - ,问最小满足条件的n。 e.g k = 12  - 1 + 2 + 3 + 4 + 5 + 6 - 7 = 12 with n = 7。 先给证明,令 S(n) = 1 + 2 + 3 + 4 + 5 + .... + n 暴搜n,搜出当 S(n) >=

uva 11044 Searching for Nessy(小学数学)

题意是给出一个n*m的格子,求出里面有多少个不重合的九宫格。 (rows / 3) * (columns / 3) K.o 代码: #include <stdio.h>int main(){int ncase;scanf("%d", &ncase);while (ncase--){int rows, columns;scanf("%d%d", &rows, &col

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略 1. 特权模式限制2. 宿主机资源隔离3. 用户和组管理4. 权限提升控制5. SELinux配置 💖The Begin💖点点关注,收藏不迷路💖 Kubernetes的PodSecurityPolicy(PSP)是一个关键的安全特性,它在Pod创建之前实施安全策略,确保P

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言

poj 2135 有流量限制的最小费用最大流

题意: 农场里有n块地,其中约翰的家在1号地,二n号地有个很大的仓库。 农场有M条道路(双向),道路i连接着ai号地和bi号地,长度为ci。 约翰希望按照从家里出发,经过若干块地后到达仓库,然后再返回家中的顺序带朋友参观。 如果要求往返不能经过同一条路两次,求参观路线总长度的最小值。 解析: 如果只考虑去或者回的情况,问题只不过是无向图中两点之间的最短路问题。 但是现在要去要回

poj 3422 有流量限制的最小费用流 反用求最大 + 拆点

题意: 给一个n*n(50 * 50) 的数字迷宫,从左上点开始走,走到右下点。 每次只能往右移一格,或者往下移一格。 每个格子,第一次到达时可以获得格子对应的数字作为奖励,再次到达则没有奖励。 问走k次这个迷宫,最大能获得多少奖励。 解析: 拆点,拿样例来说明: 3 2 1 2 3 0 2 1 1 4 2 3*3的数字迷宫,走两次最大能获得多少奖励。 将每个点拆成两个