⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rbfunction.java

📁 This program demonstrates some function approximation capabilities of a Radial Basis Function Networ
💻 JAVA
字号:
// Decompiled by JAD v1.5.4.3. Copyright 1997-98 Pavel Kouznetsov.// JAD Home Page:      http://web.unicom.com.cy/~kpd/jad.html// Decompiler options: packimports(3) // Source File Name:   RBFunction.java// Decompiled by S.Baehni in order to be compliant with Java1.2import java.applet.Applet;import java.awt.*;import java.awt.event.*;public class RBFunction extends Applet{    public void init()    {        net = new Network();        datadisp = new DataDisp(true, "Data Points", 500, 243);        centerdisp = new DataDisp(false, "Basis Functions", 500, 81);        options = new Panel();        options.setBackground(Color.white);        GridBagLayout gridbaglayout = new GridBagLayout();        GridBagConstraints gridbagconstraints = new GridBagConstraints();        options.setLayout(gridbaglayout);        gridbagconstraints.fill = 1;        Label label = new Label("       Number of Centers:");        Label label1 = new Label("      Standard Deviation:");        center_field = new TextField(Integer.toString(numcen), 3);        stddev_field = new TextField(Double.toString(stddev), 5);        gridbagconstraints.weightx = 1.0D;        gridbaglayout.setConstraints(label, gridbagconstraints);        options.add(label);        gridbaglayout.setConstraints(center_field, gridbagconstraints);        options.add(center_field);        gridbaglayout.setConstraints(center_field, gridbagconstraints);        options.add(label1);        gridbagconstraints.gridwidth = 0;        gridbaglayout.setConstraints(stddev_field, gridbagconstraints);        options.add(stddev_field);        buttons = new Panel();        buttons.setBackground(Color.white);        GridBagLayout gridbaglayout1 = new GridBagLayout();        GridBagConstraints gridbagconstraints1 = new GridBagConstraints();        buttons.setLayout(gridbaglayout1);        gridbagconstraints1.fill = 1;        clear_button = new Button("Reset");	ActionListener clearListener = new ActionListener() {		public void actionPerformed(ActionEvent e) {		    datadisp.reset();		}	};		clear_button.addActionListener(clearListener);        gridbagconstraints1.weightx = 1.0D;        gridbaglayout1.setConstraints(clear_button, gridbagconstraints1);        buttons.add(clear_button);        redraw_button = new Button("Redraw");	ActionListener redrawListener = new ActionListener() {		public void actionPerformed(ActionEvent e) {		    datadisp.redraw();		    drawbasisfns();		}	};	redraw_button.addActionListener(redrawListener);        gridbagconstraints1.weightx = 1.0D;        gridbaglayout1.setConstraints(redraw_button, gridbagconstraints1);        buttons.add(redraw_button);        go_button = new Button("Go!");	ActionListener goListener = new ActionListener() {		public void actionPerformed(ActionEvent e) {		    datadisp.redraw();		    drawbasisfns();		    double ad[] = new double[numcen];		    ad = net.trainnet(allcenters, datadisp.trainpoints);		    if(ad[0] != -1000D)			{			    double ad1[] = new double[100];			    for(int i = 0; i < ad1.length; i++)				ad1[i] = (10D / ad1.length) * i;			    			    net.plotoutput(ad, allcenters, datadisp, ad1);			}		}	};	go_button.addActionListener(goListener);        gridbagconstraints1.gridwidth = 0;        gridbagconstraints1.weightx = 1.0D;        gridbaglayout1.setConstraints(go_button, gridbagconstraints1);        buttons.add(go_button);        status = new Label("RBF Network Applet - (c) 1996 W. Jesse Hong, jesse@mit.edu.");        status.setBackground(Color.white);        GridBagLayout gridbaglayout2 = new GridBagLayout();        GridBagConstraints gridbagconstraints2 = new GridBagConstraints();        setLayout(gridbaglayout2);        gridbagconstraints2.fill = 1;        gridbagconstraints2.gridwidth = 0;        gridbagconstraints2.weightx = 1.0D;        gridbaglayout2.setConstraints(datadisp, gridbagconstraints2);        add(datadisp);        gridbaglayout2.setConstraints(centerdisp, gridbagconstraints2);        add(centerdisp);        gridbaglayout2.setConstraints(options, gridbagconstraints2);        add(options);        gridbaglayout2.setConstraints(buttons, gridbagconstraints2);        add(buttons);        gridbaglayout2.setConstraints(status, gridbagconstraints2);        add(status);        drawbasisfns();    }    public static void statusMesg(String s)    {        status.setText(s);    }      public void drawbasisfns()    {        centerdisp.redraw();        if(center_field.getText() != null)            try            {                numcen = Integer.valueOf(center_field.getText()).intValue();            }            catch(NumberFormatException ex)            {                numcen = 10;                center_field.setText(Integer.toString(numcen));            }        if(stddev_field.getText() != null)            try            {                stddev = Double.valueOf(stddev_field.getText()).doubleValue();            }            catch(NumberFormatException ex)            {                stddev = 0.5D;                stddev_field.setText(Double.toString(stddev));            }        double ad[] = new double[100];        for(int i = 0; i < ad.length; i++)            ad[i] = (10D / ad.length) * i;        allcenters = new GaussCenter[numcen];        double d = 10D / (2D * numcen);        for(int j = 0; j < numcen; j++)        {            allcenters[j] = new GaussCenter(d, stddev);            allcenters[j].plot(centerdisp, ad);            d += 10D / numcen;        }    }    public RBFunction()    {        numcen = 10;        stddev = 0.5D;    }    private DataDisp datadisp;    private DataDisp centerdisp;    private Panel options;    private TextField center_field;    private TextField stddev_field;    private Panel buttons;    private Button clear_button;    private Button redraw_button;    private Button go_button;    private static Label status;    public static final int WDTH = 500;    public static final int HGHT = 400;    public static final int FOOT = 75;    private static final int D_CENTERS = 10;    private static final double D_STDDEV = 0.5D;    private int numcen;    private double stddev;    private GaussCenter allcenters[];    private Network net;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -