Example #1
0
def test():
    pylog.debug('debug test 测试')
    pylog.info('info test 测试')
    pylog.warning('warning test 测试')
    pylog.error('error test 测试')
    pylog.critical('critical test 测试')
    print(datetime.datetime.now().strftime('%Y-%m-%d'))
Example #2
0
    def load_scenario(self, plat="windows"):
        '''
        加载想定
        plat 服务器是Windows版还是Linux版
        '''
        scenario_file = self.scenario_name
        if plat == "windows":
            ret = self.scenEditLoadScenario(scenario_file, "false")
        else:
            ret = self.loadScenario(scenario_file, "Play")
        load_success = False
        for i in range(30):
            value = self.getScenarioIsLoad()
            if str(value) == "'Yes'":
                pylog.info("scenario load sucess")
                load_success = True
                break
            pylog.info("sleep a second")
            time.sleep(1)

        if not load_success:
            pylog.error("can not load scenario:%s" % scenario_file)
            return None
        scenario = CScenario(self)
        return scenario
Example #3
0
 def show_side_info(self, item):
     '''
     show side info
     '''
     count = 0
     for key in item:
         pylog.info("count:%s %s:%s" % (count, key, item[key]))
         count += 1
Example #4
0
 def parse(self, label, opcode, operands):
     try:
         info(
             7, "parse: label='%s' opcode='%s' operands=%s" %
             (label, opcode, operands))
         # TODO: parse operation here.
     except Exception:
         critical("Exception processing line:")
         raise
Example #5
0
 def get_current_time(self):
     '''
     得到当前时间
     param :
     return : 时间毫秒值
     '''
     lua = "ReturnObj(ScenEdit_CurrentTime())"
     ret_time = self.mozi_task.sendAndRecv(lua)
     pylog.info("%s\n" % ret_time)
     return ret_time
Example #6
0
    def assemble(self, srcfile):
        info("Assembling %s" % srcfile)
        self._srcfile = srcfile
        self._linenum = 0
        with open(srcfile, 'r') as f:
            lines = f.readlines()
        debug("assemble: file %s, lines %d" % (srcfile, len(lines)))

        for line in lines:
            # Parse lines.
            pass
Example #7
0
def update_proxy_list(check_url):
    lt = filter_proxy_list(check_url)
    if not lt:
        pylog.error("do not get any proxy")
        print "do not get any proxy"
        return False

    proxy_list = extend_proxy_list(lt)
    pylog.info("now proxy count is %s" % len(proxy_list))
    save_proxy_list(proxy_list)
    return proxy_list
Example #8
0
 def taishi_reset(self):
     '''
     态势重置函数
     '''
     self._reset()
     time.sleep(3)
     step_interval = 30
     pylog.info("Hs_OneTimeStop:%d" % step_interval)
     self.sendAndRecv("Hs_OneTimeStop('Stop', %d)" % step_interval)
     self.run_simulate()
     self.create_get_situation_process()
     self.step()
Example #9
0
def run(train_step, start_epoch, trainer, ram, env):

    loss_num_sum = 0
    destroy_num_sum = 0
    for _ep in range(int(start_epoch), etc.MAX_EPISODES):
        if not env.connect_server():
            pylog.info("can not connect to server")
            return False
        observation = env.reset()
        sum_reward = 0
        for step in range(etc.MAX_STEPS):
            #pylog.info("step:%s" % step)
            state = np.float32(observation)

            if _ep % 5 == 0:
                action = trainer.get_exploitation_action(state)
            else:
                action = trainer.get_exploration_action(state)

            new_observation, reward, done, info = env.step(action)
            sum_reward += reward

            show_str = "EPISODE:%s step:%s observation:%s action:%s new_observation:%s reward:%s sum_reward:%s" % (
                _ep, step, observation, action, new_observation, reward,
                sum_reward)
            #pylog.info(show_str)

            if done:
                new_state = None
            else:
                new_state = np.float32(new_observation)
                ram.add(state, action, reward, new_state)

            if info:
                pylog.info(info)

            observation = new_observation
            trainer.optimize(train_step)
            train_step += 1
            write_file(train_step, "%s/step.txt" % etc.OUTPUT_PATH)
            if done:
                pylog.info("done from reward")
                break

        loss_num = len(env.red_unit_list) - env.last_red_aircraft_num
        loss_num_sum += loss_num

        destroy_num = len(env.blue_unit_list) - env.last_blue_aircraft_num
        destroy_num_sum += destroy_num

        write_learning_file("%s,%s" % (loss_num, destroy_num))

        pylog.info("loss_num_sum:%s destroy_num_sum:%s" %
                   (loss_num_sum, destroy_num_sum))

        write_final_reward(sum_reward, _ep)
        gc.collect()
        if _ep % 5 == 0:
            trainer.save_model(_ep, etc.MODELS_PATH)
            write_file(_ep)
