• 大小: 2.61M
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-04-16
  • 语言: Python
  • 标签: 电子对抗  MACA  源码  

资源简介

中国电子科技集团公司认知与智能技术重点实验室发布的MaCA(Multi-agent Combat Arena)环境,是国内首个可模拟军事作战的轻量级多智能体对抗与训练平台,是多智能体对抗算法研究、训练、测试和评估的绝佳环境,可支持作战场景和规模自定义,智能体数量和种类自定义,智能体特征和属性自定义,支持智能体行为回报规则和回报值自定义等。

资源截图

代码片段和文件信息

#! /usr/bin/env python
# -*- coding: utf-8 -*-
“““
@author: Gao Fang
@contact: gaofang@cetc.com.cn
@software: PyCharm
@file: fight.py
@time: 2018/3/9 0009 16:41
@desc: execution battle between two agents
“““
import argparse
import importlib
import os
import time
from interface import Environment

if __name__ == “__main__“:
    parser = argparse.ArgumentParser()
    parser.add_argument(“--map“ type=str default=“1000_1000_2_10_vs_2_10“ help=‘map name only name not file path‘)
    parser.add_argument(“--agent1“ type=str default=“fix_rule“ help=‘agent 1 name only name not path‘)
    parser.add_argument(“--agent2“ type=str default=“fix_rule“ help=‘agent 2 name only name not path‘)
    parser.add_argument(“--round“ type=int default=1 help=‘play rounds‘)
    parser.add_argument(“--fps“ type=float default=0 help=‘display fps‘)
    parser.add_argument(“--max_step“ type=int default=5000 help=‘max step in a round‘)
    parser.add_argument(“--random_pos“ action=“store_true“ help=‘if the initial positions are random or fix‘)
    parser.add_argument(“--log“ action=“store_true“ help=‘saving log‘)
    parser.add_argument(“--log_path“ type=str default=“default_log“ help=‘log folder name‘)
    args = parser.parse_args()

    print(‘Map:‘ args.map)
    print(‘Side1 agent:‘ args.agent1)
    print(‘Side2 agent:‘ args.agent2)
    print(‘Round number:‘ args.round)

    side1_win_times = 0
    side2_win_times = 0
    draw_times = 0

    # file path constructing
    map_path = ‘maps/‘ + args.map + ‘.map‘
    agent1_path = ‘agent/‘ + args.agent1 + ‘/agent.py‘
    agent2_path = ‘agent/‘ + args.agent2 + ‘/agent.py‘
    agent1_import_path = ‘agent.‘ + args.agent1 + ‘.agent‘
    agent2_import_path = ‘agent.‘ + args.agent2 + ‘.agent‘

    if not os.path.exists(map_path):
        print(‘Error: map file not exist!‘)
        exit(1)
    if not os.path.exists(agent1_path):
        print(‘Error: agent1 file not exist!‘)
        exit(1)
    if not os.path.exists(agent2_path):
        print(‘Error: agent2 file not exist!‘)
        exit(1)
    # delay calc
    if args.fps == 0:
        step_delay = 0
    else:
        step_delay = 1 / args.fps

    # laad agents
    agent1_module = importlib.import_module(agent1_import_path)
    agent2_module = importlib.import_module(agent2_import_path)
    agent1 = agent1_module.Agent()
    agent2 = agent2_module.Agent()
    agent1_obs_ind = agent1.get_obs_ind()
    agent2_obs_ind = agent2.get_obs_ind()
    # environment initiation
    if args.log:
        if args.log_path == ‘default_log‘:
            log_flag = args.agent1 + ‘_vs_‘ + args.agent2
        else:
            log_flag = args.log_path
    else:
        log_flag = False
    env = Environment(map_path agent1_obs_ind agent2_obs_ind max_step=args.max_step render=True
                      random_pos=args.random_pos log=log_flag)
    # get map info
    size_x size_y = env.get_map_size()
    side1_detector_num side1_fighter_num side2_detector_num s

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1635  2019-05-05 11:58  MaCA-master\.gitignore

     文件        687  2019-12-21 20:25  MaCA-master\.idea\MaCA-master.iml

     文件        294  2019-12-21 19:29  MaCA-master\.idea\misc.xml

     文件        281  2019-12-21 19:29  MaCA-master\.idea\modules.xml

     文件        239  2019-12-21 20:25  MaCA-master\.idea\other.xml

     文件      21122  2020-02-16 16:07  MaCA-master\.idea\workspace.xml

     文件        554  2019-05-05 11:58  MaCA-master\agent\base_agent.py

     文件        943  2019-05-05 11:58  MaCA-master\agent\fix_rule\agent.py

     文件      28387  2019-05-05 11:58  MaCA-master\agent\fix_rule\agent_core.py

     文件        212  2019-05-05 11:58  MaCA-master\agent\fix_rule\license.lic

     文件        140  2019-05-05 11:58  MaCA-master\agent\fix_rule\product.key

     文件        140  2019-05-05 11:58  MaCA-master\agent\fix_rule\pyshield.key

     文件        288  2019-05-05 11:58  MaCA-master\agent\fix_rule\pyshield.lic

     文件       8607  2019-05-05 11:58  MaCA-master\agent\fix_rule\pytransform.py

     文件     697856  2019-05-05 11:58  MaCA-master\agent\fix_rule\_pytransform.dll

     文件     650764  2019-05-05 11:58  MaCA-master\agent\fix_rule\_pytransform.dylib

     文件     720936  2019-05-05 11:58  MaCA-master\agent\fix_rule\_pytransform.so

     文件       1190  2019-12-21 19:32  MaCA-master\agent\fix_rule\__pycache__\agent.cpython-37.pyc

     文件       7271  2019-12-21 19:32  MaCA-master\agent\fix_rule\__pycache__\agent_core.cpython-37.pyc

     文件       7690  2019-12-29 22:36  MaCA-master\agent\fix_rule\__pycache__\pytransform.cpython-37.pyc

     文件       1620  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\agent.py

     文件      21435  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\agent_core.py

     文件        212  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\license.lic

     文件        140  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\product.key

     文件        140  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\pyshield.key

     文件        288  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\pyshield.lic

     文件       8607  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\pytransform.py

     文件     697856  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\_pytransform.dll

     文件     650764  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\_pytransform.dylib

     文件     720936  2019-05-05 11:58  MaCA-master\agent\fix_rule_no_att\_pytransform.so

............此处省略106个文件信息

评论

共有 条评论