def main(): agents = [] # ここで各自のエージェントをロードする agent1 = Montecarlo(0.1) agent2 = Montecarlo(0.1) # 学習したデータの読み込み agent1.load(open(sys.argv[3]).read()) agent2.load(open(sys.argv[3]).read()) agents.append(agent1) agents.append(agent2) # 残り2体はランダムに行動するエージェント agents.append(Random()) agents.append(Random()) win = 0 lose = 0 for c in range(100): rs = [] for i in range(4): r = learning(sys.argv[1], int(sys.argv[2]), agents[i]) rs.append(r) cont = True iswin = None while cont: for i in range(4): r = next(rs[i]) if r is not None and i == 0: print(r) if r: win += 1 else: lose += 1 cont = False print("episode {} done".format(c)) print("win: {}times, lose: {}times, win-rate: {:.2f}%".format(win, lose, win / (win + lose)))
def main(): # Dados de Entrada print( "FLUXO DE CARGA PROBABILISTICO PARA REDES COM RECURSOS ENERGÉTICOS DISTRIBUÍDOS" ) print("-----") simulation_number = input("NÚMERO DE SIMULAÇÕES DE MONTE CARLO: ") print("-----") print("Conheça o modo de correlação entre os REDs:") print("[0] sem correlação") print("[1] correlação LOAD-LOAD") print("[2] correlação LOAD-PV") print("[3] correlação LOAD-EV") print("[4] correlação LOAD-PV-EV") simulation_mode = input("MODO DE SIMULAÇÃO DESEJADO: ") print("-----") print("Modo de simulação de Eficiência Energética:") print("[0] sem Real Time Price - RTP") print("[1] com Real Time Price - RTP") simulation_rtp = input("MODO DE SIMULAÇÃO DE CARGA: ") print("-----") print("Modo de simulação do veículo elétrico:") print("[0] sem V2G") print("[1] com V2G") simulation_ev = input("MODO DE SIMULAÇÃO DO VEÍCULO ELÉTRICO:") # Verificando possibilidade de entrada if (0 <= int(simulation_mode) <= 4) and ( 0 <= int(simulation_ev) <= 1) and (0 <= int(simulation_rtp) <= 1): print("Iniciando simulação, por favor, aguarde ...") else: print("Os modos escolhidos não são permitidos. Encerrando processo.") sys.exit() # Simulação de Monte Carlo simulation = Montecarlo(simulation_number, simulation_mode, simulation_ev, simulation_rtp) simulation.set_simulation()
def worker(num, counter): m = Montecarlo(counter.steps) m.compute() counter.add_hits(m.steps, m.hit, num) return
from montecarlo import Montecarlo while True: simulator = Montecarlo() mode = int(input('Modo de ejecucion: \n1. Automatico(0-4) \n2. Manual\n')) if mode != 1 and mode != 2: print('No selecciono ningun modo') break if mode == 1: simulator.run() continue if mode == 2: while True: purchased_cars = input( 'Indique los autos adquiridos: | n: terminar\n') if purchased_cars == 'n': simulator.print_table_final() break if int(purchased_cars) >= 0: simulator.run(int(purchased_cars)) continue print('Simulador terminado')
def main(): # Monte Carlo simulation = Montecarlo(1) simulation.set_simulation()
def __init__(self, steps): Montecarlo.__init__(self, steps) self.image = Image.open("arc.png") self.draw = ImageDraw.Draw(self.image)