def main(): # Create first generation pool = Pop(size_gen) # Step through generations for _ in range(num_gen): # initialize data histogram for sim visualization hist = Data() terrain = Terrain(400, 4) # create pybox2d dynamic bodies based on individual's gene gen = [Biped(pool.population[i].name, pool.population[i].gene) for i in range(size_gen)] for k, biped in enumerate(gen): # specify terrain and biped to race race = Sim(terrain, biped) if not hist.terrain: hist.set_terrain(terrain) # run simulation without visualization score, bb, time = race.run(1e4) # store sim data and fitness evaluation pool.population[k].fitness = score hist.timelines[biped.name] = race.history.timelines['timeline'] # resort gene pool pool.population = list( sorted(pool.population, key=lambda x: x.fitness)) # visualize top bipeds' simulations shown = pool.population[-num_shown:] timelines = [s.name for s in shown] view.start() view.run(hist, timelines, speed=3) # evolve gene pool pool.evolve()
def redraw(self, frame_time_delta): movers.run(self.state, frame_time_delta) collisions.run(self.state) if view.run(self.state): self.redraw_tiles = True if self.redraw_tiles: tiles.draw(self.state, self.scale, self.canvas, self.view_size) self.enable_redraw_tiles(False) sprites.draw(self.state, self.canvas, frame_time_delta, self.scale)
def main(): """Main entry point""" try: args = get_args() if args.listall: movies = search(args.movie_name) movie = run(movies) if movie: parse(movie) else: get_movie(args.movie_name) except Exception as e: print 'exception', e traceback.print_exc() pass
import sys import sqlite3 import pathlib from Controller import Controller import view """ EMLogin is an application designed to make it easier to login to sites that support the EMLogin protocal. """ def fileName(): """File name constant""" return str(pathlib.Path.home()) + "/.config/emlogin.sqlite" if __name__ == "__main__": view.run(Controller(fileName()))
import controller ''' Parse HDL parameters ''' hdl_parser = hdl_parser.HDLParser() params = hdl_parser.get_params() for header in config.header_list: hdl_parser.parse(header) ''' Get I/O configuration ''' io_config = io_config.IOConfig(params) ''' Instantiate FPGA device manager ''' fpga = device_manager.DeviceManager(config.pid_bit_file, config.serial, config.adc_clk_freq, config.sys_clk_freq, params) if fpga.init_device() == False: exit ''' Instantiate MVC and start GUI ''' model = model.Model(io_config, params) view = view.View(io_config, params) controller = controller.Controller(view, model, fpga, io_config, params, config.config_path) view.run()