【数学建模】常用基本模型总结

article/2025/10/10 21:59:58

1. 线性规划(Linear Programming)

  • 运筹学的一个重要分支——数学规划。线性规划是在一组线性约束条件的限制下,求一线性目标函数最大或最小的问题。
  • 概念:可行解、最优解、可行域。
  • Matlab中求解线性规划的命令为如下,x返回决策向量的取值;fval返回目标函数的最优值;f为价值向量。
[x,fval] = linprog(f,A,b,Aeq,beq,lb,ub)
  • 很多看起来不是线性规划的问题,也可以通过变换转化为线性规划的问题来解决。
    比如对于以下数学规划问题:
    min ⁡ ∣ x 1 ∣ + ∣ x 2 ∣ + ⋯ + ∣ x n ∣ s.t.  A x ⩽ b ∘ \begin{array}{c} \min \left|x_{1}\right|+\left|x_{2}\right|+\cdots+\left|x_{n}\right| \\ \text { s.t. } \boldsymbol{A} \boldsymbol{x} \leqslant \boldsymbol{b}_{\circ} \end{array} minx1+x2++xn s.t. Axb
    只要注意到事实:
    对任意的 x i x_i xi,存在 u i , v i ≥ 0 u_i,v_i \ge 0 ui,vi0 满足 x i = u i − v i , ∣ x i ∣ = u i + v i x_{i}=u_{i}-v_{i},\left|x_{i}\right|=u_{i}+v_{i } xi=uivi,xi=ui+vi
    所以取 u i = x i + ∣ x i ∣ 2 , v i = ∣ x i ∣ − x i 2 u_{i}=\frac{x_{i}+\left|x_{i}\right|}{2}, v_{i}=\frac{\left|x_{i}\right|-x_{i}}{2} ui=2xi+xi,vi=2xixi,记 u = [ u 1 , ⋯ , u n ] T , v = [ v 1 , ⋯ , v n ] T \boldsymbol{u}=\left[u_{1}, \cdots, u_{n}\right]^{\mathrm{T}}, \boldsymbol{v}=\left[v_{1}, \cdots, v_{n}\right]^{\mathrm{T}} u=[u1,,un]T,v=[v1,,vn]T
    从而把模型改写成:
    min ⁡ ∑ i = 1 n ( u i + v i ) , s.t.  { [ A , − A ] [ u v ] ⩽ b , u , v ⩾ 0 。 \begin{array}{ll} \min & \sum_{i=1}^{n}\left(u_{i}+v_{i}\right), \\ \text { s.t. } \quad & \left\{\begin{array}{l} {[\boldsymbol{A},-\boldsymbol{A}]\left[\begin{array}{l} \boldsymbol{u} \\ \boldsymbol{v} \end{array}\right] \leqslant \boldsymbol{b},} \\ \boldsymbol{u}, \boldsymbol{v} \geqslant 0 。 \end{array}\right. \end{array} min s.t. i=1n(ui+vi), [A,A][uv]b,u,v0

投资的收益和风险(多目标规划模型):

  • 模型一:给定风险一个界限a,把多目标规划变成一个目标的线性规划;
  • 模型二:投资者希望总盈利至少达到水平k以上,固定盈利水平,极小化风险;
  • 模型三:投资者在权衡资产风险和预期收益两方面,希望选择一个令自己满意的投资组合。因此对风险、收益分别赋予权重 s ( 0 < s ≤ 1 ) s(0< s\le 1) s(0<s1) 1 − s 1-s 1s ,称为投资偏好系数。

2. 整数规划

  • 数学规划中的变量(部分或全部)限制为整数时,称为整数规划。
  • 整数线性规划模型大致可分为两类:
    (1)变量全限制为整数时,称为纯(完全)整数规划;
    (2)变量部分限制为整数时,称为混合整数规划。
  • 求解方法分类:
    (1)分枝定界法
    (2)割平面法
    (3)隐枚举法——求解”0-1“整数规划(包括过滤和分枝)
    (4)匈牙利法——解决指派问题
    (5)蒙特卡洛法——求解各种类型规划

0-1 型整数规划

  • 变量 x j x_j xj仅取值0或1。
  • 相互排斥的约束条件:如果有 m m m个互相排斥的约束条件,为了保证这 m m m个约束条件只有一个起作用,引入 m m m个 0-1 变量 y i y_i yi 和一个充分大的常数M。
  • 关于固定费用的问题(Fixed Cost Problem)
  • 指派问题的数学模型:分配n人去做n项工作,每人做且仅做一项工作。(可用匈牙利算法。拍卖算法等求解)

蒙特卡洛法(随机取样法)

  • 也称为计算机随机模拟方法。使用蒙特卡洛方法必须使用计算机生成相关分布的随机数。
  • 设计随机实验求解图形面积的近似值:在矩形区域产生服从均匀分布的随机点,统计随机点落在曲边三角形的频数。计算的Matlab程序如下:
x = unifrnd(0,12,[1,10000000]);
y = unifrnd(0,9,[1,10000000]);
pinshu = sum(y<x.^2&x<=3)+sum(y<12-x&x>=3);
area_appr=12*9*pinshu/10^7
  • 尽管整数规划由于限制变量为整数而增加了难度;然而由于整数解是有限个,为枚举法提供了方便。
  • 应用概率理论可以证明,在一定计算量的情况下,用蒙特卡洛法可以得出一个满意解。

非线性整数规划

  • 应用蒙特卡洛法去随机计算 1 0 6 10^6 106个点便可以找到满意解。
    max ⁡ z = x 1 2 + x 2 2 + 3 x 3 2 + 4 x 4 2 + 2 x 5 2 − 8 x 1 − 2 x 2 − 3 x 3 − x 4 − 2 x 5 , s.t.  { 0 ⩽ x i ⩽ 99 , i = 1 , ⋯ , 5 x 1 + x 2 + x 3 + x 4 + x 5 ⩽ 400 x 1 + 2 x 2 + 2 x 3 + x 4 + 6 x 5 ⩽ 800 2 x 1 + x 2 + 6 x 3 ⩽ 200 x 3 + x 4 + 5 x 5 ⩽ 200 \begin{array}{ll} \max z=x_{1}^{2}+x_{2}^{2}+3 x_{3}^{2}+4 x_{4}^{2}+2 x_{5}^{2}-8 x_{1}-2 x_{2}-3 x_{3}-x_{4}-2 x_{5}, \\ \text { s.t. }\left\{\begin{array}{l} 0 \leqslant x_{i} \leqslant 99, i=1, \cdots, 5 \\ x_{1}+x_{2}+x_{3}+x_{4}+x_{5} \leqslant 400 \\ x_{1}+2 x_{2}+2 x_{3}+x_{4}+6 x_{5} \leqslant 800 \\ 2 x_{1}+x_{2}+6 x_{3} \leqslant 200 \\ x_{3}+x_{4}+5 x_{5} \leqslant 200 \end{array}\right. \end{array} maxz=x12+x22+3x32+4x42+2x528x12x23x3x42x5, s.t.  0xi99,i=1,,5x1+x2+x3+x4+x5400x1+2x2+2x3+x4+6x58002x1+x2+6x3200x3+x4+5x5200
  • 首先编写M文件mente.m定义目标函数f和约束向量函数g,程序如下:
function [f,g]=mengte(x);
f = x(1)^2+x(2)^2+3*x(3)^2+4*x(4)^2+2*x(5)^2-8*x(1)-2*x(2)-3*x(3)-x(4)-2*x(5);
g = [sum(x)-400x(1)+2*x(2)+2*x(3)+x(4)+6*x(5)-8002*x(1)+x(2)+6*x(3)-200x(3)+x(4)+5*x(5)-200];
  • 编写如下Matlab程序求问题的解。
clc,clear
rand('state',sum(clock)); %初始化随机数发生器
p0=0;
tic %计时开始
for i=1:10^6x=randi([0, 99],1,5); %产生一行五列的区间[0.99]上的随机整数[f,g]=mengte(x);if all(g<=0)if p0<fx0=x;p0=f; %记录下当前较好的解endendend
x0,p0
toc %计时结束

整数线性规划的计算机求解

  • 整数规划问题的求解使用Lingo比较方便,使用Matlab求解时需把所有的决策变量化为一维决策向量。
  • Matlab求解混合整数线性规划的命令为:
[x,fval]=intlinprog(f,intcon,A,b,Aeq,beq,lb,ub)
  • 对应于如下数学模型:
    min ⁡ x f ⊤ x , s.t.  { x ( intcon) 为整数,  A ⋅ x ⩽ b , Aeq  ⋅ x = b e q l b ⩽ x ⩽ u b ∘ \begin{array}{ll} \min _{x} f^{\top} \boldsymbol{x},\\ \text { s.t. }\left\{\begin{array}{l} x(\text { intcon) 为整数, } \\ A \cdot x \leqslant b, \\ \text { Aeq } \cdot x=\mathrm{beq} \\ \mathrm{lb} \leqslant x \leqslant \mathrm{ub}_{\circ} \end{array}\right. \end{array} minxfx, s.t.  x( intcon) 为整数Axb, Aeq x=beqlbxub

3. 博弈模型

  • 当存在多个决策者,每个决策者有自己的决策变量和目标函数,并且一个决策者的决策变量以某种形式出现在另一个决策者的目标函数中时,决策者之间的决策行为相互影响。
  • 这种决策主体的决策行为发生直接相互作用的多人决策问题一般称为博弈或对策(Game)。
  • 基本假定时所有决策主体是完全理性的,每个决策主体都希望最优化自己的个人目标。
  • 分为合作博弈和非合作博弈;
  • 根据所有决策者的决策是同时做出的,还是按一定先后顺序做出的,非合作博弈可以分为静态博弈和动态博弈;
  • 根据决策者在决策时掌握的信息的多少,非合作博弈可以是完全信息博弈和不完全信息博弈。

进攻与撤退的抉择

  • 博弈参与者为两方(盟军和德军)
  • 博弈中盟军有3种使用其预备队的决策行动:强化缺口、原地待命、东进;德军有2种决策行动:向西进攻或向东撤退。
  • 博弈双方的目的都是要获得最后的胜利,不妨简单假定目的都是使战斗中己方获得的净胜场次(指胜利场次减去失败场次)尽可能多。
    在这里插入图片描述
  • 假设双方在决策时都知道以上信息,并且同时做出抉择,这种博弈称为完全信息静态博弈
  • 效用函数、赢得矩阵或支付矩阵
  • 这种具有完全竞争性质,即一方所得正式对手所失的博弈,一般称为零和博弈
  • 在博弈中双方都力求通过决策行动使己方的效用函数最大化。
模型建立

参与博弈的双方用 N = { 1 , 2 } N = \left \{ 1,2\right \} N={1,2} 表示,1为盟军,2为德军。盟军可能的决策行动记作 a 1 ∈ A 1 = 1 , 2 , 3 a_1\in A_1 = {1,2,3} a1A1=1,2,3,德军的决策行动记作 a 2 ∈ A 2 = 1 , 2 a_2\in A_2 = {1,2} a2A2=1,2

  • 对于不存在纯纳什均衡的博弈问题,可以考虑双方随机地采取行动。
  • 记盟军和德军的(混合)策略集分别为
    S 1 = { p = ( p 1 , p 2 , p 3 ) ∣ 0 ⩽ p i ⩽ 1 , ∑ i = 1 3 p i = 1 } , S 2 = { q = ( q 1 , q 2 ) ∣ 0 ⩽ q i ⩽ 1 , ∑ i = 1 2 q i = 1 } \begin{array}{c} S_{1}=\left\{p=\left(p_{1}, p_{2}, p_{3}\right) \mid 0 \leqslant p_{i} \leqslant 1, \sum_{i=1}^{3} p_{i}=1\right\}, \\ S_{2}=\left\{q=\left(q_{1}, q_{2}\right) \mid 0 \leqslant q_{i} \leqslant 1, \sum_{i=1}^{2} q_{i}=1\right\} \end{array} S1={p=(p1,p2,p3)0pi1,i=13pi=1},S2={q=(q1,q2)0qi1,i=12qi=1}
  • 在混合策略下双方的效用函数用期望效用定义,记作
    U 1 ( p , q ) = p M q T = ∑ i = 1 3 ∑ j = 1 2 p i m i j q j , U 2 ( p , q ) = − U 1 ( p , q ) U_{1}(\boldsymbol{p}, \boldsymbol{q})=\boldsymbol{p} M \boldsymbol{q}^{\mathrm{T}}=\sum_{i=1}^{3} \sum_{j=1}^{2} p_{i} m_{i j} q_{j}, U_{2}(\boldsymbol{p}, \boldsymbol{q})=-U_{1}(\boldsymbol{p}, \boldsymbol{q}) U1(p,q)=pMqT=i=13j=12pimijqj,U2(p,q)=U1(p,q)
  • 双方的纯策略是有限的,其纯策略下的效用可以用矩阵描述,且双方的效用之和为0,这样的博弈称为二人零和矩阵博弈
  • 通过占优性分析,可以降低问题的规模。

让报童订购更多的报纸

  • 将报童和报社的利益放到一起考虑,研究怎样通过双方的博弈,让报童订购更多的报纸。
  • 设报纸每份的订购价为 w w w,零售价为 p p p,未卖出的处理价为 v v v,期望销售量为:
    S ( Q ) = ∫ 0 Q x f ( x ) d x + ∫ Q ∞ Q f ( x ) d x = x F ( x ) ∣ 0 Q − ∫ 0 Q F ( x ) d x + Q ( 1 − F ( Q ) ) = Q − ∫ 0 Q F ( x ) d x \begin{aligned} S(Q) &=\int_{0}^{Q} x f(x) \mathrm{d} x+\int_{Q}^{\infty} Q f(x) \mathrm{d} x \\ &=\left.x F(x)\right|_{0} ^{Q}-\int_{0}^{Q} F(x) \mathrm{d} x+Q(1-F(Q))=Q-\int_{0}^{Q} F(x) \mathrm{d} x \end{aligned} S(Q)=0Qxf(x)dx+QQf(x)dx=xF(x)0Q0QF(x)dx+Q(1F(Q))=Q0QF(x)dx
    最优订货量如下式子:
    F ( Q r ) = p − w p − v F\left(Q_{r}\right)=\frac{p-w}{p-v} F(Qr)=pvpw
  • 报社和报童的决策可以通过如下的两阶段动态博弈模型来描述:第一阶段,由报社决定批发价 w w w,第二阶段,由报童决定订货量 Q Q Q.
  • 动态博弈一般通过反向归纳法求解。首先考虑第二个阶段的问题,得到报童的最优反应,再考虑阶段一,得到战略组合以达到子博弈完美均衡
  • 如果将报童和报社的利益放到一起考虑,得到 Q ∗ Q^* Q作为报童的最优订购量,寻求使报社和报童双方利益达到协调的途径。最常用的办法之一是通过谈判达成对双方具有约束力的协议。
价格折扣协议模型

4. 概率模型

  • 如果随机因素对研究对象的影响必须考虑,就应该建立随机性的数学模型。

传送系统的效率

在这里插入图片描述

  • 构造一个衡量传送系统效率的指标。
模型假设
  • 有n个工人,他们的生产是相互独立的,生产周期是常数,n个工作台均匀排列;
  • 生产已进入稳态,即每个工人生产出一件产品的时刻在一周期内是等可能的;
  • 在一周期内有m个钩子通过每一工作台上方,钩子均匀排列,到达第一个工作台上方的钩子都是空的;
模型建立
  • 将传送系统效率定义为一周期内带走的产品数与生产的全部产品数之比,记作 D D D.
  • 从钩子的角度考虑,若能对一周期内 m 只钩子求出每只钩子非空 (即挂上产品) 的概率 p,则带走的产品数 s = m p s=mp s=mp
  • 得到 p 的步骤如下:
    任一钩子被一名工人触到的概率是 1 m \frac{1}{m} m1
    由工人生产的独立性,任一钩子为空钩的概率是 ( 1 − 1 m ) n {\left ( 1-\frac{1}{m} \right ) }^n (1m1)n
    所以 p = 1 − ( 1 − 1 m ) n p=1-\left(1-\frac{1}{m}\right)^{n} p=1(1m1)n
  • 故传送系统效率指标为
    D = m p n = m n [ 1 − ( 1 − 1 m ) n ] D=\frac{m p}{n}=\frac{m}{n}\left[1-\left(1-\frac{1}{m}\right)^{n}\right] D=nmp=nm[1(1m1)n]
    此模型是在理想情况下得到的,模型的意义在于利用基本合理的假设将问题简化到能够建模的程度,并用很简单的方法得到结果。

报童的诀窍

  • 报纸每份的购进价为 b,零售价为 a,退回价为 c,为报童筹划一下,应如何确定每天购进报纸的数量,以获得最大的收入。
  • 每天报纸的需求量为 r 份的概率是 p ( r ) ( r = 0 , 1 , 2... ) p(r) (r=0,1,2...) p(r)(r=0,1,2...),以此建立关于购进量的优化模型
  • 优化模型的目标函数,不能是报童每天的收入,而应是报童每天收入的期望值,简称平均收入。记报童每天购进 n 份报纸的平均收入为 G ( n ) G(n) G(n),问题归结为在 f ( r ) , a , b , c f(r),a,b,c f(r),a,b,c已知时,求n使 G ( n ) G(n) G(n)最大
    G ( n ) = ∫ 0 n [ ( a − b ) r − ( b − c ) ( n − r ) ] p ( r ) d r + ∫ n ∞ ( a − b ) n p ( r ) d r G(n)=\int_{0}^{n}[(a-b) r-(b-c)(n-r)] p(r) \mathrm{d} r+\int_{n}^{\infty}(a-b) n p(r) \mathrm{d} r G(n)=0n[(ab)r(bc)(nr)]p(r)dr+n(ab)np(r)dr
    求导得到:
    d G d n = ( a − b ) n p ( n ) − ∫ 0 n ( b − c ) p ( r ) d r − ( a − b ) n p ( n ) + ∫ n ∞ ( a − b ) p ( r ) d r = − ( b − c ) ∫ 0 n p ( r ) d r + ( a − b ) ∫ n ∞ p ( r ) d r \begin{aligned} \frac{\mathrm{d} G}{\mathrm{~d} n} &=(a-b) n p(n)-\int_{0}^{n}(b-c) p(r) \mathrm{d} r-(a-b) n p(n)+\int_{n}^{\infty}(a-b) p(r) \mathrm{d} r \\ &=-(b-c) \int_{0}^{n} p(r) \mathrm{d} r+(a-b) \int_{n}^{\infty} p(r) \mathrm{d} r \end{aligned}  dndG=(ab)np(n)0n(bc)p(r)dr(ab)np(n)+n(ab)p(r)dr=(bc)0np(r)dr+(ab)np(r)dr
    d G d n = 0 \frac{\mathrm{d} G}{\mathrm{d} n}=0 dndG=0,得到
    ∫ 0 n p ( r ) d r ∫ n ∞ p ( r ) d r = a − b b − c \frac{\int_{0}^{n} p(r) d r}{\int_{n}^{\infty} p(r) d r}=\frac{a-b}{b-c} np(r)dr0np(r)dr=bcab
    在这里插入图片描述
  • P 1 P_1 P1是卖不完的概率(需求量小于购进量), P 2 P_2 P2是卖完的概率,故:
    P 1 P 2 = a − b b − c \frac{P_{1}}{P_{2}}=\frac{a-b}{b-c} P2P1=bcab
    表明,购进的份数 n n n应该使得卖不完与卖完的概率之比,恰好等于卖出一份赚的钱与退回一份赔的钱之比。

http://chatgpt.dhexx.cn/article/moEdKAMH.shtml

相关文章

数学建模常用的四大模型

目录 1. 评价模型 2. 优化模型 3. 分类模型 4. 预测模型 本文主要介绍数学建模的四大模型分类&#xff0c;分别是评价模型、优化模型、分类模型、预测模型。 关注公众号&#xff1a;数模乐园&#xff0c;回复“买”&#xff0c;获得更多数模教程 1. 评价模型 评价模型可以…

数学建模--30+种常用算法模型

全国大学生数学建模竞赛中&#xff0c;常见的算法模型有以下30种&#xff1a; 1.线性规划模型&#xff1a;用于寻找最优解的数学模型。 线性规划&#xff08;Linear Programming&#xff0c;简称 LP&#xff09;是一种运筹学方法&#xff0c;用于在一定的约束条件下&#xff…

数学建模竞赛常考四大模型总结【预测模型、分类模型、优化模型、评价模型】

目录 1. 预测模型1.1 神经网络预测1.2 灰色预测1.3 拟合、插值预测&#xff08;线性回归&#xff09;1.4 时间序列预测1.5 马尔科夫链预测1.6 微分方程预测1.7 Logistic 回归&#xff08;逻辑回归&#xff09;1.8 线性回归总结应用场景&#xff1a; 2. 分类模型2.1 贝叶斯分类2…

百大android开源代码汇总

第一部分 个性化控件(View) 主要介绍那些不错个性化的View&#xff0c;包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style等等。 、其他 一、Li…

[Construct 2] 使用9-patch图片制作按钮

背景 Construct 2是一款实现了不需要写代码就可以制作HTML 5小游戏的工具&#xff0c;有免费授权也有收费授权&#xff08;当然收费授权是买不起啦&#xff0c;跑&#xff09;。本文将介绍如何使用9-patch图片制作动态的按钮。 准备 制作之前需要准备好&#xff1a; 1. 按钮…

Ubuntu 22.04 上配置 LunarVim 浏览linux kernel代码

概述 微软的Visual Studio Code 无疑是目前最流行的代码IDE, 最丰富的插件,最容易上手,但缺点也是有的,比如还是有许多操作需要鼠标来完成,特别是使用laptop看代码,使用鼠标是很不方便的一件事,查看远程机器上的代码总没有ssh再去vim编辑来得方便. 之前使用基于vim的IDE exvi…

linux虚拟机向上滚动,能当主力,能入虚拟机,还能随时打包带走,Linux 就是这么强大...

原标题&#xff1a;能当主力&#xff0c;能入虚拟机&#xff0c;还能随时打包带走&#xff0c;Linux 就是这么强大 来源&#xff1a;zasdfgbnm zasdfgbnm.github.io/2017/06/29/能当主力&#xff0c;能入虚拟机&#xff0c;还能随时打包带走&#xff0c;Linux就是这么强大/ 这里…

Kubernetes(九)Deployment滚动更新

小知识点 kubectl get pods podA -n NAMEAPSCE -o yaml --export如果不带上--export 生成文件会有很多无用的内容备注&#xff1a; 可以换成其它系列的资源注意&#xff1a; 新版本已经废弃-->1.18.4有&#xff0c;1.19.3已经废弃了 一 Deployment理解 Deployment 是…

【腾讯Bugly干货分享】Android Patch 方案与持续交付

本文来自于腾讯bugly开发者社区&#xff0c;非经作者同意&#xff0c;请勿转载&#xff0c;原文地址&#xff1a;http://dev.qq.com/topic/57a31921ac3a1fb613dd40f3 Android 不仅系统版本众多&#xff0c;机型众多&#xff0c;而且各个市场都各有各的政策和审核速度&#xff…

160多个android开源代码汇总

第一部分 个性化控件(View) 主要介绍那些不错个性化的View&#xff0c;包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style等等。 、其他 一、Li…

chenyuntc/simple-faster-r-cnn的代码详细讲解

chenyuntc/simple-faster-r-cnn的代码详细讲解 datadata/voc_dataset.pydata/util.pydata/dataset.py micsconvet_caffe_pretraintrain_fast.py utilsarray_tool.py_config.pyeval_tool.pyvis_tool.py modelutilsnmsbuild_.py_nms_gpu_post_py.pynon_maximum_suppression.py_nm…

android开源代码

Android开源项目--分类汇总 转自&#xff1a;https://github.com/Trinea/android-open-project Android开源项目第一篇——个性化控件(View)篇 包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、其他 Android开源项目第二篇—…

Android Studio Flamingo | 2022.2.1 Patch 1(火烈鸟版本)

版本概况 Android Studio Flamingo | 2022.2.1 Patch 1 Build #AI-222.4459.24.2221.9971841, built on April 20, 2023 Runtime version: 17.0.60-b2043.56-9586694 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Windows 11 10.0 GC: G1 Young Generation, G1 Old…

代码审查 本地测试经验汇总

软件测试虽然辛苦&#xff0c;但是掌握了一定的技巧之后将使你事半功倍。 &#xff08;1&#xff09; 边界测试&#xff0c;测试用户输入框中的数值的最大数和最小数&#xff0c;以及为空时的情况。 &#xff08;2&#xff09; 非法测试&#xff0c;例如在输入数字的地方输入字…

【Unity】优化UGUI 滚动条ScrollRect(高效复用)

最近忙于性能优化&#xff0c;深切体会到二八法则真是指导高(tou)效(lan)工作的有力武器。这个礼拜花了几天解决了一个实际问题&#xff1a;UGUI的ScrollRect加载太多物体的时候&#xff0c;第一次弹出界面会非常卡顿&#xff0c;而且不在界面里的内容依然会参与绘制(毫无意义的…

vue 切换页面没有改变滚动条_Vue真是太好了 壹万多字的Vue知识点 超详细!

1⃣️、Vue和其他两大框架的区别 Angular 学习成本太高React 代码可读性差Vue 学习成本较低 很容易上手VUE官方: https://cn.vuejs.org/v2/guide/comparison.html ️2⃣️、Vue是什么 Vue是一套用于构建用户界面的渐进式框架 "前端框架"让程序员脱离自己操作DOM 专注…

前端低代码平台腾讯云微搭使用文档

腾讯云微搭 调研报告 之前作者有写过一个同类低代码平台调研报告 H5-Dooring 点击查看&#xff0c;这次我们去尝试使用腾讯系低代码平台&#xff0c;文中也会增加两者之间的差异对比和使用体验上的区别。 1. 简介 1.1 概述 腾讯云微搭低代码是一个高性能的低代码开发平台&a…

Android Patch方案与持续交付

Android 不仅系统版本众多&#xff0c;机型众多&#xff0c;而且各个市场都各有各的政策和审核速度&#xff0c;每次发布一个版本对于开发同学来讲都是一种漫长的煎熬。相比于 iOS 两三天就能达到 80% 的覆盖速度而言&#xff0c;Android 应用版本升级至少需要两周才能达到 80%…

element-ui el-table组件添加height属性后滚动条被顶下去一截

el-table 组件添加了height属性&#xff0c;数据行数超标&#xff0c;出现滚动条&#xff1b; 同时给table中的一列添加了 fixed“right” 这个属性&#xff0c;然后又在项目里自定义了滚动条样式&#xff0c;这个滚动条跟固定列会被挤下去&#xff0c;造成错位的bug。建议去掉…

已解决:element Table 滚动条首次进入不显示、偶尔切换页面后不显示,刷新当前页或改变窗口才显示

记录一下在项目中遇到的问题&#xff0c;困扰了几天最终解决了。 一、问题&#xff1a;element Table 滚动条首次进入不显示、偶尔切换页面后不显示&#xff0c;刷新当前页或改变窗口才显示。 1、首次进入的效果 可以看到滚动条并没有渲染出来&#xff0c;但是刷新页面或者改…