| 
														
															@@ -55,12 +55,25 @@ public class MDO0039Service extends MDO0039BaseModel implements ExecProcessFlow 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		XIFileUtils.mkdir(LogService.BPATH+"/"+pro.getId()); 
														 | 
														
														 | 
														
															 		XIFileUtils.mkdir(LogService.BPATH+"/"+pro.getId()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		XIFileUtils.mkdir(LogService.BPATH+"/"+pro.getId()+"/in"); 
														 | 
														
														 | 
														
															 		XIFileUtils.mkdir(LogService.BPATH+"/"+pro.getId()+"/in"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		XIFileUtils.mkdir(LogService.BPATH+"/"+pro.getId()+"/out"); 
														 | 
														
														 | 
														
															 		XIFileUtils.mkdir(LogService.BPATH+"/"+pro.getId()+"/out"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-		//日志文件清空 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		File nsga2_history1 =new File(LogService.BPATH+"/"+pro.getId()+"/out/nsga2_history1.txt"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		if(!nsga2_history1.exists()){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+			nsga2_history1.createNewFile(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		File nsga2_history2 =new File(LogService.BPATH+"/"+pro.getId()+"/out/nsga2_history2.txt"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		if(!nsga2_history2.exists()){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+			nsga2_history2.createNewFile(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+				//日志文件清空 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		LogService.clearLog(pid); 
														 | 
														
														 | 
														
															 		LogService.clearLog(pid); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		//创建problem.xml 
														 | 
														
														 | 
														
															 		//创建problem.xml 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		TemplateGenerator.createProblemXml(pid); 
														 | 
														
														 | 
														
															 		TemplateGenerator.createProblemXml(pid); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		//创建run.py 
														 | 
														
														 | 
														
															 		//创建run.py 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		TemplateGenerator.createRunpy(pid); 
														 | 
														
														 | 
														
															 		TemplateGenerator.createRunpy(pid); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		run(pid,pro.getStype()); 
														 | 
														
														 | 
														
															 		run(pid,pro.getStype()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	} 
														 | 
														
														 | 
														
															 	} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -88,52 +101,61 @@ public class MDO0039Service extends MDO0039BaseModel implements ExecProcessFlow 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					String line =new String(frame.getPayload()); 
														 | 
														
														 | 
														
															 					String line =new String(frame.getPayload()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					LogService.addLog(pid,line); 
														 | 
														
														 | 
														
															 					LogService.addLog(pid,line); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					System.out.print(new String(frame.getPayload())); 
														 | 
														
														 | 
														
															 					System.out.print(new String(frame.getPayload())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//					//存储每步数据 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//					if("Forrester".equals(stype)||"Branin".equals(stype)||"Rastrigin".equals(stype) 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							||"Rosenbrock".equals(stype)||"G9".equals(stype) 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//					){ 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//						if(line.startsWith("[")){ 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							MdoProComval v=null; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							if(comvals.isEmpty()){ 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//								v= new MdoProComval(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//								comvals.add(v); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							if(flag[0]){//没有结束 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//								v=comvals.get(comvals.size()-1); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							}else{ 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//								v= new MdoProComval(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//								comvals.add(v); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							String[] valts = line.replace("[","").replace("]","").split(" "); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							valNSiz[0] = valts.length; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							List<String> valtsl = Arrays.asList(valts); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							vals[0].addAll(valtsl); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//						} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//						if(line.startsWith(" gen =")){ 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							String step = line.split("=")[1].trim(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							MdoProComval comval=comvals.get(comvals.size()-1);; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							comval.setId(UtilTools.getUUid()); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							comval.setPid(pid); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							comval.setStep(step); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							List<String> x_nL = new ArrayList<>(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							for (int i = 0; i < valNSiz[0]; i++) { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//								x_nL.add("x"+i); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							comval.setVars(x_nL.toString().replace("[","").replace("]","")); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							comval.setVals(vals[0].toString().replace("[","").replace("]","").replace(","," ")); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							comvalDao.insert(comval); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							vals[0] = new ArrayList<>(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							flag[0] =false; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-// 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							try { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//								LogService.addLog(pid, XiJsonUtil.objectToJson(comval)); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							} catch (JsonProcessingException e) { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//								e.printStackTrace(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//							} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//						} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-//					} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+//					saveLog(line); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					super.onNext(frame); 
														 | 
														
														 | 
														
															 					super.onNext(frame); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				} 
														 | 
														
														 | 
														
															 				} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+				/** 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+				 * 20250210 保存 日志  弃用 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+				 * @param line 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+				 */ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+				private void saveLog(String line) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+					//存储每步数据 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+					if("Forrester".equals(stype)||"Branin".equals(stype)||"Rastrigin".equals(stype) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							||"Rosenbrock".equals(stype)||"G9".equals(stype) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+					){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+						if(line.startsWith("[")){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							MdoProComval v=null; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							if(comvals.isEmpty()){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+								v= new MdoProComval(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+								comvals.add(v); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							if(flag[0]){//没有结束 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+								v=comvals.get(comvals.size()-1); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							}else{ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+								v= new MdoProComval(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+								comvals.add(v); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							String[] valts = line.replace("[","").replace("]","").split(" "); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							valNSiz[0] = valts.length; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							List<String> valtsl = Arrays.asList(valts); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							vals[0].addAll(valtsl); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+						} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+						if(line.startsWith(" gen =")){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							String step = line.split("=")[1].trim(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							MdoProComval comval=comvals.get(comvals.size()-1);; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							comval.setId(UtilTools.getUUid()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							comval.setPid(pid); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							comval.setStep(step); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							List<String> x_nL = new ArrayList<>(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							for (int i = 0; i < valNSiz[0]; i++) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+								x_nL.add("x"+i); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							comval.setVars(x_nL.toString().replace("[","").replace("]","")); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							comval.setVals(vals[0].toString().replace("[","").replace("]","").replace(","," ")); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							comvalDao.insert(comval); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							vals[0] = new ArrayList<>(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							flag[0] =false; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							try { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+								LogService.addLog(pid, XiJsonUtil.objectToJson(comval)); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							} catch (JsonProcessingException e) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+								e.printStackTrace(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+							} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+						} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+					} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+				} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				@Override 
														 | 
														
														 | 
														
															 				@Override 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 				public void onError(Throwable throwable) { 
														 | 
														
														 | 
														
															 				public void onError(Throwable throwable) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 					System.err.println("日志获取失败"); 
														 | 
														
														 | 
														
															 					System.err.println("日志获取失败"); 
														 |