def run(self):
        r = Runner.DynamicRunner(self.net, self.runFile)
        i = 0

        #start simulation and log simTime
        startTime = time.time()
        r.createRandomTrips(self.pop)
        rc = RouteChanger.RouteChanger()
        rc.getFile()
        rc.writeFile()
        r.runNoGui()  #   r.runNoGui()
        simTime = time.time() - startTime

        #Analyse for traffic density fitness
        densityFitness = getFitness.main()

        #Create FileEditor object
        f = FileEditor.FileEditor(simTime, densityFitness)
        f.getOutput()
        f.getTimeStamps()
        #f.setBreakpoints()
        #f.writeFile()

        if f.getTeleports() > 0:

            fitness = round((densityFitness / f.getTeleports()), 2)
            print("Fitness: " + str(fitness))
        else:
            fitness = densityFitness
        print("Fit: " + str(fitness))
        print(str("Teleports: " + str(f.getTeleports())))

        return fitness
Exemple #2
0
    def run(self):
        r = Runner.Runner(self.net, self.runFile)
        i = 0
        while i < self.simNum:
            #start simulation and log simTime
            print("Count: " + str(i))
            startTime = time.time()
            r.createRandomTrips()
            r.runNoGui()
            simTime = time.time() - startTime

            #Analyse for traffic density fitness
            densityFitness = getFitness.main()

            #Create FileEditor object
            f = FileEditor.FileEditor(simTime, densityFitness)
            f.getOutput()
            f.getTimeStamps()
            f.setBreakpoints()
            f.writeFile()

            if f.getTeleports() > 0:
                fitness = round((densityFitness / f.getTeleports()), 2)
            else:
                fitness = densityFitness
            f.setFitness(fitness)

            print("SimRun F: " + str(fitness))
            #if collisions occur copy route data, warning file and breakpoint file
            print("Collision Num: " + str(f.getCollisionWarnings()))
            if f.getWarnings() > 0 and f.getTeleports() < 10:
                f.copyDir()
                f.copyFile()
                f.writeBreakPointFile()
            i += 1
Exemple #3
0
 def yamlToMap(self):
     fileEditor = FileEditor()
     yamlFile = open('YamlFile.yml', 'r')
     testMap = fileEditor.fileToMap(yamlFile)
     return testMap
Exemple #4
0
 def createYamlFile(self, costMap):
     fileEditor = FileEditor()
     costmap = fileEditor.modifyValuesList(costMap)
     fileEditor.mapToFile(costMap)