@Override public void init(String prefix) { // initialize global arm model GlobalArmModel.initialize(prefix); // initialize static fields K = (double) GlobalArmModel.numberOfArms(); d = GlobalArmModel.getDValue(); // initialize counters n = new double[GlobalArmModel.numberOfArms()]; Arrays.fill(n, 0.0); sumN = 0.0; // model s = Arrays.copyOf(n, n.length); w = Arrays.copyOf(n, n.length); r = Arrays.copyOf(n, n.length); q = Arrays.copyOf(n, n.length); f = Arrays.copyOf(n, n.length); g = Arrays.copyOf(n, n.length); // parameter c = Configuration.getDouble(prefix + ".p2greedy.C"); }
ProtocolData(String prefix) { pid = CommonState.getPid(); lid = Configuration.getPid(prefix + "." + PAR_LINKABLE); tid = Configuration.getPid(prefix + "." + PAR_TRANSPORT); period = Configuration.getInt(prefix + "." + PAR_PERIOD); prob = Configuration.getDouble(prefix + "." + PAR_PROB); }
/** * Loads configuration. It verifies the constraints defined in {@link WireByMethod}. * * @param prefix the configuration prefix for this class */ public WireByMethod(String prefix) { super(prefix); // get the method try { final Class wire = Configuration.getClass( prefix + "." + PAR_CLASS, Class.forName("peersim.graph.GraphFactory")); method = WireByMethod.getMethod(wire, Configuration.getString(prefix + "." + PAR_METHOD, "wire")); } catch (Exception e) { throw new RuntimeException(e); } // set the constant args (those other than 0th) Class[] argt = method.getParameterTypes(); args = new Object[argt.length]; for (int i = 1; i < args.length; ++i) { if (argt[i] == int.class) args[i] = Configuration.getInt(prefix + "." + PAR_ARG + i); else if (argt[i] == long.class) args[i] = Configuration.getLong(prefix + "." + PAR_ARG + i); else if (argt[i] == double.class) args[i] = Configuration.getDouble(prefix + "." + PAR_ARG + i); else if (i == args.length - 1 && argt[i].isInstance(CommonState.r)) args[i] = CommonState.r; else { // we should neve get here throw new RuntimeException( "Unexpected error, please " + "report this problem to the peersim team"); } } }
public RenaterInitializer(String prefix) { pid = Configuration.getPid(prefix + "." + PAR_PROT); phid = FastConfig.getLinkable(pid); cpid = Configuration.getPid(prefix + "." + PAR_CHORD_PROT); nrDC = Configuration.getInt("NR_DC", 1); nrNodePerDC = Configuration.getInt("NR_NODE_PER_DC", 1); dc_file = (Configuration.getString(prefix + "." + PAR_DC_FILE, "nofilewiththisname")); distance = (Configuration.getDouble(prefix + "." + PAR_DC_DISTANCE, 0.01)); }
/** * Standard constructor that reads the configuration parameters. Invoked by the simulation engine. * * @param prefix the configuration prefix for this class */ public DynamicNetwork(String prefix) { add = Configuration.getDouble(prefix + "." + PAR_ADD); substitute = Configuration.contains(prefix + "." + PAR_SUBST); Object[] tmp = Configuration.getInstanceArray(prefix + "." + PAR_INIT); inits = new NodeInitializer[tmp.length]; for (int i = 0; i < tmp.length; ++i) { // System.out.println("Inits " + tmp[i]); inits[i] = (NodeInitializer) tmp[i]; } maxsize = Configuration.getInt(prefix + "." + PAR_MAX, Integer.MAX_VALUE); minsize = Configuration.getInt(prefix + "." + PAR_MIN, 0); }
@Override public boolean execute() { double alpha = Configuration.getDouble("ALPHA", -2.0); System.out.println("ALPHA set to " + alpha); System.out.println("\nSetting up renater nodes, positioning and gateways "); // initialize the gson parser List<String> lines = null; if (Files.exists(Paths.get(dc_file))) { lines = getDcCordsFromFile(); if (lines != null) nrDC = lines.size(); } KoalaJsonParser.intitialize(); NodeUtilities.initialize(); NodeUtilities.setNodePIDs(phid, pid, cpid); NodeUtilities.intializeDCCenters(lines); // if(Network.size() < nrDC) // nrDC = Network.size(); NodeUtilities.ACTUAL_NR_DC = Network.size(); // assigning nodes an id and setting their coordinates according to their data-center initializationMode = true; for (int i = 0; i < Network.size(); i++) { initialize(Network.get(i)); } initializationMode = false; // System.setErr(new PrintStream(new OutputStream() { // public void write(int b) { // //DO NOTHING // } // })); return false; }
public static void main(String[] args) throws Exception { String configName = args[0]; Configuration.setConfig(new ParsedProperties(configName)); // System.err.println("#Reading datasets from files"); File tFile = new File(Configuration.getString("trainingFile")); File eFile = new File(Configuration.getString("evaluationFile")); String dbReaderName = "gossipLearning.RecSysDataBaseReader"; seed = Configuration.getInt("SEED"); numOfClusters = Configuration.getInt("numOfClusters"); divErr = Configuration.getDouble("divErr"); numberOfRatings = Configuration.getDouble("numOfRatings"); numberOfAllUsers = Configuration.getDouble("numOfAllUsers"); classifierName = Configuration.getString("classifier", null); prefix = "model"; modelName = Configuration.getString(prefix, null); boolean isNormalize = Configuration.getBoolean("normalize"); int polyDegree = Configuration.getInt("polyDegree"); DataBaseReader dbReader = DataBaseReader.createDataBaseReader(dbReaderName, tFile, eFile); // System.err.println("#Preprocessing datasets"); // pre-processing database getNumberOfUsers = new double[dbReader.getTrainingSet().getNumberOfFeatures()]; getAverageRating = new double[dbReader.getTrainingSet().getNumberOfFeatures()]; getNumberOfLikeableUsers = new double[dbReader.getTrainingSet().getNumberOfFeatures()]; for (int i = 0; i < dbReader.getTrainingSet().size(); i++) { for (VectorEntry e : dbReader.getTrainingSet().getInstance(i)) { getNumberOfUsers[e.index]++; getAverageRating[e.index] += e.value; } } for (int i = 0; i < dbReader.getTrainingSet().getNumberOfFeatures(); i++) { getAverageRating[i] = getNumberOfUsers[i] == 0.0 ? 0.0 : getAverageRating[i] / getNumberOfUsers[i]; } for (int i = 0; i < dbReader.getTrainingSet().size(); i++) { for (VectorEntry e : dbReader.getTrainingSet().getInstance(i)) { if (e.value > getAverageRating[e.index]) { getNumberOfLikeableUsers[e.index]++; } } } // System.err.println("#Extracting features"); // feature extraction InstanceHolder trainingSet = new InstanceHolder((int) numberOfRatings, 11); for (int userID = 0; userID < dbReader.getTrainingSet().size(); userID++) { for (VectorEntry e : dbReader.getTrainingSet().getInstance(userID)) { int itemID = e.index; double label = e.value; double[] features = new double[11]; computeUserSpecificFeatureVectorPart( dbReader.getTrainingSet().getInstance(userID), features); computeItemSpecificFinalFeatureVector(itemID, features); SparseVector instance = new SparseVector(features); trainingSet.add(instance, label); } } InstanceHolder testSet = new InstanceHolder((int) numberOfRatings, 11); for (int userID = 0; userID < dbReader.getEvalSet().size(); userID++) { for (VectorEntry e : dbReader.getEvalSet().getInstance(userID)) { int itemID = e.index; double label = e.value; double[] features = new double[11]; computeUserSpecificFeatureVectorPart( dbReader.getTrainingSet().getInstance(userID), features); computeItemSpecificFinalFeatureVector(itemID, features); SparseVector instance = new SparseVector(features); testSet.add(instance, label); } } File tout = new File("tr.dat"); File eout = new File("ev.dat"); trainingSet.writeToFile(tout); testSet.writeToFile(eout); DataBaseReader dbr = DataBaseReader.createDataBaseReader("gossipLearning.DataBaseReader", tout, eout); if (polyDegree > 1) { // dbr.polynomize(polyDegree); // dbr.writeToFile(new File("bookcrossing_fn_" + polyDegree + ".train"), new // File("bookcrossing_fn_" + polyDegree + ".test")); // System.exit(0); } if (isNormalize) { dbr.standardize(); } if (classifierName != null) { weka(dbr.getTrainingSet(), dbr.getEvalSet()); // weka(trainingSet, testSet); } if (modelName != null) { golf(dbr.getTrainingSet(), dbr.getEvalSet()); // golf(trainingSet, testSet); } tout.deleteOnExit(); eout.deleteOnExit(); }