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

📄 xorgenetic.java

📁 VHDL制作的ann的code
💻 JAVA
字号:
/*  * Encog Neural Network and Bot Library for Java  * http://www.heatonresearch.com/encog/  * http://code.google.com/p/encog-java/  *   * Copyright 2008, Heaton Research Inc., and individual contributors.  * See the copyright.txt in the distribution for a full listing of   * individual contributors.  *  * This is free software; you can redistribute it and/or modify it  * under the terms of the GNU Lesser General Public License as  * published by the Free Software Foundation; either version 2.1 of  * the License, or (at your option) any later version.  *  * This software is distributed in the hope that it will be useful,  * but WITHOUT ANY WARRANTY; without even the implied warranty of  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU  * Lesser General Public License for more details.  *  * You should have received a copy of the GNU Lesser General Public  * License along with this software; if not, write to the Free  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.  */package org.encog.examples.neural.xorgenetic;import org.encog.neural.data.NeuralData;import org.encog.neural.data.NeuralDataPair;import org.encog.neural.data.NeuralDataSet;import org.encog.neural.data.basic.BasicNeuralDataSet;import org.encog.neural.networks.BasicNetwork;import org.encog.neural.networks.layers.FeedforwardLayer;import org.encog.neural.networks.training.genetic.TrainingSetNeuralGeneticAlgorithm;/** * XOR-Genetic: This example solves the classic XOR operator neural * network problem.  However, it uses a genetic algorithm, rather than * backpropagation. *  * @author $Author$ * @version $Revision$ */public class XorGenetic {	public static double XOR_INPUT[][] = { { 0.0, 0.0 }, { 1.0, 0.0 },			{ 0.0, 1.0 }, { 1.0, 1.0 } };	public static double XOR_IDEAL[][] = { { 0.0 }, { 1.0 }, { 1.0 }, { 0.0 } };	public static void main(final String args[]) {		BasicNetwork network = new BasicNetwork();		network.addLayer(new FeedforwardLayer(2));		network.addLayer(new FeedforwardLayer(3));		network.addLayer(new FeedforwardLayer(1));		network.reset();		NeuralDataSet trainingSet = new BasicNeuralDataSet(XOR_INPUT, XOR_IDEAL);				// train the neural network		final TrainingSetNeuralGeneticAlgorithm train = new TrainingSetNeuralGeneticAlgorithm(				network, true, trainingSet, 5000, 0.1, 0.25);		int epoch = 1;		do {			train.iteration();			System.out					.println("Epoch #" + epoch + " Error:" + train.getError());			epoch++;		} while ((epoch < 5000) && (train.getError() > 0.001));		network = train.getNetwork();		// test the neural network		System.out.println("Neural Network Results:");		for(NeuralDataPair pair: trainingSet ) {			final NeuralData output = network.compute(pair.getInput());			System.out.println(pair.getInput().getData(0) + "," + pair.getInput().getData(1)					+ ", actual=" + output.getData(0) + ",ideal=" + pair.getIdeal().getData(0));		}	}}

⌨️ 快捷键说明

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