• 我的作业


    1.

    (1)

    A(保存为Afun1.m

     function f = Afun1(x) ;

     f=(x^2-1)*(x<=-5)+(x*cos(x))*(x>-5&x<5)+(x+5)*(x>=5);

    B  y=@(x) (x^2-1)*(x<=-5)+(x*cos(x))*(x>-5&x<5)+(x+5)*(x>=5);

    C  y=@(x) (x.^2-1).*(x<=-5)+(x.*cos(x)).*(x>-5&x<5)+(x+5).*(x>=5);

    (2)

    A

    clc,clear

    a=1;

    x=[-15:0.1:15];

    while a<=301

       z(a)=Afun1(x(a));

       a=a+1;

    end

    z

    B

    clc,clear

    y=@(x) (x^2-1)*(x<=-5)+(x*cos(x))*(x>-5&x<5)+(x+5)*(x>=5);

    a=1;

    x=[-15:0.1:15];

    while a<=301

       z(a)=y(x(a));

       a=a+1;

    end

    z

    C   x=[-15:0.1:15]; z=y(x);

    (3)  

    A:      fplot('Afun1',[-15,15]);

    BC:   fplot(y,[-15,15]);

     

    (4)

    在第二问代码的基础上

    ABplot(x,z);

    Cplot(x,z);

     

    2

    rand(‘state’,sum(clock));

    a=rand(3,5);

    b=rand(4,7);

    c=rand(6,9);

    ma=max(max(a));

    [ax,ay]=find(a==max(max(a)));

    mb=max(max(b));

    [bx,by]=find(b==max(max(b)));

    mc=max(max(c));

    [cx,cy]=find(c==max(max(c)));

     

    3

     

    y=@(x) sin(x).*x;

    fplot(y,[0,100]);

    %16个极小值点

    %估计位置

    clc,clear

    y=@(x) sin(x).*x;

    x0=[5,10,18,22,30,37,41,49,55,61,68,74,80,87,92,99];

    [x1,yval]=fminunc('y',5);

    第四题

    给出模型:

    (符号说明)

    (模型)

            

    给出代码:

    clc,clear

    c=[1,0,0,0,1,0,1,0;

        1,1,0,0,1,0,0,1;

        1,0,1,0,1,0,0,0;

        0,1,0,1,0,0,0,1;

        0,0,1,0,0,1,0,0;

        0,0,0,1,0,1,0,1;

    ];

    c=-c;

    c=c';

    %c'A

    b=ones(8,1);

    b=-b;

    f=ones(6,1);

    ub=ones(6,1);

    lb=zeros(6,1);

    intcon=1:6;

    [x,val]=intlinprog(f,intcon,c,b,[],[],lb,ub);

    运算结果:

    x =[1,0,0,1,1,0]’

    val = 3;

    【问题转化】

    分别给学生数量为34,29,42,21,56,18,71的点标号为1~7

    1~2,3; 2~3,4,5; 3~4; 4~5,6,7; 5~6;6~7的边标号为 1~11

    则第i边的权值为63,76,71,50,85,63,77,39,92,74,89

    可以证明 应当不能取到重顶点

    问题转化为在这11条边上任选两条,求在不取到重顶点的情况下,所取权值最大的两条边

    【符号说明】

    fi代表第i条边的权值

    Xi代表是否选i(是为1,否为0

    【建立模型】

    Max fi*Xi

     s.t     

           

           

    【代码如下】

    clc,clear

    f=[-63;-76;-71;-60;-85;-63;-77;-39;-98;-74;-89];intcon=11;

    a=[1 1 0 0 0 0 0 0 0 0 0;

       1 0 1 1 1 0 0 0 0 0 0;

       0 1 1 0 0 1 0 0 0 0 0;

       0 0 0 1 1 1 1 1 1 0 0;

       0 0 0 0 1 0 1 0 0 1 0;

       0 0 0 0 0 0 0 1 0 1 1;

       0 0 0 0 0 0 0 0 1 0 1];

    b=ones(7,1);

    aeq=ones(1,11);beq=2;

    lb=zeros(11,1);ub=ones(11,1);

    [x,fval]=intlinprog(f,intcon,a,b,aeq,beq,lb,ub)

    val=-fval

    【结果如下】

    LP:                Optimal objective value is -174.000000.

     

    x =[ 0  1  0  0  0  0  0  0  1  0  0]’

    fval =-174

    val =174

     

     

     

     

  • 相关阅读:
    Protobuf for Python测试保存和读取文件
    windows下使用pip安装python的第三方lxml库
    WIN10 CMD 启动虚拟WIFI
    关于 DataGridTextColumn的IsReadOnly
    wpf converter converterparameter 绑定多参数
    wpf 客户端 添加qq客服咨询
    错误信息:内存位置访问无效。 (Exception from HRESULT: 0x800703E6)
    acrgis导出成tiff图片,全是黑色
    webStrom访问只一个很简单的html文件的时候显示local host无法访问。。
    pandas 将excel一列拆分成多列重新保存
  • 原文地址:https://www.cnblogs.com/weiweiyi/p/5313073.html
Copyright © 2020-2023  润新知