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

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

?? pssimulator.java

?? Reinforcement Learning
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
					mazeStatus = " [ "+myMaze.width+" X "+myMaze.height+" Maze, Wall Penalty:"+((Wall)myMaze.walls.get(0)).penalty +"] | ";					algorithmStatus = " Prioritized Sweeping --> Click Initialize";										sqSize = (int)Math.min(Math.floor((this.getSize().width-X-10)/myMaze.width),							 		  Math.floor((this.getSize().height-Y-10)/myMaze.height));										if(sqSize>200)                        sqSize=200;										sqSizeTextField.setText(""+sqSize);									} catch(Exception e) {					Utility.show(e.getMessage());				}				ps=null;			} 			repaint();		}				else if(evt.getActionCommand().equals("Initialize") && myMaze!=null) {			Utility.show("prioritized sweeping");						double pjog = Double.parseDouble(pjogTextField.getText());			int MaxBackUps = Integer.parseInt(jMaxBackUpsTextField.getText());			double epsilon = Double.parseDouble((jEpsilonTextField.getText()));			double tinyThreshold = Double.parseDouble((jEpsilonTextField.getText()));						ps = new PrioritizedSweeping(myMaze,pjog, epsilon,MaxBackUps,tinyThreshold);			algorithmStatus = " Prioritized Sweeping ";			repaint();		}		else if (evt.getActionCommand().equals("Update") && ps!=null) {		    ps.setProperty(PrioritizedSweeping.Properties.PJOG,pjogTextField.getText());		    ps.setProperty(PrioritizedSweeping.Properties.Epsilon,jEpsilonTextField.getText());		    ps.setProperty(PrioritizedSweeping.Properties.MaxBackups,jMaxBackUpsTextField.getText());		    ps.setProperty(PrioritizedSweeping.Properties.TinyThreshold,jTinyThresholdTextField.getText());		}				else if (evt.getActionCommand().equals("Episode")) {			Utility.show("Episode");			int delay = Integer.parseInt(jDelayTextField.getText());			if(ps!=null) {				while(!ps.step()) {				    if(Animate)				    {				        Utility.delay(delay);				        myUpdate(getGraphics());				    }				}				repaint();			}		}		else if(evt.getActionCommand().equals("Step")) {			Utility.show("step");			if(ps!=null)				if(ps.step()) {					jStatusLabel.setText("Goal Reached");				}			repaint();		}		else if (evt.getActionCommand().equals("Cycles")) {			Utility.show("Cycles");			int delay = Integer.parseInt(jDelayTextField.getText());			int numCycles = Integer.parseInt(jCyclesTextField.getText());			if(ps!=null) {			    for(int i=0; i<numCycles; i++)			    {					while(!ps.step()) {					    if(Animate)					    {					        Utility.delay(delay);					        myUpdate(getGraphics());					    }					}			    }				repaint();			}		}		else if(evt.getActionCommand().equals("Refresh")) {			Utility.show("Refresh");			repaint();		}		else if(evt.getSource().getClass().getName().equals("javax.swing.JTextField")){            repaint();        }		else if(evt.getSource().getClass().getName().equals("javax.swing.JCheckBox")){			JCheckBox jcb = (JCheckBox)evt.getSource();						if(jcb.getText().equals("Show Values"))				ShowValue = jcb.isSelected();						if(jcb.getText().equals("Show Policy"))				ShowPolicy = jcb.isSelected();						if(jcb.getText().equals("Animate"))				Animate = jcb.isSelected();						repaint();		}	}		public void paint(Graphics g)	{	    super.paint(g);		this.myUpdate(g);	}		public void myUpdate(Graphics g)	{		jSeparator1.setSize(4,jPanel.getBounds().height-2);		jStatusLabel.setText(mazeStatus+algorithmStatus);		showGrid(getGraphics());	}		public void showGrid(Graphics g)	{		sqSize = Integer.parseInt(sqSizeTextField.getText());				if(ps!=null) {			drawValues(g);			if(ShowPolicy)				drawPolicy(g);		}		if(myMaze!=null) {			drawMaze(g);			drawGoal(g);			drawWalls(g);		}		if(ps!=null)		    drawCurrPosition(g, ps.getCurrState());		if(ps!=null && ps.pQueue!=null)		{//			drawQueue(g);		}			}	/*	void drawQueue(Graphics g)	{		Vector pq = ps.pQueue.getQueue();		StateActionInfo sap;		g.setColor(Color.white);		int x,y;		double val;		for(int i=0;i<pq.size();i++)		{			sap = (StateActionInfo)pq.get(i);//			System.out.println("interesting state= "+sap.state.x+" "+sap.state.y);			x = sap.state.x*sqSize;			y = (myMaze.height - sap.state.y)*sqSize;			val = sap.priority;			g.drawString(df.format(val),x+X+5,y+Y+5);		}	}*/		void drawMaze(Graphics g)	{	//	g.setColor(new Color(200,200,250));	//	g.fillRect(X,Y,sqSize*myMaze.width,sqSize*myMaze.height);		g.setColor(Color.black);		for (int counter = 0 ; counter <= myMaze.width; counter++) {			g.drawLine(X+sqSize*counter, Y+0, X+sqSize*counter, Y+sqSize*myMaze.height);		}		for (int counter = 0 ; counter <= myMaze.height; counter++) {			g.drawLine(X+0,Y+sqSize*counter,X+sqSize*myMaze.width,Y+sqSize*counter);		}	}		void drawGoal(Graphics g)	{		Vector goals = myMaze.goals;		State s;		for (int i=0;i<goals.size();i++)		{			s = (State)goals.get(i);			GraphicsUtil.fillRect(g, X+s.x*sqSize+1, Y+(myMaze.height-1-s.y)*sqSize+1, sqSize-2, sqSize-2, GoldColor);		}	}		void drawWalls(Graphics g)	{		GraphicsUtil gr = new GraphicsUtil();		int aX, aY, bX, bY;	//start and end points of the wall				for (int i=0;i<myMaze.walls.size();i++)		{			Wall w = (Wall)myMaze.walls.get(i);			int nodeX = w.x;			int nodeY = w.y;			switch(w.dir)			{			case Wall.UP:				aX = nodeX*sqSize;				bX = (nodeX+1)*sqSize;				aY = (myMaze.height - nodeY - 1)*sqSize;				bY = (myMaze.height - nodeY - 1)*sqSize;				//Utility.show("up wall ax,ay,bx,by= "+aX+","+aY+","+bX+","+bY);				GraphicsUtil.drawLine(g,X+aX,Y+aY,X+bX,Y+bY,5);				break;			case Wall.DOWN:				aX = nodeX*sqSize;				bX = (nodeX+1)*sqSize;				aY = (myMaze.height - nodeY)*sqSize;				bY = (myMaze.height - nodeY)*sqSize;				GraphicsUtil.drawLine(g,X+aX,Y+aY,X+bX,Y+bY,5);				break;			case Wall.RIGHT:				aX = (nodeX+1)*sqSize;				bX = (nodeX+1)*sqSize;				aY = (myMaze.height-nodeY-1)*sqSize;				bY = (myMaze.height-nodeY)*sqSize;				GraphicsUtil.drawLine(g,X+aX,Y+aY,X+bX,Y+bY,5);				break;			case Wall.LEFT:				aX = (nodeX)*sqSize;				bX = (nodeX)*sqSize;				aY = (myMaze.height-nodeY)*sqSize;				bY = (myMaze.height-nodeY-1)*sqSize;				//Utility.show("left wall ax,ay,bx,by= "+aX+","+aY+","+bX+","+bY);				GraphicsUtil.drawLine(g,X+aX,Y+aY,X+bX,Y+bY,5);				break;			}		}	}		void drawCurrPosition(Graphics g, State s)	{		int centreX = sqSize*s.x + sqSize/2; 		int centreY = sqSize*(myMaze.height-1 - s.y) + sqSize/2;		int radius = sqSize/5;		Color c = Color.MAGENTA;		if(!ps.isBestAct)		    c = Color.YELLOW;		    		GraphicsUtil.fillCircle(g, X+centreX, Y+centreY, radius, c);		GraphicsUtil.drawCircle(g, X+centreX, Y+centreY, radius, 1, Color.black);				GraphicsUtil.drawCircle(g, X+centreX-radius/3, Y+centreY-radius/3, radius/6, 1, Color.black);		GraphicsUtil.drawCircle(g, X+centreX-radius/3, Y+centreY-radius/3, 1, 1, Color.black);				GraphicsUtil.drawCircle(g, X+centreX+radius/3, Y+centreY-radius/3, radius/6, 1, Color.black);		GraphicsUtil.drawCircle(g, X+centreX+radius/3, Y+centreY-radius/3, 1, 1, Color.black);				if(ps.receivedPenalty) {		    GraphicsUtil.drawArc(g,X+centreX-radius/2,Y+centreY+radius/3,radius,2*radius/3,0,180,Color.black);			//GraphicsUtil.fillArc(g,X+centreX-radius/2,Y+centreY+radius/3,radius,2*radius/3,0,180,Color.black);		}		else {		    GraphicsUtil.drawArc(g,X+centreX-radius/2,Y+centreY,radius,2*radius/3,0,-180,Color.black);			//GraphicsUtil.fillArc(g,X+centreX-radius/2,Y+centreY,radius,2*radius/3,0,-180,Color.white);		}	}	void drawPolicy(Graphics g)	{		//System.out.println("drawing policy");		int[][] p = ps.getPolicy();		int x1=0,x2=0,y1=0,y2=0;		g.setColor(Color.WHITE);		for(int i=0;i<p.length;i++) {			for (int j=0;j<p[i].length;j++) {				x1 = (i*sqSize)+(sqSize/2);				y1 = ((myMaze.height-1-j)*sqSize)+(sqSize/2);				switch (p[i][j]) {					case Action.UP:					    x2 = x1;					    y2 = ((myMaze.height-1-j))*sqSize;					    break;					case Action.LEFT:						x2 = i* sqSize;						y2 = y1;						break;					case Action.DOWN:						x2 = x1;						y2 = ((myMaze.height-1-j)*sqSize)+sqSize;						break;					case Action.RIGHT:						x2 = (i*sqSize) + sqSize;						y2 = y1;						break;					default:						continue;				}				g.drawLine(X+x1,Y+y1,X+x2,Y+y2);			}		}	}	void drawValues(Graphics g)	{	    ValueFunction valuefunc = ps.getValueFunction();        double[][] values = valuefunc.stateValue;        int max = 1+(int)Math.ceil(valuefunc.getMax());        		double[][][] qsa = ps.getQsa();		Vector backedUpStates = ps.getBackedUpStates();						for (int xval=0 ; xval <myMaze.width; xval++) {            for (int y=0; y < myMaze.height; y++) {                int yval = myMaze.height-1-y;                if (values[xval][y] >= 0) {                    int red = 155-Math.min((int)(255.0*(values[xval][y])/max),155);                    int green = 155-Math.min((int)(255.0*(values[xval][y])/max),155);                    int b = 255-Math.min((int)(255.0*(values[xval][y])/max),220);                                        g.setColor(new Color(red,green,b));                }                else                    g.setColor(GoldColor);                                g.fillRect(X+xval*sqSize+1,Y+yval*sqSize+1,sqSize-1,sqSize-1);                            }		}		if(!ShowValue)		    return;				g.setColor(Color.WHITE);		State temp;		for(int i=0;i<backedUpStates.size();i++)		{			temp = (State)backedUpStates.get(i);        	g.drawString("*",X+temp.x*sqSize+5,Y+(myMaze.height-1-temp.y)*sqSize+15);		}				for(int i=0;i<qsa.length;i++) {			for(int j=0;j<qsa[i].length;j++) {				g.drawString(df.format(qsa[i][j][0]), X+(i*sqSize)+(sqSize/2)-5, Y+((myMaze.height-j)*sqSize)-sqSize+15);				g.drawString(df.format(qsa[i][j][1]), X+(i*sqSize)+sqSize-20, Y+((myMaze.height-j)*sqSize)-(sqSize/2));				g.drawString(df.format(qsa[i][j][2]), X+(i*sqSize)+(sqSize/2)-5, Y+((myMaze.height-j)*sqSize)-5);				g.drawString(df.format(qsa[i][j][3]), X+(i*sqSize)+5, Y+((myMaze.height-j)*sqSize)-(sqSize/2));			}		}			}}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久欧美精品sm网站| 日日噜噜夜夜狠狠视频欧美人| 中文字幕综合网| 日韩av中文在线观看| 成人av网站在线| 91精品国产综合久久久久久久| 亚洲免费av在线| 天堂在线一区二区| 97精品久久久久中文字幕| 欧美一区二区三区电影| 一区二区三区中文字幕精品精品| 日本vs亚洲vs韩国一区三区二区| 91污片在线观看| 欧美精品一区男女天堂| 爽好多水快深点欧美视频| 91丨porny丨蝌蚪视频| 久久综合色天天久久综合图片| 亚洲自拍另类综合| 91在线视频官网| 欧美激情一区二区三区蜜桃视频| 蜜臀av一区二区| 欧美日韩国产综合久久| 亚洲婷婷综合色高清在线| 高清不卡在线观看av| 精品国产91亚洲一区二区三区婷婷| 亚洲第一成人在线| 欧美无乱码久久久免费午夜一区| 亚洲日本成人在线观看| 99re免费视频精品全部| 国产精品毛片久久久久久久| 丰满岳乱妇一区二区三区| 亚洲精品国产一区二区精华液| 成人app在线| 中文字幕在线一区| 97久久超碰精品国产| 自拍av一区二区三区| 91丨九色丨蝌蚪丨老版| 最新热久久免费视频| 91玉足脚交白嫩脚丫在线播放| 国产精品国产三级国产aⅴ入口| 成人午夜在线视频| 亚洲欧洲国产日韩| 色婷婷综合视频在线观看| 一区二区在线观看视频| 欧美日韩中文字幕精品| 日韩高清不卡一区| 日韩久久久精品| 国产黄色成人av| 国产精品伦理一区二区| 色婷婷av一区| 日韩和欧美一区二区三区| 欧美电影免费观看完整版| 精品一区二区在线看| 国产日产欧美一区二区三区| 欧美精品久久天天躁| 偷偷要91色婷婷| 欧美精品v国产精品v日韩精品 | 国产一区二区在线看| 精品国产伦一区二区三区免费| 国内不卡的二区三区中文字幕| 国产精品色噜噜| 欧美综合亚洲图片综合区| 天堂影院一区二区| 欧美激情一区二区| 欧美在线观看一区二区| 久久99久久精品| 国产精品久久久久久久久免费桃花| 欧美中文字幕一区二区三区 | 亚洲成在线观看| 2023国产精品视频| 一本一本大道香蕉久在线精品| 午夜成人免费电影| 亚洲综合色在线| 精品福利视频一区二区三区| 色综合中文综合网| 国产亚洲成av人在线观看导航| 91女人视频在线观看| 美女www一区二区| 亚洲丝袜制服诱惑| 精品日韩成人av| 91色.com| 韩国v欧美v亚洲v日本v| 专区另类欧美日韩| 精品国产欧美一区二区| 91久久一区二区| 国产黄色成人av| 日本vs亚洲vs韩国一区三区| 亚洲天堂网中文字| 久久先锋影音av| 欧美日韩国产影片| 99久久精品久久久久久清纯| 久久99久久久欧美国产| 亚洲午夜久久久| 国产精品色婷婷久久58| 久久免费视频色| 欧美福利电影网| 一本大道久久a久久精二百| 国产一区二区三区四区五区美女| 亚洲一区在线观看网站| 亚洲视频免费在线观看| 国产三区在线成人av| 3atv在线一区二区三区| 色综合久久久网| 成人激情图片网| 国产在线视视频有精品| 蜜臀久久99精品久久久久久9 | 中文无字幕一区二区三区| 欧美一区二区人人喊爽| 欧美日韩综合在线免费观看| 欧美在线一二三四区| 色婷婷亚洲综合| 99视频精品在线| 成人久久18免费网站麻豆| 国产一区啦啦啦在线观看| 男女性色大片免费观看一区二区| 亚洲v中文字幕| 婷婷中文字幕一区三区| 香蕉久久夜色精品国产使用方法| 亚洲午夜免费电影| 日韩黄色片在线观看| 日韩在线卡一卡二| 99re视频精品| 不卡在线视频中文字幕| av资源站一区| 色婷婷综合久久久中文一区二区| 色屁屁一区二区| 欧美三电影在线| 欧美一区二区在线不卡| 日韩欧美国产精品一区| 欧美精品一区二区三区高清aⅴ | 日本不卡视频在线| 日韩专区一卡二卡| 青青青伊人色综合久久| 国产综合色在线视频区| 成人午夜精品一区二区三区| 成人91在线观看| 欧美日韩中文国产| 26uuu精品一区二区| 国产精品久久久久影院| 亚洲一区二区三区在线看| 亚洲地区一二三色| 国产一区三区三区| 不卡视频一二三四| 欧美性生活久久| 精品免费视频.| 国产精品你懂的| 天天综合天天做天天综合| 国产一区二区免费看| 99re热视频精品| 日韩精品在线一区二区| 亚洲欧洲国产专区| 日韩成人精品在线观看| 国产福利一区二区三区| 在线亚洲免费视频| 久久这里只有精品视频网| 中文字幕亚洲成人| 日日夜夜免费精品| 成人av网站在线观看免费| 欧美日韩一区二区三区视频| 久久婷婷色综合| 一区二区三区在线观看网站| 美腿丝袜一区二区三区| 99久久99精品久久久久久| 欧美一区二区播放| 一区二区三区不卡视频在线观看| 日韩成人伦理电影在线观看| 成人h精品动漫一区二区三区| 精品视频在线免费看| 国产欧美一二三区| 秋霞影院一区二区| 色噜噜夜夜夜综合网| 久久精品夜夜夜夜久久| 欧美aaaaaa午夜精品| 色老汉av一区二区三区| 国产亚洲精品中文字幕| 青青国产91久久久久久| 在线视频欧美区| 国产精品美女www爽爽爽| 国产一区欧美日韩| 日韩欧美不卡在线观看视频| 亚洲一级在线观看| www.欧美日韩| 国产色91在线| 国产麻豆日韩欧美久久| 欧美一区二区三区四区在线观看| 亚洲综合精品久久| av激情亚洲男人天堂| 久久久91精品国产一区二区三区| 五月天亚洲婷婷| 欧美日韩专区在线| 亚洲国产综合人成综合网站| 91老师片黄在线观看| 中文字幕欧美区| 综合电影一区二区三区| 国产成a人无v码亚洲福利| 精品国产一区二区精华| 秋霞成人午夜伦在线观看| 91精品国产综合久久久久| 日韩av一区二区在线影视| 欧美日韩极品在线观看一区|