package baybay;
public class pro {
double[] x=new double[12];
double[] y=new double[12];
double[] e=new double[12];
double[] point=new double[1001];
double[] beta=new double[1001];
double[] alpha=new double[1001];
double[] sig=new double[1001];
double[] p=new double[1001];
public static void main(String[] args) {
pro t=new pro();
}
pro(){
int s;
for(s=1;s<11;s++){
x[s]=s;
y[s]=2*x[s]+5+Math.random()-0.5;
}
int de;
for(de=1;de<51;de++){
int tr=0;
int s1,s2,s3;
for(s1=1;s1<11;s1++){
for(s2=1;s2<11;s2++){
for(s3=1;s3<11;s3++){
tr=tr+1;
beta[tr]=1.5+0.1*s1;
alpha[tr]=4.5+0.1*s2;
sig[tr]=0.3+0.02*s3;
p[tr]=0.001;
}}}
for(tr=1;tr<1001;tr++){
double p1=p[tr];
for(s=1;s<11;s++){
double e1=y[s]-beta[tr]*x[s]-alpha[tr];
p1=p1*f(e1,0,sig[tr]);
}
point[tr]=p1;
}
double p1=0;
for(s=1;s<1001;s++){
p1=p1+point[s];
}
for(s=1;s<1001;s++){
p[s]=point[s]/p1;
}
}
for(s=1;s<1001;s++){
if(p[s]>0.05)System.out.println(alpha[s]+","+beta[s]+","+sig[s]);
}
}
double f(double x ,double mu,double sig){
double pi,f1,f2;
pi=Math.PI;
f2=Math.sqrt(2*pi*sig*sig);
f1=-(x-mu)*(x-mu)/(2*sig*sig);
return Math.exp(f1)/f2;
}
}
最終更新:2016年05月11日 01:06