亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tsp.java

?? 一個java的小程序,用SOM網絡解決的是TSP問題.問題的大小可以自由變化,隨機生成權值
?? JAVA
字號:
import java.applet.*;import java.util.*;import java.awt.*;import java.net.*;import java.io.*;public class TSP extends Applet implements Runnable {	public int	NCITY = 5;	public int	NGEONEURON;	public static final double	COUNTRY = 1.00;	public static final double	NEAR = 0.05;	  public static final Color bkC = new Color(0x000090); 	  public static final Color bk2C = new Color(0x000050); 	  public static final Color lnC = new Color(0xff0000); 	  public static final Color ln2C = new Color(0xcccc00); 	  public static final Color fgC = new Color(0xffffff); 		public Image   homeI,offscreen;  public int imagewidth ,imageheight;	public Thread  animator    = null;	public boolean please_stop = false;	Font mF = new Font("Courier", Font.BOLD, 12);	Font sF = new Font("Courier", Font.BOLD, 8);  public int counter;		public City city[];	public geoNeuron gn[];		public double r[][];		public double theta, phi, momentum;		public Scrollbar cscroll;    ///////////////////////////////////////////////////////////////////    //    //  Init section    //    ///////////////////////////////////////////////////////////////////		public void kohonenInit(){						theta = 0.5;    		phi   = 0.5;    		momentum = 0.995;			NCITY = cscroll.getValue()/10;			NGEONEURON = NCITY*3;			            city = new City[NCITY];      		for(int i = 0; i<NCITY; i++) city[i] = new City(Math.random()*COUNTRY, Math.random()*COUNTRY);            		double alpha = 0.0;            		gn = new geoNeuron[NGEONEURON];      		for(int i = 0; i<NGEONEURON; i++){        		gn[i] = new geoNeuron(0.5+0.5*Math.cos(alpha),0.5+0.5*Math.sin(alpha));        		alpha += Math.PI *2.0 / (double)(NGEONEURON);      		}           		r = new double[NGEONEURON][NGEONEURON];            		makeR(theta);        			counter = 0;				}    ///////////////////////////////////////////////////////////////////    //    //  Problem section    //    ///////////////////////////////////////////////////////////////////    //計算鄰域關系	public void makeR(double th){     for(int i=0; i<NGEONEURON; i++){      	r[i][i]= 1.0;      	for(int j=i+1; j<NGEONEURON; j++){      		r[i][j] = Math.exp( -1.0 * ( gn[i].dist(gn[j])*gn[i].dist(gn[j]) )/(2.0*th*th));      		r[j][i] = r[i][j];      	}      }	}    // The body of the animator thread.    public void run() {    	int idx,j;    	double x1,x2,mindist;    	int count = 0;        while(!please_stop) {            counter++;                        // CHOSE A RANDOM PATTERN            idx = (int)(Math.random()*NCITY);            x1 = city[idx].x+(Math.random()*NEAR)-NEAR/2;            x2 = city[idx].y+(Math.random()*NEAR)-NEAR/2;            city[idx].choose++;                       // SEARCH FOR MINIMAL            mindist = 100000.0;            j = -1;            for(int i=0; i<NGEONEURON;i++){            	double d = (x1 - gn[i].wx)*(x1 - gn[i].wx) + (x2 - gn[i].wy)*(x2 - gn[i].wy);            	if(d < mindist){            		mindist = d;            		j = i;            	}            }                                    gn[j].update++;                                 // UPDATE WEIGHTS            for(int i=0; i<NGEONEURON;i++){            	gn[i].wx += (phi * r[i][j] * (x1 - gn[i].wx));            	gn[i].wy += (phi * r[i][j] * (x2 - gn[i].wy));            }                        	                          // DECREASE LEARNING PARAMETERS            phi *= momentum;            theta *= momentum;                        // RE-COMPUTE r MATRIX      		makeR(theta);       		         		// PLOT RESULT EVERY 10 SESSIONS       		count = (count++)%10;       		if(count==0){				paint(this.getGraphics());            	try {Thread.sleep(10);}             	catch (InterruptedException e){};            }        }        animator = null;    }        ///////////////////////////////////////////////////////////////////    //    //  Functional section    //    ///////////////////////////////////////////////////////////////////        public void init() {        	cscroll = new Scrollbar(Scrollbar.HORIZONTAL,NCITY*10, 10, 20, 2000);    	cscroll.setLineIncrement(10);    	cscroll.setPageIncrement(10);    	add(cscroll);    	    	kohonenInit();	    }    private int toXReal(double val){int w = this.size().width;return (int)(val *((double)w/2.0-50.0) / COUNTRY +25.0);}    private int toYReal(double val){int h = this.size().height;return (int)(val *((double)h-50.0) / COUNTRY +25.0);}           public void paintLeft(Graphics g) {    	Dimension size = this.size();		int w = size.width, h = size.height;								g.setFont(mF);								// CLEAR ALL        g.setColor(bkC);        g.fillRect(0, 0, w, h);        // DRAW GRID        g.setColor(bk2C);        for(double i=0; i<=COUNTRY; i+=(COUNTRY/20.0)){        	g.drawLine(toXReal(0.0),toYReal(i),toXReal(COUNTRY),toYReal(i));        	g.drawLine(toXReal(i),toYReal(0.0),toXReal(i),toYReal(COUNTRY));        }                //DRAW PATH        g.setColor(lnC);        for(int i=0; i<NGEONEURON; i++){        	g.drawLine( toXReal(gn[i].wx),toYReal(gn[i].wy),        	  toXReal(gn[(i+1)%NGEONEURON].wx),toYReal(gn[(i+1)%NGEONEURON].wy) );        	//g.drawString(""+i+"-"+(gn[i].update*100/counter)+"%",toXReal(gn[i].wx),toYReal(gn[i].wy));        }        g.setColor(fgC);                // DRAW CITYS        for(int i=0; i<NCITY; i++){        	g.drawOval( toXReal(city[i].x)-4, toYReal(city[i].y)-4,8,8);        	//g.drawString(""+i+"-"+(city[i].choose*100/counter)+"%",toXReal(city[i].x),toYReal(city[i].y)+8);        }  	}        public void paint(Graphics g) {    	Dimension size = this.size();		int w = size.width, h = size.height;								this.setBackground(bkC);		if ((offscreen == null) || ((imagewidth != w) || (imageheight != h))) 		{        	offscreen = this.createImage(w, h);        	imagewidth = w;        	imageheight = h;        }								Rectangle clip = new Rectangle(toXReal(0),toYReal(0),toXReal(COUNTRY),toYReal(COUNTRY));														Graphics goff = offscreen.getGraphics();		goff.clipRect(clip.x, clip.y, clip.width, clip.height);        Graphics g1 = this.getGraphics();		g1.clipRect(clip.x, clip.y, clip.width, clip.height);						        paintLeft(goff);        g1.drawImage(offscreen, 0, 0, this);                    clip = null;        goff = null;        g1 = null;        System.gc();                    // CLEAR ALL        g.setColor(bkC);        g.fillRect(w/2+30,0,w/2+130, 20);        g.setColor(fgC);        g.drawString("# of city:"+cscroll.getValue()/10,w/2+30,20);    }     // Start the animation    public void start() {         animator = new Thread(this);                animator.start();            }    // Stop it.    public void stop() {         if (animator != null) animator.stop();        animator = null;    }        // Stop and start animating on mouse clicks.    // if running, stop it.  Otherwise, start it.    public boolean mouseDown(Event e, int x, int y) {      if (animator != null){      	please_stop = true;      }      else{       	please_stop = false; 		animator = new Thread(this);		kohonenInit();        animator.start();      }       return true;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲gay无套男同| 欧美最猛性xxxxx直播| 亚洲一区二区三区在线播放| 国产亚洲精品福利| 精品国产91亚洲一区二区三区婷婷| 一本一道综合狠狠老| 91色九色蝌蚪| 91国产免费看| 欧美日韩精品免费观看视频| 欧美日韩一区二区三区高清 | 一区二区在线电影| 国产精品久久久久影院色老大| 久久久99精品免费观看| 久久精品夜色噜噜亚洲a∨| 国产三级欧美三级日产三级99| 欧美va亚洲va国产综合| 久久综合九色欧美综合狠狠| 中文字幕精品在线不卡| 亚洲欧美日韩国产综合在线 | 欧美一区二区视频观看视频| 337p亚洲精品色噜噜| 欧美一区二区黄| 国产视频一区二区在线| 国产精品久久久久久久久动漫| 亚洲日本欧美天堂| 日韩精品一级二级 | 亚洲电影视频在线| 欧美aaa在线| 成熟亚洲日本毛茸茸凸凹| 成人av免费在线观看| 在线免费亚洲电影| 欧美大肚乱孕交hd孕妇| 中文乱码免费一区二区| 亚洲一二三四久久| 麻豆一区二区三| a级高清视频欧美日韩| 4438x亚洲最大成人网| 精品国产乱码久久久久久图片| 日韩免费视频线观看| 中文字幕色av一区二区三区| 亚洲国产精品久久一线不卡| 国产一区二区影院| 欧美私模裸体表演在线观看| 久久精子c满五个校花| 亚洲不卡av一区二区三区| 国产美女主播视频一区| 欧美视频完全免费看| 韩国欧美国产一区| 538prom精品视频线放| 国产日韩欧美不卡| 亚洲777理论| av激情综合网| 久久久久久电影| 午夜免费欧美电影| 色综合天天狠狠| 久久久精品欧美丰满| 亚洲国产精品视频| 色综合久久中文综合久久97| 国产日本欧美一区二区| 麻豆精品视频在线观看视频| 欧美视频完全免费看| 亚洲欧美视频在线观看| 国产成人av一区| 欧美精品一区二区蜜臀亚洲| 性欧美疯狂xxxxbbbb| 色视频一区二区| 亚洲人吸女人奶水| 99精品视频在线免费观看| 久久久www成人免费无遮挡大片| 日本大胆欧美人术艺术动态| 欧美日韩二区三区| 一区二区在线观看免费| 一本色道久久综合亚洲91| 国产精品传媒视频| eeuss鲁片一区二区三区| 欧美国产激情一区二区三区蜜月 | 欧美tk—视频vk| 视频一区视频二区中文字幕| 在线视频一区二区三| 中文字幕成人av| 91视频一区二区| 亚洲欧美一区二区三区极速播放| 成人高清视频在线| 亚洲人精品午夜| 欧美日韩一级黄| 日韩高清不卡一区二区| 欧美成人一区二区三区在线观看 | 成人精品一区二区三区四区| 欧美极品aⅴ影院| 国产91在线看| 国产精品久久久久久久久免费相片| 成人妖精视频yjsp地址| 国产精品福利av| 在线免费观看一区| 奇米影视一区二区三区小说| 欧美精品一区二区久久久| 国产精品77777| 1024成人网| 欧美日韩午夜在线视频| 久久成人久久爱| 国产视频911| 欧美亚洲综合网| 看片网站欧美日韩| 国产在线一区二区| 国产精品不卡一区二区三区| 国产精品嫩草影院av蜜臀| 99热这里都是精品| 亚洲色图在线播放| 3d成人动漫网站| 高清不卡一二三区| 亚洲一级不卡视频| 久久精品视频免费| 欧美日韩在线三级| 国产精品99精品久久免费| 亚洲资源中文字幕| 国产午夜精品在线观看| 在线观看一区二区视频| 久草热8精品视频在线观看| 国产精品久久免费看| 欧美一区二区三区视频免费播放| 极品少妇xxxx偷拍精品少妇| 亚洲欧美日韩中文播放 | 欧洲精品一区二区三区在线观看| 日韩黄色免费网站| 1区2区3区国产精品| 精品免费日韩av| 欧美日韩精品电影| 国产91精品精华液一区二区三区| 亚洲高清三级视频| 国产精品美女久久久久久| 欧美一级片在线看| 欧美伊人久久久久久久久影院| 国产精品香蕉一区二区三区| 免费的成人av| 丝袜美腿亚洲色图| 亚洲影院在线观看| 国产精品国产三级国产aⅴ中文| 日韩美女在线视频| 欧美日韩一区二区在线观看| 91视视频在线观看入口直接观看www| 极品少妇一区二区| 麻豆一区二区三| 日本美女一区二区| 亚洲国产视频在线| 亚洲精品免费在线| ㊣最新国产の精品bt伙计久久| 欧美精品一区二区三区高清aⅴ | 天堂va蜜桃一区二区三区漫画版| 亚洲男同性恋视频| 亚洲视频综合在线| 国产精品精品国产色婷婷| 国产日本欧美一区二区| 久久午夜羞羞影院免费观看| 日韩欧美美女一区二区三区| 欧美一区二区在线观看| 欧美日韩成人综合天天影院| 欧美色综合网站| 欧美日韩在线三区| 欧美日本国产视频| 91精品欧美久久久久久动漫 | 亚洲日穴在线视频| 亚洲人成在线观看一区二区| 中文字幕一区视频| 亚洲欧美偷拍另类a∨色屁股| 日韩美女久久久| 亚洲高清视频在线| 日本不卡高清视频| 久草在线在线精品观看| 久久99久久精品| 懂色av一区二区三区蜜臀| k8久久久一区二区三区| 欧洲生活片亚洲生活在线观看| 欧美性生活影院| 欧美一级搡bbbb搡bbbb| 26uuu久久天堂性欧美| 欧美国产精品中文字幕| 一区二区三区四区五区视频在线观看| 亚洲一区成人在线| 国内偷窥港台综合视频在线播放| 国产成人在线免费| 97国产一区二区| 欧美高清视频不卡网| 欧美mv日韩mv国产| 国产精品亲子伦对白| 亚洲国产精品一区二区久久恐怖片| 日韩和欧美的一区| 成人av影视在线观看| 欧美色网站导航| 久久夜色精品一区| 一区二区三区四区高清精品免费观看 | 久久精品国产久精国产| 成人免费看黄yyy456| 欧美三级乱人伦电影| 2014亚洲片线观看视频免费| 亚洲精品视频在线观看免费| 免费人成精品欧美精品| 91在线观看视频| 久久亚洲一级片| 亚洲国产精品久久一线不卡| 成人黄色片在线观看|