24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1366  |  回复: 14

feixiaolin

荣誉版主 (文坛精英)

优秀版主

引用回帖:
10楼: Originally posted by AMYFZHANG at 2014-01-05 21:58:49
是在没有权值之和等于1的限制之下进行的仿真吗?...

是的。
11楼2014-01-05 22:04:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

feixiaolin

荣誉版主 (文坛精英)

优秀版主

#include<stdio.h>
#include<math.h>

void main()
{
        int i, j, k;
        double w[200], kk[200], mean;
        double m1, m2, a, b;
       
        mean=0;
        for(i=0; i<200; i++)
        {
               
                j=rand();                  
            m1=(float)j/32767;   // 0<w<1
                   w=m1;
               
                k=rand();  
                m2=(float)k/300;
                kk=m2;
               
                mean+=w*kk;
        }

    a=0;
        for(i=0; i<200; i++)
                a+=fabs(kk-mean);
        a/=200;

    b=0;
        for(i=0; i<200; i++)
                for(j=0; j<200; j++)
                {
                        if((j<i)||(j>i))
                                b+=fabs(kk-kk[j]);
                    else
                                continue;
                }

        b/=199;

        printf("\n\n a=%f; b=%f; a-b=%f\n", a, b, a-b);  

}

[ Last edited by feixiaolin on 2014-1-5 at 22:15 ]

» 本帖已获得的红花(最新10朵)

12楼2014-01-05 22:13:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

AMYFZHANG

木虫 (小有名气)

送红花一朵
引用回帖:
12楼: Originally posted by feixiaolin at 2014-01-05 22:13:00
是的。...

多谢
13楼2014-01-05 22:15:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zywang1999

银虫 (小有名气)

xi为正数。我的反例中xi不在[0,1]中。
结论仍然不成立。取xi = i/100.(i=1,...,11), 取w1 = 0.99999, w2=w3=...=w11 = 1e-6.
假设同前。右边=3/100=0.03.
左边 = 54.999505/1100约等于0.05。
左边>右边
我是这么深爱你啊,我的中国
14楼2014-01-05 23:19:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zywang1999

银虫 (小有名气)

先看一个结论:
设x1<=x2<=...<=xn. p(x) = sum(|x-xi|)。则
p(x) = (2i-n)x + xn+x(n-1)+...+x(i+1)-xi-...-x1, xi<=x<=x(i+1)
若n为偶数,则p(x)的最小点x* 属于区间[xk, xk+1], k=n/2;
若n为奇数,则p(x)的最小点x* =xk, k=(n+1)/2。
上述结论对xi取任何值恒成立。

回头看你的问题:
X = sum(wi*xi) 属于区间(min(x1,...,xn), max(x1,...,xn)), 0<wi<1。
所以
sum(|X - xi|) >= sum(|x*-xi|)恒成立。昨天我的反例是右边选择了最小值点x*=x6 (n=11).
看了你的交流请求,把理解挂在网上,仅供参考。
我是这么深爱你啊,我的中国
15楼2014-01-06 09:09:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 AMYFZHANG 的主题更新
信息提示
请填处理意见