Example #10
0
    def resolve(self, maxPasses=10):
        "Resolve a symbol."
        startTime = time.time()
        # self.context.symtab.resolve(maxPasses)
        endTime = time.time()
        delta = endTime - startTime
        debug("Symbol resolution: %3.2f seconds" % delta)

        startTime = time.time()
        numRecords = len(self.context.records)
        debug("Updating %d parser records..." % (numRecords))
        nUndefs = nPrevUndefs = 0
        for i in range(maxPasses):
            self._passnum = i + 1
            # self.reset()
            nPrevUndefs = nUndefs
            nUndefs = 0
            undefRecords = []
            for j in range(numRecords):
                record = self._records[j]
                if record.isParseable():
                    self._currentRecord = record
                    self._previousRecord = self.context.records[j - 1]
                    # self.load(record)
                    debug("resolve: %s" % (record.srcline))
                    # self.parse(record.label, record.opcode, record.operands)
                    self._records[j] = self.context.currentRecord
                    if not record.isComplete():
                        nUndefs += 1
                        undefRecords.append(record)
            info("%d incomplete parser records" % (nUndefs))
            if nUndefs == 0:
                info("All parser records complete")
                break
            if nUndefs == nPrevUndefs:
                for urec in undefRecords:
                    urec.error("undefined symbol")
                    self._errors += 1
                self.context.error("no progress resolving parser records, "
                                   "%d undefined records" % nUndefs,
                                   source=False,
                                   count=False)
                break
        if self._verbose:
            endTime = time.time()
            delta = endTime - startTime
            print("Pass 2: %3.2f seconds" % delta)
Example #11
0
    def __init__(self, state_dim, action_dim, action_lim):
        super(Actor, self).__init__()
        self.state_dim = state_dim
        self.action_dim = action_dim
        self.action_lim = action_lim

        self.fc1 = nn.Linear(state_dim, 256)
        pylog.info(self.fc1.weight.data.size())
        self.fc1.weight.data = fanin_init(self.fc1.weight.data.size())

        self.fc2 = nn.Linear(256, 128)
        self.fc2.weight.data = fanin_init(self.fc2.weight.data.size())

        self.fc3 = nn.Linear(128, 64)
        self.fc3.weight.data = fanin_init(self.fc3.weight.data.size())

        self.fc4 = nn.Linear(64, action_dim)
        self.fc4.weight.data.uniform_(-EPS, EPS)
Example #12
0
def check_proxy_list_count(check_url=get_check_url()):
    count = get_proxy_list_min_count()
    proxy_list = read_proxy_list()

    if proxy_list:
        pylog.info("now proxy count is %s" % len(proxy_list))
    else:
        pylog.info("now proxy count is 0")

    proxy_list_count = 0
    if proxy_list:
        proxy_list_count = len(proxy_list)

    if proxy_list_count < count:
        while proxy_list_count < count:
            update_proxy_list(check_url)
            proxy_list = read_proxy_list()
            if proxy_list:
                proxy_list_count = len(proxy_list)
Example #13
0
def get_weapon_remain_dic(side_guid, all_info_dict):
    units_dic = get_care_class_units_from_side(side_guid, all_info_dict)
    #pylog.info(len(units_dic))
    weapon_dic = {}
    for key in units_dic:
        item = units_dic[key]
        #show_item_info(item)
        #mozi_unit.show_mozi_unit(item)
        mount_lt = get_unit_mounts_lt(item)
        for guid in mount_lt:
            mount_item = all_info_dict[guid]
            weapon_dic[guid] = mount_item

        loadout_item = get_unit_loadout(item, all_info_dict)
        if loadout_item:
            weapon_dic[loadout_item["strGuid"]] = loadout_item

    weapon_remain_dic = create_weapon_remain_dic(weapon_dic)
    pylog.info(weapon_remain_dic)
    raise
Example #14
0
def run_primary(train_step, start_epoch, trainer, ram, env):

    loss_num_sum = 0
    destroy_num_sum = 0
    for _ep in range(int(start_epoch), etc.MAX_EPISODES):
        if not env.connect_server():
            pylog.info("can not connect to server")
            return False
        observation = env.reset()
        for step in range(etc.MAX_STEPS):
            new_observation, reward, done, info = env.step(None)

            if done:
                pylog.info("done from reward")
                break

        loss_num = len(env.red_unit_list) - env.last_red_aircraft_num
        loss_num_sum += loss_num

        destroy_num = len(env.blue_unit_list) - env.last_blue_aircraft_num
        destroy_num_sum += destroy_num

        write_primary_file("%s,%s" % (loss_num, destroy_num))

        pylog.info("loss_num_sum:%s destroy_num_sum:%s" %
                   (loss_num_sum, destroy_num_sum))
Example #15
0
def paser_interface_test(all_info_dict):
    side_dic = get_all_sides_dic(all_info_dict)
    for side_guid in side_dic:
        # pylog.info(side_guid)
        a_side_dic = get_all_units_from_side(side_guid, all_info_dict)
        a_side_class_dic = get_class_dic(a_side_dic)
        # show_class_info(a_side_class_dic)

        aircraft_list = get_units_from_side(side_guid, "CAircraft", all_info_dict)
        if aircraft_list:
            pylog.info("aircraft:%s" % len(aircraft_list))

        facility_list = get_units_from_side(side_guid, "CFacility", all_info_dict)
        if facility_list:
            pylog.info("facility:%s" % len(facility_list))

        contacts_dic = get_contacts_from_side(side_guid, all_info_dict)
        if contacts_dic:
            pylog.info("contacts:%s" % len(contacts_dic))

            for guid in contacts_dic:
                # pylog.info("contact guid:%s" % guid)
                actual_unit = get_contact_actual_unit_dic(guid, all_info_dict)
                # pylog.info(actual_unit["strName"])
                # pylog.info("dLatitude:%s" % actual_unit["dLatitude"])
                # pylog.info("dLongitude:%s" % actual_unit["dLongitude"])
                # pylog.info("m_Side:%s" % actual_unit["m_Side"])
                side_name = get_unit_side_name(actual_unit, all_info_dict)
Example #16
0
def do_eval(a_actor):
    etc.RENDER = True
    etc.CLOCK_FREQUENCY = 200
    winstyle = 0
    start_time = time.time()
    count = 100
    while count:
        a_game_dic = init_the_game(winstyle)
        a_game_dic["state"] = "eval"

        model_dic = {}
        model_dic["actor"] = a_actor

        a_game_dic["model_dic"] = model_dic

        run_the_game(a_game_dic)
        a_actor.update_reward()
        pg.quit()
        count -= 1
    a_actor.write_observation_dic()
    end_time = time.time()
    pylog.info("spend time:%.2f " % (end_time - start_time))
Example #17
0
def train(a_actor):
    winstyle = 0
    count = 1000
    start_time = time.time()
    while count:

        pylog.info("train ep:%s" % count)
        a_game_dic = init_the_game(winstyle)
        a_game_dic["state"] = "train"

        model_dic = {}
        model_dic["actor"] = a_actor

        a_game_dic["model_dic"] = model_dic

        run_the_game(a_game_dic)
        a_actor.update_reward()
        pg.quit()
        count -= 1
    a_actor.write_observation_dic()
    end_time = time.time()
    pylog.info("spend time:%.2f " % (end_time - start_time))
Example #18
0
    def inference(self, a_observation):
        a_state_dic = self.a_critic.query_a_observation(a_observation)
        a_action = 0
        if a_state_dic:
            pylog.info("state:%s a_state_dic:%s" %
                       (a_observation, a_state_dic))
            max_value = None
            select_key = None
            for key in a_state_dic:
                a_value = a_state_dic[key]["avg_reward"]
                if max_value == None:
                    max_value = a_value
                    select_key = key
                else:
                    if a_value > max_value:
                        max_value = a_value
                        select_key = key

            a_action = select_key
        #else:
        #    a_action = bernoulli(0.005)

        return a_action
Example #19
0
    def connect_mozi_server(self, websocket_server, websocket_port):
        """
        连接墨子服务器
        param :
        websocket_server 要连接的服务器的ip
        websocket_port 要连接的服务器的端口
        :return:
        """
        pylog.info("connect_mozi_server")
        if self.connect_mode == 1:
            self.mozi_task = MoZiPython.MoZi(self.server_ip, self.server_port)
            #
            self.ai_server = self.server_ip
            self.ai_port = self.server_port
            return True
    #
    #server_address = r"ws://%s:%d/websocket" % ('60.205.207.206', 9998)
        server_address = r"ws://%s:%d/websocket" % (websocket_server,
                                                    websocket_port)
        pylog.info(server_address)
        for i in range(10):
            try:
                self.websocket_connect = create_connection(server_address)
                break
            except:
                pylog.info("can not connect to %s." % server_address)
                time.sleep(2)
                self.websocket_connect = None
    #
        if self.websocket_connect is None:
            pylog.warning("Interrupted, can not connect to %s." %
                          server_address)
            return False

    #
        self.websocket_connect.send("{\"RequestType\":\"StartServer\"}")
        result = self.websocket_connect.recv()
        print("connect server result:%s" % result)
        jsons = json.loads(result)
        self.ai_server = jsons['IP']
        self.ai_port = jsons['AIPort']
        self.mozi_task = MoZiPython.MoZi(self.ai_server, self.ai_port)
        #
        #if platform.system() != 'Darwin':
        ## 修改客户端配置文件
        #inipath = self.client_path_init
        #conf = configparser.ConfigParser()
        #conf.read(inipath)
        #conf.set('ConnectServer', "ip", jsons['IP'])
        #conf.write(open(inipath, "r+"))
        #conf.set('ConnectServer', "port", str(jsons['Port']))
        #conf.write(open(inipath, "r+"))
        #conf.set('ConnectServer', "name", str(jsons['Federate']))
        #conf.write(open(inipath, "r+"))
        #
        return True
Example #20
0
def run(train_step, start_epoch, trainer, ram, env):

    for _ep in range(int(start_epoch), etc.MAX_EPISODES):
        if not env.connect_server():
            pylog.info("can not connect to server")
            return False
        observation = env.reset()
        sum_reward = 0
        for step in range(etc.MAX_STEPS):
            state = np.float32(observation)

            if _ep % 5 == 0:
                action = trainer.get_exploitation_action(state)
            else:
                action = trainer.get_exploration_action(state)

            new_observation, reward, done, info = env.step(action)
            sum_reward += reward

            show_str = "EPISODE:%s step:%s observation:%s action:%s new_observation:%s reward:%s sum_reward:%s" % (
                _ep, step, observation, action, new_observation, reward,
                sum_reward)
            pylog.info(show_str)

            if done:
                new_state = None
            else:
                new_state = np.float32(new_observation)
                ram.add(state, action, reward, new_state)

            if info:
                pylog.info(info)

            observation = new_observation
            trainer.optimize(train_step)
            train_step += 1
            write_file(train_step, "%s/step.txt" % etc.OUTPUT_PATH)
            if done:
                break

        write_final_reward(sum_reward, _ep)
        gc.collect()
        if _ep % 5 == 0:
            trainer.save_model(_ep, etc.MODELS_PATH)
            write_file(_ep)
Example #21
0
 def connect_mozi_server(self, websocket_Ip, websocket_port):
     """
     连接墨子服务器
     param :
     websocket_server 要连接的服务器的ip
     websocket_port 要连接的服务器的端口
     :return:
     """
     pylog.info("connect_mozi_server")
     if self.connect_mode == 1:
         self.mozi_server = MoziService(self.server_ip ,self.aiPort,self.scenario_name)
         return True
     # server_address = r"ws://%s:%d/websocket" % ('60.205.207.206', 9998)
     server_address = r"ws://%s:%d/websocket" % (websocket_Ip, websocket_port)
     pylog.info(server_address)
     for i in range(10):
         try:
             self.websocket_connect = create_connection(server_address)
             break
         except:
             pylog.info("can not connect to %s." % server_address)
             time.sleep(2)
             self.websocket_connect = None
     #
     if self.websocket_connect is None:
         pylog.warning("Interrupted, can not connect to %s." % server_address)
         return False
     #
     self.websocket_connect.send("{\"RequestType\":\"StartServer\"}")
     result = self.websocket_connect.recv()
     print("connect server result:%s" % result)
     jsons = json.loads(result)
     self.ai_server = jsons['IP']
     self.ai_port = jsons['AIPort']
     self.mozi_task = MoziService(self.server_ip ,self.aiPort,self.scenario_name)
     return True
