1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
| package launch;
import java.io.RandomAccessFile;
import java.util.Iterator;
import java.util.TreeMap;
import java.util.Vector;
public class GenerateExperimentations {
public GenerateExperimentations() {
}
public static void createFiles() {
RandomAccessFile f, fa, fb, fc, fstats, fd, fe, ff, fg, fh, fi;
int[] popInit = { 200 };
float[] levelSalience = { 0.1F, 0.2F, 0.3F, 0.4F, 0.5F, 0.6F, 0.7F, 0.8F, 0.9F, 1.0F };
try {
// MembersObserver a = new SimpleObserver("./events.txt");
// observer qui ecrit dans un fichier ce que chaque membre fait
// Member.addMembersObserver(a);
f = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_LISTE_nbMessForThemes.txt", "rw");
f.writeBytes("\r\n\r\npopInit\tlevelSalience\tnbIter\tnbMessTotal\tnbMessInit\tnbMessRep\r\n\r\n");
fa = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_LISTE_nbMessForThemesAndThreads.txt", "rw");
fb = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_LISTE_nbThreadsForThemes.txt", "rw");
fc = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_LISTE_messAndLevelKforThemesAndThreads.txt", "rw");
fd = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_MB_evolLevelKforThemes.txt", "rw");
fe = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_LISTE_messAndAuthorsForThemesAndThreads.txt", "rw");
ff = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_MB_nbMessForThemes.txt", "rw");
fg = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_LISTE_moyLevelKforThemes.txt", "rw");
fh = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_MB_evolLevelRepKforThemes(mbEvalue).txt", "rw");
fi = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_MB_evolLevelRepKforThemes(mbEstEvalue).txt", "rw");
fstats = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_LISTE_nbThreadsWithNbMessForThemes.txt", "rw");
Member.compteur = 0;
for (int j = 0; j < popInit.length; j++) {
for (int l = 0; l < levelSalience.length; l++) {
for (int i = 0; i < 1; i++) {
Member.compteur = 0;
SimVirtCom svc = new SimVirtCom(popInit[j],levelSalience[l]);
ObservationSimu obsSimu = svc.getObsSimu();
System.out.println();
System.out.println("** OBSERVATION SIMU **");
System.out.println();
f.writeBytes(obsSimu.popInitLevelSalience(popInit[j], levelSalience[l]));
f.writeBytes(obsSimu.getListeNbMessThemes());
System.out.println("f fin");
fa.writeBytes(obsSimu.getListeNbMessForThemesAndThreads(popInit[j], levelSalience[l]));
System.out.println("fa fin");
fb.writeBytes(obsSimu.getListeNbThreadsForThemes(popInit[j], levelSalience[l]));
System.out.println("fb fin");
fc.writeBytes(obsSimu.getListeMessAndLevelKForThemesAndThreads(popInit[j], levelSalience[l]));
System.out.println("fc fin");
fd.writeBytes(obsSimu.getMemberEvolLevelKforThemes(popInit[j], levelSalience[l]));
System.out.println("fd fin");
fe.writeBytes(obsSimu.getListeMessAndAuthorForThemesAndThreads(popInit[j], levelSalience[l]));
System.out.println("fe fin");
ff.writeBytes(obsSimu.getMemberNbMessForThemes(popInit[j], levelSalience[l]));
System.out.println("ff fin");
fg.writeBytes(obsSimu.getListeMoyLevelKForThemes(popInit[j], levelSalience[l]));
System.out.println("fg fin");
fh.writeBytes(obsSimu.getMemberEvolLevelRepKforThemes1(popInit[j], levelSalience[l]));
System.out.println("fh fin");
fi.writeBytes(obsSimu.getMemberEvolLevelRepKforThemes2(popInit[j], levelSalience[l]));
System.out.println("fi fin");
}
}
}
f.close();
fa.close();
fb.close();
fc.close();
fd.close();
fe.close();
ff.close();
fg.close();
fh.close();
fi.close();
// ce qui sera consigne dans le fichier fstats de GenerateExperimentations
// Nombre de threads ayant 2 messages, 3 messages...
String ligne;
String[] splits;
Integer nb = new Integer(0);
Vector listeLevelS = new Vector();
RandomAccessFile fa2 = new RandomAccessFile("/Documents and Settings/emie/Mes documents/socRepK2" + "_LISTE_nbMessForThemesAndThreads.txt.txt", "rw");
while ((ligne = fa2.readLine()) != null) {
splits = ligne.split("\t");
if (splits.length == 5) {
try {
Integer.parseInt(splits[3]);
nb = new Integer(Integer.parseInt(splits[4]));
TreeMap statsLevelS=(TreeMap) listeLevelS.lastElement();
if (statsLevelS.containsKey(nb)){
Integer value = (Integer) statsLevelS.get(nb);
value=new Integer(value.intValue() + 1);
statsLevelS.put(nb, value);
}
else {
statsLevelS.put(nb, new Integer(1));
}
} catch (NumberFormatException e) {
listeLevelS.add(new TreeMap());
}
}
}
int indexSalience=0;
for (int b = 0; b < listeLevelS.size(); b++) {
TreeMap statsLevelS = (TreeMap) listeLevelS.get(b);
fstats.writeBytes("\nlevelSalience="+levelSalience[indexSalience]+"\n");
Iterator it = statsLevelS.keySet().iterator();
while (it.hasNext()) {
Integer tmp1 = (Integer) it.next();
fstats.writeBytes(tmp1+" messages"+ " Nb="+statsLevelS.get(tmp1)+"\n");
}
indexSalience++;
}
fstats.close();
System.out.println("fstats fin");
} catch (Exception e) {
System.err.println("error " + e.getMessage());
e.printStackTrace();
}
}
public static void main(String[] args) {
createFiles();
Runtime runtime = Runtime.getRuntime();
System.out.print( "used : " + ( runtime.totalMemory()-runtime.freeMemory()));
System.out.print( " committed : " + runtime.totalMemory());
System.out.println( " max : " + runtime.maxMemory());
System.out.println("FIN");
}
} |
Partager