Example #22
0
def show_class_info(dic):
    for key in dic:
        pylog.info("%s:%s" % (key, len(dic[key])))
Example #23
0
def show_mozi_unit(item):
    pylog.info("strGuid:%s" % item["strGuid"])
    pylog.info("ClassName:%s" % item["ClassName"])
    pylog.info("strUnitClass:%s" % item["strUnitClass"])
    pylog.info("strName:%s" % item["strName"])

    pylog.info("strDamageState:%s" % item["strDamageState"])
    pylog.info("m_Bearing:%s" % item["m_Bearing"])
    pylog.info("dLongitude:%s" % item["dLongitude"])
    pylog.info("dLatitude:%s" % item["dLatitude"])
    pylog.info("fCurrentAlt:%s" % item["fCurrentAlt"])
    pylog.info("fPitch:%s" % item["fPitch"])
    pylog.info("fCurrentHeading:%s" % item["fCurrentHeading"])
    pylog.info("fCurrentSpeed:%s" % item["fCurrentSpeed"])
    pylog.info("m_LoadoutGuid:%s" % item.get("m_LoadoutGuid", ""))
    pylog.info("m_Mounts:%s" % item.get("m_Mounts", ""))
    pylog.info("iDBID:%s" % item["iDBID"])
    pylog.info("iFuelRecsMaxQuantity:%s" %
               item.get("iFuelRecsMaxQuantity", ""))
    pylog.info("fFuelConsumptionCruise:%s" %
               item.get("fFuelConsumptionCruise", ""))
    pylog.info("dFuelPercentage:%s" % item.get("dFuelPercentage", ""))
    pylog.info("strActiveUnitStatus:%s" % item["strActiveUnitStatus"])
Example #24
0
import pylog
from Iraq_learn import etc
from Iraq_learn.env import MoziEnv
from MoziService.paser_core import get_all_sides_dic

env = MoziEnv(etc.SERVER_IP, etc.SERVER_PORT, etc.SCENARIO_NAME, etc.simulate_compression)
if not env.connect_server():
    pylog.info("can not connect to server")
else:
    # ret = env.mozi_service.suspend_simulate()
    # env.mozi_service.all_info_dict = {}
    # env.scenario = env.mozi_service.load_scenario(plat=env.SERVER_PLAT)
    # env._set_duration_interval()
    #
    # env.mozi_service.set_run_mode()
    # env.mozi_service.set_simulate_compression(env.simulate_compression)
    # env.mozi_service.set_compression_mode(False)

    # env._run_simulate()

    all_info_dic = env.reset()
    print(all_info_dic)

Example #25
0
 def createSymbolTable(self, srcfile):
     info("Processing %s" % srcfile)
     self._symtab, errcount = buildSymbolTable(srcfile,
                                               self._symtab,
                                               verbose=self._verbose)
Example #26
0
def show_item_info(dic):
    for key in dic:
        pylog.info("%s:%s" % (key, dic[key]))
Example #27
0
    
def warnnig(self):
    file = open('logs/%s.wrapper' % (datetime.datetime.now().date()),'a+',encoding='utf-8')
    file.writelines('###  %s |warn| %s\n' % (datetime.datetime.now(),str(self)))
    file.close()
    
def error(self):
    file = open('logs/%s.wrapper' % (datetime.datetime.now().date()),'a+',encoding='utf-8')
    file.writelines('###  %s |erro| %s\n' % (datetime.datetime.now(),str(self)))
    file.close()
'''
file_pwd = 'D:/software/apache-tomcat-7.0.85_64/webapps/sysinfo'
#路径是否存在
if os.path.isdir(file_pwd):
    print('path %s exist!' % (file_pwd))
    pylog.info(file_pwd, 'exist')
else:
    os.makedirs(file_pwd)
#文件是否存在
if os.path.exists(file_pwd + 'index.html'):
    pass
else:
    try:
        os.system('type nul > %s/index.html' % (file_pwd))
        print('index')
        pylog.info('index')
    except Exception as e:
        print('error!', e)
        pylog.error(e)

process_mysql = os.popen('tasklist | findstr mysql').readlines()