diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 63856a2..0000000 --- a/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -.env -*.pyc -__pycache__/ -.venv/ -venv/ diff --git a/README.md b/README.md deleted file mode 100644 index af4419a..0000000 --- a/README.md +++ /dev/null @@ -1,143 +0,0 @@ -# 作战体系数据清洗与标准化系统 - -## 项目简介 -本项目用于处理异质作战体系节点的原始JSON数据。系统能够自动识别并修复数据中的噪声、缺失值、异常值,并将关键效能指标标准化至 [0, 1] 区间,最终输出符合建模要求的高质量数据集。 - -## 目录结构 -``` -project/ -├── config/ -│ ├── config.yaml # 配置文件(推荐,支持注释) -│ └── config.json # 配置文件备选 -├── data/ -│ ├── raw_data_sample.json # 原始输入数据(JSON 模式) -│ └── cleaned_data_final.json # 清洗后的输出数据 -├── src/ -│ ├── cleaner.py # 清洗运行程序 -│ └── data_loader.py # 数据加载(JSON/达梦) -├── report/ -│ └── detailed_cleaning_report.json # 详细清洗报告 -├── scripts/ -│ └── inspect_dm_tables.py # 达梦表结构查看(部署时用) -├── .env.example # 环境变量示例(含 DM_PASSWORD) -└── README.md # 项目说明文档 -``` - -## 清洗流程说明 - -程序按以下顺序依次执行五步清洗操作: - -### 1. 去重 (clean_duplicates) -- **依据**:按 `TARGET_ID` 去重,同一目标只保留一条记录 -- **策略**:若存在 `CREATED_TIME` 字段,按创建时间倒序排序后保留最新一条;否则保留第一条 -- **目的**:消除重复录入的目标节点 - -### 2. 缺失值填充 (handle_missing_values) -- **范围**:对所有数值型列(除 ID 外)进行处理 -- **策略**: - - 先按 `ROLE_ID` 分组,用同类型单位的均值填充该组内缺失值 - - 若分组后仍有缺失(如该组仅有一条记录),用全列均值兜底填充 -- **目的**:保证数值字段完整,便于后续建模 - -### 3. 异常值纠正 (correct_outliers) -- **涉及字段**:`TARGET_RECOGNITION_CAPABILITY`、`STRIKE_ACCURACY`、`ANTI_JAMMING_CAPABILITY`、`ENVIRONMENT_ADAPTABILITY`、`MOBILITY` -- **规则**: - - 若值 < 0:取绝对值 - - 若值 > 1:截断为 1.0 -- **目的**:将效能指标统一限制在 [0, 1] 区间内 - -### 4. 噪声平滑 (apply_kalman_filter) -- **对象**:`COMMUNICATION_RANGE`(通信范围)字段 -- **方法**:使用窗口大小为 3 的移动平均进行平滑(与卡尔曼滤波效果类似的时序平滑) -- **结果**:数值保留 2 位小数 -- **目的**:削弱测量噪声对连续数值的影响 - -### 5. 标准化与输出 -- 坐标精度统一为 2 位小数 -- 时间戳统一为 ISO-8601 格式 -- 输出清洗后 JSON 及详细报告(含各步骤的统计与示例) - -## 数据源配置 - -程序支持两种数据源,通过 `config/config.yaml` 或 `config/config.json` 中的 `source` 切换: - -| source | 适用场景 | 说明 | -|--------|--------------|------| -| `json` | 开发、无数据库 | 从 `data/raw_data_sample.json` 读取 | -| `db` | 生产、有达梦库 | 从达梦数据库指定表读取 | - -### 开发阶段(当前设备无达梦) - -保持 `source: json`,直接使用本地 JSON 文件即可。 - -### 生产阶段(部署到有达梦的设备) - -`OBJECTIVE_INSTANCE` 表结构与 `raw_data_sample.json` 一致,配置中已设为 `db.table: OBJECTIVE_INSTANCE`,直接查询即可。 - -1. **修改配置**:`source: db`,端口 `5080`、表 `OBJECTIVE_INSTANCE` 已预设; -2. **设置密码**:`export DM_PASSWORD=你的密码`; -3. **运行清洗**:`python src/cleaner.py`。 - -若需自定义查询(如加 WHERE 条件),可清空 `table`,在 `db.query` 中写完整 SQL。 - -### 密码注入与安全说明 - -**⚠️ 安全原则:切勿将达梦密码写入配置文件或源代码。** - -达梦模式通过环境变量 `DM_PASSWORD` 注入密码,支持以下方式: - -| 方式 | 说明 | -|------|------| -| **终端** | `export DM_PASSWORD=你的密码`(Linux/Mac)或 `set DM_PASSWORD=你的密码`(Windows CMD) | -| **PyCharm** | Run → Edit Configurations → Environment variables → 添加 `DM_PASSWORD=你的密码` | -| **.env 文件** | 复制 `.env.example` 为 `.env`,填入 `DM_PASSWORD=你的密码`,并用 `python-dotenv` 加载(需自行集成) | - -`inspect_dm_tables.py` 支持两种密码来源:优先环境变量 `DM_PASSWORD`,其次脚本内 `LOCAL_PASSWORD`。若使用 `LOCAL_PASSWORD`,务必执行 `git update-index --assume-unchanged scripts/inspect_dm_tables.py` 避免误提交。 - -配置文件(`config.yaml` / `config.json`)中仅配置 `host`、`port`、`user`、`schema`、`table` 等,**不包含 password**。本项目源代码中不包含任何硬编码密码。 - -## 快速开始 - -### 1. 环境依赖 -```bash -pip install -r requirements.txt -``` - -核心依赖:`numpy`、`pandas`、`PyYAML`。达梦模式需额外安装 `dmPython`。 - -### 2. 运行清洗 -在项目根目录下执行: - -```bash -python src/cleaner.py -``` - -默认从 JSON 读取,处理后生成: -- `data/cleaned_data_final.json`(清洗后的数据) -- `report/detailed_cleaning_report.json`(详细清洗报告) - -## 输出结果示例 - -**清洗前 (Raw):** -```json -{ - "MOBILITY": -0.5, - "STRIKE_ACCURACY": 1.5, - "COMMUNICATION_RANGE": 102.8116 -} -``` - -**清洗后 (Cleaned):** -```json -{ - "MOBILITY": 0.5, - "STRIKE_ACCURACY": 1.0, - "COMMUNICATION_RANGE": 102.81 -} -``` - -## 清洗报告说明 - -`detailed_cleaning_report.json` 中包含: -- **summary**:总记录数、最终记录数、去重数量 -- **details**:各字段缺失值填充数量、异常值修正数量及示例、噪声平滑处理记录、标准化说明 diff --git a/config/config.json b/config/config.json deleted file mode 100644 index be492a7..0000000 --- a/config/config.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "source": "json", - "json": { - "input_file": "data/raw_data_sample.json", - "output_file": "data/cleaned_data_final.json", - "report_file": "report/detailed_cleaning_report.json" - }, - "db": { - "host": "127.0.0.1", - "port": 5080, - "user": "SYSDBA", - "schema": "SYSDBA", - "table": "OBJECTIVE_INSTANCE", - "query": null - } -} diff --git a/config/config.yaml b/config/config.yaml deleted file mode 100644 index 1656374..0000000 --- a/config/config.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# 数据清洗系统配置文件 -# 通过 source 切换:json(开发) / db(生产-达梦) - -source: json # 开发用 json;部署达梦时改为 db(或直接改 config.json) - -# JSON 文件模式(source=json 时生效) -json: - input_file: data/raw_data_sample.json - output_file: data/cleaned_data_final.json - report_file: report/detailed_cleaning_report.json - -# 达梦数据库模式(source=db 时生效) -# 密码通过环境变量 DM_PASSWORD 传入,切勿写入配置文件 -db: - host: 127.0.0.1 - port: 5080 - user: SYSDBA - schema: SYSDBA - # OBJECTIVE_INSTANCE 表结构与 raw_data_sample.json 一致,直接查询即可 - table: OBJECTIVE_INSTANCE - query: null diff --git a/.env.example b/final/.env.example similarity index 88% rename from .env.example rename to final/.env.example index 5798432..be7d6d7 100644 --- a/.env.example +++ b/final/.env.example @@ -1,4 +1,4 @@ # 达梦数据库密码(仅 source=db 时需要) # 复制为 .env 后填入真实密码,或将下面一行加入 ~/.bashrc 等 # export DM_PASSWORD=你的密码 -DM_PASSWORD= +DM_PASSWORD=Dm508508 diff --git a/final/.idea/.gitignore b/final/.idea/.gitignore new file mode 100644 index 0000000..eaf91e2 --- /dev/null +++ b/final/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/final/.idea/227.iml b/final/.idea/227.iml new file mode 100644 index 0000000..069558b --- /dev/null +++ b/final/.idea/227.iml @@ -0,0 +1,12 @@ + + + + + + + + + + \ No newline at end of file diff --git a/final/.idea/inspectionProfiles/Project_Default.xml b/final/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..046067d --- /dev/null +++ b/final/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,38 @@ + + + + \ No newline at end of file diff --git a/final/.idea/inspectionProfiles/profiles_settings.xml b/final/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/final/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/final/.idea/misc.xml b/final/.idea/misc.xml new file mode 100644 index 0000000..b1e0d2b --- /dev/null +++ b/final/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/final/.idea/modules.xml b/final/.idea/modules.xml new file mode 100644 index 0000000..d2fbae1 --- /dev/null +++ b/final/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/final/1125暂时属性需求(1).xlsx b/final/1125暂时属性需求(1).xlsx new file mode 100644 index 0000000..9872bdf Binary files /dev/null and b/final/1125暂时属性需求(1).xlsx differ diff --git a/final/README.md b/final/README.md new file mode 100644 index 0000000..df98ce1 --- /dev/null +++ b/final/README.md @@ -0,0 +1,331 @@ +# 作战体系数据清洗与网络效能评估系统 + +## 项目简介 + +本系统包含两大功能模块: + +1. **数据清洗**:从 JSON 文件或达梦数据库读取实体属性表、三元组,进行去重、缺失值填充、异常值修正、噪声平滑等清洗;并按 **1125 属性需求** 做 **内容与格式的双重对齐**(格式校验 + 内容校验 + 原始字段→规范 schema 转换),**输出仅含 xlsx 定义字段**的 `nodes.json`,不保留原始其他字段。 +2. **网络关系与效能评估**:基于节点与三元组数据,计算关系强度、过滤低置信边,评估任务网络效能,生成评价报告。 + +--- + +## 目录结构 + +``` +final/ +├── config/ +│ ├── config.yaml # 主配置文件(推荐) +│ └── config.json # 备选配置 +├── data/ +│ ├── raw_data_sample.json # 原始实体数据(JSON 模式) +│ ├── nodes.json # 清洗后实体(关系/网络计算用) +│ └── triples.json # 清洗后三元组(来自 run_all) +├── report/ +│ ├── detailed_cleaning_report.json # 实体清洗报告 +│ └── triplet_cleaning_report.json # 三元组清洗报告 +├── results/ +│ ├── filtered_triples.json # 过滤后三元组 +│ ├── triples.csv # 三元组表格 +│ └── evaluation_report.txt # 效能评价报告 +├── src/ +│ ├── main_227.py # 主程序(清洗 + 关系 + 网络评估) +│ ├── cleaner.py # 实体清洗 +│ ├── attribute_schema.py # 1125 属性规范:格式/内容校验 + 原始→规范转换 +│ ├── data_loader.py # 数据加载(JSON/达梦) +│ └── triplet_cleaner.py # 三元组清洗 +├── scripts/ +│ ├── run_all.py # 一键运行(仅清洗) +│ ├── export_triplets.py # 单独导出三元组 +│ ├── inspect_dm_tables.py # 达梦表结构查看 +│ ├── f_relation1125.py # 关系强度计算 +│ └── f_net1125.py # 任务网络评估 +├── .env.example +└── README.md +``` + +--- + +## 快速开始 + +### 1. 环境依赖 + +```bash +pip install -r requirements.txt +# 达梦模式需额外:pip install dmPython +``` + +### 2. 运行方式 + +| 命令 | 功能 | +|------|------| +| `python src/main_227.py` | **完整流程**:实体清洗 → 关系强度计算 → 网络效能评估 | +| `python scripts/run_all.py` | **仅清洗**:实体 + 三元组 读取、清洗、导出 | + +### 3. 开发模式(无达梦数据库) + +在 `config/config.yaml` 或 `config/config.json` 中设置: + +```yaml +source: json +``` + +然后运行: + +```bash +python src/main_227.py +``` + +程序会从 `data/raw_data_sample.json` 读取实体数据并清洗;关系/网络计算则从 `data/nodes.json` 和 `data/triples.json` 读取。 + +--- + +## 配置说明 + +### 必须修改的配置 + +根据你的环境,在 `config/config.yaml` 或 `config/config.json` 中修改以下项: + +| 配置项 | 说明 | 示例 | +|--------|------|------| +| `source` | 数据源:`json`(开发)或 `db`(达梦) | `json` | +| `db.host` | 达梦库地址(source=db 时) | `127.0.0.1` | +| `db.port` | 达梦端口 | `5080` | +| `db.user` | 达梦用户 | `SYSDBA` | +| `db.table` | 实体表名 | `OBJECTIVE_INSTANCE` | +| `db.triplet_table` | 三元组表名 | `RELATION_INSTANCE` | + +### 达梦密码(切勿写入配置) + +达梦模式需设置环境变量: + +```bash +export DM_PASSWORD=你的密码 +``` + +或在 PyCharm:Run → Edit Configurations → Environment variables → 添加 `DM_PASSWORD=你的密码`。 + +### 可选配置 + +| 配置项 | 说明 | 默认 | +|--------|------|------| +| `json.input_file` | 实体 JSON 路径 | `data/raw_data_sample.json` | +| `json.output_file` | 清洗后实体输出 | `data/nodes.json` | +| `triplet.enabled` | 是否处理三元组 | `true` | +| `triplet.input_file` | JSON 模式下三元组路径 | `null` | +| `triplet.output_file` | 三元组输出 | `data/triples.json` | +| `triplet.clean.deduplicate` | 三元组去重 | `true` | +| `triplet.clean.filter_orphans` | 过滤悬空引用 | `false` | +| `eval.nodes_file` | main_227 读取的节点文件 | `data/nodes.json` | +| `eval.triples_file` | main_227 读取的三元组文件 | `data/triples.json`(与 triplet.output_file 一致) | + +### 配置优先级 + +`config.json` 优先于 `config.yaml`;修改其一即可。 + +--- + +## 数据流程 + +### main_227.py 流程 + +``` +1. 实体清洗 + - 从 JSON 或达梦读 raw_data_sample / OBJECTIVE_INSTANCE + - 去重、缺失值填充、异常值修正、噪声平滑 + - 输出 nodes.json +2. 关系与网络评估 + - 按配置读取 nodes(eval.nodes_file / json.output_file)、triples(eval.triples_file = triplet.output_file) + - 计算 5 类关系强度(情报保障、指挥控制、状态反馈、平台部署、协同作战) + - 按阈值过滤关系 + - 评估 5 类任务网络效能 + - 输出 results/ 下报告与表格 +``` + +### run_all.py 流程 + +``` +1. 实体清洗 → data/nodes.json +2. 三元组清洗 → data/triples.json(格式:head, head_type, relation, tail, tail_type) +``` + +--- + +## 输出文件说明 + +| 文件 | 来源 | 说明 | +|------|------|------| +| `data/nodes.json` | 清洗 | 清洗后实体(`{nodes: {id: obj}, global_params: {mtbf_max}}`,见下文) | +| `data/triples.json` | run_all | 清洗后三元组(head/head_type/relation/tail/tail_type) | +| `report/detailed_cleaning_report.json` | 清洗 | 实体清洗统计(含 attribute_alignment:格式/内容对齐情况) | +| `report/triplet_cleaning_report.json` | run_all | 三元组清洗统计 | +| `results/filtered_triples.json` | main_227 | 过滤后三元组(含强度) | +| `results/triples.csv` | main_227 | 三元组表格 | +| `results/evaluation_report.txt` | main_227 | 效能评价报告 | + +--- + +## 常见问题 + +**Q: 运行报错「找不到文件 raw_data_sample.json」?** +A: 将 `source` 改为 `json`,并确保 `data/raw_data_sample.json` 存在;或检查 `json.input_file` 路径。 + +**Q: 达梦模式连接失败?** +A: 检查 `DM_PASSWORD` 环境变量、`db.host`/`db.port`,以及 dmPython 与达梦客户端是否正确安装。 + +**Q: main_227 中 nodes.json、triples.json 从哪来?** +A: `nodes.json`、`triples.json` 均由清洗步骤生成(run_all 或 main_227 前半段),格式需包含 `head`、`relation`、`tail` 等字段。 + +**Q: 如何查看达梦表结构?** +A: 运行 `python scripts/inspect_dm_tables.py`(需设置 `DM_PASSWORD`)。 + +**Q: nodes.json 为何没有 X、Y、ROLE_ID 等原始字段?** +A: 输出完全对齐 1125 xlsx 规范,仅保留 schema 定义的 12 个字段;原始字段在转换阶段已映射为 `spatial`、`org_unit` 等规范结构。 + +--- + +## 数据清洗详细逻辑 + +### 清洗流程概览 + +``` +原始数据 → 去重 → 缺失值填充 → 异常值修正 → 噪声平滑 → 1125 Schema 转换 → 关系计算前净化 → nodes.json +``` + +| 步骤 | 说明 | +|------|------| +| **去重** | 按 `TARGET_ID` 去重,优先保留 `CREATED_TIME` 最新的记录 | +| **缺失值填充** | 数值型字段按 `ROLE_ID` 分组均值填充,兜底用全局均值 | +| **异常值修正** | 对 `TARGET_RECOGNITION_CAPABILITY`、`STRIKE_ACCURACY`、`ANTI_JAMMING_CAPABILITY`、`ENVIRONMENT_ADAPTABILITY`、`MOBILITY` 等 [0,1] 字段:负值取绝对值、>1 截断为 1 | +| **噪声平滑** | 对 `COMMUNICATION_RANGE` 做 3 点移动平均 | +| **1125 Schema 转换** | 见下文字段映射,输出仅含规范字段 | +| **关系计算前净化** | 见下文「关系计算前净化」 | + +### 关系计算前净化(sanitize_node_for_relation_calc) + +下游 `f_relation1125` 及 `utils.py` 会对节点属性做数值运算(如欧氏距离、安全等级差、历史成功率平均),若字段为 `None` 会触发 `NoneType` 运算错误。因此在写入 `nodes.json` 前,对每条节点做最终净化,确保参与运算的字段**永不为 `None`**: + +| 净化项 | 处理方式 | +|--------|----------| +| `spatial.position` | 必须为 `[float, float]`,含 `None`/`NaN` 的元素替换为 `0.0` | +| `spatial.effective_radius` | 若为 `None`,设为 `1.0` | +| `temporal.*` | `time_window` 缺省 `24.0`,其余缺省 `1.0` | +| `security_level` | 若为 `None` 或越界,设为 `3`(1–5 范围) | +| `history_success` | 若为 `None`,设为 `0.8`(0–1 范围) | + +该步骤在 `attribute_schema.sanitize_node_for_relation_calc()` 中实现,由 `cleaner` 在写入前对每个节点调用。 + +### 输出字段说明 + +**nodes.json 完全对齐 xlsx 规范**,不保留原始其他字段。每条记录仅包含: + +| 字段 | 类型 | 说明 | +|------|------|------| +| `TARGET_ID` | 字符串 | 节点唯一标识(三元组 head/tail 引用所需) | +| `function_vector` | 字典 | 7 维功能能力 [0,1] | +| `spatial` | 字典 | 空间位置与有效半径 | +| `temporal` | 字典 | 时间相关属性 | +| `performance` | 字典 | 核心性能、生存能力、MTBF | +| `protocol_list` | 列表 | 支持协议(字符串列表) | +| `format_list` | 列表 | 支持格式(字符串列表) | +| `interface_list` | 列表 | 支持接口(字符串列表) | +| `security_level` | 整数 | 安全等级 [1,5],缺省 3(关系计算用) | +| `org_unit` | 字符串/null | 组织隶属 | +| `nation` | 字符串/null | 国家代码 | +| `history_success` | 浮点数 | 历史成功率 [0,1],缺省 0.8(关系计算用) | + +**nodes.json 整体结构**:`{ "nodes": { "TARGET_ID": {...}, ... }, "global_params": { "mtbf_max": number } }`,兼容 main_227 / f_relation1125 关系计算。 + +**单条节点记录示例:** + +```json +{ + "TARGET_ID": "FS-俄-情报侦-132", + "function_vector": { + "f_IC": 0.9273, "f_IA": 0.7896, "f_CS": 0.2584, "f_IT": 0.5187, + "f_DP": 0.9148, "f_CPS": 0.5619, "f_CC": 0.7822 + }, + "spatial": { "position": [79.36, 52.11], "effective_radius": 94.96 }, + "temporal": { "response_time": 23.3891, "cycle_time": 3.7, "data_age": 1.48, "time_window": 3.7 }, + "performance": { "core_performance": 0.9831, "survivability": 0.4094, "mtbf": 0.7202 }, + "protocol_list": [], "format_list": [], "interface_list": [], + "security_level": 3, "org_unit": "师级", "nation": "俄", "history_success": 0.8 +} +``` + +--- + +## 属性对齐与字段转换(1125 规范) + +依据 `1125暂时属性需求(1).xlsx`,对每条记录做 **内容与格式的双重对齐**: + +- **格式校验**:各字段类型与结构(dict/list/scalar) +- **内容校验**:取值范围(如 [0,1]、[1,5]) +- **转换**:原始扁平字段 → 规范 schema + +清洗报告中 `details.attribute_alignment` 记录格式/内容错误统计及示例。 + +### 原始字段 → 目标 Schema 映射 + +#### function_vector(功能向量) + +每个维度取 [0,1] 浮点数,从原始能力字段推导: + +| 目标维度 | 原始字段(按优先级) | 转换方式 | +|----------|----------------------|----------| +| f_IC 情报收集 | DETECTION_ACCURACY, TARGET_RECOGNITION_CAPABILITY | 取第一个有效值,clamp 到 [0,1] | +| f_IA 信息分析 | INFORMATION_FUSION_CAPABILITY, DETECTION_ACCURACY | 同上 | +| f_CS 协同作战 | MOBILITY, ENVIRONMENT_ADAPTABILITY | 同上 | +| f_IT 信息传输 | ANTI_JAMMING_CAPABILITY | 同上 | +| f_DP 数据处理 | PROCESSING_CAPACITY, INFORMATION_FUSION_CAPABILITY | **固定参考值**:见下表 | +| f_CPS 指挥控制 | DECISION_RESPONSE_TIME | **固定参考值**:见下表 | +| f_CC 综合保障 | SUPPORT_CAPACITY, LOAD_CAPACITY | **固定参考值**:见下表 | + +**固定参考值转换公式**(原始值不在 [0,1] 时使用): + +| 维度 | 公式 | 参数说明 | +|------|------|----------| +| **f_CPS** | `1 / (1 + t/30)` | t = 响应时间(秒),响应越快能力越高 | +| **f_DP** | `log10(1+PC) / log10(10001)` | PC = PROCESSING_CAPACITY;无则用 INFORMATION_FUSION_CAPABILITY clamp [0,1] | +| **f_CC** | `0.6×support_norm + 0.4×load_norm` | support_norm = log10(1+SUPPORT)/log10(10001),load_norm = LOAD/100;仅一个有时取该值 | + +#### spatial(空间属性) + +| 目标字段 | 原始字段(按优先级) | 转换 | +|----------|----------------------|------| +| position | `position`(列表 [x,y])、`X`/`x`+`Y`/`y`、`POSITION_X`/`POSITION_Y`、`LONGITUDE`/`LATITUDE` | `[round(x,2), round(y,2)]`,`None`/`NaN` 替为 `0.0`,兼容达梦多种列名 | +| effective_radius | COMMUNICATION_RANGE | 原值保留 4 位小数,缺省 `1.0` | + +#### temporal(时间属性) + +| 目标字段 | 原始字段 | 转换 | +|----------|----------|------| +| response_time | DECISION_RESPONSE_TIME | 原值 | +| cycle_time | REFRESH_RATE | 原值 | +| data_age | TRANSMISSION_DELAY | 原值(近似数据新鲜度) | +| time_window | REFRESH_RATE | 原值 | + +#### performance(性能属性) + +| 目标字段 | 原始字段(按优先级) | 转换 | +|----------|----------------------|------| +| core_performance | STRIKE_ACCURACY, DETECTION_ACCURACY, MOBILITY | 取第一个有效值,clamp [0,1] | +| survivability | ENVIRONMENT_ADAPTABILITY, ANTI_JAMMING_CAPABILITY | 同上 | +| mtbf | RELIABILITY, SYSTEM_RELIABILITY | 取第一个有效值 | + +#### 其他标量字段 + +| 目标字段 | 原始字段 | 转换 | +|----------|----------|------| +| protocol_list | PROTOCOL | 字符串→列表,空则 `[]` | +| format_list | FORMAT | 同上 | +| interface_list | INTERFACE | 同上 | +| security_level | security_level, SECURITY_LEVEL | 整数 [1,5],缺省 `3`(避免关系计算时 `None` 运算错误) | +| org_unit | LEVEL, ROLE_ID | 取第一个非空字符串 | +| nation | COUNTRY_REGION | 原值 | +| history_success | history_success, HISTORY_SUCCESS | clamp [0,1],缺省 `0.8`(同上) | + +### 缺失与空值 + +- 无可映射原始值时,多数目标字段为 `null`(列表型为 `[]`) +- `security_level`、`history_success`、`spatial.position` 等参与关系运算的字段**永不为 `null`**:缺省分别为 `3`、`0.8`、`[0,0]`,并在「关系计算前净化」阶段再次保证 +- 可选字段(如 `org_unit`、`nation`)缺失不影响记录通过校验 diff --git a/final/config/config.json b/final/config/config.json new file mode 100644 index 0000000..aabd80f --- /dev/null +++ b/final/config/config.json @@ -0,0 +1,86 @@ +{ + "source": "json", + "json": { + "input_file": "data/raw_data_sample.json", + "output_file": "data/nodes.json", + "report_file": "report/detailed_cleaning_report.json" + }, + "triplet": { + "enabled": true, + "input_file": null, + "output_file": "data/triples.json", + "report_file": "report/triplet_cleaning_report.json", + "clean": { + "deduplicate": true, + "remove_null_core": true, + "normalize_relation_type": true, + "filter_orphans": false + } + }, + "db": { + "host": "127.0.0.1", + "port": 5080, + "user": "SYSDBA", + "schema": "SYSDBA", + "table": "OBJECTIVE_INSTANCE", + "query": null, + "triplet_table": "RELATION_INSTANCE", + "triplet_query": null + }, + "formal": { + "enabled": false, + "user_id": "ADMIN", + "task_id": "TASK_FULL_KB", + "source_sys_type": "关系推理后的体系", + "target_sys_type": "形式化后的体系", + "source_query": null, + "user_column": "USER_ID", + "task_column": "TASK_ID", + "sys_type_column": "SYS_TYPE", + "skip_sys_type_validation": false, + "entity_id_column": "TARGET_ID", + "objective_table": "OBJECTIVE_INSTANCE", + "triplet_table": "RELATION_INSTANCE", + "triplet_primary_key": "RELATION_INSTANCE_ID", + "triplet_omit_primary_key_on_insert": true, + "triple_batch_column": "BATCH_ID", + "attribute_table": "METRIC_VALUE_INSTANCE", + "metric_id_column": "METRIC_ID", + "metric_value_column": "METRIC_VALUE", + "metric_insert_static": null, + "formal_result_table": "RELATION_INSTANCE", + "analysis_table": "RES_FORMAL_ANALYSIS", + "analysis_insert_columns": null, + "analysis_static_columns": null, + "rules_summary": null, + "required_attrs": [ + "f_IC", + "f_IA", + "f_CS", + "f_IT", + "f_DP", + "f_CPS", + "f_CC", + "position", + "effective_radius", + "response_time", + "cycle_time", + "data_age", + "time_window", + "core_performance", + "survivability", + "mtbf", + "protocol_list", + "format_list", + "interface_list", + "security_level", + "org_unit", + "nation", + "history_success" + ] + }, + "eval": { + "nodes_file": "data/nodes.json", + "triples_file": "data/triples.json" + } +} \ No newline at end of file diff --git a/final/config/config.yaml b/final/config/config.yaml new file mode 100644 index 0000000..cc356e7 --- /dev/null +++ b/final/config/config.yaml @@ -0,0 +1,96 @@ +# 数据清洗系统配置文件 +# 通过 source 切换:json(开发) / db(生产-达梦) + +source: json # 开发用 json;部署达梦时改为 db(或直接改 config.json) + +# JSON 文件模式(source=json 时生效) +json: + input_file: data/raw_data_sample.json + output_file: data/nodes.json + report_file: report/detailed_cleaning_report.json + +# 网络关系/效能评估读取路径(main_227 在清洗后加载) +eval: + nodes_file: data/nodes.json # 与 json.output_file 一致(清洗输出) + triples_file: data/triples.json # 与 triplet.output_file 一致(run_all 输出) + +# 三元组(run_all 时一并处理;db 模式从库读,json 模式可配 input_file) +triplet: + enabled: true # false 可关闭三元组处理 + input_file: null # json 模式下可选,如 data/triplets_raw.json + output_file: data/triples.json # 与 eval.triples_file 一致,便于 main_227 直接读取 + report_file: report/triplet_cleaning_report.json + # 清洗配置:clean: false 关闭清洗;true 使用默认;或自定义子项 + clean: + deduplicate: true # 按 (HEAD_ID, RELATION_TYPE, TAIL_ID) 去重 + remove_null_core: true # 移除 HEAD_ID/TAIL_ID/RELATION_TYPE 为空的记录 + normalize_relation_type: true # 规范化 RELATION_TYPE(去空格) + filter_orphans: false # 过滤悬空引用(需加载实体表,稍慢) + +# 达梦数据库模式(source=db 时生效) +# 密码通过环境变量 DM_PASSWORD 传入,切勿写入配置文件 +db: + host: 127.0.0.1 + port: 5080 + user: SYSDBA + schema: SYSDBA + # OBJECTIVE_INSTANCE 表结构与 raw_data_sample.json 一致,直接查询即可 + table: OBJECTIVE_INSTANCE + query: null + # 三元组表(RELATION_INSTANCE: HEAD_ID, RELATION_TYPE, TAIL_ID) + triplet_table: RELATION_INSTANCE + triplet_query: null # 可选:自定义 SQL + +# 模块1.3 形式化入库流程(source=db 时生效) +formal: + enabled: false + user_id: ADMIN + task_id: TASK_FULL_KB + source_sys_type: 关系推理后的体系 + target_sys_type: 形式化后的体系 + # 推荐:显式 SQL 只读「关系推理后的体系」,列名与库一致时最稳(为 null 则用下方列名拼 WHERE) + source_query: null + user_column: USER_ID + task_column: TASK_ID + sys_type_column: SYS_TYPE + skip_sys_type_validation: false + entity_id_column: TARGET_ID + objective_table: OBJECTIVE_INSTANCE + triplet_table: RELATION_INSTANCE + triplet_primary_key: RELATION_INSTANCE_ID + triplet_omit_primary_key_on_insert: true + triple_batch_column: BATCH_ID + attribute_table: METRIC_VALUE_INSTANCE + metric_id_column: METRIC_ID + metric_value_column: METRIC_VALUE + metric_insert_static: null + formal_result_table: RELATION_INSTANCE + analysis_table: RES_FORMAL_ANALYSIS + # 若自动匹配列失败,在此列出 RES_FORMAL_ANALYSIS 的实际列名(顺序与 VALUES 一致) + analysis_insert_columns: null + analysis_static_columns: null + rules_summary: null + required_attrs: + - f_IC + - f_IA + - f_CS + - f_IT + - f_DP + - f_CPS + - f_CC + - position + - effective_radius + - response_time + - cycle_time + - data_age + - time_window + - core_performance + - survivability + - mtbf + - protocol_list + - format_list + - interface_list + - security_level + - org_unit + - nation + - history_success diff --git a/final/data/cleaned_data_final.json b/final/data/cleaned_data_final.json new file mode 100644 index 0000000..0f9ce44 --- /dev/null +++ b/final/data/cleaned_data_final.json @@ -0,0 +1,7002 @@ +[ + { + "ID": 132, + "TARGET_ID": "FS-俄-情报侦-132", + "TARGET_NAME": "侦察机师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": 79.36, + "Y": 52.11, + "COMMUNICATION_RANGE": 94.96, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.25838704606599217, + "ENVIRONMENT_ADAPTABILITY": 0.40944779235306994, + "ANTI_JAMMING_CAPABILITY": 0.5187126139085138, + "DETECTION_RANGE": 430.99590881572885, + "DETECTION_ACCURACY": 0.9273183360354136, + "REFRESH_RATE": 3.7, + "TRANSMISSION_DELAY": 1.48, + "RELIABILITY": 0.7201663499950727, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-25 10:20:40.773806" + }, + { + "ID": 42, + "TARGET_ID": "FS-法-后勤保-042", + "TARGET_NAME": "医疗站旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": 19.54, + "Y": 39.4, + "COMMUNICATION_RANGE": 60.23, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5336058782162458, + "ENVIRONMENT_ADAPTABILITY": 0.6611669374560885, + "ANTI_JAMMING_CAPABILITY": 0.43985141347577034, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 76.5, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 82.1, + "SUPPORT_CAPACITY": 3262.0, + "CREATED_TIME": "2025-11-22 10:20:40.769839" + }, + { + "ID": 144, + "TARGET_ID": "FS-法-协同打-144", + "TARGET_NAME": "无人机群军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": 142.64, + "Y": -2.03, + "COMMUNICATION_RANGE": 60.37, + "WEIGHT": 51.5, + "AREA": 83.0, + "MOBILITY": 0.765856934242531, + "ENVIRONMENT_ADAPTABILITY": 0.6780064891870266, + "ANTI_JAMMING_CAPABILITY": 0.7318538801286802, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 102.74174414980305, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 31.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-21 10:20:40.774316" + }, + { + "ID": 25, + "TARGET_ID": "FS-俄-指挥控-025", + "TARGET_NAME": "数据中心旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "指挥协调任务", + "X": -64.34, + "Y": -83.34, + "COMMUNICATION_RANGE": 100.62, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.43407700483050526, + "ENVIRONMENT_ADAPTABILITY": 0.5534862235609791, + "ANTI_JAMMING_CAPABILITY": 0.8187008350255001, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.55, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 2.3, + "PROCESSING_CAPACITY": 3995.0, + "INFORMATION_FUSION_CAPABILITY": 0.9353176004184331, + "SYSTEM_RELIABILITY": 0.7360740164970635, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-19 10:20:40.769437" + }, + { + "ID": 39, + "TARGET_ID": "FS-中-情报侦-039", + "TARGET_NAME": "侦察卫星营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "情报侦察", + "TASK_ID": "侦察监视任务", + "X": -39.98, + "Y": -29.19, + "COMMUNICATION_RANGE": 178.9, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.9456373719448737, + "ENVIRONMENT_ADAPTABILITY": 0.06473844418050001, + "ANTI_JAMMING_CAPABILITY": 0.5979707905948968, + "DETECTION_RANGE": 171.09528712959238, + "DETECTION_ACCURACY": 1.0222571425311862, + "REFRESH_RATE": 9.7, + "TRANSMISSION_DELAY": 0.14, + "RELIABILITY": 0.6863499891188701, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-18 10:20:40.769770" + }, + { + "ID": 67, + "TARGET_ID": "FS-英-情报侦-067", + "TARGET_NAME": "电子侦察站军级", + "COUNTRY_REGION": "英", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "信息传输任务", + "X": 177.46, + "Y": -88.55, + "COMMUNICATION_RANGE": 174.42, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.6489007588351082, + "ENVIRONMENT_ADAPTABILITY": 0.9644539649972873, + "ANTI_JAMMING_CAPABILITY": 0.37813761918239486, + "DETECTION_RANGE": 188.06031285347055, + "DETECTION_ACCURACY": 0.8310209500883896, + "REFRESH_RATE": 5.9, + "TRANSMISSION_DELAY": 1.75, + "RELIABILITY": 0.8142507192201216, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-17 10:20:40.770470" + }, + { + "ID": 190, + "TARGET_ID": "FS-美-情报侦-190", + "TARGET_NAME": null, + "COUNTRY_REGION": "美", + "LEVEL": "团级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": 108.79, + "Y": 8.91, + "COMMUNICATION_RANGE": 123.64, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.07677423153109397, + "ENVIRONMENT_ADAPTABILITY": 0.3267375257079822, + "ANTI_JAMMING_CAPABILITY": 0.04104810752145527, + "DETECTION_RANGE": 136.84171503693375, + "DETECTION_ACCURACY": 0.7058598191391376, + "REFRESH_RATE": 7.3, + "TRANSMISSION_DELAY": 1.4, + "RELIABILITY": 0.6729237169648675, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-14 10:20:40.775867" + }, + { + "ID": 50, + "TARGET_ID": "FS-法-协同打-050", + "TARGET_NAME": "无人机群师级", + "COUNTRY_REGION": "法", + "LEVEL": "师级", + "ROLE_ID": "协同打击", + "TASK_ID": "侦察监视任务", + "X": 15.8, + "Y": -76.51, + "COMMUNICATION_RANGE": 58.22, + "WEIGHT": 71.8, + "AREA": 182.0, + "MOBILITY": 0.7946343491570269, + "ENVIRONMENT_ADAPTABILITY": 0.739303558837506, + "ANTI_JAMMING_CAPABILITY": 0.42469081437191947, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 12.054998256510109, + "STRIKE_ACCURACY": 0.9543405215191566, + "AMMUNITION_RESERVE": 41.0, + "TARGET_RECOGNITION_CAPABILITY": 0.5960187236877087, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-14 10:20:40.770028" + }, + { + "ID": 23, + "TARGET_ID": "FS-英-情报侦-023", + "TARGET_NAME": "侦察机营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "情报侦察", + "TASK_ID": "侦察监视任务", + "X": 167.18, + "Y": -10.138125, + "COMMUNICATION_RANGE": 111.32, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.2724943460061504, + "ENVIRONMENT_ADAPTABILITY": 0.15215221284705205, + "ANTI_JAMMING_CAPABILITY": 0.0638175488713183, + "DETECTION_RANGE": 179.44000179908875, + "DETECTION_ACCURACY": 0.9434737548691507, + "REFRESH_RATE": 6.2, + "TRANSMISSION_DELAY": 1.81, + "RELIABILITY": 0.9081946997805146, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-14 10:20:40.769389" + }, + { + "ID": 93, + "TARGET_ID": "FS-中-协同打-093", + "TARGET_NAME": "电子战飞机营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": 160.1, + "Y": 6.340789473684209, + "COMMUNICATION_RANGE": 121.51, + "WEIGHT": 48.4, + "AREA": 100.0, + "MOBILITY": 0.4460615438902422, + "ENVIRONMENT_ADAPTABILITY": 0.8856882657130101, + "ANTI_JAMMING_CAPABILITY": 0.602710019923943, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 27.11582696292802, + "STRIKE_ACCURACY": 0.6088956173914737, + "AMMUNITION_RESERVE": 31.0, + "TARGET_RECOGNITION_CAPABILITY": 0.6537874094459892, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-11 10:20:40.771326" + }, + { + "ID": 68, + "TARGET_ID": "FS-中-后勤保-068", + "TARGET_NAME": "油料库旅级", + "COUNTRY_REGION": "中", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": -27.79, + "Y": -11.05, + "COMMUNICATION_RANGE": 111.95, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.7617780649374528, + "ENVIRONMENT_ADAPTABILITY": 0.4717973727531308, + "ANTI_JAMMING_CAPABILITY": 0.5085405001618835, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 93.4, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 54.4, + "SUPPORT_CAPACITY": 488.0, + "CREATED_TIME": "2025-11-11 10:20:40.770493" + }, + { + "ID": 156, + "TARGET_ID": "FS-美-火力打-156", + "TARGET_NAME": "战斗机大队旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "火力打击任务", + "X": -72.97, + "Y": 76.42, + "COMMUNICATION_RANGE": 68.62, + "WEIGHT": 44.5, + "AREA": 207.0, + "MOBILITY": 0.3799897189606485, + "ENVIRONMENT_ADAPTABILITY": 0.94583943968649, + "ANTI_JAMMING_CAPABILITY": 0.9836252504241725, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 78.48555563919452, + "STRIKE_ACCURACY": 0.5439619568467536, + "AMMUNITION_RESERVE": 28.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8869593801185574, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-09 10:20:40.774669" + }, + { + "ID": 158, + "TARGET_ID": "FS-俄-指挥控-158", + "TARGET_NAME": "指挥所旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "后勤支援任务", + "X": -15.38, + "Y": 4.63, + "COMMUNICATION_RANGE": 184.9, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.2218689670744981, + "ENVIRONMENT_ADAPTABILITY": 0.606969885228364, + "ANTI_JAMMING_CAPABILITY": 0.6837718304112365, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.39, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 3.6, + "PROCESSING_CAPACITY": 603.0, + "INFORMATION_FUSION_CAPABILITY": 0.7892570682998674, + "SYSTEM_RELIABILITY": 0.7290654450749515, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-08 10:20:40.774752" + }, + { + "ID": 4, + "TARGET_ID": "FS-法-情报侦-004", + "TARGET_NAME": "侦察机旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "情报侦察", + "TASK_ID": "信息传输任务", + "X": -47.01, + "Y": -18.1, + "COMMUNICATION_RANGE": 192.82, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.7730900952231743, + "ENVIRONMENT_ADAPTABILITY": 0.04102950493974, + "ANTI_JAMMING_CAPABILITY": 0.5540146511979371, + "DETECTION_RANGE": 465.1939894253243, + "DETECTION_ACCURACY": 1.1617841284419155, + "REFRESH_RATE": 6.8, + "TRANSMISSION_DELAY": 0.89, + "RELIABILITY": 0.6911348625498234, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-11-07 10:20:40.768847" + }, + { + "ID": 148, + "TARGET_ID": "FS-俄-平台部-148", + "TARGET_NAME": null, + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "平台部署", + "TASK_ID": "指挥协调任务", + "X": 30.64, + "Y": -22.45, + "COMMUNICATION_RANGE": 207.31, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.857623838123229, + "ANTI_JAMMING_CAPABILITY": 0.677425994087591, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 46243.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 9728.0, + "CREATED_TIME": "2025-11-03 10:20:40.774452" + }, + { + "ID": 27, + "TARGET_ID": "FS-英-平台部-027", + "TARGET_NAME": "前进阵地军级", + "COUNTRY_REGION": "英", + "LEVEL": "军级", + "ROLE_ID": "平台部署", + "TASK_ID": "后勤支援任务", + "X": 159.79, + "Y": -23.05, + "COMMUNICATION_RANGE": 81.42, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.595379679698246, + "ANTI_JAMMING_CAPABILITY": 0.6852882897522008, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 20290.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3606.0, + "CREATED_TIME": "2025-11-02 10:20:40.769485" + }, + { + "ID": 61, + "TARGET_ID": "FS-俄-协同打-061", + "TARGET_NAME": "预警指挥机军级", + "COUNTRY_REGION": "俄", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "信息传输任务", + "X": -47.15, + "Y": 81.75, + "COMMUNICATION_RANGE": 90.37, + "WEIGHT": 27.5, + "AREA": 82.0, + "MOBILITY": 0.8627476147728876, + "ENVIRONMENT_ADAPTABILITY": 0.5960443287508776, + "ANTI_JAMMING_CAPABILITY": 0.47079167793577587, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 65.7470956639839, + "STRIKE_ACCURACY": 0.9722169158379458, + "AMMUNITION_RESERVE": 39.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-30 10:20:40.770338" + }, + { + "ID": 44, + "TARGET_ID": "FS-法-指挥控-044", + "TARGET_NAME": "数据中心旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "火力打击任务", + "X": 163.96, + "Y": -85.57, + "COMMUNICATION_RANGE": 165.38, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.2880666420917332, + "ENVIRONMENT_ADAPTABILITY": 0.8602687407985335, + "ANTI_JAMMING_CAPABILITY": 0.585907528415675, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.54, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 14.0, + "PROCESSING_CAPACITY": 6097.0, + "INFORMATION_FUSION_CAPABILITY": 0.5572212379938524, + "SYSTEM_RELIABILITY": 0.8833953812579285, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-30 10:20:40.769889" + }, + { + "ID": 143, + "TARGET_ID": "FS-俄-平台部-143", + "TARGET_NAME": "基地营级", + "COUNTRY_REGION": "俄", + "LEVEL": "营级", + "ROLE_ID": "平台部署", + "TASK_ID": "后勤支援任务", + "X": 111.0, + "Y": -55.13, + "COMMUNICATION_RANGE": 202.51, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.613342234884026, + "ANTI_JAMMING_CAPABILITY": 0.6749956629684939, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 26500.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 2857.0, + "CREATED_TIME": "2025-10-28 10:20:40.774286" + }, + { + "ID": 98, + "TARGET_ID": "FS-法-火力打-098", + "TARGET_NAME": "自行火炮营旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "信息传输任务", + "X": 108.94, + "Y": 87.44, + "COMMUNICATION_RANGE": 194.27, + "WEIGHT": 27.3, + "AREA": 138.0, + "MOBILITY": 0.7585377480252092, + "ENVIRONMENT_ADAPTABILITY": 0.39000143936218146, + "ANTI_JAMMING_CAPABILITY": 0.46525557665053496, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 90.28918932513994, + "STRIKE_ACCURACY": 0.7843641578807795, + "AMMUNITION_RESERVE": 31.0, + "TARGET_RECOGNITION_CAPABILITY": 0.4896065278429844, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-28 10:20:40.771449" + }, + { + "ID": 161, + "TARGET_ID": "FS-俄-平台部-161", + "TARGET_NAME": "机场团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "平台部署", + "TASK_ID": "侦察监视任务", + "X": 154.47, + "Y": -33.09, + "COMMUNICATION_RANGE": 106.99, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.8989800182513565, + "ANTI_JAMMING_CAPABILITY": 0.7877613525404472, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 3928.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 4618.0, + "CREATED_TIME": "2025-10-26 10:20:40.774887" + }, + { + "ID": 131, + "TARGET_ID": "FS-法-后勤保-131", + "TARGET_NAME": "维修站师级", + "COUNTRY_REGION": "法", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": -103.8, + "Y": -34.11, + "COMMUNICATION_RANGE": 57.36, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.6188826507540406, + "ENVIRONMENT_ADAPTABILITY": 0.8344834185126728, + "ANTI_JAMMING_CAPABILITY": 0.745260147644442, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 34.2, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 91.8, + "SUPPORT_CAPACITY": 3854.0, + "CREATED_TIME": "2025-10-24 10:20:40.773777" + }, + { + "ID": 36, + "TARGET_ID": "FS-法-指挥控-036", + "TARGET_NAME": "通信中继站旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "信息传输任务", + "X": 57.85, + "Y": 89.63, + "COMMUNICATION_RANGE": 108.56, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.1247645766772233, + "ENVIRONMENT_ADAPTABILITY": 0.7669804603713722, + "ANTI_JAMMING_CAPABILITY": 0.6629499396353662, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.29, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 19.8, + "PROCESSING_CAPACITY": 5952.0, + "INFORMATION_FUSION_CAPABILITY": 1.0027493210251657, + "SYSTEM_RELIABILITY": 0.6250685354023928, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-24 10:20:40.769703" + }, + { + "ID": 33, + "TARGET_ID": "FS-中-情报侦-033", + "TARGET_NAME": "电子侦察站营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": 4.18, + "Y": -8.62, + "COMMUNICATION_RANGE": 143.26, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4751050195175336, + "ENVIRONMENT_ADAPTABILITY": 0.9896508618806358, + "ANTI_JAMMING_CAPABILITY": 0.3020125565640992, + "DETECTION_RANGE": 222.91738937793258, + "DETECTION_ACCURACY": 0.8728661578303576, + "REFRESH_RATE": 9.7, + "TRANSMISSION_DELAY": 0.9, + "RELIABILITY": 0.9686394723022074, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-24 10:20:40.769633" + }, + { + "ID": 112, + "TARGET_ID": "FS-英-指挥控-112", + "TARGET_NAME": "指挥所旅级", + "COUNTRY_REGION": "英", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "信息传输任务", + "X": 5.95, + "Y": -88.13, + "COMMUNICATION_RANGE": 218.4, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.21073366733616722, + "ENVIRONMENT_ADAPTABILITY": 0.45034022343831726, + "ANTI_JAMMING_CAPABILITY": 0.6016818132812409, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.77, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 18.6, + "PROCESSING_CAPACITY": 6130.0, + "INFORMATION_FUSION_CAPABILITY": 0.5478038610620977, + "SYSTEM_RELIABILITY": 0.9666419933398582, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-21 10:20:40.771876" + }, + { + "ID": 21, + "TARGET_ID": "FS-美-情报侦-021", + "TARGET_NAME": "电子侦察站旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "情报侦察", + "TASK_ID": "侦察监视任务", + "X": 64.31, + "Y": 29.5, + "COMMUNICATION_RANGE": 174.54, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.16980628774940956, + "ENVIRONMENT_ADAPTABILITY": 0.34507934182786404, + "ANTI_JAMMING_CAPABILITY": 0.3964318518424311, + "DETECTION_RANGE": 422.2322840212703, + "DETECTION_ACCURACY": 1.1396967179785364, + "REFRESH_RATE": 4.3, + "TRANSMISSION_DELAY": 1.69, + "RELIABILITY": 0.5429869513187722, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-21 10:20:40.769330" + }, + { + "ID": 175, + "TARGET_ID": "FS-俄-后勤保-175", + "TARGET_NAME": "维修站军级", + "COUNTRY_REGION": "俄", + "LEVEL": "军级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": -30.69, + "Y": 4.2, + "COMMUNICATION_RANGE": 123.41, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5349981796608418, + "ENVIRONMENT_ADAPTABILITY": 0.8353890468249829, + "ANTI_JAMMING_CAPABILITY": 0.7642685590856566, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 44.6, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 112.5, + "SUPPORT_CAPACITY": 3008.0, + "CREATED_TIME": "2025-10-20 10:20:40.775437" + }, + { + "ID": 135, + "TARGET_ID": "FS-法-火力打-135", + "TARGET_NAME": "自行火炮营旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "后勤支援任务", + "X": 65.85, + "Y": -57.06, + "COMMUNICATION_RANGE": 48.62, + "WEIGHT": 76.8, + "AREA": 140.0, + "MOBILITY": 0.5381447736416063, + "ENVIRONMENT_ADAPTABILITY": 0.8573358645976028, + "ANTI_JAMMING_CAPABILITY": 0.7365723943721265, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 75.25988820524987, + "STRIKE_ACCURACY": 0.8127349793924271, + "AMMUNITION_RESERVE": 20.0, + "TARGET_RECOGNITION_CAPABILITY": 0.5134465445708659, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-19 10:20:40.773930" + }, + { + "ID": 121, + "TARGET_ID": "FS-美-协同打-121", + "TARGET_NAME": "无人机群营级", + "COUNTRY_REGION": "美", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "后勤支援任务", + "X": -64.59, + "Y": -76.6, + "COMMUNICATION_RANGE": 55.65, + "WEIGHT": 29.5, + "AREA": 118.0, + "MOBILITY": 0.30134906997092464, + "ENVIRONMENT_ADAPTABILITY": 0.9316357099395394, + "ANTI_JAMMING_CAPABILITY": 0.8001952943137118, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 31.302047827649133, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 12.0, + "TARGET_RECOGNITION_CAPABILITY": 0.43123538917537196, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-12 10:20:40.772685" + }, + { + "ID": 10, + "TARGET_ID": "FS-英-后勤保-010", + "TARGET_NAME": "油料库旅级", + "COUNTRY_REGION": "英", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "后勤支援任务", + "X": -145.98, + "Y": 30.49, + "COMMUNICATION_RANGE": 61.82, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.3319260303744972, + "ENVIRONMENT_ADAPTABILITY": 0.6768906709538515, + "ANTI_JAMMING_CAPABILITY": 0.3200027639697409, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 86.7, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 168.1, + "SUPPORT_CAPACITY": 4273.0, + "CREATED_TIME": "2025-10-11 10:20:40.769004" + }, + { + "ID": 182, + "TARGET_ID": "FS-法-后勤保-182", + "TARGET_NAME": "医疗站师级", + "COUNTRY_REGION": "法", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "火力打击任务", + "X": -36.09, + "Y": -66.4, + "COMMUNICATION_RANGE": 68.06, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.7216870637120372, + "ENVIRONMENT_ADAPTABILITY": 0.7855332128964372, + "ANTI_JAMMING_CAPABILITY": 0.396172776481654, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 72.2, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 197.2, + "SUPPORT_CAPACITY": 1827.0, + "CREATED_TIME": "2025-10-09 10:20:40.775616" + }, + { + "ID": 149, + "TARGET_ID": "FS-俄-指挥控-149", + "TARGET_NAME": "数据中心军级", + "COUNTRY_REGION": "俄", + "LEVEL": "军级", + "ROLE_ID": "指挥控制", + "TASK_ID": "信息传输任务", + "X": -40.08, + "Y": -48.24, + "COMMUNICATION_RANGE": 149.92, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.49445267470335413, + "ENVIRONMENT_ADAPTABILITY": 0.701945471078826, + "ANTI_JAMMING_CAPABILITY": 0.6743569556551019, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.45, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 1.3, + "PROCESSING_CAPACITY": 300.0, + "INFORMATION_FUSION_CAPABILITY": 1.230509496205383, + "SYSTEM_RELIABILITY": 0.8753282038338506, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-09 10:20:40.774475" + }, + { + "ID": 80, + "TARGET_ID": "FS-英-火力打-080", + "TARGET_NAME": "战斗机大队营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "后勤支援任务", + "X": 167.98, + "Y": 38.37, + "COMMUNICATION_RANGE": 158.71, + "WEIGHT": 48.3, + "AREA": 232.0, + "MOBILITY": 0.9478793158265648, + "ENVIRONMENT_ADAPTABILITY": 0.6096434576100784, + "ANTI_JAMMING_CAPABILITY": 0.9466681753853008, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 31.855867574875322, + "STRIKE_ACCURACY": 0.5407351305686875, + "AMMUNITION_RESERVE": 6.0, + "TARGET_RECOGNITION_CAPABILITY": 0.98414739654503, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-09 10:20:40.770789" + }, + { + "ID": 104, + "TARGET_ID": "FS-英-协同打-104", + "TARGET_NAME": "电子战飞机营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": -115.03, + "Y": 56.36, + "COMMUNICATION_RANGE": 166.53, + "WEIGHT": 49.5, + "AREA": 260.0, + "MOBILITY": 1.0, + "ENVIRONMENT_ADAPTABILITY": 0.9678640318462863, + "ANTI_JAMMING_CAPABILITY": 0.9434578953099573, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 39.06615396987252, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 40.0, + "TARGET_RECOGNITION_CAPABILITY": 0.9020159457301223, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-06 10:20:40.771593" + }, + { + "ID": 101, + "TARGET_ID": "FS-法-指挥控-101", + "TARGET_NAME": "指挥所军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "指挥控制", + "TASK_ID": "侦察监视任务", + "X": 108.99, + "Y": -32.27, + "COMMUNICATION_RANGE": 154.03, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.1852127877931003, + "ENVIRONMENT_ADAPTABILITY": 0.8133376230185234, + "ANTI_JAMMING_CAPABILITY": 0.789404079705013, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.7, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 11.7, + "PROCESSING_CAPACITY": 3178.0, + "INFORMATION_FUSION_CAPABILITY": 0.9020383020719778, + "SYSTEM_RELIABILITY": 0.7582777719369205, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-06 10:20:40.771519" + }, + { + "ID": 45, + "TARGET_ID": "FS-俄-平台部-045", + "TARGET_NAME": "机场团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "平台部署", + "TASK_ID": "信息传输任务", + "X": 69.8, + "Y": -3.7, + "COMMUNICATION_RANGE": 166.48, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.8975349704851154, + "ANTI_JAMMING_CAPABILITY": 0.6497422051485847, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 31888.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 642.0, + "CREATED_TIME": "2025-10-06 10:20:40.769912" + }, + { + "ID": 200, + "TARGET_ID": "FS-中-情报侦-200", + "TARGET_NAME": "侦察卫星师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": -30.22, + "Y": -36.6, + "COMMUNICATION_RANGE": 242.15, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.23137275359818069, + "ENVIRONMENT_ADAPTABILITY": 0.496176057324478, + "ANTI_JAMMING_CAPABILITY": 0.058605551328093086, + "DETECTION_RANGE": 341.24413541311117, + "DETECTION_ACCURACY": 1.138087741175668, + "REFRESH_RATE": 3.9, + "TRANSMISSION_DELAY": 1.49, + "RELIABILITY": 0.6419250794372725, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-10-04 10:20:40.776203" + }, + { + "ID": 169, + "TARGET_ID": "FS-法-指挥控-169", + "TARGET_NAME": "通信中继站军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "指挥控制", + "TASK_ID": "信息传输任务", + "X": 76.74, + "Y": -15.33, + "COMMUNICATION_RANGE": 200.36, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4804791865895252, + "ENVIRONMENT_ADAPTABILITY": 0.49240957836018606, + "ANTI_JAMMING_CAPABILITY": 0.5346423518120389, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.32, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 12.4, + "PROCESSING_CAPACITY": 6062.0, + "INFORMATION_FUSION_CAPABILITY": 1.056307386409116, + "SYSTEM_RELIABILITY": 0.8367170652653042, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-30 10:20:40.775280" + }, + { + "ID": 160, + "TARGET_ID": "FS-美-后勤保-160", + "TARGET_NAME": "医疗站师级", + "COUNTRY_REGION": "美", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": -119.43, + "Y": 2.98, + "COMMUNICATION_RANGE": 180.46, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 1.0, + "ENVIRONMENT_ADAPTABILITY": 0.6039515380510623, + "ANTI_JAMMING_CAPABILITY": 0.3133365055682884, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 72.2, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 127.5, + "SUPPORT_CAPACITY": 4995.0, + "CREATED_TIME": "2025-09-30 10:20:40.774819" + }, + { + "ID": 125, + "TARGET_ID": "FS-美-火力打-125", + "TARGET_NAME": "导弹发射营旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "火力打击任务", + "X": -8.47, + "Y": -85.02, + "COMMUNICATION_RANGE": 113.51, + "WEIGHT": 72.2, + "AREA": 296.0, + "MOBILITY": 0.9365062756889395, + "ENVIRONMENT_ADAPTABILITY": 0.3810597408856417, + "ANTI_JAMMING_CAPABILITY": 0.9566212108310559, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 23.291130821961744, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 11.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7432367900275122, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-26 10:20:40.773150" + }, + { + "ID": 19, + "TARGET_ID": "FS-中-指挥控-019", + "TARGET_NAME": "数据中心军级", + "COUNTRY_REGION": "中", + "LEVEL": "军级", + "ROLE_ID": "指挥控制", + "TASK_ID": "火力打击任务", + "X": 63.22, + "Y": -75.49, + "COMMUNICATION_RANGE": 114.71, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.2751771968428925, + "ENVIRONMENT_ADAPTABILITY": 0.415540007063284, + "ANTI_JAMMING_CAPABILITY": 0.5650232122994336, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.78, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 28.3, + "PROCESSING_CAPACITY": 9941.0, + "INFORMATION_FUSION_CAPABILITY": 0.6022987253757921, + "SYSTEM_RELIABILITY": 0.6988466980220978, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-19 10:20:40.769284" + }, + { + "ID": 180, + "TARGET_ID": "FS-美-指挥控-180", + "TARGET_NAME": "通信中继站师级", + "COUNTRY_REGION": "美", + "LEVEL": "师级", + "ROLE_ID": "指挥控制", + "TASK_ID": "后勤支援任务", + "X": -88.43, + "Y": 51.36, + "COMMUNICATION_RANGE": 247.67, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.15262511715511806, + "ENVIRONMENT_ADAPTABILITY": 0.47368335556461727, + "ANTI_JAMMING_CAPABILITY": 0.5234926589946198, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.08, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 17.5, + "PROCESSING_CAPACITY": 1069.0, + "INFORMATION_FUSION_CAPABILITY": 1.1413316611151185, + "SYSTEM_RELIABILITY": 0.884752049977152, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-18 10:20:40.775562" + }, + { + "ID": 192, + "TARGET_ID": "FS-美-情报侦-192", + "TARGET_NAME": "雷达站军级", + "COUNTRY_REGION": "美", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": -124.83, + "Y": 29.72, + "COMMUNICATION_RANGE": 307.77, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.055365352535215184, + "ENVIRONMENT_ADAPTABILITY": 0.13799611046066218, + "ANTI_JAMMING_CAPABILITY": 0.540116037085569, + "DETECTION_RANGE": 462.2808324751843, + "DETECTION_ACCURACY": 0.9501448193383941, + "REFRESH_RATE": 6.0, + "TRANSMISSION_DELAY": 0.23, + "RELIABILITY": 0.5222990995808883, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-16 10:20:40.775920" + }, + { + "ID": 111, + "TARGET_ID": "FS-英-后勤保-111", + "TARGET_NAME": "医疗站旅级", + "COUNTRY_REGION": "英", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "后勤支援任务", + "X": -83.14, + "Y": -37.05, + "COMMUNICATION_RANGE": 255.68, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5775189190195599, + "ENVIRONMENT_ADAPTABILITY": 0.5703410706863967, + "ANTI_JAMMING_CAPABILITY": 0.42164522350172734, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 48.8, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 157.9, + "SUPPORT_CAPACITY": 927.0, + "CREATED_TIME": "2025-09-14 10:20:40.771846" + }, + { + "ID": 177, + "TARGET_ID": "FS-法-指挥控-177", + "TARGET_NAME": "作战中心旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "火力打击任务", + "X": 47.12, + "Y": -40.74, + "COMMUNICATION_RANGE": 216.42, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.3997210730224816, + "ENVIRONMENT_ADAPTABILITY": 0.6121508781429347, + "ANTI_JAMMING_CAPABILITY": 0.8770701855766938, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.63, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 25.4, + "PROCESSING_CAPACITY": 5776.0, + "INFORMATION_FUSION_CAPABILITY": 0.7089403543130157, + "SYSTEM_RELIABILITY": 0.8521282874005076, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-13 10:20:40.775486" + }, + { + "ID": 20, + "TARGET_ID": "FS-英-后勤保-020", + "TARGET_NAME": "油料库营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "后勤保障", + "TASK_ID": "火力打击任务", + "X": 51.1, + "Y": 19.99, + "COMMUNICATION_RANGE": 142.44, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4414395914910709, + "ENVIRONMENT_ADAPTABILITY": 0.7626522113533794, + "ANTI_JAMMING_CAPABILITY": 0.36488048719796146, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 58.3, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 196.2, + "SUPPORT_CAPACITY": 2865.0, + "CREATED_TIME": "2025-09-13 10:20:40.769309" + }, + { + "ID": 199, + "TARGET_ID": "FS-英-情报侦-199", + "TARGET_NAME": "电子侦察站团级", + "COUNTRY_REGION": "英", + "LEVEL": "团级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": -148.19, + "Y": 40.94, + "COMMUNICATION_RANGE": 225.26, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 1.0, + "ENVIRONMENT_ADAPTABILITY": 0.4762886716500373, + "ANTI_JAMMING_CAPABILITY": 0.9968964869948481, + "DETECTION_RANGE": 380.9258913294169, + "DETECTION_ACCURACY": 0.8834281779204751, + "REFRESH_RATE": 9.8, + "TRANSMISSION_DELAY": 0.43, + "RELIABILITY": 0.7886897846467886, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-11 10:20:40.776176" + }, + { + "ID": 184, + "TARGET_ID": "FS-英-情报侦-184", + "TARGET_NAME": "侦察卫星师级", + "COUNTRY_REGION": "英", + "LEVEL": "师级", + "ROLE_ID": "情报侦察", + "TASK_ID": "火力打击任务", + "X": -110.32, + "Y": -33.03, + "COMMUNICATION_RANGE": 189.97, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.8516801389765795, + "ENVIRONMENT_ADAPTABILITY": 0.1590258914100955, + "ANTI_JAMMING_CAPABILITY": 0.555532860313897, + "DETECTION_RANGE": 265.8149034044266, + "DETECTION_ACCURACY": 1.0710800066520465, + "REFRESH_RATE": 2.8, + "TRANSMISSION_DELAY": 1.1, + "RELIABILITY": 1.0371293236772736, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-10 10:20:40.775722" + }, + { + "ID": 197, + "TARGET_ID": "FS-中-平台部-197", + "TARGET_NAME": "基地营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "平台部署", + "TASK_ID": "侦察监视任务", + "X": -35.25, + "Y": -52.18, + "COMMUNICATION_RANGE": 191.51, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.5795867599967764, + "ANTI_JAMMING_CAPABILITY": 0.919265617839958, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 27091.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 1346.0, + "CREATED_TIME": "2025-09-09 10:20:40.776114" + }, + { + "ID": 113, + "TARGET_ID": "FS-英-协同打-113", + "TARGET_NAME": "无人机群旅级", + "COUNTRY_REGION": "英", + "LEVEL": "旅级", + "ROLE_ID": "协同打击", + "TASK_ID": "后勤支援任务", + "X": -6.52, + "Y": -38.96, + "COMMUNICATION_RANGE": 120.15, + "WEIGHT": 49.6, + "AREA": 266.0, + "MOBILITY": 0.6728305236635443, + "ENVIRONMENT_ADAPTABILITY": 0.9785998405244316, + "ANTI_JAMMING_CAPABILITY": 0.40658154463099605, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 50.38698502703272, + "STRIKE_ACCURACY": 0.8281978955037497, + "AMMUNITION_RESERVE": 13.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-08 10:20:40.771900" + }, + { + "ID": 32, + "TARGET_ID": "FS-法-火力打-032", + "TARGET_NAME": "火箭炮营旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "指挥协调任务", + "X": 134.38, + "Y": -75.35, + "COMMUNICATION_RANGE": 74.68, + "WEIGHT": 61.3, + "AREA": 219.0, + "MOBILITY": 0.4675515709207743, + "ENVIRONMENT_ADAPTABILITY": 0.8546491983204156, + "ANTI_JAMMING_CAPABILITY": 0.9087731336017918, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 66.28405710968573, + "STRIKE_ACCURACY": 0.9660320469679198, + "AMMUNITION_RESERVE": 20.0, + "TARGET_RECOGNITION_CAPABILITY": 0.6004763002887243, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-08 10:20:40.769609" + }, + { + "ID": 8, + "TARGET_ID": "FS-英-后勤保-008", + "TARGET_NAME": "补给站军级", + "COUNTRY_REGION": "英", + "LEVEL": "军级", + "ROLE_ID": "后勤保障", + "TASK_ID": "后勤支援任务", + "X": -23.564, + "Y": -45.23, + "COMMUNICATION_RANGE": 65.32, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.3778800406440901, + "ENVIRONMENT_ADAPTABILITY": 0.7209612641374779, + "ANTI_JAMMING_CAPABILITY": 0.7330552507975143, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 73.5, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 59.7, + "SUPPORT_CAPACITY": 920.0, + "CREATED_TIME": "2025-09-06 10:20:40.768955" + }, + { + "ID": 154, + "TARGET_ID": "FS-美-情报侦-154", + "TARGET_NAME": "预警机团级", + "COUNTRY_REGION": "美", + "LEVEL": "团级", + "ROLE_ID": "情报侦察", + "TASK_ID": "信息传输任务", + "X": -81.37, + "Y": -78.26, + "COMMUNICATION_RANGE": 98.14, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.24217770288923554, + "ENVIRONMENT_ADAPTABILITY": 0.588470627807129, + "ANTI_JAMMING_CAPABILITY": 0.9033571698660366, + "DETECTION_RANGE": 327.9521839210178, + "DETECTION_ACCURACY": 0.7903690263707763, + "REFRESH_RATE": 2.9, + "TRANSMISSION_DELAY": 1.46, + "RELIABILITY": 0.7714257012108487, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-05 10:20:40.774616" + }, + { + "ID": 49, + "TARGET_ID": "FS-中-火力打-049", + "TARGET_NAME": "火箭炮营军级", + "COUNTRY_REGION": "中", + "LEVEL": "军级", + "ROLE_ID": "火力打击", + "TASK_ID": "后勤支援任务", + "X": -127.39, + "Y": -25.62, + "COMMUNICATION_RANGE": 82.45, + "WEIGHT": 31.6, + "AREA": 95.0, + "MOBILITY": 0.9165126249283688, + "ENVIRONMENT_ADAPTABILITY": 0.7980341326249453, + "ANTI_JAMMING_CAPABILITY": 0.4009186532680189, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 96.6188602801285, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 30.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8287178464616923, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-09-05 10:20:40.770003" + }, + { + "ID": 69, + "TARGET_ID": "FS-法-后勤保-069", + "TARGET_NAME": "维修站团级", + "COUNTRY_REGION": "法", + "LEVEL": "团级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": 35.12, + "Y": -82.12, + "COMMUNICATION_RANGE": 90.25, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4209283749074771, + "ENVIRONMENT_ADAPTABILITY": 0.8041718581588585, + "ANTI_JAMMING_CAPABILITY": 0.586206884337233, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 70.7, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 149.0, + "SUPPORT_CAPACITY": 1021.0, + "CREATED_TIME": "2025-09-02 10:20:40.770529" + }, + { + "ID": 52, + "TARGET_ID": "FS-俄-后勤保-052", + "TARGET_NAME": "维修站团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "后勤保障", + "TASK_ID": "火力打击任务", + "X": -42.92, + "Y": 49.63, + "COMMUNICATION_RANGE": 45.51, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5407897241671101, + "ENVIRONMENT_ADAPTABILITY": 0.8906102311556248, + "ANTI_JAMMING_CAPABILITY": 0.584307325567273, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 38.4, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 159.2, + "SUPPORT_CAPACITY": 4611.0, + "CREATED_TIME": "2025-09-02 10:20:40.770075" + }, + { + "ID": 195, + "TARGET_ID": "FS-中-后勤保-195", + "TARGET_NAME": "补给站团级", + "COUNTRY_REGION": "中", + "LEVEL": "团级", + "ROLE_ID": "后勤保障", + "TASK_ID": "后勤支援任务", + "X": 158.62, + "Y": 14.0, + "COMMUNICATION_RANGE": 39.93, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.3020415351276875, + "ENVIRONMENT_ADAPTABILITY": 0.5456787622630083, + "ANTI_JAMMING_CAPABILITY": 0.7892395259466458, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 49.9, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 141.5, + "SUPPORT_CAPACITY": 3873.0, + "CREATED_TIME": "2025-08-27 10:20:40.776034" + }, + { + "ID": 72, + "TARGET_ID": "FS-美-协同打-072", + "TARGET_NAME": "无人机群营级", + "COUNTRY_REGION": "美", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": 98.47, + "Y": 74.22, + "COMMUNICATION_RANGE": 38.06, + "WEIGHT": 72.7, + "AREA": 209.0, + "MOBILITY": 0.9463496145295907, + "ENVIRONMENT_ADAPTABILITY": 0.581190858404745, + "ANTI_JAMMING_CAPABILITY": 0.8974870273781627, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 62.344624458344235, + "STRIKE_ACCURACY": 0.570395455251773, + "AMMUNITION_RESERVE": 6.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-26 10:20:40.770599" + }, + { + "ID": 140, + "TARGET_ID": "FS-法-协同打-140", + "TARGET_NAME": "电子战飞机师级", + "COUNTRY_REGION": "法", + "LEVEL": "师级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": -1.05, + "Y": -47.04, + "COMMUNICATION_RANGE": 49.48, + "WEIGHT": 59.3, + "AREA": 77.0, + "MOBILITY": 0.7161145902517345, + "ENVIRONMENT_ADAPTABILITY": 0.43876226396141166, + "ANTI_JAMMING_CAPABILITY": 0.819999765722836, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 41.82499086602536, + "STRIKE_ACCURACY": 0.8724452033798171, + "AMMUNITION_RESERVE": 34.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8217663773893394, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-25 10:20:40.774139" + }, + { + "ID": 207, + "TARGET_ID": "FS-中-火力打-074", + "TARGET_NAME": "火箭炮营营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "信息传输任务", + "X": 172.68, + "Y": -47.7, + "COMMUNICATION_RANGE": 63.26, + "WEIGHT": 39.5, + "AREA": 282.0, + "MOBILITY": 0.5396024253538947, + "ENVIRONMENT_ADAPTABILITY": 0.780066469715063, + "ANTI_JAMMING_CAPABILITY": 0.6701848320102921, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 59.93143367974675, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 39.0, + "TARGET_RECOGNITION_CAPABILITY": 0.43000895093637875, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-24 10:20:40.770647" + }, + { + "ID": 66, + "TARGET_ID": "FS-法-协同打-066", + "TARGET_NAME": "预警指挥机军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "信息传输任务", + "X": 132.82, + "Y": 53.65, + "COMMUNICATION_RANGE": 69.51, + "WEIGHT": 78.9, + "AREA": 67.0, + "MOBILITY": 0.3554630011598251, + "ENVIRONMENT_ADAPTABILITY": 0.4455297942697237, + "ANTI_JAMMING_CAPABILITY": 0.8098988518507665, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 50.64330380759746, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 45.0, + "TARGET_RECOGNITION_CAPABILITY": 0.45852132249476796, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-24 10:20:40.770447" + }, + { + "ID": 189, + "TARGET_ID": "FS-美-后勤保-189", + "TARGET_NAME": "补给站师级", + "COUNTRY_REGION": "美", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": -155.89, + "Y": 74.37, + "COMMUNICATION_RANGE": 62.65, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.577923646838552, + "ENVIRONMENT_ADAPTABILITY": 0.6790166806482745, + "ANTI_JAMMING_CAPABILITY": 0.34244583976739146, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 89.1, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 137.3, + "SUPPORT_CAPACITY": 4850.0, + "CREATED_TIME": "2025-08-23 10:20:40.775846" + }, + { + "ID": 86, + "TARGET_ID": "FS-法-情报侦-086", + "TARGET_NAME": "预警机师级", + "COUNTRY_REGION": null, + "LEVEL": "师级", + "ROLE_ID": "情报侦察", + "TASK_ID": "侦察监视任务", + "X": 174.31, + "Y": 69.0, + "COMMUNICATION_RANGE": 120.54, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.08820059232081745, + "ENVIRONMENT_ADAPTABILITY": 0.3069391131590199, + "ANTI_JAMMING_CAPABILITY": 0.8233413766262404, + "DETECTION_RANGE": 427.2348068239967, + "DETECTION_ACCURACY": 0.7697055175587045, + "REFRESH_RATE": 4.8, + "TRANSMISSION_DELAY": 1.58, + "RELIABILITY": 1.034293316904483, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-23 10:20:40.770930" + }, + { + "ID": 75, + "TARGET_ID": "FS-俄-火力打-075", + "TARGET_NAME": "导弹发射营军级", + "COUNTRY_REGION": "俄", + "LEVEL": "军级", + "ROLE_ID": "火力打击", + "TASK_ID": "侦察监视任务", + "X": 98.09, + "Y": -51.67, + "COMMUNICATION_RANGE": 112.21, + "WEIGHT": 38.9, + "AREA": 170.0, + "MOBILITY": 0.32597175902421327, + "ENVIRONMENT_ADAPTABILITY": 0.35715834478505265, + "ANTI_JAMMING_CAPABILITY": 0.7630455578700266, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 33.43155186794122, + "STRIKE_ACCURACY": 0.677758325418563, + "AMMUNITION_RESERVE": 8.0, + "TARGET_RECOGNITION_CAPABILITY": 0.44228749778413956, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-23 10:20:40.770669" + }, + { + "ID": 55, + "TARGET_ID": "FS-中-情报侦-055", + "TARGET_NAME": "预警机军级", + "COUNTRY_REGION": "中", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": 84.96, + "Y": 31.53, + "COMMUNICATION_RANGE": 185.42, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.02145876532734678, + "ENVIRONMENT_ADAPTABILITY": 0.26069261545448463, + "ANTI_JAMMING_CAPABILITY": 0.6293637307375931, + "DETECTION_RANGE": 148.82984054884983, + "DETECTION_ACCURACY": 1.089100589526097, + "REFRESH_RATE": 3.2, + "TRANSMISSION_DELAY": 1.62, + "RELIABILITY": 0.8390029753327002, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-22 10:20:40.770205" + }, + { + "ID": 35, + "TARGET_ID": "FS-中-火力打-035", + "TARGET_NAME": "自行火炮营旅级", + "COUNTRY_REGION": "中", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "侦察监视任务", + "X": -165.36, + "Y": -21.33, + "COMMUNICATION_RANGE": 123.38, + "WEIGHT": 59.6, + "AREA": 134.0, + "MOBILITY": 0.31544699353223926, + "ENVIRONMENT_ADAPTABILITY": 0.6112975568848806, + "ANTI_JAMMING_CAPABILITY": 0.5998696750105132, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 64.29116370604244, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 48.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-20 10:20:40.769680" + }, + { + "ID": 9, + "TARGET_ID": "FS-中-情报侦-009", + "TARGET_NAME": "雷达站军级", + "COUNTRY_REGION": "中", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "信息传输任务", + "X": -23.67, + "Y": 13.7, + "COMMUNICATION_RANGE": 172.81, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.8014979083323386, + "ENVIRONMENT_ADAPTABILITY": 0.08986882621138881, + "ANTI_JAMMING_CAPABILITY": 0.24994027140468678, + "DETECTION_RANGE": 417.53275665562614, + "DETECTION_ACCURACY": 0.7322880324008659, + "REFRESH_RATE": 6.9, + "TRANSMISSION_DELAY": 1.34, + "RELIABILITY": 0.7630113635920568, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-20 10:20:40.768978" + }, + { + "ID": 173, + "TARGET_ID": "FS-法-情报侦-173", + "TARGET_NAME": "侦察机营级", + "COUNTRY_REGION": "法", + "LEVEL": "营级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": 30.49, + "Y": -62.01, + "COMMUNICATION_RANGE": 179.06, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.8111074807359475, + "ENVIRONMENT_ADAPTABILITY": 0.027709093499421744, + "ANTI_JAMMING_CAPABILITY": 0.27860457957973983, + "DETECTION_RANGE": 410.02825585518815, + "DETECTION_ACCURACY": 0.9735208249497291, + "REFRESH_RATE": 6.5, + "TRANSMISSION_DELAY": 1.81, + "RELIABILITY": 1.08514510832696, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-15 10:20:40.775378" + }, + { + "ID": 103, + "TARGET_ID": "FS-中-协同打-103", + "TARGET_NAME": "无人机群师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "协同打击", + "TASK_ID": "侦察监视任务", + "X": 0.24, + "Y": 6.340789473684209, + "COMMUNICATION_RANGE": 178.6, + "WEIGHT": 36.4, + "AREA": 166.0, + "MOBILITY": 0.3607479633064833, + "ENVIRONMENT_ADAPTABILITY": 0.8369628825852462, + "ANTI_JAMMING_CAPABILITY": 0.9594754670586298, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 90.69942851949921, + "STRIKE_ACCURACY": 0.8820842305239304, + "AMMUNITION_RESERVE": 18.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-15 10:20:40.771569" + }, + { + "ID": 105, + "TARGET_ID": "FS-英-协同打-105", + "TARGET_NAME": "电子战飞机军级", + "COUNTRY_REGION": "英", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": 150.46, + "Y": 0.32, + "COMMUNICATION_RANGE": 142.69, + "WEIGHT": 65.3, + "AREA": 243.0, + "MOBILITY": 0.4932085960315006, + "ENVIRONMENT_ADAPTABILITY": 0.9134935534751947, + "ANTI_JAMMING_CAPABILITY": 0.7337053423978217, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 87.04499396475134, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 27.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-11 10:20:40.771690" + }, + { + "ID": 99, + "TARGET_ID": "FS-俄-指挥控-099", + "TARGET_NAME": null, + "COUNTRY_REGION": "俄", + "LEVEL": "军级", + "ROLE_ID": "指挥控制", + "TASK_ID": "指挥协调任务", + "X": -146.99, + "Y": 45.81, + "COMMUNICATION_RANGE": 141.65, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.17698124873433851, + "ENVIRONMENT_ADAPTABILITY": 0.8706836177902612, + "ANTI_JAMMING_CAPABILITY": 0.9729513082450147, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.17, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 18.4, + "PROCESSING_CAPACITY": 2062.0, + "INFORMATION_FUSION_CAPABILITY": 0.6250004662052193, + "SYSTEM_RELIABILITY": 0.7780425911813181, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-06 10:20:40.771474" + }, + { + "ID": 91, + "TARGET_ID": "FS-中-平台部-091", + "TARGET_NAME": "港口师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "平台部署", + "TASK_ID": "侦察监视任务", + "X": 142.43, + "Y": -61.99, + "COMMUNICATION_RANGE": 154.9, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.9471553801185257, + "ANTI_JAMMING_CAPABILITY": 0.9866746955540099, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 10699.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 5756.0, + "CREATED_TIME": "2025-08-04 10:20:40.771267" + }, + { + "ID": 138, + "TARGET_ID": "FS-中-后勤保-138", + "TARGET_NAME": "补给站师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "火力打击任务", + "X": 122.1, + "Y": 14.37, + "COMMUNICATION_RANGE": 141.96, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.3785419208046418, + "ENVIRONMENT_ADAPTABILITY": 0.831364504986212, + "ANTI_JAMMING_CAPABILITY": 0.31526326047525893, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 53.1, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 147.0, + "SUPPORT_CAPACITY": 2859.0, + "CREATED_TIME": "2025-08-03 10:20:40.774045" + }, + { + "ID": 28, + "TARGET_ID": "FS-法-火力打-028", + "TARGET_NAME": "自行火炮营营级", + "COUNTRY_REGION": "法", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "指挥协调任务", + "X": -127.35, + "Y": -41.31, + "COMMUNICATION_RANGE": 72.29, + "WEIGHT": 49.6, + "AREA": 224.0, + "MOBILITY": 0.8923631377022831, + "ENVIRONMENT_ADAPTABILITY": 0.6892796733674359, + "ANTI_JAMMING_CAPABILITY": 0.8711467963732124, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 73.35973430698148, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 34.0, + "TARGET_RECOGNITION_CAPABILITY": 0.778647415809443, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-08-02 10:20:40.769507" + }, + { + "ID": 171, + "TARGET_ID": "FS-法-平台部-171", + "TARGET_NAME": "机场师级", + "COUNTRY_REGION": "法", + "LEVEL": "师级", + "ROLE_ID": "平台部署", + "TASK_ID": "后勤支援任务", + "X": -66.88, + "Y": 83.57, + "COMMUNICATION_RANGE": 76.95, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.5497729925228454, + "ANTI_JAMMING_CAPABILITY": 0.656444994998687, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 5912.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 4311.0, + "CREATED_TIME": "2025-07-30 10:20:40.775332" + }, + { + "ID": 162, + "TARGET_ID": "FS-俄-火力打-162", + "TARGET_NAME": "火箭炮营团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "火力打击", + "TASK_ID": "侦察监视任务", + "X": -70.32, + "Y": -29.69, + "COMMUNICATION_RANGE": 84.86, + "WEIGHT": 60.2, + "AREA": 95.0, + "MOBILITY": 0.8255178097483831, + "ENVIRONMENT_ADAPTABILITY": 0.67048494843378, + "ANTI_JAMMING_CAPABILITY": 0.5216669138601235, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 59.15147625327317, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 30.0, + "TARGET_RECOGNITION_CAPABILITY": 0.6901927273958288, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-28 10:20:40.774944" + }, + { + "ID": 89, + "TARGET_ID": "FS-美-情报侦-089", + "TARGET_NAME": "电子侦察站营级", + "COUNTRY_REGION": "美", + "LEVEL": "营级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": -32.17, + "Y": -78.07, + "COMMUNICATION_RANGE": 155.53, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.578133834549589, + "ENVIRONMENT_ADAPTABILITY": 0.027884629830007168, + "ANTI_JAMMING_CAPABILITY": 0.26511664138719127, + "DETECTION_RANGE": 129.711853304264, + "DETECTION_ACCURACY": 1.0320669931817459, + "REFRESH_RATE": 4.0, + "TRANSMISSION_DELAY": 1.24, + "RELIABILITY": 0.8035248843314475, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-28 10:20:40.771217" + }, + { + "ID": 167, + "TARGET_ID": "FS-俄-指挥控-167", + "TARGET_NAME": "指挥所旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "侦察监视任务", + "X": 115.74, + "Y": 60.12, + "COMMUNICATION_RANGE": 213.75, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.12898284989072378, + "ENVIRONMENT_ADAPTABILITY": 0.51233034863313, + "ANTI_JAMMING_CAPABILITY": 0.7336640094282811, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.41, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 5.5, + "PROCESSING_CAPACITY": 8779.0, + "INFORMATION_FUSION_CAPABILITY": 1.2500379825666599, + "SYSTEM_RELIABILITY": 0.9277672940580514, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-27 10:20:40.775235" + }, + { + "ID": 115, + "TARGET_ID": "FS-美-后勤保-115", + "TARGET_NAME": "医疗站营级", + "COUNTRY_REGION": "美", + "LEVEL": "营级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": 12.75, + "Y": 15.19, + "COMMUNICATION_RANGE": 200.0, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4165788083429389, + "ENVIRONMENT_ADAPTABILITY": 0.7895512870257739, + "ANTI_JAMMING_CAPABILITY": 0.6416943672798164, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 99.0, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 55.6, + "SUPPORT_CAPACITY": 121.0, + "CREATED_TIME": "2025-07-27 10:20:40.771959" + }, + { + "ID": 12, + "TARGET_ID": "FS-法-情报侦-012", + "TARGET_NAME": "雷达站军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": -10.6, + "Y": -89.88, + "COMMUNICATION_RANGE": 145.99, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0797388067762483, + "ENVIRONMENT_ADAPTABILITY": 0.237392797076161, + "ANTI_JAMMING_CAPABILITY": 0.23641998662192099, + "DETECTION_RANGE": 382.72306777350866, + "DETECTION_ACCURACY": 1.1909174448736064, + "REFRESH_RATE": 1.1, + "TRANSMISSION_DELAY": 0.83, + "RELIABILITY": 0.9704806822982439, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-25 10:20:40.769049" + }, + { + "ID": 96, + "TARGET_ID": "FS-俄-火力打-096", + "TARGET_NAME": "导弹发射营师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "火力打击", + "TASK_ID": "指挥协调任务", + "X": -19.21575757575757, + "Y": 31.82, + "COMMUNICATION_RANGE": 79.63, + "WEIGHT": 77.8, + "AREA": 113.0, + "MOBILITY": 0.8288993514342688, + "ENVIRONMENT_ADAPTABILITY": 0.7478214079538986, + "ANTI_JAMMING_CAPABILITY": 0.7285962540937276, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 75.59991679056289, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 36.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8848326003807503, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-23 10:20:40.771402" + }, + { + "ID": 14, + "TARGET_ID": "FS-俄-火力打-014", + "TARGET_NAME": "导弹发射营营级", + "COUNTRY_REGION": "俄", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "侦察监视任务", + "X": -1.62, + "Y": -37.05, + "COMMUNICATION_RANGE": 88.63, + "WEIGHT": 41.4, + "AREA": 164.0, + "MOBILITY": 0.881643495149647, + "ENVIRONMENT_ADAPTABILITY": 0.3836104119771537, + "ANTI_JAMMING_CAPABILITY": 0.7325479827530834, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 49.38183741049906, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 47.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-20 10:20:40.769140" + }, + { + "ID": 150, + "TARGET_ID": "FS-英-火力打-150", + "TARGET_NAME": "导弹发射营营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "火力打击任务", + "X": -59.95, + "Y": 35.17, + "COMMUNICATION_RANGE": 73.94, + "WEIGHT": 76.4, + "AREA": 59.0, + "MOBILITY": 0.4546805672226919, + "ENVIRONMENT_ADAPTABILITY": 0.4099554968073637, + "ANTI_JAMMING_CAPABILITY": 0.5932128797717507, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 90.75500709747334, + "STRIKE_ACCURACY": 0.7930851452223326, + "AMMUNITION_RESERVE": 25.0, + "TARGET_RECOGNITION_CAPABILITY": 0.9257886521220692, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-18 10:20:40.774499" + }, + { + "ID": 102, + "TARGET_ID": "FS-法-平台部-102", + "TARGET_NAME": "基地营级", + "COUNTRY_REGION": "法", + "LEVEL": "营级", + "ROLE_ID": "平台部署", + "TASK_ID": "火力打击任务", + "X": -53.03, + "Y": -14.62, + "COMMUNICATION_RANGE": 89.55, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.9488568490853748, + "ANTI_JAMMING_CAPABILITY": 0.6273319355736199, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 28094.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 4554.0, + "CREATED_TIME": "2025-07-18 10:20:40.771549" + }, + { + "ID": 155, + "TARGET_ID": "FS-俄-协同打-155", + "TARGET_NAME": "电子战飞机团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "协同打击", + "TASK_ID": "侦察监视任务", + "X": 131.28, + "Y": 4.51, + "COMMUNICATION_RANGE": 86.88, + "WEIGHT": 75.8, + "AREA": 198.0, + "MOBILITY": 0.899700152698943, + "ENVIRONMENT_ADAPTABILITY": 0.5524274959863358, + "ANTI_JAMMING_CAPABILITY": 0.6182273502440669, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 25.216673552443943, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 22.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7706026796151346, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-15 10:20:40.774643" + }, + { + "ID": 17, + "TARGET_ID": "FS-美-协同打-017", + "TARGET_NAME": "预警指挥机团级", + "COUNTRY_REGION": "美", + "LEVEL": "团级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": -61.05, + "Y": -76.77, + "COMMUNICATION_RANGE": 88.86, + "WEIGHT": 22.2, + "AREA": 257.0, + "MOBILITY": 0.795432279525827, + "ENVIRONMENT_ADAPTABILITY": 0.3860127338916216, + "ANTI_JAMMING_CAPABILITY": 0.6425115374525772, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 48.52733035296181, + "STRIKE_ACCURACY": 0.9455148111748802, + "AMMUNITION_RESERVE": 38.0, + "TARGET_RECOGNITION_CAPABILITY": 0.6070173968172544, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-13 10:20:40.769233" + }, + { + "ID": 178, + "TARGET_ID": "FS-英-火力打-178", + "TARGET_NAME": "战斗机大队营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "后勤支援任务", + "X": -40.79, + "Y": -66.36, + "COMMUNICATION_RANGE": 69.1, + "WEIGHT": 40.0, + "AREA": 285.0, + "MOBILITY": 0.8016971241295929, + "ENVIRONMENT_ADAPTABILITY": 0.5169935526484564, + "ANTI_JAMMING_CAPABILITY": 0.8573929734717325, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 75.37697177753435, + "STRIKE_ACCURACY": 0.9293961001827058, + "AMMUNITION_RESERVE": 50.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8203641736651119, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-12 10:20:40.775514" + }, + { + "ID": 123, + "TARGET_ID": "FS-美-平台部-123", + "TARGET_NAME": "前进阵地团级", + "COUNTRY_REGION": "美", + "LEVEL": "团级", + "ROLE_ID": "平台部署", + "TASK_ID": "信息传输任务", + "X": 74.87, + "Y": 41.3, + "COMMUNICATION_RANGE": 82.37, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.5749172434353335, + "ANTI_JAMMING_CAPABILITY": 0.7163486683810272, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 16641.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 8567.0, + "CREATED_TIME": "2025-07-10 10:20:40.772766" + }, + { + "ID": 87, + "TARGET_ID": "FS-俄-火力打-087", + "TARGET_NAME": null, + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "火力打击", + "TASK_ID": "指挥协调任务", + "X": -62.32, + "Y": -30.19, + "COMMUNICATION_RANGE": 75.4, + "WEIGHT": 32.1, + "AREA": 231.0, + "MOBILITY": 0.8283861062638844, + "ENVIRONMENT_ADAPTABILITY": 0.42555963435483796, + "ANTI_JAMMING_CAPABILITY": 0.7157767253330156, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 28.635810391528715, + "STRIKE_ACCURACY": 0.7100324203989974, + "AMMUNITION_RESERVE": 47.0, + "TARGET_RECOGNITION_CAPABILITY": 0.6075181641241532, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-10 10:20:40.770954" + }, + { + "ID": 120, + "TARGET_ID": "FS-法-协同打-120", + "TARGET_NAME": "无人机群军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": 155.48, + "Y": -10.42, + "COMMUNICATION_RANGE": 58.56, + "WEIGHT": 70.0, + "AREA": 51.0, + "MOBILITY": 0.30235480611958854, + "ENVIRONMENT_ADAPTABILITY": 0.6594200989321741, + "ANTI_JAMMING_CAPABILITY": 0.6013495713121465, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 47.63937765195213, + "STRIKE_ACCURACY": 0.7040173928520069, + "AMMUNITION_RESERVE": 43.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8378185960996486, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-07-05 10:20:40.772397" + }, + { + "ID": 22, + "TARGET_ID": "FS-俄-后勤保-022", + "TARGET_NAME": "补给站旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": 111.85, + "Y": 12.73, + "COMMUNICATION_RANGE": 1138.75, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.26922273786981027, + "ENVIRONMENT_ADAPTABILITY": 0.799158068461562, + "ANTI_JAMMING_CAPABILITY": 0.6477047143465469, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 40.1, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 176.2, + "SUPPORT_CAPACITY": 3140.0, + "CREATED_TIME": "2025-07-01 10:20:40.769352" + }, + { + "ID": 136, + "TARGET_ID": "FS-法-指挥控-136", + "TARGET_NAME": "指挥所师级", + "COUNTRY_REGION": "法", + "LEVEL": "师级", + "ROLE_ID": "指挥控制", + "TASK_ID": "后勤支援任务", + "X": 73.85, + "Y": 89.17, + "COMMUNICATION_RANGE": 1221.96, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.1940094303238898, + "ENVIRONMENT_ADAPTABILITY": 0.4318100982784139, + "ANTI_JAMMING_CAPABILITY": 0.884804628917666, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.3, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 13.6, + "PROCESSING_CAPACITY": 5134.0, + "INFORMATION_FUSION_CAPABILITY": 0.8348205666722968, + "SYSTEM_RELIABILITY": 0.7234738994541473, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-29 10:20:40.773984" + }, + { + "ID": 1, + "TARGET_ID": "FS-美-火力打-001", + "TARGET_NAME": "自行火炮营团级", + "COUNTRY_REGION": "美", + "LEVEL": "团级", + "ROLE_ID": "火力打击", + "TASK_ID": "后勤支援任务", + "X": -176.33, + "Y": 32.86, + "COMMUNICATION_RANGE": 1247.79, + "WEIGHT": 61.4, + "AREA": 61.0, + "MOBILITY": 0.42564788906877454, + "ENVIRONMENT_ADAPTABILITY": 0.8719114753110979, + "ANTI_JAMMING_CAPABILITY": 0.9860468773991046, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 41.548228645122435, + "STRIKE_ACCURACY": 0.8895009924675765, + "AMMUNITION_RESERVE": 43.0, + "TARGET_RECOGNITION_CAPABILITY": 0.4417775292582004, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-29 10:20:40.768594" + }, + { + "ID": 146, + "TARGET_ID": "FS-俄-平台部-146", + "TARGET_NAME": "前进阵地旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "平台部署", + "TASK_ID": "信息传输任务", + "X": -121.63, + "Y": -56.83, + "COMMUNICATION_RANGE": 104.83, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.5831442269623655, + "ANTI_JAMMING_CAPABILITY": 0.8308135747527201, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 41912.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 4920.0, + "CREATED_TIME": "2025-06-28 10:20:40.774389" + }, + { + "ID": 41, + "TARGET_ID": "FS-俄-协同打-041", + "TARGET_NAME": "预警指挥机师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": 114.58, + "Y": 41.7, + "COMMUNICATION_RANGE": 17.27, + "WEIGHT": 66.9, + "AREA": 130.0, + "MOBILITY": 0.9265275121477672, + "ENVIRONMENT_ADAPTABILITY": 0.8305586308767334, + "ANTI_JAMMING_CAPABILITY": 0.42207112038766614, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 20.00512391023709, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 45.0, + "TARGET_RECOGNITION_CAPABILITY": 0.5596988945816239, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-28 10:20:40.769814" + }, + { + "ID": 97, + "TARGET_ID": "FS-中-指挥控-097", + "TARGET_NAME": "作战中心军级", + "COUNTRY_REGION": "中", + "LEVEL": "军级", + "ROLE_ID": "指挥控制", + "TASK_ID": "侦察监视任务", + "X": -61.48, + "Y": 5.78, + "COMMUNICATION_RANGE": 116.74, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.40395529492609045, + "ENVIRONMENT_ADAPTABILITY": 0.799651547916246, + "ANTI_JAMMING_CAPABILITY": 0.6640889319779443, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.48, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 21.0, + "PROCESSING_CAPACITY": 5331.0, + "INFORMATION_FUSION_CAPABILITY": 0.511050761459074, + "SYSTEM_RELIABILITY": 0.8213883963584124, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-27 10:20:40.771426" + }, + { + "ID": 134, + "TARGET_ID": "FS-英-协同打-134", + "TARGET_NAME": "预警指挥机旅级", + "COUNTRY_REGION": null, + "LEVEL": "旅级", + "ROLE_ID": "协同打击", + "TASK_ID": "侦察监视任务", + "X": 81.81, + "Y": 26.38, + "COMMUNICATION_RANGE": 163.59, + "WEIGHT": 67.8, + "AREA": 238.0, + "MOBILITY": 0.8669623997331974, + "ENVIRONMENT_ADAPTABILITY": 0.921549275500473, + "ANTI_JAMMING_CAPABILITY": 0.6993837268467451, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 24.373420961465513, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 39.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7130767900452348, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-26 10:20:40.773880" + }, + { + "ID": 84, + "TARGET_ID": "FS-法-协同打-084", + "TARGET_NAME": "无人机群团级", + "COUNTRY_REGION": "法", + "LEVEL": "团级", + "ROLE_ID": "协同打击", + "TASK_ID": "信息传输任务", + "X": 104.98, + "Y": -34.65, + "COMMUNICATION_RANGE": 162.41, + "WEIGHT": 35.9, + "AREA": 224.0, + "MOBILITY": 0.4728236034541934, + "ENVIRONMENT_ADAPTABILITY": 0.828159583359076, + "ANTI_JAMMING_CAPABILITY": 0.954188442347893, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 86.89719570923165, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 13.0, + "TARGET_RECOGNITION_CAPABILITY": 0.9367329512621352, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-24 10:20:40.770884" + }, + { + "ID": 165, + "TARGET_ID": "FS-美-平台部-165", + "TARGET_NAME": "基地军级", + "COUNTRY_REGION": "美", + "LEVEL": "军级", + "ROLE_ID": "平台部署", + "TASK_ID": "信息传输任务", + "X": -149.48, + "Y": -57.04, + "COMMUNICATION_RANGE": 91.24, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.6972652539736638, + "ANTI_JAMMING_CAPABILITY": 0.8500069107288136, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 43702.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 4357.0, + "CREATED_TIME": "2025-06-23 10:20:40.775168" + }, + { + "ID": 188, + "TARGET_ID": "FS-法-平台部-188", + "TARGET_NAME": "机场旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "平台部署", + "TASK_ID": "后勤支援任务", + "X": 23.87, + "Y": 84.48, + "COMMUNICATION_RANGE": 135.29, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.941551244668853, + "ANTI_JAMMING_CAPABILITY": 0.8258294756073624, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 19534.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 4026.0, + "CREATED_TIME": "2025-06-21 10:20:40.775821" + }, + { + "ID": 109, + "TARGET_ID": "FS-中-协同打-109", + "TARGET_NAME": "预警指挥机师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": -152.3, + "Y": 29.24, + "COMMUNICATION_RANGE": 129.29, + "WEIGHT": 54.9, + "AREA": 93.0, + "MOBILITY": 0.5353698464941787, + "ENVIRONMENT_ADAPTABILITY": 0.8264210340349565, + "ANTI_JAMMING_CAPABILITY": 0.9550894829800445, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 64.69068162911445, + "STRIKE_ACCURACY": 0.7233009704287799, + "AMMUNITION_RESERVE": 43.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-20 10:20:40.771797" + }, + { + "ID": 194, + "TARGET_ID": "FS-美-后勤保-194", + "TARGET_NAME": "医疗站营级", + "COUNTRY_REGION": null, + "LEVEL": "营级", + "ROLE_ID": "后勤保障", + "TASK_ID": "信息传输任务", + "X": -118.26, + "Y": -27.2, + "COMMUNICATION_RANGE": 82.22, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4092381612931166, + "ENVIRONMENT_ADAPTABILITY": 0.5173191675958022, + "ANTI_JAMMING_CAPABILITY": 0.7028911092310597, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 87.2, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 106.4, + "SUPPORT_CAPACITY": 4328.0, + "CREATED_TIME": "2025-06-15 10:20:40.776010" + }, + { + "ID": 193, + "TARGET_ID": "FS-中-协同打-193", + "TARGET_NAME": "预警指挥机师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": -80.02, + "Y": 74.68, + "COMMUNICATION_RANGE": 53.08, + "WEIGHT": 65.8, + "AREA": 143.0, + "MOBILITY": 0.7468541493923406, + "ENVIRONMENT_ADAPTABILITY": 0.689792599061401, + "ANTI_JAMMING_CAPABILITY": 0.6549099356560406, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 18.953105666422097, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 9.0, + "TARGET_RECOGNITION_CAPABILITY": 0.9402505727549403, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-15 10:20:40.775972" + }, + { + "ID": 18, + "TARGET_ID": "FS-法-协同打-018", + "TARGET_NAME": "无人机群营级", + "COUNTRY_REGION": "法", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": 45.47, + "Y": -43.93, + "COMMUNICATION_RANGE": 62.84, + "WEIGHT": 65.1, + "AREA": 124.0, + "MOBILITY": 0.3543563874221979, + "ENVIRONMENT_ADAPTABILITY": 0.8417871714544114, + "ANTI_JAMMING_CAPABILITY": 0.924860082899791, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 90.69112852357011, + "STRIKE_ACCURACY": 0.5039734399076427, + "AMMUNITION_RESERVE": 12.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-15 10:20:40.769259" + }, + { + "ID": 62, + "TARGET_ID": "FS-法-后勤保-062", + "TARGET_NAME": "油料库师级", + "COUNTRY_REGION": "法", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "火力打击任务", + "X": -25.58, + "Y": -54.57, + "COMMUNICATION_RANGE": 64.9, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.6767827230597143, + "ENVIRONMENT_ADAPTABILITY": 0.4416111113251431, + "ANTI_JAMMING_CAPABILITY": 0.4261780496845124, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 90.6, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 170.2, + "SUPPORT_CAPACITY": 4611.0, + "CREATED_TIME": "2025-06-14 10:20:40.770363" + }, + { + "ID": 141, + "TARGET_ID": "FS-俄-指挥控-141", + "TARGET_NAME": "数据中心师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "指挥控制", + "TASK_ID": "信息传输任务", + "X": -45.32, + "Y": -86.08, + "COMMUNICATION_RANGE": 127.44, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.49245797490338156, + "ENVIRONMENT_ADAPTABILITY": 0.6449855071685919, + "ANTI_JAMMING_CAPABILITY": 0.8016169385117697, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.76, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 29.2, + "PROCESSING_CAPACITY": 5822.0, + "INFORMATION_FUSION_CAPABILITY": 0.45269369851445146, + "SYSTEM_RELIABILITY": 0.9600844917078736, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-13 10:20:40.774191" + }, + { + "ID": 81, + "TARGET_ID": "FS-美-情报侦-081", + "TARGET_NAME": "电子侦察站团级", + "COUNTRY_REGION": "美", + "LEVEL": "团级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": -103.79, + "Y": -10.138125, + "COMMUNICATION_RANGE": 158.87, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 1.0, + "ENVIRONMENT_ADAPTABILITY": 0.8781268277888904, + "ANTI_JAMMING_CAPABILITY": 0.5373759988580749, + "DETECTION_RANGE": 300.0280862730973, + "DETECTION_ACCURACY": 0.9452909615814071, + "REFRESH_RATE": 2.2, + "TRANSMISSION_DELAY": 1.82, + "RELIABILITY": 0.6659526659802996, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-13 10:20:40.770813" + }, + { + "ID": 77, + "TARGET_ID": "FS-美-后勤保-077", + "TARGET_NAME": "医疗站师级", + "COUNTRY_REGION": "美", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "火力打击任务", + "X": -159.1, + "Y": 78.0, + "COMMUNICATION_RANGE": 157.74, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.7564119650730661, + "ENVIRONMENT_ADAPTABILITY": 0.4947513015559231, + "ANTI_JAMMING_CAPABILITY": 0.7325771034249081, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 93.7, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 189.7, + "SUPPORT_CAPACITY": 4414.0, + "CREATED_TIME": "2025-06-11 10:20:40.770718" + }, + { + "ID": 78, + "TARGET_ID": "FS-美-指挥控-078", + "TARGET_NAME": "通信中继站营级", + "COUNTRY_REGION": "美", + "LEVEL": "营级", + "ROLE_ID": "指挥控制", + "TASK_ID": "侦察监视任务", + "X": 76.36, + "Y": -17.44, + "COMMUNICATION_RANGE": 104.46, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.046537537876798374, + "ENVIRONMENT_ADAPTABILITY": 0.7023518192046856, + "ANTI_JAMMING_CAPABILITY": 0.5997882249379117, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.99, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 20.6, + "PROCESSING_CAPACITY": 4465.0, + "INFORMATION_FUSION_CAPABILITY": 1.2480267910698957, + "SYSTEM_RELIABILITY": 0.7161873380158522, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-08 10:20:40.770739" + }, + { + "ID": 6, + "TARGET_ID": "FS-美-指挥控-006", + "TARGET_NAME": "数据中心旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "侦察监视任务", + "X": 12.06, + "Y": -31.33, + "COMMUNICATION_RANGE": 219.63, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.16653364307943486, + "ENVIRONMENT_ADAPTABILITY": 0.45923129381502054, + "ANTI_JAMMING_CAPABILITY": 0.5483938647034144, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.74, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 21.2, + "PROCESSING_CAPACITY": 4119.0, + "INFORMATION_FUSION_CAPABILITY": 0.5604719071656301, + "SYSTEM_RELIABILITY": 0.633956758755577, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-04 10:20:40.768904" + }, + { + "ID": 181, + "TARGET_ID": "FS-俄-后勤保-181", + "TARGET_NAME": "补给站团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "后勤保障", + "TASK_ID": "火力打击任务", + "X": -31.16, + "Y": -62.94, + "COMMUNICATION_RANGE": 221.46, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5735909772575809, + "ENVIRONMENT_ADAPTABILITY": 0.6617358915997936, + "ANTI_JAMMING_CAPABILITY": 0.5117706785028246, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 82.4, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 134.8, + "SUPPORT_CAPACITY": 4470.0, + "CREATED_TIME": "2025-06-03 10:20:40.775595" + }, + { + "ID": 82, + "TARGET_ID": "FS-美-协同打-082", + "TARGET_NAME": "预警指挥机军级", + "COUNTRY_REGION": "美", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "侦察监视任务", + "X": -100.29, + "Y": -28.91, + "COMMUNICATION_RANGE": 204.86, + "WEIGHT": 45.6, + "AREA": 55.0, + "MOBILITY": 0.6260068597611019, + "ENVIRONMENT_ADAPTABILITY": 0.5451198886711976, + "ANTI_JAMMING_CAPABILITY": 0.7798866960125045, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 98.57517408374902, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 5.0, + "TARGET_RECOGNITION_CAPABILITY": 0.5018548760106021, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-06-03 10:20:40.770836" + }, + { + "ID": 7, + "TARGET_ID": "FS-中-协同打-007", + "TARGET_NAME": "预警指挥机团级", + "COUNTRY_REGION": "中", + "LEVEL": "团级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": -160.58, + "Y": 86.72, + "COMMUNICATION_RANGE": 56.92, + "WEIGHT": 34.8, + "AREA": 108.0, + "MOBILITY": 0.8418959990052168, + "ENVIRONMENT_ADAPTABILITY": 0.3530710066286552, + "ANTI_JAMMING_CAPABILITY": 0.9965912957743314, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 39.268142578293975, + "STRIKE_ACCURACY": 0.6387574270477663, + "AMMUNITION_RESERVE": 45.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-30 10:20:40.768930" + }, + { + "ID": 76, + "TARGET_ID": "FS-俄-协同打-076", + "TARGET_NAME": "电子战飞机营级", + "COUNTRY_REGION": "俄", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "侦察监视任务", + "X": -50.95, + "Y": -4.28, + "COMMUNICATION_RANGE": 65.58, + "WEIGHT": 68.6, + "AREA": 210.0, + "MOBILITY": 0.5469519520457505, + "ENVIRONMENT_ADAPTABILITY": 0.4921191208699936, + "ANTI_JAMMING_CAPABILITY": 0.5860378050549777, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 87.089099648513, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 6.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8917744732672083, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-26 10:20:40.770693" + }, + { + "ID": 153, + "TARGET_ID": "FS-中-平台部-153", + "TARGET_NAME": "港口旅级", + "COUNTRY_REGION": "中", + "LEVEL": "旅级", + "ROLE_ID": "平台部署", + "TASK_ID": "指挥协调任务", + "X": -170.19, + "Y": -44.57, + "COMMUNICATION_RANGE": 92.24, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.746002745173314, + "ANTI_JAMMING_CAPABILITY": 0.807743378372854, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 15892.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 8075.0, + "CREATED_TIME": "2025-05-23 10:20:40.774593" + }, + { + "ID": 13, + "TARGET_ID": "FS-英-指挥控-013", + "TARGET_NAME": "作战中心师级", + "COUNTRY_REGION": "英", + "LEVEL": "师级", + "ROLE_ID": "指挥控制", + "TASK_ID": "侦察监视任务", + "X": 120.99, + "Y": 13.77, + "COMMUNICATION_RANGE": 195.25, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.22636648740168702, + "ENVIRONMENT_ADAPTABILITY": 0.4430748612370031, + "ANTI_JAMMING_CAPABILITY": 0.6378322327831123, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.82, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 26.1, + "PROCESSING_CAPACITY": 767.0, + "INFORMATION_FUSION_CAPABILITY": 0.501785330200301, + "SYSTEM_RELIABILITY": 0.9933702463336052, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-22 10:20:40.769073" + }, + { + "ID": 58, + "TARGET_ID": "FS-法-后勤保-058", + "TARGET_NAME": "医疗站军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": 0.59, + "Y": 66.29, + "COMMUNICATION_RANGE": 185.05, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.35491221639424797, + "ENVIRONMENT_ADAPTABILITY": 0.6905655902704224, + "ANTI_JAMMING_CAPABILITY": 0.5211386963992168, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 12.7, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 129.3, + "SUPPORT_CAPACITY": 638.0, + "CREATED_TIME": "2025-05-21 10:20:40.770276" + }, + { + "ID": 176, + "TARGET_ID": "FS-美-协同打-176", + "TARGET_NAME": "无人机群营级", + "COUNTRY_REGION": null, + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "后勤支援任务", + "X": -86.89, + "Y": 76.54, + "COMMUNICATION_RANGE": 151.53, + "WEIGHT": 26.1, + "AREA": 234.0, + "MOBILITY": 0.6857222756263284, + "ENVIRONMENT_ADAPTABILITY": 0.8440485557734743, + "ANTI_JAMMING_CAPABILITY": 0.6826603663261064, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 91.5968633445027, + "STRIKE_ACCURACY": 0.6681101221676765, + "AMMUNITION_RESERVE": 15.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7066973375784653, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-20 10:20:40.775460" + }, + { + "ID": 163, + "TARGET_ID": "FS-俄-火力打-163", + "TARGET_NAME": "导弹发射营旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "指挥协调任务", + "X": -155.08, + "Y": 47.36, + "COMMUNICATION_RANGE": 43.29, + "WEIGHT": 41.5, + "AREA": 286.0, + "MOBILITY": 0.763006365208842, + "ENVIRONMENT_ADAPTABILITY": 0.8489290569098005, + "ANTI_JAMMING_CAPABILITY": 0.4581742921079944, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 96.28607447959257, + "STRIKE_ACCURACY": 0.69922377633791, + "AMMUNITION_RESERVE": 7.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-20 10:20:40.775003" + }, + { + "ID": 59, + "TARGET_ID": "FS-美-后勤保-059", + "TARGET_NAME": "维修站旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "后勤支援任务", + "X": -87.14, + "Y": 85.28, + "COMMUNICATION_RANGE": 35.62, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.44437577899873415, + "ENVIRONMENT_ADAPTABILITY": 0.43541680856210563, + "ANTI_JAMMING_CAPABILITY": 0.6995796155801299, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 78.9, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 117.4, + "SUPPORT_CAPACITY": 2055.0, + "CREATED_TIME": "2025-05-20 10:20:40.770298" + }, + { + "ID": 179, + "TARGET_ID": "FS-法-火力打-179", + "TARGET_NAME": "战斗机大队团级", + "COUNTRY_REGION": "法", + "LEVEL": "团级", + "ROLE_ID": "火力打击", + "TASK_ID": "火力打击任务", + "X": -105.68, + "Y": -39.29, + "COMMUNICATION_RANGE": 41.51, + "WEIGHT": 74.2, + "AREA": 242.0, + "MOBILITY": 0.5438770284244258, + "ENVIRONMENT_ADAPTABILITY": 0.629804844042027, + "ANTI_JAMMING_CAPABILITY": 0.6780581555071221, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 19.217580669345303, + "STRIKE_ACCURACY": 0.6214389830853697, + "AMMUNITION_RESERVE": 15.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7501738461872707, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-17 10:20:40.775538" + }, + { + "ID": 170, + "TARGET_ID": "FS-美-后勤保-170", + "TARGET_NAME": "油料库旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": -13.06, + "Y": -73.16, + "COMMUNICATION_RANGE": 41.63, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5811770264551491, + "ENVIRONMENT_ADAPTABILITY": 0.5980654032913031, + "ANTI_JAMMING_CAPABILITY": 0.6802259732224611, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 83.7, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 148.8, + "SUPPORT_CAPACITY": 4646.0, + "CREATED_TIME": "2025-05-17 10:20:40.775306" + }, + { + "ID": 128, + "TARGET_ID": "FS-英-指挥控-128", + "TARGET_NAME": "通信中继站团级", + "COUNTRY_REGION": "英", + "LEVEL": "团级", + "ROLE_ID": "指挥控制", + "TASK_ID": "信息传输任务", + "X": 88.93, + "Y": -72.29, + "COMMUNICATION_RANGE": 100.11, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.11968611785787592, + "ENVIRONMENT_ADAPTABILITY": 0.5358766609097231, + "ANTI_JAMMING_CAPABILITY": 0.8592664542493602, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.94, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 244.4630971632028, + "PROCESSING_CAPACITY": 2810.0, + "INFORMATION_FUSION_CAPABILITY": 0.42265585832527247, + "SYSTEM_RELIABILITY": 0.8451069493025585, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-15 10:20:40.773611" + }, + { + "ID": 107, + "TARGET_ID": "FS-俄-后勤保-107", + "TARGET_NAME": "维修站军级", + "COUNTRY_REGION": "俄", + "LEVEL": "军级", + "ROLE_ID": "后勤保障", + "TASK_ID": "信息传输任务", + "X": -3.69, + "Y": 29.16, + "COMMUNICATION_RANGE": 91.94, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4481426857608354, + "ENVIRONMENT_ADAPTABILITY": 0.5558696695626, + "ANTI_JAMMING_CAPABILITY": 0.6226182328960213, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 34.1, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 150.7, + "SUPPORT_CAPACITY": 1587.0, + "CREATED_TIME": "2025-05-14 10:20:40.771749" + }, + { + "ID": 117, + "TARGET_ID": "FS-法-指挥控-117", + "TARGET_NAME": "作战中心军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "指挥控制", + "TASK_ID": "侦察监视任务", + "X": -173.4, + "Y": 60.77, + "COMMUNICATION_RANGE": 183.19, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.45709562427289413, + "ENVIRONMENT_ADAPTABILITY": 0.7127797691418672, + "ANTI_JAMMING_CAPABILITY": 0.6234051228857703, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.48, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 4.1, + "PROCESSING_CAPACITY": 3496.0, + "INFORMATION_FUSION_CAPABILITY": 0.436597195039313, + "SYSTEM_RELIABILITY": 0.7234488054921726, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-12 10:20:40.772012" + }, + { + "ID": 164, + "TARGET_ID": "FS-英-指挥控-164", + "TARGET_NAME": "作战中心师级", + "COUNTRY_REGION": "英", + "LEVEL": "师级", + "ROLE_ID": "指挥控制", + "TASK_ID": "后勤支援任务", + "X": 44.63, + "Y": 56.91, + "COMMUNICATION_RANGE": 244.01, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.18926923585693745, + "ENVIRONMENT_ADAPTABILITY": 0.6948256460189554, + "ANTI_JAMMING_CAPABILITY": 0.5052720061495848, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.49, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 18.0, + "PROCESSING_CAPACITY": 5926.0, + "INFORMATION_FUSION_CAPABILITY": 0.6744075981565485, + "SYSTEM_RELIABILITY": 0.7784253110256918, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-08 10:20:40.775060" + }, + { + "ID": 198, + "TARGET_ID": "FS-法-情报侦-198", + "TARGET_NAME": "侦察卫星军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "侦察监视任务", + "X": -35.55, + "Y": -16.97, + "COMMUNICATION_RANGE": 335.47, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.7179998145912513, + "ENVIRONMENT_ADAPTABILITY": 0.2942332833580382, + "ANTI_JAMMING_CAPABILITY": 0.13249844267154642, + "DETECTION_RANGE": 186.02367668791365, + "DETECTION_ACCURACY": 1.0557490344916483, + "REFRESH_RATE": 1.2, + "TRANSMISSION_DELAY": 1.25, + "RELIABILITY": 1.0498381584690075, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-07 10:20:40.776148" + }, + { + "ID": 139, + "TARGET_ID": "FS-俄-后勤保-139", + "TARGET_NAME": "补给站师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": -23.55, + "Y": -38.21, + "COMMUNICATION_RANGE": 239.49, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.7197912288341608, + "ENVIRONMENT_ADAPTABILITY": 0.4158433847415176, + "ANTI_JAMMING_CAPABILITY": 0.7162763599164875, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 71.2, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 68.1, + "SUPPORT_CAPACITY": 1514.0, + "CREATED_TIME": "2025-05-07 10:20:40.774069" + }, + { + "ID": 94, + "TARGET_ID": "FS-美-火力打-094", + "TARGET_NAME": "导弹发射营营级", + "COUNTRY_REGION": "美", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "指挥协调任务", + "X": -128.58, + "Y": 53.89, + "COMMUNICATION_RANGE": 140.89, + "WEIGHT": 21.5, + "AREA": 256.0, + "MOBILITY": 0.33160458013015265, + "ENVIRONMENT_ADAPTABILITY": 0.939066643498953, + "ANTI_JAMMING_CAPABILITY": 0.8412802454995514, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 71.50064052448745, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 7.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7795663079575479, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-05-03 10:20:40.771354" + }, + { + "ID": 130, + "TARGET_ID": "FS-中-情报侦-130", + "TARGET_NAME": "雷达站团级", + "COUNTRY_REGION": "中", + "LEVEL": "团级", + "ROLE_ID": "情报侦察", + "TASK_ID": "火力打击任务", + "X": -165.22, + "Y": -14.2, + "COMMUNICATION_RANGE": 76.52, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.11381345767922388, + "ENVIRONMENT_ADAPTABILITY": 0.03197032644435194, + "ANTI_JAMMING_CAPABILITY": 0.5546222157940126, + "DETECTION_RANGE": 450.3400648536175, + "DETECTION_ACCURACY": 0.9004205581018352, + "REFRESH_RATE": 5.0, + "TRANSMISSION_DELAY": 0.12, + "RELIABILITY": 0.7967741485026053, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-04-29 10:20:40.773744" + }, + { + "ID": 185, + "TARGET_ID": "FS-英-协同打-185", + "TARGET_NAME": "无人机群团级", + "COUNTRY_REGION": "英", + "LEVEL": "团级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": -26.63, + "Y": 43.17, + "COMMUNICATION_RANGE": 100.07, + "WEIGHT": 73.2, + "AREA": 164.0, + "MOBILITY": 0.4840730804973151, + "ENVIRONMENT_ADAPTABILITY": 0.5475148927030214, + "ANTI_JAMMING_CAPABILITY": 0.8529137209157185, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 10.513144084094835, + "STRIKE_ACCURACY": 0.909030667061954, + "AMMUNITION_RESERVE": 8.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7925078681624562, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-04-28 10:20:40.775751" + }, + { + "ID": 16, + "TARGET_ID": "FS-俄-平台部-016", + "TARGET_NAME": "基地营级", + "COUNTRY_REGION": "俄", + "LEVEL": "营级", + "ROLE_ID": "平台部署", + "TASK_ID": "火力打击任务", + "X": -149.36, + "Y": -64.42, + "COMMUNICATION_RANGE": 90.37, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.811143948782188, + "ANTI_JAMMING_CAPABILITY": 0.8993529987597684, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 34235.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 6413.0, + "CREATED_TIME": "2025-04-28 10:20:40.769203" + }, + { + "ID": 129, + "TARGET_ID": "FS-中-协同打-129", + "TARGET_NAME": "电子战飞机师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "协同打击", + "TASK_ID": "信息传输任务", + "X": 143.98, + "Y": 79.64, + "COMMUNICATION_RANGE": 78.06, + "WEIGHT": 79.0, + "AREA": 261.0, + "MOBILITY": 0.9854401508201234, + "ENVIRONMENT_ADAPTABILITY": 0.9288237708735576, + "ANTI_JAMMING_CAPABILITY": 0.873499163759641, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 66.65474015077658, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 7.0, + "TARGET_RECOGNITION_CAPABILITY": 0.6430929345773507, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-04-20 10:20:40.773703" + }, + { + "ID": 168, + "TARGET_ID": "FS-英-后勤保-168", + "TARGET_NAME": "油料库军级", + "COUNTRY_REGION": "英", + "LEVEL": "军级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": 149.6, + "Y": 59.12, + "COMMUNICATION_RANGE": 61.38, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.41367753082299275, + "ENVIRONMENT_ADAPTABILITY": 0.4696035718004009, + "ANTI_JAMMING_CAPABILITY": 0.409823806283593, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 43.4, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 52.2, + "SUPPORT_CAPACITY": 4330.0, + "CREATED_TIME": "2025-04-19 10:20:40.775258" + }, + { + "ID": 174, + "TARGET_ID": "FS-中-火力打-174", + "TARGET_NAME": "自行火炮营旅级", + "COUNTRY_REGION": "中", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "侦察监视任务", + "X": -173.96, + "Y": 8.32, + "COMMUNICATION_RANGE": 55.79, + "WEIGHT": 75.7, + "AREA": 193.0, + "MOBILITY": 0.8392160598568286, + "ENVIRONMENT_ADAPTABILITY": 0.8967011404937146, + "ANTI_JAMMING_CAPABILITY": 0.6997256443998301, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 34.56085849238408, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 25.0, + "TARGET_RECOGNITION_CAPABILITY": 0.4301862590303774, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-04-16 10:20:40.775403" + }, + { + "ID": 65, + "TARGET_ID": "FS-英-后勤保-065", + "TARGET_NAME": "医疗站旅级", + "COUNTRY_REGION": "英", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "后勤支援任务", + "X": 127.59, + "Y": -23.61, + "COMMUNICATION_RANGE": 42.31, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.3412052696553679, + "ENVIRONMENT_ADAPTABILITY": 0.5347511050322685, + "ANTI_JAMMING_CAPABILITY": 0.6459119965012923, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 39.3, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 165.0, + "SUPPORT_CAPACITY": 204.0, + "CREATED_TIME": "2025-04-10 10:20:40.770426" + }, + { + "ID": 73, + "TARGET_ID": "FS-俄-协同打-073", + "TARGET_NAME": "无人机群军级", + "COUNTRY_REGION": "俄", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": 32.6, + "Y": 64.82, + "COMMUNICATION_RANGE": 59.3, + "WEIGHT": 39.5, + "AREA": 114.0, + "MOBILITY": 0.9821459459755617, + "ENVIRONMENT_ADAPTABILITY": 0.999817994574711, + "ANTI_JAMMING_CAPABILITY": 0.7548437050820773, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 78.9319607513377, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 18.0, + "TARGET_RECOGNITION_CAPABILITY": 0.9480303041495991, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-04-01 10:20:40.770623" + }, + { + "ID": 30, + "TARGET_ID": "FS-法-指挥控-030", + "TARGET_NAME": "指挥所师级", + "COUNTRY_REGION": "法", + "LEVEL": "师级", + "ROLE_ID": "指挥控制", + "TASK_ID": "后勤支援任务", + "X": 69.0, + "Y": -77.02, + "COMMUNICATION_RANGE": 94.69, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.11541856904407805, + "ENVIRONMENT_ADAPTABILITY": 0.6086307562120046, + "ANTI_JAMMING_CAPABILITY": 0.6264091061666508, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.16, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 29.4, + "PROCESSING_CAPACITY": 9375.0, + "INFORMATION_FUSION_CAPABILITY": 0.3326028633595343, + "SYSTEM_RELIABILITY": 0.6560966431181602, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-03-27 10:20:40.769563" + }, + { + "ID": 110, + "TARGET_ID": "FS-中-情报侦-110", + "TARGET_NAME": "侦察机师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "情报侦察", + "TASK_ID": "火力打击任务", + "X": -7.04, + "Y": -62.68, + "COMMUNICATION_RANGE": 142.86, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.654071336770851, + "ENVIRONMENT_ADAPTABILITY": 0.13593518098828994, + "ANTI_JAMMING_CAPABILITY": 0.07873595136259914, + "DETECTION_RANGE": 100.1421932553779, + "DETECTION_ACCURACY": 0.9430128972909906, + "REFRESH_RATE": 1.3, + "TRANSMISSION_DELAY": 0.42, + "RELIABILITY": 0.8204821037292948, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-03-22 10:20:40.771821" + }, + { + "ID": 157, + "TARGET_ID": "FS-俄-后勤保-157", + "TARGET_NAME": "补给站团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "后勤保障", + "TASK_ID": "后勤支援任务", + "X": 50.29, + "Y": -59.03, + "COMMUNICATION_RANGE": 122.73, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.7834991470247359, + "ENVIRONMENT_ADAPTABILITY": 0.8381788772329817, + "ANTI_JAMMING_CAPABILITY": 0.7761791736377086, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 46.4, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 150.3, + "SUPPORT_CAPACITY": 3225.0, + "CREATED_TIME": "2025-03-20 10:20:40.774723" + }, + { + "ID": 60, + "TARGET_ID": "FS-法-后勤保-060", + "TARGET_NAME": "油料库旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": 6.97, + "Y": 80.74, + "COMMUNICATION_RANGE": 86.4, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5191262379314131, + "ENVIRONMENT_ADAPTABILITY": 0.6748108103086499, + "ANTI_JAMMING_CAPABILITY": 0.7206125360604598, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 98.6, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 66.4, + "SUPPORT_CAPACITY": 1972.0, + "CREATED_TIME": "2025-03-17 10:20:40.770318" + }, + { + "ID": 124, + "TARGET_ID": "FS-英-后勤保-124", + "TARGET_NAME": "油料库营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "后勤保障", + "TASK_ID": "信息传输任务", + "X": -34.0, + "Y": 27.03, + "COMMUNICATION_RANGE": 41.17, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.38004611209975847, + "ENVIRONMENT_ADAPTABILITY": 0.7531343228219308, + "ANTI_JAMMING_CAPABILITY": 0.5558460454873009, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 64.4, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 152.8, + "SUPPORT_CAPACITY": 1338.0, + "CREATED_TIME": "2025-03-16 10:20:40.772899" + }, + { + "ID": 5, + "TARGET_ID": "FS-英-协同打-005", + "TARGET_NAME": "无人机群师级", + "COUNTRY_REGION": "英", + "LEVEL": "师级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": -25.59, + "Y": -11.13, + "COMMUNICATION_RANGE": 41.0, + "WEIGHT": 43.6, + "AREA": 115.0, + "MOBILITY": 0.5927480104478662, + "ENVIRONMENT_ADAPTABILITY": 0.4568077940025165, + "ANTI_JAMMING_CAPABILITY": 0.9015566941466917, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 75.65723933863056, + "STRIKE_ACCURACY": 0.8847892784229934, + "AMMUNITION_RESERVE": 38.0, + "TARGET_RECOGNITION_CAPABILITY": 0.4511951826088716, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-03-16 10:20:40.768877" + }, + { + "ID": 71, + "TARGET_ID": "FS-俄-情报侦-071", + "TARGET_NAME": "侦察卫星团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": 106.49, + "Y": -30.06, + "COMMUNICATION_RANGE": 57.06, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.2983775523225881, + "ENVIRONMENT_ADAPTABILITY": 0.7680209240417678, + "ANTI_JAMMING_CAPABILITY": 0.500279827202823, + "DETECTION_RANGE": 472.46812566808813, + "DETECTION_ACCURACY": 0.6701450468627849, + "REFRESH_RATE": 6.4, + "TRANSMISSION_DELAY": 1.67, + "RELIABILITY": 0.6495092100724353, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-03-14 10:20:40.770576" + }, + { + "ID": 64, + "TARGET_ID": "FS-英-情报侦-064", + "TARGET_NAME": "侦察机军级", + "COUNTRY_REGION": "英", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "侦察监视任务", + "X": -94.77, + "Y": -56.31, + "COMMUNICATION_RANGE": 100.68, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4306263544992416, + "ENVIRONMENT_ADAPTABILITY": 0.14018910274780472, + "ANTI_JAMMING_CAPABILITY": 0.32958362151069187, + "DETECTION_RANGE": 283.47796079250367, + "DETECTION_ACCURACY": 0.8289925743579045, + "REFRESH_RATE": 4.7, + "TRANSMISSION_DELAY": 1.45, + "RELIABILITY": 0.6400407270232068, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-03-14 10:20:40.770403" + }, + { + "ID": 53, + "TARGET_ID": "FS-俄-协同打-053", + "TARGET_NAME": "无人机群旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "协同打击", + "TASK_ID": "信息传输任务", + "X": 161.77, + "Y": 14.56, + "COMMUNICATION_RANGE": 120.03, + "WEIGHT": 74.5, + "AREA": 165.0, + "MOBILITY": 0.9439322036837514, + "ENVIRONMENT_ADAPTABILITY": 0.4229309239920552, + "ANTI_JAMMING_CAPABILITY": 0.8317991979460018, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 31.992154655693593, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 29.0, + "TARGET_RECOGNITION_CAPABILITY": 0.43529739668425915, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-03-10 10:20:40.770133" + }, + { + "ID": 151, + "TARGET_ID": "FS-英-指挥控-151", + "TARGET_NAME": "数据中心师级", + "COUNTRY_REGION": "英", + "LEVEL": "师级", + "ROLE_ID": "指挥控制", + "TASK_ID": "信息传输任务", + "X": 61.43, + "Y": 63.97, + "COMMUNICATION_RANGE": 145.83, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.39902208860898924, + "ENVIRONMENT_ADAPTABILITY": 0.8222790985397203, + "ANTI_JAMMING_CAPABILITY": 0.9097187737548205, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.42, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.4, + "PROCESSING_CAPACITY": 2101.0, + "INFORMATION_FUSION_CAPABILITY": 1.2783490822871695, + "SYSTEM_RELIABILITY": 0.6880678144912362, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-03-06 10:20:40.774526" + }, + { + "ID": 2, + "TARGET_ID": "FS-俄-火力打-002", + "TARGET_NAME": "导弹发射营旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "指挥协调任务", + "X": -82.39, + "Y": 88.79, + "COMMUNICATION_RANGE": 101.09, + "WEIGHT": 35.6, + "AREA": 237.0, + "MOBILITY": 0.8145866239364985, + "ENVIRONMENT_ADAPTABILITY": 0.9230454473165111, + "ANTI_JAMMING_CAPABILITY": 0.5777605544315964, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 9.321300565260064, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 33.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-03-06 10:20:40.768776" + }, + { + "ID": 54, + "TARGET_ID": "FS-美-情报侦-054", + "TARGET_NAME": "侦察卫星军级", + "COUNTRY_REGION": "美", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": -141.16, + "Y": -70.62, + "COMMUNICATION_RANGE": 123.87, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.37027281686504043, + "ENVIRONMENT_ADAPTABILITY": 0.7510935747848653, + "ANTI_JAMMING_CAPABILITY": 0.15964570690291824, + "DETECTION_RANGE": 431.9193006548834, + "DETECTION_ACCURACY": 0.7935967287685295, + "REFRESH_RATE": 5.5, + "TRANSMISSION_DELAY": 1.99, + "RELIABILITY": 0.6363465497863814, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-28 10:20:40.770178" + }, + { + "ID": 92, + "TARGET_ID": "FS-中-火力打-092", + "TARGET_NAME": "战斗机大队营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "后勤支援任务", + "X": 149.18, + "Y": 29.66, + "COMMUNICATION_RANGE": 100.18, + "WEIGHT": 46.7, + "AREA": 78.0, + "MOBILITY": 0.7637165652670908, + "ENVIRONMENT_ADAPTABILITY": 0.6866265834512058, + "ANTI_JAMMING_CAPABILITY": 0.5837752388248956, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 16.864014514687803, + "STRIKE_ACCURACY": 0.5373857501673068, + "AMMUNITION_RESERVE": 44.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-27 10:20:40.771295" + }, + { + "ID": 56, + "TARGET_ID": "FS-英-火力打-056", + "TARGET_NAME": "战斗机大队师级", + "COUNTRY_REGION": "英", + "LEVEL": "师级", + "ROLE_ID": "火力打击", + "TASK_ID": "信息传输任务", + "X": -161.89, + "Y": -12.91, + "COMMUNICATION_RANGE": 112.4, + "WEIGHT": 23.2, + "AREA": 72.0, + "MOBILITY": 0.7761320252126991, + "ENVIRONMENT_ADAPTABILITY": 0.8062963746387264, + "ANTI_JAMMING_CAPABILITY": 0.7513387451774443, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 14.565339645903753, + "STRIKE_ACCURACY": 0.586074819891458, + "AMMUNITION_RESERVE": 23.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-27 10:20:40.770230" + }, + { + "ID": 186, + "TARGET_ID": "FS-中-后勤保-186", + "TARGET_NAME": "油料库师级", + "COUNTRY_REGION": "中", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": -158.54, + "Y": -72.13, + "COMMUNICATION_RANGE": 74.97, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.790839487743356, + "ENVIRONMENT_ADAPTABILITY": 0.4363573258994909, + "ANTI_JAMMING_CAPABILITY": 0.3109363012046841, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 15.3, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 193.0, + "SUPPORT_CAPACITY": 3381.0, + "CREATED_TIME": "2025-02-23 10:20:40.775777" + }, + { + "ID": 114, + "TARGET_ID": "FS-美-协同打-114", + "TARGET_NAME": "无人机群营级", + "COUNTRY_REGION": "美", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": 140.51, + "Y": -82.6, + "COMMUNICATION_RANGE": 68.26, + "WEIGHT": 59.1, + "AREA": 102.0, + "MOBILITY": 0.35003128360308466, + "ENVIRONMENT_ADAPTABILITY": 0.37733501196739483, + "ANTI_JAMMING_CAPABILITY": 0.9682546463390935, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 72.9734775049242, + "STRIKE_ACCURACY": 0.6218705547813999, + "AMMUNITION_RESERVE": 36.0, + "TARGET_RECOGNITION_CAPABILITY": 1.0, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-20 10:20:40.771933" + }, + { + "ID": 38, + "TARGET_ID": "FS-俄-指挥控-038", + "TARGET_NAME": "通信中继站旅级", + "COUNTRY_REGION": "俄", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "指挥协调任务", + "X": -132.34, + "Y": -30.55, + "COMMUNICATION_RANGE": 170.99, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.11900852145596574, + "ENVIRONMENT_ADAPTABILITY": 0.9162969582129363, + "ANTI_JAMMING_CAPABILITY": 0.7675800436175584, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.98, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 2.1, + "PROCESSING_CAPACITY": 6247.0, + "INFORMATION_FUSION_CAPABILITY": 0.6987482085456629, + "SYSTEM_RELIABILITY": 0.7871535552191965, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-20 10:20:40.769748" + }, + { + "ID": 122, + "TARGET_ID": "FS-美-情报侦-122", + "TARGET_NAME": "侦察卫星营级", + "COUNTRY_REGION": "美", + "LEVEL": "营级", + "ROLE_ID": "情报侦察", + "TASK_ID": "侦察监视任务", + "X": 68.32, + "Y": 83.11, + "COMMUNICATION_RANGE": 184.04, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.051984577823960376, + "ENVIRONMENT_ADAPTABILITY": 0.0603923836133603, + "ANTI_JAMMING_CAPABILITY": 0.7232366143588779, + "DETECTION_RANGE": 415.5343241235386, + "DETECTION_ACCURACY": 0.797152392963875, + "REFRESH_RATE": 7.3, + "TRANSMISSION_DELAY": 1.98, + "RELIABILITY": 0.9851544458932678, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-18 10:20:40.772738" + }, + { + "ID": 191, + "TARGET_ID": "FS-英-指挥控-191", + "TARGET_NAME": "作战中心营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "指挥控制", + "TASK_ID": "信息传输任务", + "X": 16.27, + "Y": 57.45, + "COMMUNICATION_RANGE": 307.01, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4322841356188393, + "ENVIRONMENT_ADAPTABILITY": 0.6440933891416922, + "ANTI_JAMMING_CAPABILITY": 0.6535984888441484, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.91, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 28.1, + "PROCESSING_CAPACITY": 6302.0, + "INFORMATION_FUSION_CAPABILITY": 1.0087391710960292, + "SYSTEM_RELIABILITY": 0.6750805706544136, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-11 10:20:40.775897" + }, + { + "ID": 187, + "TARGET_ID": "FS-法-指挥控-187", + "TARGET_NAME": "数据中心旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "后勤支援任务", + "X": 15.98, + "Y": 61.35, + "COMMUNICATION_RANGE": 216.7, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0695259860026694, + "ENVIRONMENT_ADAPTABILITY": 0.972404602137817, + "ANTI_JAMMING_CAPABILITY": 0.5416118871083714, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.15, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.4, + "PROCESSING_CAPACITY": 389.0, + "INFORMATION_FUSION_CAPABILITY": 0.9596663365297475, + "SYSTEM_RELIABILITY": 0.6750558713885563, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-11 10:20:40.775799" + }, + { + "ID": 34, + "TARGET_ID": "FS-美-协同打-034", + "TARGET_NAME": "电子战飞机旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": 48.25, + "Y": 35.64, + "COMMUNICATION_RANGE": 214.06, + "WEIGHT": 54.9, + "AREA": 247.0, + "MOBILITY": 0.4738119906592404, + "ENVIRONMENT_ADAPTABILITY": 0.8792939166466645, + "ANTI_JAMMING_CAPABILITY": 0.9664927222274495, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 49.38905861839365, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 48.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8019278615659313, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-07 10:20:40.769656" + }, + { + "ID": 152, + "TARGET_ID": "FS-美-协同打-152", + "TARGET_NAME": "预警指挥机团级", + "COUNTRY_REGION": "美", + "LEVEL": "团级", + "ROLE_ID": "协同打击", + "TASK_ID": "后勤支援任务", + "X": -93.95, + "Y": 48.16, + "COMMUNICATION_RANGE": 76.73, + "WEIGHT": 25.3, + "AREA": 235.0, + "MOBILITY": 0.7781804104790686, + "ENVIRONMENT_ADAPTABILITY": 0.38669325067811955, + "ANTI_JAMMING_CAPABILITY": 0.7526508662017282, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 51.27305111454132, + "STRIKE_ACCURACY": 0.6227858023051853, + "AMMUNITION_RESERVE": 11.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8196756499677987, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-02-04 10:20:40.774552" + }, + { + "ID": 183, + "TARGET_ID": "FS-俄-平台部-183", + "TARGET_NAME": "机场师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "平台部署", + "TASK_ID": "火力打击任务", + "X": 159.07, + "Y": -48.18, + "COMMUNICATION_RANGE": 69.1, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.9239536409307703, + "ANTI_JAMMING_CAPABILITY": 0.6683396256054583, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 25165.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 2784.0, + "CREATED_TIME": "2025-02-01 10:20:40.775695" + }, + { + "ID": 106, + "TARGET_ID": "FS-英-平台部-106", + "TARGET_NAME": "港口军级", + "COUNTRY_REGION": "英", + "LEVEL": "军级", + "ROLE_ID": "平台部署", + "TASK_ID": "指挥协调任务", + "X": 54.27, + "Y": -72.25, + "COMMUNICATION_RANGE": 63.77, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.9265258094590463, + "ANTI_JAMMING_CAPABILITY": 0.709117232458309, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 22317.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 9764.0, + "CREATED_TIME": "2025-01-31 10:20:40.771726" + }, + { + "ID": 100, + "TARGET_ID": "FS-俄-后勤保-100", + "TARGET_NAME": "医疗站营级", + "COUNTRY_REGION": "俄", + "LEVEL": "营级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": -94.69, + "Y": 39.81, + "COMMUNICATION_RANGE": 70.87, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.7521134550646282, + "ENVIRONMENT_ADAPTABILITY": 0.4428682045322012, + "ANTI_JAMMING_CAPABILITY": 0.6078904382710589, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 93.1, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 193.7, + "SUPPORT_CAPACITY": 4283.0, + "CREATED_TIME": "2025-01-30 10:20:40.771497" + }, + { + "ID": 63, + "TARGET_ID": "FS-俄-平台部-063", + "TARGET_NAME": "港口师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "平台部署", + "TASK_ID": "火力打击任务", + "X": 58.52, + "Y": 88.58, + "COMMUNICATION_RANGE": 66.87, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.7193661215563005, + "ANTI_JAMMING_CAPABILITY": 0.679702762016761, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 16229.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 1388.0, + "CREATED_TIME": "2025-01-30 10:20:40.770384" + }, + { + "ID": 24, + "TARGET_ID": "FS-中-情报侦-024", + "TARGET_NAME": "雷达站旅级", + "COUNTRY_REGION": "中", + "LEVEL": "旅级", + "ROLE_ID": "情报侦察", + "TASK_ID": "信息传输任务", + "X": 51.13, + "Y": -29.49, + "COMMUNICATION_RANGE": 68.1, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.007508819742141862, + "ENVIRONMENT_ADAPTABILITY": 0.054263137340309964, + "ANTI_JAMMING_CAPABILITY": 0.110882853374206, + "DETECTION_RANGE": 238.45684740987127, + "DETECTION_ACCURACY": 0.7620257013602899, + "REFRESH_RATE": 5.6, + "TRANSMISSION_DELAY": 0.29, + "RELIABILITY": 0.5061511033764677, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-01-24 10:20:40.769413" + }, + { + "ID": 196, + "TARGET_ID": "FS-美-火力打-196", + "TARGET_NAME": "战斗机大队师级", + "COUNTRY_REGION": "美", + "LEVEL": "师级", + "ROLE_ID": "火力打击", + "TASK_ID": "信息传输任务", + "X": -91.68, + "Y": -16.54, + "COMMUNICATION_RANGE": 67.74, + "WEIGHT": 65.0, + "AREA": 74.0, + "MOBILITY": 0.5953110093024454, + "ENVIRONMENT_ADAPTABILITY": 0.3019519203508244, + "ANTI_JAMMING_CAPABILITY": 0.4896887311206409, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 47.32217148679349, + "STRIKE_ACCURACY": 0.6182351586485793, + "AMMUNITION_RESERVE": 49.0, + "TARGET_RECOGNITION_CAPABILITY": 0.5020823574530893, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-01-17 10:20:40.776056" + }, + { + "ID": 51, + "TARGET_ID": "FS-俄-火力打-051", + "TARGET_NAME": "导弹发射营师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "火力打击", + "TASK_ID": "侦察监视任务", + "X": 46.91, + "Y": 16.81, + "COMMUNICATION_RANGE": 71.72, + "WEIGHT": 64.8, + "AREA": 175.0, + "MOBILITY": 0.48448163323928195, + "ENVIRONMENT_ADAPTABILITY": 0.7233617791639311, + "ANTI_JAMMING_CAPABILITY": 0.636676732999353, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 40.27927921821658, + "STRIKE_ACCURACY": 0.5307669708306397, + "AMMUNITION_RESERVE": 46.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8165220122682818, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-01-16 10:20:40.770051" + }, + { + "ID": 47, + "TARGET_ID": "FS-法-协同打-047", + "TARGET_NAME": "电子战飞机军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": 54.41, + "Y": 7.75, + "COMMUNICATION_RANGE": 71.91, + "WEIGHT": 57.8, + "AREA": 101.0, + "MOBILITY": 0.3286630109123921, + "ENVIRONMENT_ADAPTABILITY": 0.5817369567266258, + "ANTI_JAMMING_CAPABILITY": 0.9218120922493653, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 44.96869649341776, + "STRIKE_ACCURACY": 0.9561747122364158, + "AMMUNITION_RESERVE": 5.0, + "TARGET_RECOGNITION_CAPABILITY": 0.40667319474515645, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-01-16 10:20:40.769956" + }, + { + "ID": 127, + "TARGET_ID": "FS-英-火力打-127", + "TARGET_NAME": "战斗机大队团级", + "COUNTRY_REGION": "英", + "LEVEL": "团级", + "ROLE_ID": "火力打击", + "TASK_ID": "信息传输任务", + "X": 128.84, + "Y": 44.43, + "COMMUNICATION_RANGE": 65.84, + "WEIGHT": 50.4, + "AREA": 164.0, + "MOBILITY": 0.573428012261973, + "ENVIRONMENT_ADAPTABILITY": 0.4571840277132902, + "ANTI_JAMMING_CAPABILITY": 0.8590290533549719, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 18.866610152410775, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 19.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7636742371002834, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-01-11 10:20:40.773224" + }, + { + "ID": 119, + "TARGET_ID": "FS-英-后勤保-119", + "TARGET_NAME": "医疗站师级", + "COUNTRY_REGION": "英", + "LEVEL": "师级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": -63.17, + "Y": 25.63, + "COMMUNICATION_RANGE": 54.16, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4456435804619381, + "ENVIRONMENT_ADAPTABILITY": 0.6720094965251981, + "ANTI_JAMMING_CAPABILITY": 0.4186899231940372, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 95.9, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 117.8, + "SUPPORT_CAPACITY": 3003.0, + "CREATED_TIME": "2025-01-10 10:20:40.772374" + }, + { + "ID": 88, + "TARGET_ID": "FS-俄-情报侦-088", + "TARGET_NAME": "侦察卫星师级", + "COUNTRY_REGION": "俄", + "LEVEL": "师级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": -112.59, + "Y": 89.36, + "COMMUNICATION_RANGE": 102.12, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.817377613718918, + "ENVIRONMENT_ADAPTABILITY": 0.16888931124007633, + "ANTI_JAMMING_CAPABILITY": 0.9066520470065111, + "DETECTION_RANGE": 160.42094936303218, + "DETECTION_ACCURACY": 1.0941612484836978, + "REFRESH_RATE": 2.4, + "TRANSMISSION_DELAY": 0.81, + "RELIABILITY": 0.6442664191556642, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-01-10 10:20:40.771174" + }, + { + "ID": 11, + "TARGET_ID": "FS-法-后勤保-011", + "TARGET_NAME": "补给站团级", + "COUNTRY_REGION": "法", + "LEVEL": "团级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": -24.56, + "Y": -66.14, + "COMMUNICATION_RANGE": 104.49, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.6197023954884233, + "ENVIRONMENT_ADAPTABILITY": 0.8668044460473187, + "ANTI_JAMMING_CAPABILITY": 0.6734573285679439, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 17.0, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 107.1, + "SUPPORT_CAPACITY": 660.0, + "CREATED_TIME": "2025-01-09 10:20:40.769027" + }, + { + "ID": 31, + "TARGET_ID": "FS-中-情报侦-031", + "TARGET_NAME": "雷达站团级", + "COUNTRY_REGION": "中", + "LEVEL": "团级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": -168.2, + "Y": -24.12, + "COMMUNICATION_RANGE": 151.23, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.8152071173101112, + "ENVIRONMENT_ADAPTABILITY": 0.359333618497673, + "ANTI_JAMMING_CAPABILITY": 0.1441961476789485, + "DETECTION_RANGE": 520.5489057611674, + "DETECTION_ACCURACY": 0.9142729061699109, + "REFRESH_RATE": 8.4, + "TRANSMISSION_DELAY": 1.62, + "RELIABILITY": 0.5493105971574974, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2025-01-08 10:20:40.769585" + }, + { + "ID": 145, + "TARGET_ID": "FS-中-后勤保-145", + "TARGET_NAME": "维修站团级", + "COUNTRY_REGION": "中", + "LEVEL": "团级", + "ROLE_ID": "后勤保障", + "TASK_ID": "侦察监视任务", + "X": 117.7, + "Y": -13.74, + "COMMUNICATION_RANGE": 88.58, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.6238535372605245, + "ENVIRONMENT_ADAPTABILITY": 0.8284347447289757, + "ANTI_JAMMING_CAPABILITY": 1.0, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 82.6, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 170.1, + "SUPPORT_CAPACITY": 4674.0, + "CREATED_TIME": "2025-01-03 10:20:40.774351" + }, + { + "ID": 204, + "TARGET_ID": "FS-英-后勤保-090", + "TARGET_NAME": "医疗站旅级", + "COUNTRY_REGION": "英", + "LEVEL": "旅级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": -129.46, + "Y": -2.38, + "COMMUNICATION_RANGE": 94.81, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5903922471038296, + "ENVIRONMENT_ADAPTABILITY": 0.6844333731677029, + "ANTI_JAMMING_CAPABILITY": 0.5055842542914323, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 20.3, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 59.7, + "SUPPORT_CAPACITY": 4715.0, + "CREATED_TIME": "2024-12-31 10:20:40.771244" + }, + { + "ID": 57, + "TARGET_ID": "FS-法-指挥控-057", + "TARGET_NAME": "作战中心团级", + "COUNTRY_REGION": "法", + "LEVEL": "团级", + "ROLE_ID": "指挥控制", + "TASK_ID": "指挥协调任务", + "X": -145.87, + "Y": -81.59, + "COMMUNICATION_RANGE": 79.03, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.2851709086150126, + "ENVIRONMENT_ADAPTABILITY": 0.6545979046921537, + "ANTI_JAMMING_CAPABILITY": 0.8051850697061017, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.45, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 2.5, + "PROCESSING_CAPACITY": 9976.0, + "INFORMATION_FUSION_CAPABILITY": 0.6569348152848105, + "SYSTEM_RELIABILITY": 0.9549186899738143, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-31 10:20:40.770253" + }, + { + "ID": 166, + "TARGET_ID": "FS-俄-后勤保-166", + "TARGET_NAME": "维修站团级", + "COUNTRY_REGION": "俄", + "LEVEL": "团级", + "ROLE_ID": "后勤保障", + "TASK_ID": "信息传输任务", + "X": -19.18, + "Y": 87.32, + "COMMUNICATION_RANGE": 87.5, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.45112679616074053, + "ENVIRONMENT_ADAPTABILITY": 0.815850988139763, + "ANTI_JAMMING_CAPABILITY": 0.7347471659692446, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 51.1, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 114.2, + "SUPPORT_CAPACITY": 203.0, + "CREATED_TIME": "2024-12-29 10:20:40.775211" + }, + { + "ID": 159, + "TARGET_ID": "FS-法-火力打-159", + "TARGET_NAME": "战斗机大队旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "火力打击", + "TASK_ID": "信息传输任务", + "X": 152.68, + "Y": -82.46, + "COMMUNICATION_RANGE": 99.07, + "WEIGHT": 20.0, + "AREA": 257.0, + "MOBILITY": 0.4200792980139961, + "ENVIRONMENT_ADAPTABILITY": 0.883976872191159, + "ANTI_JAMMING_CAPABILITY": 0.5440473435235404, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.90844754090002, + "STRIKE_ACCURACY": 0.8080178009938058, + "AMMUNITION_RESERVE": 48.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7329523816856406, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-25 10:20:40.774778" + }, + { + "ID": 70, + "TARGET_ID": "FS-中-火力打-070", + "TARGET_NAME": "自行火炮营团级", + "COUNTRY_REGION": "中", + "LEVEL": "团级", + "ROLE_ID": "火力打击", + "TASK_ID": "后勤支援任务", + "X": 127.36, + "Y": 79.03, + "COMMUNICATION_RANGE": 65.91, + "WEIGHT": 71.5, + "AREA": 100.0, + "MOBILITY": 0.8478008959568173, + "ENVIRONMENT_ADAPTABILITY": 0.8325354177579396, + "ANTI_JAMMING_CAPABILITY": 0.7767836183914667, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 63.08451366126336, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 17.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7543007426450994, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-25 10:20:40.770551" + }, + { + "ID": 37, + "TARGET_ID": "FS-英-情报侦-037", + "TARGET_NAME": "预警机军级", + "COUNTRY_REGION": "英", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "指挥协调任务", + "X": 2.37, + "Y": 22.07, + "COMMUNICATION_RANGE": 140.07, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.4295862095895838, + "ENVIRONMENT_ADAPTABILITY": 0.13882453477212642, + "ANTI_JAMMING_CAPABILITY": 0.8654478593348648, + "DETECTION_RANGE": 351.37619287485336, + "DETECTION_ACCURACY": 0.9060927149055333, + "REFRESH_RATE": 3.8, + "TRANSMISSION_DELAY": 0.6, + "RELIABILITY": 0.6049864385454555, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-22 10:20:40.769724" + }, + { + "ID": 83, + "TARGET_ID": "FS-中-情报侦-083", + "TARGET_NAME": "电子侦察站团级", + "COUNTRY_REGION": "中", + "LEVEL": "团级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": 4.82, + "Y": -46.71, + "COMMUNICATION_RANGE": 130.81, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 1.0, + "ENVIRONMENT_ADAPTABILITY": 0.822745249013477, + "ANTI_JAMMING_CAPABILITY": 0.17511186787616495, + "DETECTION_RANGE": 291.421499803341, + "DETECTION_ACCURACY": 0.8050289974673062, + "REFRESH_RATE": 5.1, + "TRANSMISSION_DELAY": 1.5, + "RELIABILITY": 0.8731826696107342, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-21 10:20:40.770860" + }, + { + "ID": 43, + "TARGET_ID": "FS-俄-火力打-043", + "TARGET_NAME": "火箭炮营营级", + "COUNTRY_REGION": "俄", + "LEVEL": "营级", + "ROLE_ID": "火力打击", + "TASK_ID": "火力打击任务", + "X": 136.34, + "Y": -35.69, + "COMMUNICATION_RANGE": 145.69, + "WEIGHT": 79.3, + "AREA": 157.0, + "MOBILITY": 0.4150210293662726, + "ENVIRONMENT_ADAPTABILITY": 0.9292049703082099, + "ANTI_JAMMING_CAPABILITY": 0.6483353883130868, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 31.8987656507989, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 29.0, + "TARGET_RECOGNITION_CAPABILITY": 0.586543067021017, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-21 10:20:40.769860" + }, + { + "ID": 15, + "TARGET_ID": "FS-英-协同打-015", + "TARGET_NAME": "电子战飞机营级", + "COUNTRY_REGION": "英", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": 44.55, + "Y": 86.46, + "COMMUNICATION_RANGE": 76.06, + "WEIGHT": 78.8, + "AREA": 137.0, + "MOBILITY": 0.5304933018636336, + "ENVIRONMENT_ADAPTABILITY": 0.9316757094701937, + "ANTI_JAMMING_CAPABILITY": 0.641803675055316, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 41.17324006515433, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 4.0, + "TARGET_RECOGNITION_CAPABILITY": 0.9806835958510448, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-21 10:20:40.769174" + }, + { + "ID": 133, + "TARGET_ID": "FS-俄-情报侦-133", + "TARGET_NAME": "侦察卫星军级", + "COUNTRY_REGION": "俄", + "LEVEL": "军级", + "ROLE_ID": "情报侦察", + "TASK_ID": "后勤支援任务", + "X": 50.14, + "Y": 68.12, + "COMMUNICATION_RANGE": 116.48, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.05672371342968563, + "ENVIRONMENT_ADAPTABILITY": 0.8545789175470546, + "ANTI_JAMMING_CAPABILITY": 0.2597632241829321, + "DETECTION_RANGE": 116.88357925161127, + "DETECTION_ACCURACY": 0.9800745300781406, + "REFRESH_RATE": 2.9, + "TRANSMISSION_DELAY": 0.92, + "RELIABILITY": 0.8810740494139927, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-20 10:20:40.773836" + }, + { + "ID": 202, + "TARGET_ID": "FS-美-火力打-137", + "TARGET_NAME": "自行火炮营团级", + "COUNTRY_REGION": "美", + "LEVEL": "团级", + "ROLE_ID": "火力打击", + "TASK_ID": "后勤支援任务", + "X": -179.95, + "Y": -2.335151515151514, + "COMMUNICATION_RANGE": 93.15, + "WEIGHT": 65.6, + "AREA": 277.0, + "MOBILITY": 0.5070074923447424, + "ENVIRONMENT_ADAPTABILITY": 0.885212208285217, + "ANTI_JAMMING_CAPABILITY": 0.4710872952786959, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 26.1070913421298, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 15.0, + "TARGET_RECOGNITION_CAPABILITY": 0.7710454408458943, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-19 10:20:40.774016" + }, + { + "ID": 40, + "TARGET_ID": "FS-法-后勤保-040", + "TARGET_NAME": "维修站军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "后勤保障", + "TASK_ID": "火力打击任务", + "X": -171.06, + "Y": 77.5, + "COMMUNICATION_RANGE": 90.49, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5413744511715186, + "ENVIRONMENT_ADAPTABILITY": 0.4660990473288675, + "ANTI_JAMMING_CAPABILITY": 0.6425295985140305, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 43.4, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 182.4, + "SUPPORT_CAPACITY": 2297.0, + "CREATED_TIME": "2024-12-17 10:20:40.769792" + }, + { + "ID": 3, + "TARGET_ID": "FS-中-情报侦-003", + "TARGET_NAME": "预警机旅级", + "COUNTRY_REGION": "中", + "LEVEL": "旅级", + "ROLE_ID": "情报侦察", + "TASK_ID": "侦察监视任务", + "X": -147.98, + "Y": 10.98, + "COMMUNICATION_RANGE": 92.79, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.8799121067899577, + "ENVIRONMENT_ADAPTABILITY": 0.48664831245289486, + "ANTI_JAMMING_CAPABILITY": 0.5211339704675207, + "DETECTION_RANGE": 358.8341092031314, + "DETECTION_ACCURACY": 0.7333597659505381, + "REFRESH_RATE": 7.8, + "TRANSMISSION_DELAY": 0.76, + "RELIABILITY": 1.0944572511672006, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-16 10:20:40.768817" + }, + { + "ID": 85, + "TARGET_ID": "FS-美-平台部-085", + "TARGET_NAME": "机场旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "平台部署", + "TASK_ID": "指挥协调任务", + "X": 167.55, + "Y": 33.59, + "COMMUNICATION_RANGE": 142.57, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.6838727650442589, + "ANTI_JAMMING_CAPABILITY": 0.9839580867692566, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 7561.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 9584.0, + "CREATED_TIME": "2024-12-12 10:20:40.770909" + }, + { + "ID": 142, + "TARGET_ID": "FS-法-平台部-142", + "TARGET_NAME": "前进阵地军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "平台部署", + "TASK_ID": "后勤支援任务", + "X": 121.58, + "Y": -17.11, + "COMMUNICATION_RANGE": 185.14, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.0, + "ENVIRONMENT_ADAPTABILITY": 0.5725882149535909, + "ANTI_JAMMING_CAPABILITY": 0.9201572088958546, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 39916.0, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 7705.0, + "CREATED_TIME": "2024-12-11 10:20:40.774241" + }, + { + "ID": 46, + "TARGET_ID": "FS-法-火力打-046", + "TARGET_NAME": "导弹发射营团级", + "COUNTRY_REGION": "法", + "LEVEL": "团级", + "ROLE_ID": "火力打击", + "TASK_ID": "信息传输任务", + "X": -149.5, + "Y": -55.33, + "COMMUNICATION_RANGE": 151.98, + "WEIGHT": 75.0, + "AREA": 299.0, + "MOBILITY": 0.5051458841027283, + "ENVIRONMENT_ADAPTABILITY": 0.7000300435002065, + "ANTI_JAMMING_CAPABILITY": 0.4757303374207519, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 99.14910360879813, + "STRIKE_ACCURACY": 0.5839685189891749, + "AMMUNITION_RESERVE": 45.0, + "TARGET_RECOGNITION_CAPABILITY": 0.702519543670033, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-08 10:20:40.769932" + }, + { + "ID": 172, + "TARGET_ID": "FS-中-协同打-172", + "TARGET_NAME": "电子战飞机团级", + "COUNTRY_REGION": "中", + "LEVEL": "团级", + "ROLE_ID": "协同打击", + "TASK_ID": "指挥协调任务", + "X": 106.49, + "Y": -69.47, + "COMMUNICATION_RANGE": 113.95, + "WEIGHT": 24.9, + "AREA": 80.0, + "MOBILITY": 0.5243600059255982, + "ENVIRONMENT_ADAPTABILITY": 0.3077406655714446, + "ANTI_JAMMING_CAPABILITY": 0.997174214158621, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 79.10606624820149, + "STRIKE_ACCURACY": 0.9170097692888634, + "AMMUNITION_RESERVE": 26.0, + "TARGET_RECOGNITION_CAPABILITY": 0.5714634970492309, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-05 10:20:40.775351" + }, + { + "ID": 147, + "TARGET_ID": "FS-法-后勤保-147", + "TARGET_NAME": "补给站营级", + "COUNTRY_REGION": "法", + "LEVEL": "营级", + "ROLE_ID": "后勤保障", + "TASK_ID": "信息传输任务", + "X": 89.85, + "Y": -88.57, + "COMMUNICATION_RANGE": 62.48, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.560295948035485, + "ENVIRONMENT_ADAPTABILITY": 0.6698957127798166, + "ANTI_JAMMING_CAPABILITY": 0.43152366336158776, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 43.1, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 186.5, + "SUPPORT_CAPACITY": 762.0, + "CREATED_TIME": "2024-12-04 10:20:40.774427" + }, + { + "ID": 79, + "TARGET_ID": "FS-法-协同打-079", + "TARGET_NAME": "预警指挥机军级", + "COUNTRY_REGION": "法", + "LEVEL": "军级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": -103.84, + "Y": -13.55, + "COMMUNICATION_RANGE": 43.3, + "WEIGHT": 24.9, + "AREA": 165.0, + "MOBILITY": 0.540091014800575, + "ENVIRONMENT_ADAPTABILITY": 0.3759160184535362, + "ANTI_JAMMING_CAPABILITY": 0.9579260351557877, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 18.05598551830507, + "STRIKE_ACCURACY": 0.7071532443518843, + "AMMUNITION_RESERVE": 17.0, + "TARGET_RECOGNITION_CAPABILITY": 0.8814085237572037, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-04 10:20:40.770761" + }, + { + "ID": 29, + "TARGET_ID": "FS-英-指挥控-029", + "TARGET_NAME": "通信中继站师级", + "COUNTRY_REGION": "英", + "LEVEL": "师级", + "ROLE_ID": "指挥控制", + "TASK_ID": "火力打击任务", + "X": -154.12, + "Y": 2.47, + "COMMUNICATION_RANGE": 136.92, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.12020868240095306, + "ENVIRONMENT_ADAPTABILITY": 0.5810290512361727, + "ANTI_JAMMING_CAPABILITY": 0.521202029235571, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.69, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 5.5, + "PROCESSING_CAPACITY": 4772.0, + "INFORMATION_FUSION_CAPABILITY": 0.8068332597003363, + "SYSTEM_RELIABILITY": 0.8709375282176276, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-04 10:20:40.769539" + }, + { + "ID": 108, + "TARGET_ID": "FS-法-协同打-108", + "TARGET_NAME": "无人机群旅级", + "COUNTRY_REGION": "法", + "LEVEL": "旅级", + "ROLE_ID": "协同打击", + "TASK_ID": "信息传输任务", + "X": -96.01, + "Y": -46.24, + "COMMUNICATION_RANGE": 151.72, + "WEIGHT": 55.3, + "AREA": 165.0, + "MOBILITY": 0.9916724608890908, + "ENVIRONMENT_ADAPTABILITY": 0.47470545689011023, + "ANTI_JAMMING_CAPABILITY": 0.41523770955754724, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 43.309126766367854, + "STRIKE_ACCURACY": 1.0, + "AMMUNITION_RESERVE": 15.0, + "TARGET_RECOGNITION_CAPABILITY": 0.9749495721101716, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-12-01 10:20:40.771772" + }, + { + "ID": 116, + "TARGET_ID": "FS-中-协同打-116", + "TARGET_NAME": "无人机群营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "信息传输任务", + "X": 51.41, + "Y": -27.99, + "COMMUNICATION_RANGE": 161.13, + "WEIGHT": 55.3, + "AREA": 128.0, + "MOBILITY": 0.8692663984296041, + "ENVIRONMENT_ADAPTABILITY": 0.8046424401970753, + "ANTI_JAMMING_CAPABILITY": 0.7671254046747026, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 96.22414479824327, + "STRIKE_ACCURACY": 0.8567113374667013, + "AMMUNITION_RESERVE": 7.0, + "TARGET_RECOGNITION_CAPABILITY": 0.9849280005648883, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-11-30 10:20:40.771980" + }, + { + "ID": 95, + "TARGET_ID": "FS-美-指挥控-095", + "TARGET_NAME": "通信中继站旅级", + "COUNTRY_REGION": "美", + "LEVEL": "旅级", + "ROLE_ID": "指挥控制", + "TASK_ID": "指挥协调任务", + "X": 165.2, + "Y": -65.19, + "COMMUNICATION_RANGE": 159.66, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.16661967393457666, + "ENVIRONMENT_ADAPTABILITY": 0.8984152561330906, + "ANTI_JAMMING_CAPABILITY": 0.7021646249580153, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.74, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 18.2, + "PROCESSING_CAPACITY": 4306.0, + "INFORMATION_FUSION_CAPABILITY": 0.71100650688615, + "SYSTEM_RELIABILITY": 0.8362997515315905, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-11-29 10:20:40.771381" + }, + { + "ID": 48, + "TARGET_ID": "FS-中-火力打-048", + "TARGET_NAME": null, + "COUNTRY_REGION": "中", + "LEVEL": "军级", + "ROLE_ID": "火力打击", + "TASK_ID": "信息传输任务", + "X": 18.23, + "Y": 63.14, + "COMMUNICATION_RANGE": 148.96, + "WEIGHT": 27.1, + "AREA": 277.0, + "MOBILITY": 0.7416743233080199, + "ENVIRONMENT_ADAPTABILITY": 0.6958049990481117, + "ANTI_JAMMING_CAPABILITY": 0.7471636607368379, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 88.50079555292606, + "STRIKE_ACCURACY": 0.5413961148123343, + "AMMUNITION_RESERVE": 20.0, + "TARGET_RECOGNITION_CAPABILITY": 0.4239479942088748, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-11-29 10:20:40.769979" + }, + { + "ID": 26, + "TARGET_ID": "FS-中-协同打-026", + "TARGET_NAME": "无人机群营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "协同打击", + "TASK_ID": "火力打击任务", + "X": 123.4, + "Y": -54.24, + "COMMUNICATION_RANGE": 154.01, + "WEIGHT": 71.3, + "AREA": 158.0, + "MOBILITY": 0.7852609829782771, + "ENVIRONMENT_ADAPTABILITY": 0.6265411650056977, + "ANTI_JAMMING_CAPABILITY": 0.4310919855254529, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 67.37335266888057, + "STRIKE_ACCURACY": 0.6258961021217302, + "AMMUNITION_RESERVE": 49.0, + "TARGET_RECOGNITION_CAPABILITY": 0.920517543043721, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-11-29 10:20:40.769460" + }, + { + "ID": 126, + "TARGET_ID": "FS-中-指挥控-126", + "TARGET_NAME": "指挥所营级", + "COUNTRY_REGION": "中", + "LEVEL": "营级", + "ROLE_ID": "指挥控制", + "TASK_ID": "火力打击任务", + "X": 166.65, + "Y": -43.17, + "COMMUNICATION_RANGE": 89.26, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.1983745793461127, + "ENVIRONMENT_ADAPTABILITY": 0.6809579023236645, + "ANTI_JAMMING_CAPABILITY": 0.6600040121876969, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.44, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 15.4, + "PROCESSING_CAPACITY": 123.0, + "INFORMATION_FUSION_CAPABILITY": 1.0332013327435459, + "SYSTEM_RELIABILITY": 0.6703138856938541, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 62.146341463414636, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 133.48048780487807, + "SUPPORT_CAPACITY": 3609.55737704918, + "CREATED_TIME": "2024-11-25 10:20:40.773199" + }, + { + "ID": 118, + "TARGET_ID": "FS-法-后勤保-118", + "TARGET_NAME": "维修站营级", + "COUNTRY_REGION": "法", + "LEVEL": "营级", + "ROLE_ID": "后勤保障", + "TASK_ID": "指挥协调任务", + "X": -94.3, + "Y": -30.68, + "COMMUNICATION_RANGE": 89.52, + "WEIGHT": 53.152702702702705, + "AREA": 169.51351351351352, + "MOBILITY": 0.5815259684299081, + "ENVIRONMENT_ADAPTABILITY": 0.7854505606122183, + "ANTI_JAMMING_CAPABILITY": 0.4777300935985096, + "DETECTION_RANGE": 311.43915388058707, + "DETECTION_ACCURACY": 0.9221871246969584, + "REFRESH_RATE": 5.1499999999999995, + "TRANSMISSION_DELAY": 0.8832307692307693, + "RELIABILITY": 0.7840911946609623, + "DECISION_RESPONSE_TIME": 23.389132166554926, + "PROCESSING_CAPACITY": 4561.451612903225, + "INFORMATION_FUSION_CAPABILITY": 0.789593701487015, + "SYSTEM_RELIABILITY": 0.7923055432252173, + "STRIKE_RANGE": 55.122584025030505, + "STRIKE_ACCURACY": 0.9830599905917308, + "AMMUNITION_RESERVE": 26.824324324324323, + "TARGET_RECOGNITION_CAPABILITY": 0.7732718347097838, + "LOAD_CAPACITY": 58.9, + "PLATFORM_AREA": 24187.45, + "SUPPORT_RANGE": 132.9, + "SUPPORT_CAPACITY": 4978.0, + "CREATED_TIME": "2024-11-25 10:20:40.772327" + } +] \ No newline at end of file diff --git a/final/data/nodes.json b/final/data/nodes.json new file mode 100644 index 0000000..7c4d081 --- /dev/null +++ b/final/data/nodes.json @@ -0,0 +1,7407 @@ +{ + "nodes": { + "FS-俄-情报侦-132": { + "TARGET_ID": "FS-俄-情报侦-132", + "function_vector": { + "f_IC": 0.9273, + "f_IA": 0.7896, + "f_CS": 0.2584, + "f_IT": 0.5187, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 79.36, + 52.11 + ], + "effective_radius": 94.96 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 3.7, + "data_age": 1.48, + "time_window": 3.7 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4094, + "mtbf": 0.7202 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-后勤保-042": { + "TARGET_ID": "FS-法-后勤保-042", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5336, + "f_IT": 0.4399, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.833 + }, + "spatial": { + "position": [ + 19.54, + 39.4 + ], + "effective_radius": 60.23 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6612, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-法-协同打-144": { + "TARGET_ID": "FS-法-协同打-144", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7659, + "f_IT": 0.7319, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 142.64, + -2.03 + ], + "effective_radius": 60.37 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.678, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-指挥控-025": { + "TARGET_ID": "FS-俄-指挥控-025", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.9353, + "f_CS": 0.4341, + "f_IT": 0.8187, + "f_DP": 0.9004, + "f_CPS": 0.9288, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -64.34, + -83.34 + ], + "effective_radius": 100.62 + }, + "temporal": { + "response_time": 2.3, + "cycle_time": 5.15, + "data_age": 0.55, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5535, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-情报侦-039": { + "TARGET_ID": "FS-中-情报侦-039", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.9456, + "f_IT": 0.598, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -39.98, + -29.19 + ], + "effective_radius": 178.9 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 9.7, + "data_age": 0.14, + "time_window": 9.7 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.0647, + "mtbf": 0.6863 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-情报侦-067": { + "TARGET_ID": "FS-英-情报侦-067", + "function_vector": { + "f_IC": 0.831, + "f_IA": 0.7896, + "f_CS": 0.6489, + "f_IT": 0.3781, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 177.46, + -88.55 + ], + "effective_radius": 174.42 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.9, + "data_age": 1.75, + "time_window": 5.9 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.9645, + "mtbf": 0.8143 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "英", + "history_success": 0.8 + }, + "FS-美-情报侦-190": { + "TARGET_ID": "FS-美-情报侦-190", + "function_vector": { + "f_IC": 0.7059, + "f_IA": 0.7896, + "f_CS": 0.0768, + "f_IT": 0.041, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 108.79, + 8.91 + ], + "effective_radius": 123.64 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 7.3, + "data_age": 1.4, + "time_window": 7.3 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.3267, + "mtbf": 0.6729 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "美", + "history_success": 0.8 + }, + "FS-法-协同打-050": { + "TARGET_ID": "FS-法-协同打-050", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7946, + "f_IT": 0.4247, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 15.8, + -76.51 + ], + "effective_radius": 58.22 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9543, + "survivability": 0.7393, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "法", + "history_success": 0.8 + }, + "FS-英-情报侦-023": { + "TARGET_ID": "FS-英-情报侦-023", + "function_vector": { + "f_IC": 0.9435, + "f_IA": 0.7896, + "f_CS": 0.2725, + "f_IT": 0.0638, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 167.18, + -10.14 + ], + "effective_radius": 111.32 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 6.2, + "data_age": 1.81, + "time_window": 6.2 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.1522, + "mtbf": 0.9082 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-中-协同打-093": { + "TARGET_ID": "FS-中-协同打-093", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4461, + "f_IT": 0.6027, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 160.1, + 6.34 + ], + "effective_radius": 121.51 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6089, + "survivability": 0.8857, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-中-后勤保-068": { + "TARGET_ID": "FS-中-后勤保-068", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7618, + "f_IT": 0.5085, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.777 + }, + "spatial": { + "position": [ + -27.79, + -11.05 + ], + "effective_radius": 111.95 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4718, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "中", + "history_success": 0.8 + }, + "FS-美-火力打-156": { + "TARGET_ID": "FS-美-火力打-156", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.38, + "f_IT": 0.9836, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -72.97, + 76.42 + ], + "effective_radius": 68.62 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.544, + "survivability": 0.9458, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-指挥控-158": { + "TARGET_ID": "FS-俄-指挥控-158", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7893, + "f_CS": 0.2219, + "f_IT": 0.6838, + "f_DP": 0.6953, + "f_CPS": 0.8929, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -15.38, + 4.63 + ], + "effective_radius": 184.9 + }, + "temporal": { + "response_time": 3.6, + "cycle_time": 5.15, + "data_age": 0.39, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.607, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-情报侦-004": { + "TARGET_ID": "FS-法-情报侦-004", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.7731, + "f_IT": 0.554, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -47.01, + -18.1 + ], + "effective_radius": 192.82 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 6.8, + "data_age": 0.89, + "time_window": 6.8 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.041, + "mtbf": 0.6911 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-平台部-148": { + "TARGET_ID": "FS-俄-平台部-148", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.6774, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8468 + }, + "spatial": { + "position": [ + 30.64, + -22.45 + ], + "effective_radius": 207.31 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8576, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-英-平台部-027": { + "TARGET_ID": "FS-英-平台部-027", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.6853, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 159.79, + -23.05 + ], + "effective_radius": 81.42 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5954, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-协同打-061": { + "TARGET_ID": "FS-俄-协同打-061", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8627, + "f_IT": 0.4708, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -47.15, + 81.75 + ], + "effective_radius": 90.37 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9722, + "survivability": 0.596, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-指挥控-044": { + "TARGET_ID": "FS-法-指挥控-044", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.5572, + "f_CS": 0.2881, + "f_IT": 0.5859, + "f_DP": 0.9463, + "f_CPS": 0.6818, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 163.96, + -85.57 + ], + "effective_radius": 165.38 + }, + "temporal": { + "response_time": 14.0, + "cycle_time": 5.15, + "data_age": 0.54, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8603, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-平台部-143": { + "TARGET_ID": "FS-俄-平台部-143", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.675, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.767 + }, + "spatial": { + "position": [ + 111.0, + -55.13 + ], + "effective_radius": 202.51 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6133, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-火力打-098": { + "TARGET_ID": "FS-法-火力打-098", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7585, + "f_IT": 0.4653, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 108.94, + 87.44 + ], + "effective_radius": 194.27 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.7844, + "survivability": 0.39, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-平台部-161": { + "TARGET_ID": "FS-俄-平台部-161", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.7878, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7983 + }, + "spatial": { + "position": [ + 154.47, + -33.09 + ], + "effective_radius": 106.99 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.899, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-后勤保-131": { + "TARGET_ID": "FS-法-后勤保-131", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.6189, + "f_IT": 0.7453, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.6747 + }, + "spatial": { + "position": [ + -103.8, + -34.11 + ], + "effective_radius": 57.36 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8345, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "法", + "history_success": 0.8 + }, + "FS-法-指挥控-036": { + "TARGET_ID": "FS-法-指挥控-036", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.1248, + "f_IT": 0.6629, + "f_DP": 0.9437, + "f_CPS": 0.6024, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 57.85, + 89.63 + ], + "effective_radius": 108.56 + }, + "temporal": { + "response_time": 19.8, + "cycle_time": 5.15, + "data_age": 0.29, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.767, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-情报侦-033": { + "TARGET_ID": "FS-中-情报侦-033", + "function_vector": { + "f_IC": 0.8729, + "f_IA": 0.7896, + "f_CS": 0.4751, + "f_IT": 0.302, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 4.18, + -8.62 + ], + "effective_radius": 143.26 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 9.7, + "data_age": 0.9, + "time_window": 9.7 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.9897, + "mtbf": 0.9686 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-指挥控-112": { + "TARGET_ID": "FS-英-指挥控-112", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.5478, + "f_CS": 0.2107, + "f_IT": 0.6017, + "f_DP": 0.9469, + "f_CPS": 0.6173, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 5.95, + -88.13 + ], + "effective_radius": 218.4 + }, + "temporal": { + "response_time": 18.6, + "cycle_time": 5.15, + "data_age": 0.77, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4503, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "英", + "history_success": 0.8 + }, + "FS-美-情报侦-021": { + "TARGET_ID": "FS-美-情报侦-021", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.1698, + "f_IT": 0.3964, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 64.31, + 29.5 + ], + "effective_radius": 174.54 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 4.3, + "data_age": 1.69, + "time_window": 4.3 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.3451, + "mtbf": 0.543 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-后勤保-175": { + "TARGET_ID": "FS-俄-后勤保-175", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.535, + "f_IT": 0.7643, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7002 + }, + "spatial": { + "position": [ + -30.69, + 4.2 + ], + "effective_radius": 123.41 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8354, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-火力打-135": { + "TARGET_ID": "FS-法-火力打-135", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5381, + "f_IT": 0.7366, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 65.85, + -57.06 + ], + "effective_radius": 48.62 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.8127, + "survivability": 0.8573, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-美-协同打-121": { + "TARGET_ID": "FS-美-协同打-121", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3013, + "f_IT": 0.8002, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -64.59, + -76.6 + ], + "effective_radius": 55.65 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9316, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "美", + "history_success": 0.8 + }, + "FS-英-后勤保-010": { + "TARGET_ID": "FS-英-后勤保-010", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3319, + "f_IT": 0.32, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8914 + }, + "spatial": { + "position": [ + -145.98, + 30.49 + ], + "effective_radius": 61.82 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6769, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-后勤保-182": { + "TARGET_ID": "FS-法-后勤保-182", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7217, + "f_IT": 0.3962, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7781 + }, + "spatial": { + "position": [ + -36.09, + -66.4 + ], + "effective_radius": 68.06 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7855, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-指挥控-149": { + "TARGET_ID": "FS-俄-指挥控-149", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.4945, + "f_IT": 0.6744, + "f_DP": 0.6196, + "f_CPS": 0.9585, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -40.08, + -48.24 + ], + "effective_radius": 149.92 + }, + "temporal": { + "response_time": 1.3, + "cycle_time": 5.15, + "data_age": 0.45, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7019, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-英-火力打-080": { + "TARGET_ID": "FS-英-火力打-080", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9479, + "f_IT": 0.9467, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 167.98, + 38.37 + ], + "effective_radius": 158.71 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.5407, + "survivability": 0.6096, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-英-协同打-104": { + "TARGET_ID": "FS-英-协同打-104", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 1.0, + "f_IT": 0.9435, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -115.03, + 56.36 + ], + "effective_radius": 166.53 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9679, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-指挥控-101": { + "TARGET_ID": "FS-法-指挥控-101", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.902, + "f_CS": 0.1852, + "f_IT": 0.7894, + "f_DP": 0.8756, + "f_CPS": 0.7194, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 108.99, + -32.27 + ], + "effective_radius": 154.03 + }, + "temporal": { + "response_time": 11.7, + "cycle_time": 5.15, + "data_age": 0.7, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8133, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-平台部-045": { + "TARGET_ID": "FS-俄-平台部-045", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.6497, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.6698 + }, + "spatial": { + "position": [ + 69.8, + -3.7 + ], + "effective_radius": 166.48 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8975, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-情报侦-200": { + "TARGET_ID": "FS-中-情报侦-200", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.2314, + "f_IT": 0.0586, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -30.22, + -36.6 + ], + "effective_radius": 242.15 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 3.9, + "data_age": 1.49, + "time_window": 3.9 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4962, + "mtbf": 0.6419 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-法-指挥控-169": { + "TARGET_ID": "FS-法-指挥控-169", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.4805, + "f_IT": 0.5346, + "f_DP": 0.9457, + "f_CPS": 0.7075, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 76.74, + -15.33 + ], + "effective_radius": 200.36 + }, + "temporal": { + "response_time": 12.4, + "cycle_time": 5.15, + "data_age": 0.32, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4924, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-美-后勤保-160": { + "TARGET_ID": "FS-美-后勤保-160", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 1.0, + "f_IT": 0.3133, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8436 + }, + "spatial": { + "position": [ + -119.43, + 2.98 + ], + "effective_radius": 180.46 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.604, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "美", + "history_success": 0.8 + }, + "FS-美-火力打-125": { + "TARGET_ID": "FS-美-火力打-125", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9365, + "f_IT": 0.9566, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -8.47, + -85.02 + ], + "effective_radius": 113.51 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.3811, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-中-指挥控-019": { + "TARGET_ID": "FS-中-指挥控-019", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.6023, + "f_CS": 0.2752, + "f_IT": 0.565, + "f_DP": 0.9994, + "f_CPS": 0.5146, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 63.22, + -75.49 + ], + "effective_radius": 114.71 + }, + "temporal": { + "response_time": 28.3, + "cycle_time": 5.15, + "data_age": 0.78, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4155, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "中", + "history_success": 0.8 + }, + "FS-美-指挥控-180": { + "TARGET_ID": "FS-美-指挥控-180", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.1526, + "f_IT": 0.5235, + "f_DP": 0.7573, + "f_CPS": 0.6316, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -88.43, + 51.36 + ], + "effective_radius": 247.67 + }, + "temporal": { + "response_time": 17.5, + "cycle_time": 5.15, + "data_age": 0.08, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4737, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "美", + "history_success": 0.8 + }, + "FS-美-情报侦-192": { + "TARGET_ID": "FS-美-情报侦-192", + "function_vector": { + "f_IC": 0.9501, + "f_IA": 0.7896, + "f_CS": 0.0554, + "f_IT": 0.5401, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -124.83, + 29.72 + ], + "effective_radius": 307.77 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 6.0, + "data_age": 0.23, + "time_window": 6.0 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.138, + "mtbf": 0.5223 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "美", + "history_success": 0.8 + }, + "FS-英-后勤保-111": { + "TARGET_ID": "FS-英-后勤保-111", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5775, + "f_IT": 0.4216, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.6403 + }, + "spatial": { + "position": [ + -83.14, + -37.05 + ], + "effective_radius": 255.68 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5703, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-指挥控-177": { + "TARGET_ID": "FS-法-指挥控-177", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7089, + "f_CS": 0.3997, + "f_IT": 0.8771, + "f_DP": 0.9404, + "f_CPS": 0.5415, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 47.12, + -40.74 + ], + "effective_radius": 216.42 + }, + "temporal": { + "response_time": 25.4, + "cycle_time": 5.15, + "data_age": 0.63, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6122, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-英-后勤保-020": { + "TARGET_ID": "FS-英-后勤保-020", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4414, + "f_IT": 0.3649, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7518 + }, + "spatial": { + "position": [ + 51.1, + 19.99 + ], + "effective_radius": 142.44 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7627, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-英-情报侦-199": { + "TARGET_ID": "FS-英-情报侦-199", + "function_vector": { + "f_IC": 0.8834, + "f_IA": 0.7896, + "f_CS": 1.0, + "f_IT": 0.9969, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -148.19, + 40.94 + ], + "effective_radius": 225.26 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 9.8, + "data_age": 0.43, + "time_window": 9.8 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4763, + "mtbf": 0.7887 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "英", + "history_success": 0.8 + }, + "FS-英-情报侦-184": { + "TARGET_ID": "FS-英-情报侦-184", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.8517, + "f_IT": 0.5555, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -110.32, + -33.03 + ], + "effective_radius": 189.97 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 2.8, + "data_age": 1.1, + "time_window": 2.8 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.159, + "mtbf": 1.0371 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "英", + "history_success": 0.8 + }, + "FS-中-平台部-197": { + "TARGET_ID": "FS-中-平台部-197", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.9193, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.718 + }, + "spatial": { + "position": [ + -35.25, + -52.18 + ], + "effective_radius": 191.51 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5796, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-协同打-113": { + "TARGET_ID": "FS-英-协同打-113", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.6728, + "f_IT": 0.4066, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -6.52, + -38.96 + ], + "effective_radius": 120.15 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.8282, + "survivability": 0.9786, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-火力打-032": { + "TARGET_ID": "FS-法-火力打-032", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4676, + "f_IT": 0.9088, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 134.38, + -75.35 + ], + "effective_radius": 74.68 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.966, + "survivability": 0.8546, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-英-后勤保-008": { + "TARGET_ID": "FS-英-后勤保-008", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3779, + "f_IT": 0.7331, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7386 + }, + "spatial": { + "position": [ + -23.56, + -45.23 + ], + "effective_radius": 65.32 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.721, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "英", + "history_success": 0.8 + }, + "FS-美-情报侦-154": { + "TARGET_ID": "FS-美-情报侦-154", + "function_vector": { + "f_IC": 0.7904, + "f_IA": 0.7896, + "f_CS": 0.2422, + "f_IT": 0.9034, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -81.37, + -78.26 + ], + "effective_radius": 98.14 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 2.9, + "data_age": 1.46, + "time_window": 2.9 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5885, + "mtbf": 0.7714 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "美", + "history_success": 0.8 + }, + "FS-中-火力打-049": { + "TARGET_ID": "FS-中-火力打-049", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9165, + "f_IT": 0.4009, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -127.39, + -25.62 + ], + "effective_radius": 82.45 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.798, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "中", + "history_success": 0.8 + }, + "FS-法-后勤保-069": { + "TARGET_ID": "FS-法-后勤保-069", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4209, + "f_IT": 0.5862, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7342 + }, + "spatial": { + "position": [ + 35.12, + -82.12 + ], + "effective_radius": 90.25 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8042, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-后勤保-052": { + "TARGET_ID": "FS-俄-后勤保-052", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5408, + "f_IT": 0.5843, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7032 + }, + "spatial": { + "position": [ + -42.92, + 49.63 + ], + "effective_radius": 45.51 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8906, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-后勤保-195": { + "TARGET_ID": "FS-中-后勤保-195", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.302, + "f_IT": 0.7892, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7378 + }, + "spatial": { + "position": [ + 158.62, + 14.0 + ], + "effective_radius": 39.93 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5457, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "中", + "history_success": 0.8 + }, + "FS-美-协同打-072": { + "TARGET_ID": "FS-美-协同打-072", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9463, + "f_IT": 0.8975, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 98.47, + 74.22 + ], + "effective_radius": 38.06 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.5704, + "survivability": 0.5812, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "美", + "history_success": 0.8 + }, + "FS-法-协同打-140": { + "TARGET_ID": "FS-法-协同打-140", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7161, + "f_IT": 0.82, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -1.05, + -47.04 + ], + "effective_radius": 49.48 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.8724, + "survivability": 0.4388, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-火力打-074": { + "TARGET_ID": "FS-中-火力打-074", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5396, + "f_IT": 0.6702, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 172.68, + -47.7 + ], + "effective_radius": 63.26 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.7801, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-法-协同打-066": { + "TARGET_ID": "FS-法-协同打-066", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3555, + "f_IT": 0.8099, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 132.82, + 53.65 + ], + "effective_radius": 69.51 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.4455, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-美-后勤保-189": { + "TARGET_ID": "FS-美-后勤保-189", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5779, + "f_IT": 0.3424, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.9093 + }, + "spatial": { + "position": [ + -155.89, + 74.37 + ], + "effective_radius": 62.65 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.679, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "美", + "history_success": 0.8 + }, + "FS-法-情报侦-086": { + "TARGET_ID": "FS-法-情报侦-086", + "function_vector": { + "f_IC": 0.7697, + "f_IA": 0.7896, + "f_CS": 0.0882, + "f_IT": 0.8233, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 174.31, + 69.0 + ], + "effective_radius": 120.54 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 4.8, + "data_age": 1.58, + "time_window": 4.8 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.3069, + "mtbf": 1.0343 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": null, + "history_success": 0.8 + }, + "FS-俄-火力打-075": { + "TARGET_ID": "FS-俄-火力打-075", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.326, + "f_IT": 0.763, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 98.09, + -51.67 + ], + "effective_radius": 112.21 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6778, + "survivability": 0.3572, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-情报侦-055": { + "TARGET_ID": "FS-中-情报侦-055", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.0215, + "f_IT": 0.6294, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 84.96, + 31.53 + ], + "effective_radius": 185.42 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 3.2, + "data_age": 1.62, + "time_window": 3.2 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.2607, + "mtbf": 0.839 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "中", + "history_success": 0.8 + }, + "FS-中-火力打-035": { + "TARGET_ID": "FS-中-火力打-035", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3154, + "f_IT": 0.5999, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -165.36, + -21.33 + ], + "effective_radius": 123.38 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.6113, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "中", + "history_success": 0.8 + }, + "FS-中-情报侦-009": { + "TARGET_ID": "FS-中-情报侦-009", + "function_vector": { + "f_IC": 0.7323, + "f_IA": 0.7896, + "f_CS": 0.8015, + "f_IT": 0.2499, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -23.67, + 13.7 + ], + "effective_radius": 172.81 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 6.9, + "data_age": 1.34, + "time_window": 6.9 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.0899, + "mtbf": 0.763 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "中", + "history_success": 0.8 + }, + "FS-法-情报侦-173": { + "TARGET_ID": "FS-法-情报侦-173", + "function_vector": { + "f_IC": 0.9735, + "f_IA": 0.7896, + "f_CS": 0.8111, + "f_IT": 0.2786, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 30.49, + -62.01 + ], + "effective_radius": 179.06 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 6.5, + "data_age": 1.81, + "time_window": 6.5 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.0277, + "mtbf": 1.0851 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-协同打-103": { + "TARGET_ID": "FS-中-协同打-103", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3607, + "f_IT": 0.9595, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 0.24, + 6.34 + ], + "effective_radius": 178.6 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.8821, + "survivability": 0.837, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-协同打-105": { + "TARGET_ID": "FS-英-协同打-105", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4932, + "f_IT": 0.7337, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 150.46, + 0.32 + ], + "effective_radius": 142.69 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9135, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-指挥控-099": { + "TARGET_ID": "FS-俄-指挥控-099", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.625, + "f_CS": 0.177, + "f_IT": 0.973, + "f_DP": 0.8286, + "f_CPS": 0.6198, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -146.99, + 45.81 + ], + "effective_radius": 141.65 + }, + "temporal": { + "response_time": 18.4, + "cycle_time": 5.15, + "data_age": 0.17, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8707, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-平台部-091": { + "TARGET_ID": "FS-中-平台部-091", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.9867, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8126 + }, + "spatial": { + "position": [ + 142.43, + -61.99 + ], + "effective_radius": 154.9 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.9472, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-中-后勤保-138": { + "TARGET_ID": "FS-中-后勤保-138", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3785, + "f_IT": 0.3153, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7308 + }, + "spatial": { + "position": [ + 122.1, + 14.37 + ], + "effective_radius": 141.96 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8314, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-法-火力打-028": { + "TARGET_ID": "FS-法-火力打-028", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8924, + "f_IT": 0.8711, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -127.35, + -41.31 + ], + "effective_radius": 72.29 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.6893, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "法", + "history_success": 0.8 + }, + "FS-法-平台部-171": { + "TARGET_ID": "FS-法-平台部-171", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.6564, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7938 + }, + "spatial": { + "position": [ + -66.88, + 83.57 + ], + "effective_radius": 76.95 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5498, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-火力打-162": { + "TARGET_ID": "FS-俄-火力打-162", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8255, + "f_IT": 0.5217, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -70.32, + -29.69 + ], + "effective_radius": 84.86 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.6705, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-情报侦-089": { + "TARGET_ID": "FS-美-情报侦-089", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.5781, + "f_IT": 0.2651, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -32.17, + -78.07 + ], + "effective_radius": 155.53 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 4.0, + "data_age": 1.24, + "time_window": 4.0 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.0279, + "mtbf": 0.8035 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-指挥控-167": { + "TARGET_ID": "FS-俄-指挥控-167", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.129, + "f_IT": 0.7337, + "f_DP": 0.9859, + "f_CPS": 0.8451, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 115.74, + 60.12 + ], + "effective_radius": 213.75 + }, + "temporal": { + "response_time": 5.5, + "cycle_time": 5.15, + "data_age": 0.41, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5123, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-后勤保-115": { + "TARGET_ID": "FS-美-后勤保-115", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4166, + "f_IT": 0.6417, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.709 + }, + "spatial": { + "position": [ + 12.75, + 15.19 + ], + "effective_radius": 200.0 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7896, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "美", + "history_success": 0.8 + }, + "FS-法-情报侦-012": { + "TARGET_ID": "FS-法-情报侦-012", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.0797, + "f_IT": 0.2364, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -10.6, + -89.88 + ], + "effective_radius": 145.99 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 1.1, + "data_age": 0.83, + "time_window": 1.1 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.2374, + "mtbf": 0.9705 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-火力打-096": { + "TARGET_ID": "FS-俄-火力打-096", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8289, + "f_IT": 0.7286, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -19.22, + 31.82 + ], + "effective_radius": 79.63 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.7478, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-俄-火力打-014": { + "TARGET_ID": "FS-俄-火力打-014", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8816, + "f_IT": 0.7325, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -1.62, + -37.05 + ], + "effective_radius": 88.63 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.3836, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-英-火力打-150": { + "TARGET_ID": "FS-英-火力打-150", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4547, + "f_IT": 0.5932, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -59.95, + 35.17 + ], + "effective_radius": 73.94 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.7931, + "survivability": 0.41, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-平台部-102": { + "TARGET_ID": "FS-法-平台部-102", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.6273, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7974 + }, + "spatial": { + "position": [ + -53.03, + -14.62 + ], + "effective_radius": 89.55 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.9489, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-协同打-155": { + "TARGET_ID": "FS-俄-协同打-155", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8997, + "f_IT": 0.6182, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 131.28, + 4.51 + ], + "effective_radius": 86.88 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.5524, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-协同打-017": { + "TARGET_ID": "FS-美-协同打-017", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7954, + "f_IT": 0.6425, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -61.05, + -76.77 + ], + "effective_radius": 88.86 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9455, + "survivability": 0.386, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "美", + "history_success": 0.8 + }, + "FS-英-火力打-178": { + "TARGET_ID": "FS-英-火力打-178", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8017, + "f_IT": 0.8574, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -40.79, + -66.36 + ], + "effective_radius": 69.1 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9294, + "survivability": 0.517, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-美-平台部-123": { + "TARGET_ID": "FS-美-平台部-123", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.7163, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8385 + }, + "spatial": { + "position": [ + 74.87, + 41.3 + ], + "effective_radius": 82.37 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5749, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-火力打-087": { + "TARGET_ID": "FS-俄-火力打-087", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8284, + "f_IT": 0.7158, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -62.32, + -30.19 + ], + "effective_radius": 75.4 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.71, + "survivability": 0.4256, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-协同打-120": { + "TARGET_ID": "FS-法-协同打-120", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3024, + "f_IT": 0.6013, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 155.48, + -10.42 + ], + "effective_radius": 58.56 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.704, + "survivability": 0.6594, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-后勤保-022": { + "TARGET_ID": "FS-俄-后勤保-022", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.2692, + "f_IT": 0.6477, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.685 + }, + "spatial": { + "position": [ + 111.85, + 12.73 + ], + "effective_radius": 1138.75 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7992, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-指挥控-136": { + "TARGET_ID": "FS-法-指挥控-136", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.8348, + "f_CS": 0.194, + "f_IT": 0.8848, + "f_DP": 0.9276, + "f_CPS": 0.6881, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 73.85, + 89.17 + ], + "effective_radius": 1221.96 + }, + "temporal": { + "response_time": 13.6, + "cycle_time": 5.15, + "data_age": 0.3, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4318, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "法", + "history_success": 0.8 + }, + "FS-美-火力打-001": { + "TARGET_ID": "FS-美-火力打-001", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4256, + "f_IT": 0.986, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -176.33, + 32.86 + ], + "effective_radius": 1247.79 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.8895, + "survivability": 0.8719, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-平台部-146": { + "TARGET_ID": "FS-俄-平台部-146", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.8308, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8024 + }, + "spatial": { + "position": [ + -121.63, + -56.83 + ], + "effective_radius": 104.83 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5831, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-俄-协同打-041": { + "TARGET_ID": "FS-俄-协同打-041", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9265, + "f_IT": 0.4221, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 114.58, + 41.7 + ], + "effective_radius": 17.27 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.8306, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-指挥控-097": { + "TARGET_ID": "FS-中-指挥控-097", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.5111, + "f_CS": 0.404, + "f_IT": 0.6641, + "f_DP": 0.9317, + "f_CPS": 0.5882, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -61.48, + 5.78 + ], + "effective_radius": 116.74 + }, + "temporal": { + "response_time": 21.0, + "cycle_time": 5.15, + "data_age": 0.48, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7997, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-协同打-134": { + "TARGET_ID": "FS-英-协同打-134", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.867, + "f_IT": 0.6994, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 81.81, + 26.38 + ], + "effective_radius": 163.59 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9215, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": null, + "history_success": 0.8 + }, + "FS-法-协同打-084": { + "TARGET_ID": "FS-法-协同打-084", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4728, + "f_IT": 0.9542, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 104.98, + -34.65 + ], + "effective_radius": 162.41 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.8282, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "法", + "history_success": 0.8 + }, + "FS-美-平台部-165": { + "TARGET_ID": "FS-美-平台部-165", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.85, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7945 + }, + "spatial": { + "position": [ + -149.48, + -57.04 + ], + "effective_radius": 91.24 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6973, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "美", + "history_success": 0.8 + }, + "FS-法-平台部-188": { + "TARGET_ID": "FS-法-平台部-188", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.8258, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7893 + }, + "spatial": { + "position": [ + 23.87, + 84.48 + ], + "effective_radius": 135.29 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.9416, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-协同打-109": { + "TARGET_ID": "FS-中-协同打-109", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5354, + "f_IT": 0.9551, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -152.3, + 29.24 + ], + "effective_radius": 129.29 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.7233, + "survivability": 0.8264, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-美-后勤保-194": { + "TARGET_ID": "FS-美-后勤保-194", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4092, + "f_IT": 0.7029, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8943 + }, + "spatial": { + "position": [ + -118.26, + -27.2 + ], + "effective_radius": 82.22 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5173, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": null, + "history_success": 0.8 + }, + "FS-中-协同打-193": { + "TARGET_ID": "FS-中-协同打-193", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7469, + "f_IT": 0.6549, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -80.02, + 74.68 + ], + "effective_radius": 53.08 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.6898, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-法-协同打-018": { + "TARGET_ID": "FS-法-协同打-018", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3544, + "f_IT": 0.9249, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 45.47, + -43.93 + ], + "effective_radius": 62.84 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.504, + "survivability": 0.8418, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "法", + "history_success": 0.8 + }, + "FS-法-后勤保-062": { + "TARGET_ID": "FS-法-后勤保-062", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.6768, + "f_IT": 0.4262, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.912 + }, + "spatial": { + "position": [ + -25.58, + -54.57 + ], + "effective_radius": 64.9 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4416, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-指挥控-141": { + "TARGET_ID": "FS-俄-指挥控-141", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.4527, + "f_CS": 0.4925, + "f_IT": 0.8016, + "f_DP": 0.9413, + "f_CPS": 0.5068, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -45.32, + -86.08 + ], + "effective_radius": 127.44 + }, + "temporal": { + "response_time": 29.2, + "cycle_time": 5.15, + "data_age": 0.76, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.645, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-情报侦-081": { + "TARGET_ID": "FS-美-情报侦-081", + "function_vector": { + "f_IC": 0.9453, + "f_IA": 0.7896, + "f_CS": 1.0, + "f_IT": 0.5374, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -103.79, + -10.14 + ], + "effective_radius": 158.87 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 2.2, + "data_age": 1.82, + "time_window": 2.2 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8781, + "mtbf": 0.666 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "美", + "history_success": 0.8 + }, + "FS-美-后勤保-077": { + "TARGET_ID": "FS-美-后勤保-077", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7564, + "f_IT": 0.7326, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.9215 + }, + "spatial": { + "position": [ + -159.1, + 78.0 + ], + "effective_radius": 157.74 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4948, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "美", + "history_success": 0.8 + }, + "FS-美-指挥控-078": { + "TARGET_ID": "FS-美-指挥控-078", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.0465, + "f_IT": 0.5998, + "f_DP": 0.9125, + "f_CPS": 0.5929, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 76.36, + -17.44 + ], + "effective_radius": 104.46 + }, + "temporal": { + "response_time": 20.6, + "cycle_time": 5.15, + "data_age": 0.99, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7024, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "美", + "history_success": 0.8 + }, + "FS-美-指挥控-006": { + "TARGET_ID": "FS-美-指挥控-006", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.5605, + "f_CS": 0.1665, + "f_IT": 0.5484, + "f_DP": 0.9037, + "f_CPS": 0.5859, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 12.06, + -31.33 + ], + "effective_radius": 219.63 + }, + "temporal": { + "response_time": 21.2, + "cycle_time": 5.15, + "data_age": 0.74, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4592, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-后勤保-181": { + "TARGET_ID": "FS-俄-后勤保-181", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5736, + "f_IT": 0.5118, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8772 + }, + "spatial": { + "position": [ + -31.16, + -62.94 + ], + "effective_radius": 221.46 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6617, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-协同打-082": { + "TARGET_ID": "FS-美-协同打-082", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.626, + "f_IT": 0.7799, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -100.29, + -28.91 + ], + "effective_radius": 204.86 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.5451, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "美", + "history_success": 0.8 + }, + "FS-中-协同打-007": { + "TARGET_ID": "FS-中-协同打-007", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8419, + "f_IT": 0.9966, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -160.58, + 86.72 + ], + "effective_radius": 56.92 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6388, + "survivability": 0.3531, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "中", + "history_success": 0.8 + }, + "FS-俄-协同打-076": { + "TARGET_ID": "FS-俄-协同打-076", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.547, + "f_IT": 0.586, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -50.95, + -4.28 + ], + "effective_radius": 65.58 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.4921, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-平台部-153": { + "TARGET_ID": "FS-中-平台部-153", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.8077, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8347 + }, + "spatial": { + "position": [ + -170.19, + -44.57 + ], + "effective_radius": 92.24 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.746, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-指挥控-013": { + "TARGET_ID": "FS-英-指挥控-013", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.5018, + "f_CS": 0.2264, + "f_IT": 0.6378, + "f_DP": 0.7213, + "f_CPS": 0.5348, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 120.99, + 13.77 + ], + "effective_radius": 195.25 + }, + "temporal": { + "response_time": 26.1, + "cycle_time": 5.15, + "data_age": 0.82, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4431, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-后勤保-058": { + "TARGET_ID": "FS-法-后勤保-058", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3549, + "f_IT": 0.5211, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.4716 + }, + "spatial": { + "position": [ + 0.59, + 66.29 + ], + "effective_radius": 185.05 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6906, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-美-协同打-176": { + "TARGET_ID": "FS-美-协同打-176", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.6857, + "f_IT": 0.6827, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -86.89, + 76.54 + ], + "effective_radius": 151.53 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6681, + "survivability": 0.844, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": null, + "history_success": 0.8 + }, + "FS-俄-火力打-163": { + "TARGET_ID": "FS-俄-火力打-163", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.763, + "f_IT": 0.4582, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -155.08, + 47.36 + ], + "effective_radius": 43.29 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6992, + "survivability": 0.8489, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-后勤保-059": { + "TARGET_ID": "FS-美-后勤保-059", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4444, + "f_IT": 0.6996, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8125 + }, + "spatial": { + "position": [ + -87.14, + 85.28 + ], + "effective_radius": 35.62 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4354, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-法-火力打-179": { + "TARGET_ID": "FS-法-火力打-179", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5439, + "f_IT": 0.6781, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -105.68, + -39.29 + ], + "effective_radius": 41.51 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6214, + "survivability": 0.6298, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "法", + "history_success": 0.8 + }, + "FS-美-后勤保-170": { + "TARGET_ID": "FS-美-后勤保-170", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5812, + "f_IT": 0.6802, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8849 + }, + "spatial": { + "position": [ + -13.06, + -73.16 + ], + "effective_radius": 41.63 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5981, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-英-指挥控-128": { + "TARGET_ID": "FS-英-指挥控-128", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.4227, + "f_CS": 0.1197, + "f_IT": 0.8593, + "f_DP": 0.8622, + "f_CPS": 0.1093, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 88.93, + -72.29 + ], + "effective_radius": 100.11 + }, + "temporal": { + "response_time": 244.4631, + "cycle_time": 5.15, + "data_age": 0.94, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5359, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-后勤保-107": { + "TARGET_ID": "FS-俄-后勤保-107", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4481, + "f_IT": 0.6226, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.6165 + }, + "spatial": { + "position": [ + -3.69, + 29.16 + ], + "effective_radius": 91.94 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5559, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-指挥控-117": { + "TARGET_ID": "FS-法-指挥控-117", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.4366, + "f_CS": 0.4571, + "f_IT": 0.6234, + "f_DP": 0.8859, + "f_CPS": 0.8798, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -173.4, + 60.77 + ], + "effective_radius": 183.19 + }, + "temporal": { + "response_time": 4.1, + "cycle_time": 5.15, + "data_age": 0.48, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7128, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-英-指挥控-164": { + "TARGET_ID": "FS-英-指挥控-164", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.6744, + "f_CS": 0.1893, + "f_IT": 0.5053, + "f_DP": 0.9432, + "f_CPS": 0.625, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 44.63, + 56.91 + ], + "effective_radius": 244.01 + }, + "temporal": { + "response_time": 18.0, + "cycle_time": 5.15, + "data_age": 0.49, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6948, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-情报侦-198": { + "TARGET_ID": "FS-法-情报侦-198", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.718, + "f_IT": 0.1325, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -35.55, + -16.97 + ], + "effective_radius": 335.47 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 1.2, + "data_age": 1.25, + "time_window": 1.2 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.2942, + "mtbf": 1.0498 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-后勤保-139": { + "TARGET_ID": "FS-俄-后勤保-139", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7198, + "f_IT": 0.7163, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7619 + }, + "spatial": { + "position": [ + -23.55, + -38.21 + ], + "effective_radius": 239.49 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4158, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-火力打-094": { + "TARGET_ID": "FS-美-火力打-094", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3316, + "f_IT": 0.8413, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -128.58, + 53.89 + ], + "effective_radius": 140.89 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9391, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "美", + "history_success": 0.8 + }, + "FS-中-情报侦-130": { + "TARGET_ID": "FS-中-情报侦-130", + "function_vector": { + "f_IC": 0.9004, + "f_IA": 0.7896, + "f_CS": 0.1138, + "f_IT": 0.5546, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -165.22, + -14.2 + ], + "effective_radius": 76.52 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.0, + "data_age": 0.12, + "time_window": 5.0 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.032, + "mtbf": 0.7968 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-协同打-185": { + "TARGET_ID": "FS-英-协同打-185", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4841, + "f_IT": 0.8529, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -26.63, + 43.17 + ], + "effective_radius": 100.07 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.909, + "survivability": 0.5475, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-平台部-016": { + "TARGET_ID": "FS-俄-平台部-016", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.8994, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8196 + }, + "spatial": { + "position": [ + -149.36, + -64.42 + ], + "effective_radius": 90.37 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8111, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-协同打-129": { + "TARGET_ID": "FS-中-协同打-129", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9854, + "f_IT": 0.8735, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 143.98, + 79.64 + ], + "effective_radius": 78.06 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9288, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-后勤保-168": { + "TARGET_ID": "FS-英-后勤保-168", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4137, + "f_IT": 0.4098, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7191 + }, + "spatial": { + "position": [ + 149.6, + 59.12 + ], + "effective_radius": 61.38 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4696, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "英", + "history_success": 0.8 + }, + "FS-中-火力打-174": { + "TARGET_ID": "FS-中-火力打-174", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8392, + "f_IT": 0.6997, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -173.96, + 8.32 + ], + "effective_radius": 55.79 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.8967, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-后勤保-065": { + "TARGET_ID": "FS-英-后勤保-065", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3412, + "f_IT": 0.6459, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.504 + }, + "spatial": { + "position": [ + 127.59, + -23.61 + ], + "effective_radius": 42.31 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5348, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-协同打-073": { + "TARGET_ID": "FS-俄-协同打-073", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9821, + "f_IT": 0.7548, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 32.6, + 64.82 + ], + "effective_radius": 59.3 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9998, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-指挥控-030": { + "TARGET_ID": "FS-法-指挥控-030", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.3326, + "f_CS": 0.1154, + "f_IT": 0.6264, + "f_DP": 0.993, + "f_CPS": 0.5051, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 69.0, + -77.02 + ], + "effective_radius": 94.69 + }, + "temporal": { + "response_time": 29.4, + "cycle_time": 5.15, + "data_age": 0.16, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6086, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-情报侦-110": { + "TARGET_ID": "FS-中-情报侦-110", + "function_vector": { + "f_IC": 0.943, + "f_IA": 0.7896, + "f_CS": 0.6541, + "f_IT": 0.0787, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -7.04, + -62.68 + ], + "effective_radius": 142.86 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 1.3, + "data_age": 0.42, + "time_window": 1.3 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.1359, + "mtbf": 0.8205 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-俄-后勤保-157": { + "TARGET_ID": "FS-俄-后勤保-157", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7835, + "f_IT": 0.7762, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7119 + }, + "spatial": { + "position": [ + 50.29, + -59.03 + ], + "effective_radius": 122.73 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8382, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-后勤保-060": { + "TARGET_ID": "FS-法-后勤保-060", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5191, + "f_IT": 0.7206, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8887 + }, + "spatial": { + "position": [ + 6.97, + 80.74 + ], + "effective_radius": 86.4 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6748, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-英-后勤保-124": { + "TARGET_ID": "FS-英-后勤保-124", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.38, + "f_IT": 0.5558, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7266 + }, + "spatial": { + "position": [ + -34.0, + 27.03 + ], + "effective_radius": 41.17 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7531, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-英-协同打-005": { + "TARGET_ID": "FS-英-协同打-005", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5927, + "f_IT": 0.9016, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -25.59, + -11.13 + ], + "effective_radius": 41.0 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.8848, + "survivability": 0.4568, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-情报侦-071": { + "TARGET_ID": "FS-俄-情报侦-071", + "function_vector": { + "f_IC": 0.6701, + "f_IA": 0.7896, + "f_CS": 0.2984, + "f_IT": 0.5003, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 106.49, + -30.06 + ], + "effective_radius": 57.06 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 6.4, + "data_age": 1.67, + "time_window": 6.4 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.768, + "mtbf": 0.6495 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-英-情报侦-064": { + "TARGET_ID": "FS-英-情报侦-064", + "function_vector": { + "f_IC": 0.829, + "f_IA": 0.7896, + "f_CS": 0.4306, + "f_IT": 0.3296, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -94.77, + -56.31 + ], + "effective_radius": 100.68 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 4.7, + "data_age": 1.45, + "time_window": 4.7 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.1402, + "mtbf": 0.64 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-协同打-053": { + "TARGET_ID": "FS-俄-协同打-053", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9439, + "f_IT": 0.8318, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 161.77, + 14.56 + ], + "effective_radius": 120.03 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.4229, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-英-指挥控-151": { + "TARGET_ID": "FS-英-指挥控-151", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.399, + "f_IT": 0.9097, + "f_DP": 0.8306, + "f_CPS": 0.5618, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 61.43, + 63.97 + ], + "effective_radius": 145.83 + }, + "temporal": { + "response_time": 23.4, + "cycle_time": 5.15, + "data_age": 0.42, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8223, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-火力打-002": { + "TARGET_ID": "FS-俄-火力打-002", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8146, + "f_IT": 0.5778, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -82.39, + 88.79 + ], + "effective_radius": 101.09 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.923, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-情报侦-054": { + "TARGET_ID": "FS-美-情报侦-054", + "function_vector": { + "f_IC": 0.7936, + "f_IA": 0.7896, + "f_CS": 0.3703, + "f_IT": 0.1596, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -141.16, + -70.62 + ], + "effective_radius": 123.87 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.5, + "data_age": 1.99, + "time_window": 5.5 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7511, + "mtbf": 0.6363 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "美", + "history_success": 0.8 + }, + "FS-中-火力打-092": { + "TARGET_ID": "FS-中-火力打-092", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7637, + "f_IT": 0.5838, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 149.18, + 29.66 + ], + "effective_radius": 100.18 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.5374, + "survivability": 0.6866, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-火力打-056": { + "TARGET_ID": "FS-英-火力打-056", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7761, + "f_IT": 0.7513, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -161.89, + -12.91 + ], + "effective_radius": 112.4 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.5861, + "survivability": 0.8063, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "英", + "history_success": 0.8 + }, + "FS-中-后勤保-186": { + "TARGET_ID": "FS-中-后勤保-186", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7908, + "f_IT": 0.3109, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.5906 + }, + "spatial": { + "position": [ + -158.54, + -72.13 + ], + "effective_radius": 74.97 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4364, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "中", + "history_success": 0.8 + }, + "FS-美-协同打-114": { + "TARGET_ID": "FS-美-协同打-114", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.35, + "f_IT": 0.9683, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 140.51, + -82.6 + ], + "effective_radius": 68.26 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6219, + "survivability": 0.3773, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-指挥控-038": { + "TARGET_ID": "FS-俄-指挥控-038", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.6987, + "f_CS": 0.119, + "f_IT": 0.7676, + "f_DP": 0.9489, + "f_CPS": 0.9346, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -132.34, + -30.55 + ], + "effective_radius": 170.99 + }, + "temporal": { + "response_time": 2.1, + "cycle_time": 5.15, + "data_age": 0.98, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.9163, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-情报侦-122": { + "TARGET_ID": "FS-美-情报侦-122", + "function_vector": { + "f_IC": 0.7972, + "f_IA": 0.7896, + "f_CS": 0.052, + "f_IT": 0.7232, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 68.32, + 83.11 + ], + "effective_radius": 184.04 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 7.3, + "data_age": 1.98, + "time_window": 7.3 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.0604, + "mtbf": 0.9852 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "美", + "history_success": 0.8 + }, + "FS-英-指挥控-191": { + "TARGET_ID": "FS-英-指挥控-191", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.4323, + "f_IT": 0.6536, + "f_DP": 0.9499, + "f_CPS": 0.5164, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 16.27, + 57.45 + ], + "effective_radius": 307.01 + }, + "temporal": { + "response_time": 28.1, + "cycle_time": 5.15, + "data_age": 0.91, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6441, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-指挥控-187": { + "TARGET_ID": "FS-法-指挥控-187", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.9597, + "f_CS": 0.0695, + "f_IT": 0.5416, + "f_DP": 0.6478, + "f_CPS": 0.5618, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 15.98, + 61.35 + ], + "effective_radius": 216.7 + }, + "temporal": { + "response_time": 23.4, + "cycle_time": 5.15, + "data_age": 0.15, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.9724, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-美-协同打-034": { + "TARGET_ID": "FS-美-协同打-034", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4738, + "f_IT": 0.9665, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 48.25, + 35.64 + ], + "effective_radius": 214.06 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.8793, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-美-协同打-152": { + "TARGET_ID": "FS-美-协同打-152", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7782, + "f_IT": 0.7527, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -93.95, + 48.16 + ], + "effective_radius": 76.73 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6228, + "survivability": 0.3867, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-平台部-183": { + "TARGET_ID": "FS-俄-平台部-183", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.6683, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7653 + }, + "spatial": { + "position": [ + 159.07, + -48.18 + ], + "effective_radius": 69.1 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.924, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-英-平台部-106": { + "TARGET_ID": "FS-英-平台部-106", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.7091, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.847 + }, + "spatial": { + "position": [ + 54.27, + -72.25 + ], + "effective_radius": 63.77 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.9265, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-后勤保-100": { + "TARGET_ID": "FS-俄-后勤保-100", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7521, + "f_IT": 0.6079, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.9172 + }, + "spatial": { + "position": [ + -94.69, + 39.81 + ], + "effective_radius": 70.87 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4429, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-俄-平台部-063": { + "TARGET_ID": "FS-俄-平台部-063", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.6797, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.72 + }, + "spatial": { + "position": [ + 58.52, + 88.58 + ], + "effective_radius": 66.87 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7194, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-中-情报侦-024": { + "TARGET_ID": "FS-中-情报侦-024", + "function_vector": { + "f_IC": 0.762, + "f_IA": 0.7896, + "f_CS": 0.0075, + "f_IT": 0.1109, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 51.13, + -29.49 + ], + "effective_radius": 68.1 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.6, + "data_age": 0.29, + "time_window": 5.6 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.0543, + "mtbf": 0.5062 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "中", + "history_success": 0.8 + }, + "FS-美-火力打-196": { + "TARGET_ID": "FS-美-火力打-196", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5953, + "f_IT": 0.4897, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -91.68, + -16.54 + ], + "effective_radius": 67.74 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6182, + "survivability": 0.302, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "美", + "history_success": 0.8 + }, + "FS-俄-火力打-051": { + "TARGET_ID": "FS-俄-火力打-051", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4845, + "f_IT": 0.6367, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 46.91, + 16.81 + ], + "effective_radius": 71.72 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.5308, + "survivability": 0.7234, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-协同打-047": { + "TARGET_ID": "FS-法-协同打-047", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.3287, + "f_IT": 0.9218, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 54.41, + 7.75 + ], + "effective_radius": 71.91 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9562, + "survivability": 0.5817, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-英-火力打-127": { + "TARGET_ID": "FS-英-火力打-127", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5734, + "f_IT": 0.859, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 128.84, + 44.43 + ], + "effective_radius": 65.84 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.4572, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "英", + "history_success": 0.8 + }, + "FS-英-后勤保-119": { + "TARGET_ID": "FS-英-后勤保-119", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4456, + "f_IT": 0.4187, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.9052 + }, + "spatial": { + "position": [ + -63.17, + 25.63 + ], + "effective_radius": 54.16 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.672, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-情报侦-088": { + "TARGET_ID": "FS-俄-情报侦-088", + "function_vector": { + "f_IC": 1.0, + "f_IA": 0.7896, + "f_CS": 0.8174, + "f_IT": 0.9067, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -112.59, + 89.36 + ], + "effective_radius": 102.12 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 2.4, + "data_age": 0.81, + "time_window": 2.4 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.1689, + "mtbf": 0.6443 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-后勤保-011": { + "TARGET_ID": "FS-法-后勤保-011", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.6197, + "f_IT": 0.6735, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.491 + }, + "spatial": { + "position": [ + -24.56, + -66.14 + ], + "effective_radius": 104.49 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8668, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-情报侦-031": { + "TARGET_ID": "FS-中-情报侦-031", + "function_vector": { + "f_IC": 0.9143, + "f_IA": 0.7896, + "f_CS": 0.8152, + "f_IT": 0.1442, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -168.2, + -24.12 + ], + "effective_radius": 151.23 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 8.4, + "data_age": 1.62, + "time_window": 8.4 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.3593, + "mtbf": 0.5493 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "中", + "history_success": 0.8 + }, + "FS-中-后勤保-145": { + "TARGET_ID": "FS-中-后勤保-145", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.6239, + "f_IT": 1.0, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8809 + }, + "spatial": { + "position": [ + 117.7, + -13.74 + ], + "effective_radius": 88.58 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8284, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-后勤保-090": { + "TARGET_ID": "FS-英-后勤保-090", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5904, + "f_IT": 0.5056, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.6322 + }, + "spatial": { + "position": [ + -129.46, + -2.38 + ], + "effective_radius": 94.81 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6844, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-指挥控-057": { + "TARGET_ID": "FS-法-指挥控-057", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.6569, + "f_CS": 0.2852, + "f_IT": 0.8052, + "f_DP": 0.9997, + "f_CPS": 0.9231, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -145.87, + -81.59 + ], + "effective_radius": 79.03 + }, + "temporal": { + "response_time": 2.5, + "cycle_time": 5.15, + "data_age": 0.45, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6546, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "法", + "history_success": 0.8 + }, + "FS-俄-后勤保-166": { + "TARGET_ID": "FS-俄-后勤保-166", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4511, + "f_IT": 0.7347, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.5508 + }, + "spatial": { + "position": [ + -19.18, + 87.32 + ], + "effective_radius": 87.5 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8159, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-法-火力打-159": { + "TARGET_ID": "FS-法-火力打-159", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.4201, + "f_IT": 0.544, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 152.68, + -82.46 + ], + "effective_radius": 99.07 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.808, + "survivability": 0.884, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-火力打-070": { + "TARGET_ID": "FS-中-火力打-070", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8478, + "f_IT": 0.7768, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 127.36, + 79.03 + ], + "effective_radius": 65.91 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.8325, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "中", + "history_success": 0.8 + }, + "FS-英-情报侦-037": { + "TARGET_ID": "FS-英-情报侦-037", + "function_vector": { + "f_IC": 0.9061, + "f_IA": 0.7896, + "f_CS": 0.4296, + "f_IT": 0.8654, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 2.37, + 22.07 + ], + "effective_radius": 140.07 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 3.8, + "data_age": 0.6, + "time_window": 3.8 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.1388, + "mtbf": 0.605 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "英", + "history_success": 0.8 + }, + "FS-中-情报侦-083": { + "TARGET_ID": "FS-中-情报侦-083", + "function_vector": { + "f_IC": 0.805, + "f_IA": 0.7896, + "f_CS": 1.0, + "f_IT": 0.1751, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 4.82, + -46.71 + ], + "effective_radius": 130.81 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.1, + "data_age": 1.5, + "time_window": 5.1 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8227, + "mtbf": 0.8732 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "中", + "history_success": 0.8 + }, + "FS-俄-火力打-043": { + "TARGET_ID": "FS-俄-火力打-043", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.415, + "f_IT": 0.6483, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 136.34, + -35.69 + ], + "effective_radius": 145.69 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9292, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-英-协同打-015": { + "TARGET_ID": "FS-英-协同打-015", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5305, + "f_IT": 0.6418, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 44.55, + 86.46 + ], + "effective_radius": 76.06 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.9317, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "英", + "history_success": 0.8 + }, + "FS-俄-情报侦-133": { + "TARGET_ID": "FS-俄-情报侦-133", + "function_vector": { + "f_IC": 0.9801, + "f_IA": 0.7896, + "f_CS": 0.0567, + "f_IT": 0.2598, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 50.14, + 68.12 + ], + "effective_radius": 116.48 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 2.9, + "data_age": 0.92, + "time_window": 2.9 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8546, + "mtbf": 0.8811 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "俄", + "history_success": 0.8 + }, + "FS-美-火力打-137": { + "TARGET_ID": "FS-美-火力打-137", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.507, + "f_IT": 0.4711, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -179.95, + -2.34 + ], + "effective_radius": 93.15 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.8852, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "美", + "history_success": 0.8 + }, + "FS-法-后勤保-040": { + "TARGET_ID": "FS-法-后勤保-040", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5414, + "f_IT": 0.6425, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.6778 + }, + "spatial": { + "position": [ + -171.06, + 77.5 + ], + "effective_radius": 90.49 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4661, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-情报侦-003": { + "TARGET_ID": "FS-中-情报侦-003", + "function_vector": { + "f_IC": 0.7334, + "f_IA": 0.7896, + "f_CS": 0.8799, + "f_IT": 0.5211, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -147.98, + 10.98 + ], + "effective_radius": 92.79 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 7.8, + "data_age": 0.76, + "time_window": 7.8 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.4866, + "mtbf": 1.0945 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "中", + "history_success": 0.8 + }, + "FS-美-平台部-085": { + "TARGET_ID": "FS-美-平台部-085", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.984, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8458 + }, + "spatial": { + "position": [ + 167.55, + 33.59 + ], + "effective_radius": 142.57 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6839, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-法-平台部-142": { + "TARGET_ID": "FS-法-平台部-142", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.0, + "f_IT": 0.9202, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.8316 + }, + "spatial": { + "position": [ + 121.58, + -17.11 + ], + "effective_radius": 185.14 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.5726, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-法-火力打-046": { + "TARGET_ID": "FS-法-火力打-046", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5051, + "f_IT": 0.4757, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -149.5, + -55.33 + ], + "effective_radius": 151.98 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.584, + "survivability": 0.7, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-协同打-172": { + "TARGET_ID": "FS-中-协同打-172", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5244, + "f_IT": 0.9972, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 106.49, + -69.47 + ], + "effective_radius": 113.95 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.917, + "survivability": 0.3077, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "团级", + "nation": "中", + "history_success": 0.8 + }, + "FS-法-后勤保-147": { + "TARGET_ID": "FS-法-后勤保-147", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5603, + "f_IT": 0.4315, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.6048 + }, + "spatial": { + "position": [ + 89.85, + -88.57 + ], + "effective_radius": 62.48 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.6699, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "法", + "history_success": 0.8 + }, + "FS-法-协同打-079": { + "TARGET_ID": "FS-法-协同打-079", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5401, + "f_IT": 0.9579, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -103.84, + -13.55 + ], + "effective_radius": 43.3 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.7072, + "survivability": 0.3759, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "法", + "history_success": 0.8 + }, + "FS-英-指挥控-029": { + "TARGET_ID": "FS-英-指挥控-029", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.8068, + "f_CS": 0.1202, + "f_IT": 0.5212, + "f_DP": 0.9197, + "f_CPS": 0.8451, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -154.12, + 2.47 + ], + "effective_radius": 136.92 + }, + "temporal": { + "response_time": 5.5, + "cycle_time": 5.15, + "data_age": 0.69, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.581, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "师级", + "nation": "英", + "history_success": 0.8 + }, + "FS-法-协同打-108": { + "TARGET_ID": "FS-法-协同打-108", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.9917, + "f_IT": 0.4152, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + -96.01, + -46.24 + ], + "effective_radius": 151.72 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 1.0, + "survivability": 0.4747, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "法", + "history_success": 0.8 + }, + "FS-中-协同打-116": { + "TARGET_ID": "FS-中-协同打-116", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.8693, + "f_IT": 0.7671, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 51.41, + -27.99 + ], + "effective_radius": 161.13 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.8567, + "survivability": 0.8046, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-美-指挥控-095": { + "TARGET_ID": "FS-美-指挥控-095", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.711, + "f_CS": 0.1666, + "f_IT": 0.7022, + "f_DP": 0.9085, + "f_CPS": 0.6224, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 165.2, + -65.19 + ], + "effective_radius": 159.66 + }, + "temporal": { + "response_time": 18.2, + "cycle_time": 5.15, + "data_age": 0.74, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.8984, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "旅级", + "nation": "美", + "history_success": 0.8 + }, + "FS-中-火力打-048": { + "TARGET_ID": "FS-中-火力打-048", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7417, + "f_IT": 0.7472, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 18.23, + 63.14 + ], + "effective_radius": 148.96 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.5414, + "survivability": 0.6958, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "军级", + "nation": "中", + "history_success": 0.8 + }, + "FS-中-协同打-026": { + "TARGET_ID": "FS-中-协同打-026", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.7853, + "f_IT": 0.4311, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 123.4, + -54.24 + ], + "effective_radius": 154.01 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.6259, + "survivability": 0.6265, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-中-指挥控-126": { + "TARGET_ID": "FS-中-指挥控-126", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 1.0, + "f_CS": 0.1984, + "f_IT": 0.66, + "f_DP": 0.5233, + "f_CPS": 0.6608, + "f_CC": 0.7822 + }, + "spatial": { + "position": [ + 166.65, + -43.17 + ], + "effective_radius": 89.26 + }, + "temporal": { + "response_time": 15.4, + "cycle_time": 5.15, + "data_age": 0.44, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.681, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "中", + "history_success": 0.8 + }, + "FS-法-后勤保-118": { + "TARGET_ID": "FS-法-后勤保-118", + "function_vector": { + "f_IC": 0.9222, + "f_IA": 0.7896, + "f_CS": 0.5815, + "f_IT": 0.4777, + "f_DP": 0.9148, + "f_CPS": 0.5619, + "f_CC": 0.7902 + }, + "spatial": { + "position": [ + -94.3, + -30.68 + ], + "effective_radius": 89.52 + }, + "temporal": { + "response_time": 23.3891, + "cycle_time": 5.15, + "data_age": 0.8832, + "time_window": 5.15 + }, + "performance": { + "core_performance": 0.9831, + "survivability": 0.7855, + "mtbf": 0.7841 + }, + "protocol_list": [], + "format_list": [], + "interface_list": [], + "security_level": 3, + "org_unit": "营级", + "nation": "法", + "history_success": 0.8 + } + }, + "global_params": { + "mtbf_max": 1.0945 + } +} \ No newline at end of file diff --git a/data/raw_data_sample.json b/final/data/raw_data_sample.json similarity index 100% rename from data/raw_data_sample.json rename to final/data/raw_data_sample.json diff --git a/final/data/triples.json b/final/data/triples.json new file mode 100644 index 0000000..937a208 --- /dev/null +++ b/final/data/triples.json @@ -0,0 +1,60 @@ +{ + "triples": [ + { + "head": "CMD001", + "head_type": "指挥控制", + "relation": "指挥控制", + "tail": "DEF001", + "tail_type": "信息获取" + }, + { + "head": "CMD001", + "head_type": "指挥控制", + "relation": "指挥控制", + "tail": "STK001", + "tail_type": "协同打击" + }, + { + "head": "DEF001", + "head_type": "信息获取", + "relation": "状态反馈", + "tail": "CMD001", + "tail_type": "指挥控制" + }, + { + "head": "DEF001", + "head_type": "信息获取", + "relation": "情报保障", + "tail": "STK001", + "tail_type": "协同打击" + }, + { + "head": "STK001", + "head_type": "协同打击", + "relation": "状态反馈", + "tail": "CMD001", + "tail_type": "指挥控制" + }, + { + "head": "STK001", + "head_type": "协同打击", + "relation": "协同作战", + "tail": "STK002", + "tail_type": "协同打击" + }, + { + "head": "LOG001", + "head_type": "综合保障", + "relation": "平台部署", + "tail": "STK001", + "tail_type": "协同打击" + }, + { + "head": "MED001", + "head_type": "综合保障", + "relation": "平台部署", + "tail": "TRN001", + "tail_type": "部署平台" + } + ] +} \ No newline at end of file diff --git a/final/data/triplets.json b/final/data/triplets.json new file mode 100644 index 0000000..5508f4b --- /dev/null +++ b/final/data/triplets.json @@ -0,0 +1,58 @@ +[ + { + "head": "CMD001", + "head_type": "指挥控制", + "relation": "指挥控制", + "tail": "DEF001", + "tail_type": "信息获取" + }, + { + "head": "CMD001", + "head_type": "指挥控制", + "relation": "指挥控制", + "tail": "STK001", + "tail_type": "协同打击" + }, + { + "head": "DEF001", + "head_type": "信息获取", + "relation": "状态反馈", + "tail": "CMD001", + "tail_type": "指挥控制" + }, + { + "head": "DEF001", + "head_type": "信息获取", + "relation": "情报保障", + "tail": "STK001", + "tail_type": "协同打击" + }, + { + "head": "STK001", + "head_type": "协同打击", + "relation": "状态反馈", + "tail": "CMD001", + "tail_type": "指挥控制" + }, + { + "head": "STK001", + "head_type": "协同打击", + "relation": "协同作战", + "tail": "STK002", + "tail_type": "协同打击" + }, + { + "head": "LOG001", + "head_type": "综合保障", + "relation": "平台部署", + "tail": "STK001", + "tail_type": "协同打击" + }, + { + "head": "MED001", + "head_type": "综合保障", + "relation": "平台部署", + "tail": "TRN001", + "tail_type": "部署平台" + } +] \ No newline at end of file diff --git a/final/report/detailed_cleaning_report.json b/final/report/detailed_cleaning_report.json new file mode 100644 index 0000000..19d2bd1 --- /dev/null +++ b/final/report/detailed_cleaning_report.json @@ -0,0 +1,94 @@ +{ + "timestamp": "2026-04-23 12:20:15", + "summary": { + "total_records": 210, + "final_records": 200, + "duplicates_removed": 10 + }, + "details": { + "missing_values_fixed": { + "X": 2, + "Y": 5, + "WEIGHT": 126, + "AREA": 126, + "DETECTION_RANGE": 166, + "DETECTION_ACCURACY": 166, + "REFRESH_RATE": 166, + "TRANSMISSION_DELAY": 135, + "RELIABILITY": 166, + "DECISION_RESPONSE_TIME": 169, + "PROCESSING_CAPACITY": 169, + "INFORMATION_FUSION_CAPABILITY": 169, + "SYSTEM_RELIABILITY": 169, + "STRIKE_RANGE": 126, + "STRIKE_ACCURACY": 126, + "AMMUNITION_RESERVE": 126, + "TARGET_RECOGNITION_CAPABILITY": 126, + "LOAD_CAPACITY": 159, + "PLATFORM_AREA": 180, + "SUPPORT_RANGE": 159, + "SUPPORT_CAPACITY": 139 + }, + "outliers_corrected": { + "count": 59, + "examples": [ + { + "id": "FS-法-协同打-144", + "field": "TARGET_RECOGNITION_CAPABILITY", + "original": 1.1645873020580773, + "corrected": 1.0, + "reason": "Value out of range [0, 1]" + }, + { + "id": "FS-法-协同打-144", + "field": "STRIKE_ACCURACY", + "original": 1.2863907411837974, + "corrected": 1.0, + "reason": "Value out of range [0, 1]" + }, + { + "id": "FS-美-火力打-156", + "field": "TARGET_RECOGNITION_CAPABILITY", + "original": -0.8869593801185574, + "corrected": 0.8869593801185574, + "reason": "Value out of range [0, 1]" + }, + { + "id": "FS-俄-协同打-061", + "field": "TARGET_RECOGNITION_CAPABILITY", + "original": 1.1931823083468704, + "corrected": 1.0, + "reason": "Value out of range [0, 1]" + }, + { + "id": "FS-美-协同打-121", + "field": "STRIKE_ACCURACY", + "original": 1.439367437550393, + "corrected": 1.0, + "reason": "Value out of range [0, 1]" + } + ] + }, + "noise_reduction": { + "method": "Kalman Filter", + "fields_processed": [ + "COMMUNICATION_RANGE" + ], + "total_smoothed": 200 + }, + "standardization": [ + "Coordinates normalized to 2 decimal places", + "Timestamps formatted to ISO-8601", + "Attributes aligned to 1125 schema (format + content)" + ], + "attribute_alignment": { + "enabled": true, + "format_errors_by_field": {}, + "content_errors_by_field": {}, + "records_with_errors": 0, + "aligned_count": 200, + "transformed_count": 200, + "samples": [] + } + } +} \ No newline at end of file diff --git a/final/report/triplet_cleaning_report.json b/final/report/triplet_cleaning_report.json new file mode 100644 index 0000000..a161065 --- /dev/null +++ b/final/report/triplet_cleaning_report.json @@ -0,0 +1,20 @@ +{ + "timestamp": "2026-02-27 19:45:51", + "original_count": 8, + "deduplicate": { + "enabled": true, + "removed": 0 + }, + "filter_orphans": { + "enabled": false, + "removed": 0 + }, + "remove_null_core": { + "enabled": true, + "removed": 0 + }, + "normalize_relation_type": { + "enabled": true + }, + "final_count": 8 +} \ No newline at end of file diff --git a/final/requirements.txt b/final/requirements.txt new file mode 100644 index 0000000..d30ea45 --- /dev/null +++ b/final/requirements.txt @@ -0,0 +1,5 @@ +numpy>=1.20.0 +pandas>=1.3.0 +PyYAML>=5.4 +openpyxl>=3.0.0 +# 达梦模式需额外:pip install dmPython diff --git a/final/results/evaluation_report.txt b/final/results/evaluation_report.txt new file mode 100644 index 0000000..a0508f3 --- /dev/null +++ b/final/results/evaluation_report.txt @@ -0,0 +1,83 @@ +============================================================ +网络关系与效能评价报告 +============================================================ + +1. 基本信息 +---------------------------------------- +过滤阈值: 0.15 【关系强度阈值】 +总三元组数量: 8 +分别有: +有效计算三元组: 0 +跳过三元组: 8 +通过过滤三元组: 0 +通过率: 0.0% + +2. 计算公式 +边关系计算公式 +-------------------------------------------------- +情报保障关系 L_IS(i,j) = w_f·M_F^IS + w_s·M_S^IS + w_t·M_T^IS + w_p·M_P^IS + w_i·M_I^IS +指挥控制关系 L_CC(i,j) = w_f·M_F^CC + w_s·M_S^CC + w_t·M_T^CC + w_p·M_P^CC + w_i·M_I^CC +状态反馈关系 L_SF(i,j) = w_f·M_F^SF + w_s·M_S^SF + w_t·M_T^SF + w_p·M_P^SF + w_i·M_I^SF +平台部署关系 L_PD(i,j) = w_f·M_F^PD + w_s·M_S^PD + w_t·M_T^PD + w_p·M_P^PD + w_i·M_I^PD +协同作战关系 L_CO(i,j) = w_f·M_F^CO + w_s·M_S^CO + w_t·M_T^CO + w_p·M_P^CO + w_i·M_I^CO +【符号说明】 + M_F^IS 情报保障功能匹配项 + M_S^IS 情报保障空间匹配项 + M_T^IS 情报保障时间匹配项 + M_P^IS 情报保障性能匹配项 + M_I^IS 情报保障交互匹配项 + +任务网络效能计算公式 +-------------------------------------------------- +综合防御 P_defense = α1·(∑f_IC/N_IC) + α2·(∑f_IA/N_IA) + α3·(∑L_IS/N_IS) + α4·(∑t_resp/N) + α5·(∑L_CC/N_CC) +火力打击 P_fire = β1·(∑f_CS/N_CS) + β2·(∑f_IA/N_IA) + β3·(∑L_CO/N_CO) + β4·(∑p_core·f_CS/N_CS) + β5·(∑L_IS/N_IS) +后勤保障 P_logistics = γ1·(∑f_CPS/N_CPS) + γ2·(∑f_DP/N_DP) + γ3·(∑L_PD/N_PD) + γ4·(∑p_rel/N) + γ5·(∑f_IT/N_IT) +医疗救援 P_medical = δ1·(∑f_CPS/N_CPS) + δ2·(∑t_resp/N) + δ3·(∑f_IT/N_IT) + δ4·(∑L_SF/N_SF) + δ5·(∑fresh_i/N) +紧急疏散 P_evacuation = ε1·(∑f_CC/N_CC) + ε2·(∑f_IT/N_IT) + ε3·(∑L_CC/N_CC) + ε4·(∑f_CPS/N_CPS) + ε5·(∑t_resp/N) +【符号说明】 + N_IC 信息对抗节点数量 + ∑f_IC/N_IC 信息对抗节点平均能力 + ∑L_IS/N_IS 情报保障关系平均强度 + ∑t_resp/N 系统平均响应速度 + ∑L_CC/N_CC 指挥控制关系平均强度 + ∑f_CS/N_CS 协同打击节点平均能力 + ∑f_IA/N_IA 信息获取节点平均能力 + ∑L_CO/N_CO 协同作战关系平均强度 + ∑p_core·f_CS/N_CS 打击节点性能加权能力 + ∑f_CPS/N_CPS 综合保障节点平均能力 + ∑f_DP/N_DP 部署平台节点平均能力 + ∑L_PD/N_PD 平台部署关系平均强度 + ∑p_rel/N 系统平均可靠性 + ∑f_IT/N_IT 信息传输节点平均能力 + ∑L_SF/N_SF 状态反馈关系平均强度 + ∑fresh_i/N 系统平均数据新鲜度 + α1...α5 综合防御权重 [0.30,0.25,0.20,0.15,0.10] + β1...β5 火力打击权重 [0.35,0.25,0.20,0.10,0.10] + γ1...γ5 后勤保障权重 [0.30,0.25,0.20,0.15,0.10] + δ1...δ5 医疗救援权重 [0.35,0.25,0.20,0.10,0.10] + ε1...ε5 紧急疏散权重 [0.30,0.25,0.20,0.15,0.10] + +3. 关系类型统计 +---------------------------------------- +【被过滤掉的关系明细】 +---------------------------------------- +4. 所属任务网络评估 +---------------------------------------- +任务网络概率:综合防御 21.2% 火力打击 17.5% 后勤保障 20.2% 医疗救援 19.7% 紧急疏散 21.4% +最有可能的任务网络:紧急疏散 可能性为:21.4 % +5. 最终紧急疏散任务网络的五个维度评价 +功能维度 (Function): +功能维度反映了网络中节点的功能匹配程度。得分: 0.917 +高于参考值,表示节点在功能上高度互补,能够有效协同工作。 +空间系维度 (Relationship): +空间维度反映了节点之间的连接强度。得分: 0.000 +低于参考值,表示节点之间的连接较弱,信息传递效率较低。 +性能维度 (Performance): +性能维度反映了节点的性能指标,如响应时间和可靠性。得分: 0.935 +高于参考值,表示节点在性能上表现出色,能够稳定运行。 +时间维度 (Temporal): +时间维度反映了节点的时间同步性和响应能力。得分: 0.126 +低于参考值,表示节点在时间同步性上存在偏差,响应速度较慢。 +交互维度 (Interaction): +交互维度反映了节点之间的协议、格式和安全兼容性。得分: 0.000 +低于参考值,表示节点在交互上存在兼容性问题,通信安全性较低。 \ No newline at end of file diff --git a/final/results/filtered_triples.json b/final/results/filtered_triples.json new file mode 100644 index 0000000..0d42048 --- /dev/null +++ b/final/results/filtered_triples.json @@ -0,0 +1,3 @@ +{ + "triples": [] +} \ No newline at end of file diff --git a/final/results/triples.csv b/final/results/triples.csv new file mode 100644 index 0000000..e02abfc --- /dev/null +++ b/final/results/triples.csv @@ -0,0 +1 @@ + diff --git a/final/results/triples.xlsx b/final/results/triples.xlsx new file mode 100644 index 0000000..f843a04 Binary files /dev/null and b/final/results/triples.xlsx differ diff --git a/final/scripts/__pycache__/export_triplets.cpython-313.pyc b/final/scripts/__pycache__/export_triplets.cpython-313.pyc new file mode 100644 index 0000000..60c14b3 Binary files /dev/null and b/final/scripts/__pycache__/export_triplets.cpython-313.pyc differ diff --git a/final/scripts/__pycache__/f_net1125.cpython-313.pyc b/final/scripts/__pycache__/f_net1125.cpython-313.pyc new file mode 100644 index 0000000..1035419 Binary files /dev/null and b/final/scripts/__pycache__/f_net1125.cpython-313.pyc differ diff --git a/final/scripts/__pycache__/f_net1125.cpython-38.pyc b/final/scripts/__pycache__/f_net1125.cpython-38.pyc new file mode 100644 index 0000000..0cb071b Binary files /dev/null and b/final/scripts/__pycache__/f_net1125.cpython-38.pyc differ diff --git a/final/scripts/__pycache__/f_relation1125.cpython-313.pyc b/final/scripts/__pycache__/f_relation1125.cpython-313.pyc new file mode 100644 index 0000000..27766e5 Binary files /dev/null and b/final/scripts/__pycache__/f_relation1125.cpython-313.pyc differ diff --git a/final/scripts/__pycache__/f_relation1125.cpython-38.pyc b/final/scripts/__pycache__/f_relation1125.cpython-38.pyc new file mode 100644 index 0000000..eab8fc9 Binary files /dev/null and b/final/scripts/__pycache__/f_relation1125.cpython-38.pyc differ diff --git a/final/scripts/__pycache__/inspect_dm_tables.cpython-313.pyc b/final/scripts/__pycache__/inspect_dm_tables.cpython-313.pyc new file mode 100644 index 0000000..31d1952 Binary files /dev/null and b/final/scripts/__pycache__/inspect_dm_tables.cpython-313.pyc differ diff --git a/final/scripts/__pycache__/run_all.cpython-313.pyc b/final/scripts/__pycache__/run_all.cpython-313.pyc new file mode 100644 index 0000000..748b5db Binary files /dev/null and b/final/scripts/__pycache__/run_all.cpython-313.pyc differ diff --git a/final/scripts/__pycache__/utils.cpython-313.pyc b/final/scripts/__pycache__/utils.cpython-313.pyc new file mode 100644 index 0000000..f1838d4 Binary files /dev/null and b/final/scripts/__pycache__/utils.cpython-313.pyc differ diff --git a/final/scripts/__pycache__/utils.cpython-38.pyc b/final/scripts/__pycache__/utils.cpython-38.pyc new file mode 100644 index 0000000..6247acf Binary files /dev/null and b/final/scripts/__pycache__/utils.cpython-38.pyc differ diff --git a/final/scripts/export_triplets.py b/final/scripts/export_triplets.py new file mode 100644 index 0000000..9133da9 --- /dev/null +++ b/final/scripts/export_triplets.py @@ -0,0 +1,113 @@ +#!/usr/bin/env python3 +""" +从达梦数据库导出三元组数据到 JSON 文件 +三元组来源:RELATION_INSTANCE 表 (HEAD_ID, RELATION_TYPE, TAIL_ID) +支持可选清洗:去重、过滤悬空引用、移除空值、规范化关系类型 +用法: python scripts/export_triplets.py +需设置环境变量 DM_PASSWORD,且 config 中 source=db +""" +import json +import os +import sys + +_script_dir = os.path.dirname(os.path.abspath(__file__)) +_project_root = os.path.dirname(_script_dir) +sys.path.insert(0, _project_root) + + +def _json_serializer(obj): + """处理 Timestamp、datetime、numpy 等不可直接 JSON 序列化的类型""" + if hasattr(obj, 'isoformat'): + return obj.isoformat() + if hasattr(obj, 'item'): + return obj.item() + if isinstance(obj, float) and (obj != obj or obj == float('inf') or obj == float('-inf')): + return None + raise TypeError(f'Object of type {type(obj).__name__} is not JSON serializable') + + +def load_config(project_root: str) -> dict: + """加载 config""" + config_dir = os.path.join(project_root, 'config') + json_path = os.path.join(config_dir, 'config.json') + yaml_path = os.path.join(config_dir, 'config.yaml') + if os.path.exists(json_path): + with open(json_path, 'r', encoding='utf-8') as f: + return json.load(f) + if os.path.exists(yaml_path): + try: + import yaml + with open(yaml_path, 'r', encoding='utf-8') as f: + return yaml.safe_load(f) + except ImportError: + pass + return {'source': 'json', 'db': {}, 'triplet': {}} + + +def main(): + from src.data_loader import load_triplets_from_dm, load_from_dm + from src.triplet_cleaner import clean_triplets, transform_triplet_output_format + + config = load_config(_project_root) + if config.get('source') != 'db': + print("错误:三元组导出仅支持达梦模式,请将 config 中 source 改为 db") + sys.exit(1) + + tc = config.get('triplet', {}) + output_file = tc.get('output_file', 'data/triples.json') + report_file = tc.get('report_file', 'report/triplet_cleaning_report.json') + output_path = output_file if os.path.isabs(output_file) else os.path.join(_project_root, output_file) + report_path = report_file if os.path.isabs(report_file) else os.path.join(_project_root, report_file) + os.makedirs(os.path.dirname(output_path), exist_ok=True) + os.makedirs(os.path.dirname(report_path), exist_ok=True) + + # 清洗配置(clean: false 则跳过;否则按子项配置) + clean_cfg = tc.get('clean', True) + do_clean = False + if clean_cfg is True: + do_clean = {'deduplicate': True, 'filter_orphans': False, 'remove_null_core': True, 'normalize_relation_type': True} + elif isinstance(clean_cfg, dict): + do_clean = clean_cfg + + deduplicate = do_clean.get('deduplicate', True) if do_clean else False + filter_orphans = do_clean.get('filter_orphans', False) if do_clean else False + remove_null_core = do_clean.get('remove_null_core', True) if do_clean else False + normalize_relation_type = do_clean.get('normalize_relation_type', True) if do_clean else False + + print("正在从达梦读取三元组 (RELATION_INSTANCE)...") + triplets = load_triplets_from_dm(config, _project_root) + print(f"读取到 {len(triplets)} 条三元组") + + valid_ids = None + if filter_orphans: + print("正在加载实体表以校验悬空引用...") + entities = load_from_dm(config, _project_root) + valid_ids = {str(e.get('TARGET_ID', '')).strip() for e in entities if e.get('TARGET_ID')} + print(f"有效实体数: {len(valid_ids)}") + + if do_clean and (deduplicate or filter_orphans or remove_null_core or normalize_relation_type): + print("正在执行三元组清洗...") + triplets, report = clean_triplets( + triplets, + valid_ids=valid_ids, + deduplicate=deduplicate, + filter_orphans=filter_orphans, + remove_null_core=remove_null_core, + normalize_relation_type=normalize_relation_type, + ) + with open(report_path, 'w', encoding='utf-8') as f: + json.dump(report, f, ensure_ascii=False, indent=2, default=_json_serializer) + print(f"清洗完成:{report['original_count']} -> {report['final_count']},报告: {report_path}") + + # 转为输出格式:head, head_type, relation, tail, tail_type + entities = load_from_dm(config, _project_root) + id_to_role = {str(e.get('TARGET_ID', '')).strip(): str(e.get('ROLE_ID', '')).strip() for e in entities if e.get('TARGET_ID')} + triplets = transform_triplet_output_format(triplets, id_to_role) + + with open(output_path, 'w', encoding='utf-8') as f: + json.dump(triplets, f, ensure_ascii=False, indent=2, default=_json_serializer) + print(f"已导出至 {output_path}") + + +if __name__ == "__main__": + main() diff --git a/final/scripts/f_net1125.py b/final/scripts/f_net1125.py new file mode 100644 index 0000000..87aaadb --- /dev/null +++ b/final/scripts/f_net1125.py @@ -0,0 +1,112 @@ +# f_net1125.py ← 边关系已算完,只算任务网络 +from __future__ import annotations +import numpy as np +from typing import Dict, List, Tuple + +NodeID = str +TaskScore = float # 网络效能得分 [0,1] + + +class TaskNetworkEvaluator: + """ + 输入: + nodes - 节点数据(含 function_vector / performance / temporal) + relations - 已算好的全部边关系 + 格式:relations[("IS","DEF001","CMD001")] = 0.87 + """ + def __init__(self, + nodes: Dict[NodeID, Dict], + relations: Dict[Tuple[str, NodeID, NodeID], float], + weights: Dict[str, Dict[str, float]] = None): + self.nodes = nodes + self.rels = relations + self.w = weights + + # ---------- 工具 ---------- + def _avg(self, scores: List[float]) -> float: + return float(np.mean(scores)) if scores else 0.0 + + def _collect_func(self, key: str) -> List[float]: + """所有节点指定功能值""" + return [n["function_vector"][key] for n in self.nodes.values()] + + def _collect_rel(self, tag: str) -> List[float]: + """预存关系强度列表""" + return [v for k, v in self.rels.items() if k[0] == tag] + + def _collect_resp(self) -> List[float]: + """响应时间得分""" + return [np.exp(-0.1 * n["temporal"]["response_time"]) for n in self.nodes.values()] + + # ---------- 2.1 综合防御 ---------- + def eval_defense(self) -> TaskScore: + w = self.w["defense"] + f_ic = self._avg(self._collect_func("f_IC")) + f_ia = self._avg(self._collect_func("f_IA")) + l_is = self._avg(self._collect_rel("IS")) + t_resp = self._avg(self._collect_resp()) + l_cc = self._avg(self._collect_rel("CC")) + return w["w1"] * f_ic + w["w2"] * f_ia + w["w3"] * l_is + w["w4"] * t_resp + w["w5"] * l_cc + + # ---------- 2.2 火力打击 ---------- + def eval_fire(self) -> TaskScore: + w = self.w["fire"] + f_cs = self._avg(self._collect_func("f_CS")) + f_ia = self._avg(self._collect_func("f_IA")) + l_co = self._avg(self._collect_rel("CO")) + perf_cs = self._avg([n["performance"]["core_performance"] * n["function_vector"]["f_CS"] + for n in self.nodes.values()]) + l_is = self._avg(self._collect_rel("IS")) + return w["w1"] * f_cs + w["w2"] * f_ia + w["w3"] * l_co + w["w4"] * perf_cs + w["w5"] * l_is + + # ---------- 2.3 后勤保障 ---------- + def eval_logistics(self) -> TaskScore: + w = self.w["logistics"] + f_cps = self._avg(self._collect_func("f_CPS")) + f_dp = self._avg(self._collect_func("f_DP")) + l_pd = self._avg(self._collect_rel("PD")) + p_rel = self._avg([n["performance"]["mtbf"] / 1000 for n in self.nodes.values()]) + f_it = self._avg(self._collect_func("f_IT")) + return w["w1"] * f_cps + w["w2"] * f_dp + w["w3"] * l_pd + w["w4"] * p_rel + w["w5"] * f_it + + # ---------- 2.4 医疗救援 ---------- + def eval_medical(self) -> TaskScore: + w = self.w["medical"] + f_cps = self._avg(self._collect_func("f_CPS")) + t_resp = self._avg(self._collect_resp()) + f_it = self._avg(self._collect_func("f_IT")) + l_sf = self._avg(self._collect_rel("SF")) + fresh = self._avg([np.exp(-0.1 * n["temporal"]["data_age"]) for n in self.nodes.values()]) + return w["w1"] * f_cps + w["w2"] * t_resp + w["w3"] * f_it + w["w4"] * l_sf + w["w5"] * fresh + + # ---------- 2.5 紧急疏散 ---------- + def eval_evacuation(self) -> TaskScore: + w = self.w["evacuation"] + f_cc = self._avg(self._collect_func("f_CC")) + f_it = self._avg(self._collect_func("f_IT")) + l_cc = self._avg(self._collect_rel("CC")) + f_cps = self._avg(self._collect_func("f_CPS")) + t_resp = self._avg(self._collect_resp()) + return w["w1"] * f_cc + w["w2"] * f_it + w["w3"] * l_cc + w["w4"] * f_cps + w["w5"] * t_resp + + # ---------- 一键评估 ---------- + def eval_all(self) -> Dict[str, TaskScore]: + results = { + "defense": self.eval_defense(), + "fire": self.eval_fire(), + "logistics": self.eval_logistics(), + "medical": self.eval_medical(), + "evacuation": self.eval_evacuation(), + } + + # 计算五个维度的分数 + dimensions = { + "function": self._avg(self._collect_func("f_IC")), + "relationship": self._avg(self._collect_rel("IS")), + "performance": self._avg([n["performance"]["core_performance"] for n in self.nodes.values()]), + "temporal": self._avg(self._collect_resp()), + "interaction": self._avg(self._collect_rel("SF")) + } + + results["dimensions"] = dimensions + return results \ No newline at end of file diff --git a/final/scripts/f_relation1125.py b/final/scripts/f_relation1125.py new file mode 100644 index 0000000..5d9fbc1 --- /dev/null +++ b/final/scripts/f_relation1125.py @@ -0,0 +1,395 @@ +import numpy as np +from typing import Dict +from .utils import NetworkUtils + + +class RelationCalculator: + """关系强度计算器""" + + def __init__(self, nodes_data: Dict, cfg): + """ + 初始化 + :param nodes_data: 节点数据 + :param auxiliary_data: 辅助数据(接口标准、角色匹配等) + """ + self.nodes_data = nodes_data + self.utils = NetworkUtils() + self.cfg = cfg + + def _weights(self, rel: str): + return self.cfg["W_REL"][rel] + + def _lambda(self, rel: str): + return self.cfg["LAMBDA"][rel] + + def calculate_IS_relation(self, i: str, j: str) -> float: + """ + 计算情报保障关系强度 + L_IS(i,j) = w_f·M_IS_F + w_s·M_IS_S + w_t·M_IS_T + w_p·M_IS_P + w_i·M_IS_I + """ + # 权重参数(根据1.3.pdf) + w = self._weights("IS") + # 提取节点数据 + node_i = self.nodes_data['nodes'][i] + node_j = self.nodes_data['nodes'][j] + + # 1. 功能维度 M_IS_F + f_i_IA = node_i['function_vector']['f_IA'] + f_j_avg = ( + node_j['function_vector']['f_CC'] + + node_j['function_vector']['f_IC'] + + node_j['function_vector']['f_CS'] + + node_j['function_vector']['f_CPS'] + ) / 4 + + std_ij = self.utils.get_interface_standard(node_i, node_j) + r_ij = self.utils.get_role_match(node_i, node_j) + M_IS_F = f_i_IA * f_j_avg * std_ij * r_ij + + # 2. 空间维度 M_IS_S + d_ij = self.utils.calculate_distance( + node_i['spatial']['position'], + node_j['spatial']['position'] + ) + lambda_IS = self._lambda("IS") + R_match = self.utils.calculate_range_match( + node_i['spatial']['effective_radius'], + node_j['spatial']['effective_radius'], + d_ij + ) + + s_area = self.utils.get_area_relation(node_i, node_j) + M_IS_S = np.exp(-d_ij / lambda_IS) * R_match * s_area + + # 3. 时间维度 + alpha = self.cfg["TIME"]["alpha"] + beta = self.cfg["TIME"]["beta"] + gamma = self.cfg["TIME"]["gamma"] + + fresh_i = np.exp(-gamma * node_i['temporal']['data_age']) + t_i_resp = np.exp(-alpha * node_i['temporal']['response_time']) + + w_ij = self.utils.calculate_time_window_overlap(node_i, node_j) + + M_IS_T = fresh_i * t_i_resp * w_ij + + # 4. 性能维度 M_IS_P + p_i_core = node_i['performance']['core_performance'] + mtbf_max = self.nodes_data['global_params']['mtbf_max'] + p_i_rel = node_i['performance']['mtbf'] / mtbf_max + M_IS_P = p_i_core * p_i_rel + + # 5. 交互维度 M_IS_I + prot_ij = self.utils.get_protocol_compatibility(node_i, node_j) + fmt_ij = self.utils.get_format_compatibility(node_i, node_j) + sec_ij = self.utils.get_security_compatibility(node_i, node_j) + hist_ij = self.utils.get_interaction_history(node_i, node_j) + M_IS_I = ((prot_ij + fmt_ij + sec_ij) / 3) * hist_ij + + # 综合计算 + L_IS = (w["w_f"] * M_IS_F + w["w_s"] * M_IS_S + w["w_t"] * M_IS_T + + w["w_p"] * M_IS_P + w["w_i"] * M_IS_I) + + return L_IS + + def calculate_CC_relation(self, i: str, j: str) -> float: + """ + 计算指挥控制关系强度 + L_CC(i,j) = w_f·M_CC_F + w_s·M_CC_S + w_t·M_CC_T + w_p·M_CC_P + w_i·M_CC_I + """ + # 权重参数 + w = self._weights("CC") + lambda_CC = self._lambda("CC")# 根据公式,指挥控制距离敏感性更高 + + node_i = self.nodes_data['nodes'][i] + node_j = self.nodes_data['nodes'][j] + + # 1. 功能维度 M_CC_F + f_i_CC = node_i['function_vector']['f_CC'] + f_j_sum = sum([ + node_j['function_vector']['f_IA'], + node_j['function_vector']['f_IT'], + node_j['function_vector']['f_IC'], + node_j['function_vector']['f_CS'], + node_j['function_vector']['f_DP'], + node_j['function_vector']['f_CPS'] + ]) + f_j_avg = f_j_sum / 6 + + std_ij = self.utils.get_interface_standard(node_i, node_j) + r_ij = self.utils.get_role_match(node_i, node_j) + M_CC_F = f_i_CC * f_j_avg * std_ij * r_ij + + # 2. 空间维度 M_CC_S + d_ij = self.utils.calculate_distance( + node_i['spatial']['position'], + node_j['spatial']['position'] + ) + + R_match = self.utils.calculate_range_match( + node_i['spatial']['effective_radius'], + node_j['spatial']['effective_radius'], + d_ij + ) + + s_area = self.utils.get_area_relation(node_i, node_j) + M_CC_S = np.exp(-d_ij / lambda_CC) * R_match * s_area + + # 3. 时间维度 M_CC_T + alpha = self.cfg["TIME"]["alpha"] + beta = self.cfg["TIME"]["beta"] + gamma = self.cfg["TIME"]["gamma"] + + t_i_resp = np.exp(-alpha * node_i['temporal']['response_time']) + t_i_cycle = np.exp(-beta * node_i['temporal']['cycle_time']) + + w_ij = self.utils.calculate_time_window_overlap(node_i, node_j) + + M_CC_T = t_i_resp * t_i_cycle * w_ij + + # 4. 性能维度 M_CC_P + p_i_core = node_i['performance']['core_performance'] + p_i_surv = node_i['performance']['survivability'] + mtbf_max = self.nodes_data['global_params']['mtbf_max'] + p_i_rel = node_i['performance']['mtbf'] / mtbf_max + M_CC_P = p_i_core * p_i_surv * p_i_rel + + # 5. 交互维度 M_CC_I + prot_ij = self.utils.get_protocol_compatibility(node_i, node_j) + sec_ij = self.utils.get_security_compatibility(node_i, node_j) + org_ij = self.utils.get_organization_relation(node_i, node_j) + hist_ij = self.utils.get_interaction_history(node_i, node_j) + M_CC_I = ((prot_ij + sec_ij + org_ij) / 3) * hist_ij + + # 综合计算 + L_CC = (w["w_f"] * M_CC_F + w["w_s"] * M_CC_S + w["w_t"] * M_CC_T + + w["w_p"] * M_CC_P + w["w_i"] * M_CC_I) + + return L_CC + + def calculate_SF_relation(self, i: str, j: str) -> float: + """ + 计算状态反馈关系强度 + L_SF(i,j) = w_f·M_SF_F + w_s·M_SF_S + w_t·M_SF_T + w_p·M_SF_P + w_i·M_SF_I + """ + # 权重参数 + w = self._weights("SF") + lambda_SF = self._lambda("SF") + + node_i = self.nodes_data['nodes'][i] + node_j = self.nodes_data['nodes'][j] + + # 1. 功能维度 M_SF_F + f_i_sum = sum([ + node_i['function_vector']['f_IA'], + node_i['function_vector']['f_IT'], + node_i['function_vector']['f_IC'], + node_i['function_vector']['f_CS'], + node_i['function_vector']['f_DP'], + node_i['function_vector']['f_CPS'] + ]) + f_i_avg = f_i_sum / 6 + f_j_CC = node_j['function_vector']['f_CC'] + + std_ij = self.utils.get_interface_standard(node_i, node_j) + r_ij = self.utils.get_role_match(node_i, node_j) + M_SF_F = f_i_avg * f_j_CC * std_ij * r_ij + + # 2. 空间维度 M_SF_S + d_ij = self.utils.calculate_distance( + node_i['spatial']['position'], + node_j['spatial']['position'] + ) + + R_match = self.utils.calculate_range_match( + node_i['spatial']['effective_radius'], + node_j['spatial']['effective_radius'], + d_ij + ) + + s_area = self.utils.get_area_relation(node_i, node_j) + M_SF_S = np.exp(-d_ij / lambda_SF) * R_match * s_area + + # 3. 时间维度 M_SF_T(状态反馈对时间敏感) + alpha = self.cfg["TIME"]["alpha"] + beta = self.cfg["TIME"]["beta"] + gamma = self.cfg["TIME"]["gamma"] + + fresh_i = np.exp(-gamma * node_i['temporal']['data_age']) + t_i_resp = np.exp(-alpha * node_i['temporal']['response_time']) + + w_ij = self.utils.calculate_time_window_overlap(node_i, node_j) + + M_SF_T = fresh_i * t_i_resp * w_ij + + # 4. 性能维度 M_SF_P + p_i_core = node_i['performance']['core_performance'] + mtbf_max = self.nodes_data['global_params']['mtbf_max'] + p_i_rel = node_i['performance']['mtbf'] / mtbf_max + M_SF_P = p_i_core * p_i_rel + + # 5. 交互维度 M_SF_I + prot_ij = self.utils.get_protocol_compatibility(node_i, node_j) + fmt_ij = self.utils.get_format_compatibility(node_i, node_j) + sec_ij = self.utils.get_security_compatibility(node_i, node_j) + hist_ij = self.utils.get_interaction_history(node_i, node_j) + M_SF_I = ((prot_ij + fmt_ij + sec_ij) / 3) * hist_ij + + # 综合计算 + L_SF = (w["w_f"] * M_SF_F + w["w_s"] * M_SF_S + w["w_t"] * M_SF_T + + w["w_p"] * M_SF_P + w["w_i"] * M_SF_I) + + return L_SF + + def calculate_PD_relation(self, i: str, j: str) -> float: + """ + 计算平台部署关系强度 + L_PD(i,j) = w_f·M_PD_F + w_s·M_PD_S + w_t·M_PD_T + w_p·M_PD_P + w_i·M_PD_I + """ + # 权重参数 + w = self._weights("PD") + lambda_PD = self._lambda("PD") + + node_i = self.nodes_data['nodes'][i] + node_j = self.nodes_data['nodes'][j] + + # 1. 功能维度 M_PD_F + f_i_DP = node_i['function_vector']['f_DP'] + f_J_sum = sum([ + node_j['function_vector']['f_IA'], + node_j['function_vector']['f_IT'], + node_j['function_vector']['f_IC'], + node_j['function_vector']['f_CS'], + ]) + f_J_avg = f_J_sum / 4 + + # 修复:直接传递节点数据 + std_ij = self.utils.get_interface_standard(node_i, node_j) + r_ij = self.utils.get_role_match(node_i, node_j) + M_PD_F = f_i_DP * f_J_avg * std_ij * r_ij + + # 2. 空间维度 M_PD_S(平台部署对空间要求高) + d_ij = self.utils.calculate_distance( + node_i['spatial']['position'], + node_j['spatial']['position'] + ) + + R_match = self.utils.calculate_range_match( + node_i['spatial']['effective_radius'], + node_j['spatial']['effective_radius'], + d_ij + ) + # 修复:直接传递节点数据 + s_area = self.utils.get_area_relation(node_i, node_j) + if d_ij <= self.cfg["PD_SGM"]: + M_PD_S = 1 + else: + M_PD_S = np.exp(-d_ij / lambda_PD) * R_match * s_area + + # 3. 时间维度 M_PD_T + alpha = self.cfg["TIME"]["alpha"] + beta = self.cfg["TIME"]["beta"] + gamma = self.cfg["TIME"]["gamma"] + + t_i_resp = np.exp(-alpha * node_i['temporal']['response_time']) + t_i_cycle = np.exp(-beta * node_i['temporal']['cycle_time']) + + w_ij = self.utils.calculate_time_window_overlap(node_i, node_j) + + M_PD_T = t_i_resp * t_i_cycle * w_ij + + # 4. 性能维度 M_PD_P + p_i_core = node_i['performance']['core_performance'] + # 部署平台的生存能力 + p_i_surv = node_i['performance']['survivability'] + M_PD_P = p_i_core * p_i_surv + + # 5. 交互维度 M_PD_I + prot_ij = self.utils.get_protocol_compatibility(node_i, node_j) + fmt_ij = self.utils.get_format_compatibility(node_i, node_j) + # 注意:这里std_ij已经在上面计算过了 + M_PD_I = (prot_ij + fmt_ij + std_ij) / 3 + + # 综合计算 + L_PD = (w["w_f"] * M_PD_F + w["w_s"] * M_PD_S + w["w_t"] * M_PD_T + + w["w_p"] * M_PD_P + w["w_i"] * M_PD_I) + + return L_PD + + def calculate_CO_relation(self, i: str, j: str) -> float: + """ + 计算协同作战关系强度 + L_CO(i,j) = w_f·M_CO_F + w_s·M_CO_S + w_t·M_CO_T + w_p·M_CO_P + w_i·M_CO_I + """ + # 权重参数 + w = self._weights("CO") + lambda_CO = self._lambda("CO") + node_i = self.nodes_data['nodes'][i] + node_j = self.nodes_data['nodes'][j] + + # 1. 功能维度 M_CO_F + # 协同作战需要多个功能匹配 + f_i_avg = sum(node_i['function_vector'].values()) / len(node_i['function_vector']) + f_j_avg = sum(node_j['function_vector'].values()) / len(node_j['function_vector']) + + std_ij = self.utils.get_interface_standard(node_i, node_j) + r_ij = self.utils.get_role_match(node_i, node_j) + M_CO_F = f_i_avg * f_j_avg * std_ij * r_ij + + # 2. 空间维度 M_CO_S + d_ij = self.utils.calculate_distance( + node_i['spatial']['position'], + node_j['spatial']['position'] + ) + + R_match = self.utils.calculate_range_match( + node_i['spatial']['effective_radius'], + node_j['spatial']['effective_radius'], + d_ij + ) + + s_area = self.utils.get_area_relation(node_i, node_j) + M_CO_S = np.exp(-d_ij / lambda_CO) * R_match * s_area + + # 3. 时间维度 M_CO_T(协同需要时间同步) + alpha = self.cfg["TIME"]["alpha"] + beta = self.cfg["TIME"]["beta"] + gamma = self.cfg["TIME"]["gamma"] + + t_i_resp = np.exp(-alpha * node_i['temporal']['response_time']) + t_j_resp = np.exp(-alpha * node_j['temporal']['response_time']) + + t_i_cycle = np.exp(-beta * node_i['temporal']['cycle_time']) + t_j_cycle = np.exp(-beta * node_j['temporal']['cycle_time']) + + w_ij = self.utils.calculate_time_window_overlap(node_i, node_j) + + M_CO_T = (t_i_resp + t_j_resp) * (t_i_cycle + t_j_cycle) * w_ij * 0.25 + + # 4. 性能维度 M_CO_P + p_i_core = node_i['performance']['core_performance'] + p_j_core = node_j['performance']['core_performance'] + + mtbf_max = self.nodes_data['global_params']['mtbf_max'] + p_i_rel = node_i['performance']['mtbf'] / mtbf_max + p_j_rel = node_j['performance']['mtbf'] / mtbf_max + + p_i_surv = node_i['performance']['survivability'] + p_j_surv = node_j['performance']['survivability'] + # 协同性能取平均 + M_CO_P = ((p_i_core + p_j_core) / 2) * ((p_i_rel + p_j_rel) / 2) * ((p_i_surv + p_j_surv) / 2) + + # 5. 交互维度 M_CO_I + prot_ij = self.utils.get_protocol_compatibility(node_i, node_j) + fmt_ij = self.utils.get_format_compatibility(node_i, node_j) + sec_ij = self.utils.get_security_compatibility(node_i, node_j) + org_ij = self.utils.get_organization_relation(node_i, node_j) + hist_ij = self.utils.get_interaction_history(node_i, node_j) + M_CO_I = ((prot_ij + fmt_ij + sec_ij + org_ij) / 4) * hist_ij + + # 综合计算 + L_CO = (w["w_f"] * M_CO_F + w["w_s"] * M_CO_S + w["w_t"] * M_CO_T + + w["w_p"] * M_CO_P + w["w_i"] * M_CO_I) + + + return L_CO \ No newline at end of file diff --git a/final/scripts/inspect_dm_tables.py b/final/scripts/inspect_dm_tables.py new file mode 100644 index 0000000..29553a4 --- /dev/null +++ b/final/scripts/inspect_dm_tables.py @@ -0,0 +1,241 @@ +#!/usr/bin/env python3 +""" +在达梦数据库机器上运行,查看各表结构,用于编写 config 中的 db.query +用法: python scripts/inspect_dm_tables.py + +密码获取顺序:环境变量 DM_PASS > 下方 LOCAL_PASSWORD +若使用 LOCAL_PASSWORD,切勿提交到 git!可执行:git update-index --assume-unchanged scripts/inspect_dm_tables.py +""" +import os +import sys + +# 可选:在此直接填写密码(仅限本机调试,切勿提交到版本库!) +LOCAL_PASSWORD = None # 例如: "你的密码" + +# 支持从项目根或 scripts 目录运行 +_script_dir = os.path.dirname(os.path.abspath(__file__)) +_project_root = os.path.dirname(_script_dir) +XLSX_PATH = os.path.join(_project_root, "1125暂时属性需求(1).xlsx") +if _project_root not in sys.path: + sys.path.insert(0, _project_root) + +try: + import dmPython +except ImportError: + print("请先安装: pip install dmPython") + sys.exit(1) + +CONFIG = { + "user": os.getenv("DM_USER", "SYSDBA"), + "password": os.getenv("DM_PASS") or LOCAL_PASSWORD, + "server": os.getenv("DM_HOST", "127.0.0.1"), + "port": int(os.getenv("DM_PORT", "9080")), + "schema": "SYSDBA", +} + +TABLES = [ + "OBJECTIVE_INSTANCE", + "METRIC_VALUE_INSTANCE", + "METRIC_PROFILE", + "ROLE_PROFILE", + "TASK_PROFILE", + "RELATION_INSTANCE", + "RES_FORMAL_ANALYSIS", +] + + +def _load_required_attrs(xlsx_path: str) -> list: + """从 1125暂时属性需求(1).xlsx 解析需求属性列表(一条=一个属性)""" + if not os.path.exists(xlsx_path): + print(f" (未找到 {xlsx_path},使用内置属性列表)") + return _DEFAULT_REQ_ATTRS + try: + import pandas as pd + df = pd.read_excel(xlsx_path, header=None) + attrs = [] + for _, row in df.iterrows(): + v0 = row[0] + v2 = str(row[2]) if len(row) > 2 and pd.notna(row[2]) else "" + if pd.notna(v0) and str(v0).strip() and str(v0) != "属性代码名称": + attrs.append(str(v0).strip()) + if ":" in v2: + sub = v2.split(":")[0].strip() + if sub and sub not in attrs: + attrs.append(sub) + return attrs if attrs else _DEFAULT_REQ_ATTRS + except Exception as e: + print(f" (解析 xlsx 失败: {e},使用内置属性列表)") + return _DEFAULT_REQ_ATTRS + + +# xlsx 解析失败时的兜底属性列表(来自 1125暂时属性需求) +_DEFAULT_REQ_ATTRS = [ + "f_IC", "f_IA", "f_CS", "f_IT", "f_DP", "f_CPS", "f_CC", + "position", "effective_radius", + "response_time", "cycle_time", "data_age", "time_window", + "core_performance", "survivability", "mtbf", + "protocol_list", "format_list", "interface_list", + "security_level", "org_unit", "nation", "history_success", +] + + +def main(): + if not CONFIG["password"]: + print("请设置环境变量 DM_PASS 或在脚本中填写 LOCAL_PASSWORD") + sys.exit(1) + + try: + conn = dmPython.connect( + user=CONFIG["user"], + password=CONFIG["password"], + server=CONFIG["server"], + port=CONFIG["port"], + schema=CONFIG["schema"], + ) + except Exception as e: + print(f"连接失败: {e}") + sys.exit(1) + + cursor = conn.cursor() + print("=" * 60) + print("达梦表结构(用于编写 config/db.query)") + print("=" * 60) + + for table in TABLES: + try: + cursor.execute(f'SELECT * FROM "{CONFIG["schema"]}"."{table}" WHERE 1=0') + cols = [d[0] for d in cursor.description] + print(f"\n【{table}】 列: {cols}") + except Exception as e: + print(f"\n【{table}】 查询失败: {e}") + + # 专门查询 METRIC_VALUE_INSTANCE 的字段详情(含完整属性) + mvi_table = "METRIC_VALUE_INSTANCE" + print("\n" + "=" * 80) + print(f"【{mvi_table}】 字段详情(完整属性)") + print("=" * 80) + try: + # 查询 DBA_TAB_COLUMNS 全部常用属性(达梦兼容) + cursor.execute( + """ + SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, + NULLABLE, DATA_DEFAULT, COLUMN_ID + FROM DBA_TAB_COLUMNS + WHERE OWNER = ? AND TABLE_NAME = ? + ORDER BY COLUMN_ID + """, + (CONFIG["schema"], mvi_table), + ) + mvi_cols = cursor.fetchall() + # 表头 + fmt = " {:<18} {:<16} {:<10} {:<10} {:<8} {:<10} {:<20}" + print(fmt.format("列名", "数据类型", "长度", "精度", "标度", "可空", "默认值")) + print(" " + "-" * 90) + for row in mvi_cols: + col_name, data_type, data_length, data_precision, data_scale, nullable, data_default, col_id = row + # 类型显示:数值型用 类型(精度,标度),字符型用 类型(长度) + if data_precision is not None: + type_str = f"{data_type}({data_precision},{data_scale or 0})" + elif data_length and data_type.upper() in ("VARCHAR", "CHAR", "VARCHAR2"): + type_str = f"{data_type}({data_length})" + elif data_length: + type_str = f"{data_type}({data_length})" + else: + type_str = data_type or "" + len_val = str(data_length) if data_length is not None else "-" + prec_val = str(data_precision) if data_precision is not None else "-" + scale_val = str(data_scale) if data_scale is not None else "-" + null_str = "NULL" if nullable == "Y" else "NOT NULL" + default_str = (str(data_default).strip() if data_default else "-")[:18] + print(fmt.format(col_name, type_str, len_val, prec_val, scale_val, null_str, default_str)) + + # 查询样本数据(若有) + cursor.execute(f'SELECT * FROM "{CONFIG["schema"]}"."{mvi_table}" WHERE ROWNUM <= 3') + sample_rows = cursor.fetchall() + if sample_rows: + col_names = [d[0] for d in cursor.description] + print(f"\n 样本数据 (最多 3 行):") + for i, row in enumerate(sample_rows, 1): + print(f" 行{i}: {dict(zip(col_names, row))}") + else: + print("\n (表无数据)") + except Exception as e: + print(f" 查询失败: {e}") + + # 按 1125暂时属性需求(1).xlsx 查询 METRIC_VALUE_INSTANCE(一条=一个属性) + print("\n" + "=" * 80) + print("【METRIC_VALUE_INSTANCE】按需求属性查询(xlsx 中一条 = 一个 METRIC_ID)") + print("=" * 80) + try: + # 1. 从 xlsx 解析需求属性列表 + req_attrs = _load_required_attrs(XLSX_PATH) + print(f"\n xlsx 需求属性 ({len(req_attrs)} 个): {req_attrs}") + + # 2. 查询库中实际存在的 METRIC_ID(distinct) + cursor.execute( + f'SELECT DISTINCT METRIC_ID FROM "{CONFIG["schema"]}"."METRIC_VALUE_INSTANCE" ORDER BY METRIC_ID' + ) + db_metric_ids = [r[0] for r in cursor.fetchall()] + print(f"\n 库中已有 METRIC_ID ({len(db_metric_ids)} 个): {db_metric_ids or '(无数据)'}") + + # 3. METRIC_PROFILE 对照(METRIC_ID -> 中文名) + cursor.execute( + f'SELECT METRIC_ID, METRIC_NAME FROM "{CONFIG["schema"]}"."METRIC_PROFILE"' + ) + profile_map = dict(cursor.fetchall()) + if profile_map: + print("\n METRIC_PROFILE 对照:") + for mid, mname in sorted(profile_map.items()): + print(f" {mid} -> {mname}") + + # 4. 交集:需求属性中在库里有的 + in_both = [a for a in req_attrs if a in db_metric_ids] + # 需求有但库无 + missing = [a for a in req_attrs if a not in db_metric_ids] + # 库有但需求未列 + extra = [m for m in db_metric_ids if m not in req_attrs] + + print(f"\n 需求与库交集 (可查): {in_both or '无'}") + print(f" 需求有但库无: {missing or '无'}") + print(f" 库有但需求未列: {extra or '无'}") + + # 5. 按属性查询示例 SQL + print("\n --- 按属性查询示例 SQL ---") + for attr in (in_both or req_attrs)[:5]: # 最多展示 5 个 + sql = f'SELECT * FROM "{CONFIG["schema"]}"."METRIC_VALUE_INSTANCE" WHERE METRIC_ID = \'{attr}\'' + print(f" -- {attr}: {sql}") + if len(in_both or req_attrs) > 5: + print(f" ... 其余属性同理,将 METRIC_ID = 'xxx' 替换即可") + except Exception as e: + print(f" 查询失败: {e}") + import traceback + traceback.print_exc() + + cursor.execute( + """ + SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE + FROM DBA_TAB_COLUMNS + WHERE OWNER = ? + ORDER BY TABLE_NAME, COLUMN_ID + """, + (CONFIG["schema"],), + ) + rows = cursor.fetchall() + + print("\n" + "=" * 60) + print("所有列详情 (TABLE_NAME | COLUMN_NAME | DATA_TYPE)") + print("=" * 60) + cur_table = None + for table, col, dtype in rows: + if table != cur_table: + cur_table = table + print(f"\n--- {table} ---") + print(f" {col}: {dtype}") + + cursor.close() + conn.close() + print("\n完成。请根据上述结构在 config 中编写 db.query。") + + +if __name__ == "__main__": + main() diff --git a/final/scripts/run_all.py b/final/scripts/run_all.py new file mode 100644 index 0000000..104fa07 --- /dev/null +++ b/final/scripts/run_all.py @@ -0,0 +1,167 @@ +#!/usr/bin/env python3 +""" +一键运行:实体属性表 + 三元组 的读取、清洗、导出 +用法: python scripts/run_all.py +""" +import json +import os +import sys + +_script_dir = os.path.dirname(os.path.abspath(__file__)) +_project_root = os.path.dirname(_script_dir) +sys.path.insert(0, _project_root) + + +def _json_serializer(obj): + if hasattr(obj, 'isoformat'): + return obj.isoformat() + if hasattr(obj, 'item'): + return obj.item() + if isinstance(obj, float) and (obj != obj or obj == float('inf') or obj == float('-inf')): + return None + raise TypeError(f'Object of type {type(obj).__name__} is not JSON serializable') + + +def load_config(project_root: str) -> dict: + config_dir = os.path.join(project_root, 'config') + json_path = os.path.join(config_dir, 'config.json') + yaml_path = os.path.join(config_dir, 'config.yaml') + if os.path.exists(json_path): + with open(json_path, 'r', encoding='utf-8') as f: + return json.load(f) + if os.path.exists(yaml_path): + try: + import yaml + with open(yaml_path, 'r', encoding='utf-8') as f: + return yaml.safe_load(f) + except ImportError: + pass + return {'source': 'json', 'json': {}, 'triplet': {}, 'db': {}} + + +def _resolve_path(path: str, project_root: str) -> str: + return path if os.path.isabs(path) else os.path.join(project_root, path) + + +def main(): + from src.cleaner import AdvancedDataCleaner + from src.data_loader import load_data, load_triplets_from_dm, load_from_json, run_formalization_pipeline + from src.triplet_cleaner import clean_triplets + + config = load_config(_project_root) + source = config.get('source', 'json') + tc = config.get('triplet', {}) + + # 三元组:db 模式默认处理;json 模式需 triplet.input_file;triplet.enabled=false 可关闭 + triplet_input = tc.get('input_file') + run_triplets = tc.get('enabled', source == 'db' or bool(triplet_input)) + + print("=" * 50) + print("作战体系数据清洗 - 一键运行") + print("=" * 50) + print(f"数据源: {source}") + + # ---------- 1. 实体属性表 ---------- + print("\n【1/2】实体属性表 读取与清洗") + try: + data, paths = load_data(config, _project_root) + except (FileNotFoundError, ValueError) as e: + print(f"错误:{e}") + sys.exit(1) + + os.makedirs(os.path.dirname(paths['report']), exist_ok=True) + cleaner = AdvancedDataCleaner(output_file=paths['output'], report_file=paths['report'], data=data) + cleaner.run() + valid_ids = cleaner.get_valid_target_ids() + print(f" -> 输出: {paths['output']}") + print(f" -> 报告: {paths['report']}") + + # ---------- 2. 三元组 ---------- + if not run_triplets: + print("\n【2/2】三元组 已跳过(triplet.enabled=false 或 json 模式未配置 input_file)") + print("\n完成。") + return + + print("\n【2/2】三元组 读取与清洗") + + if source == 'db': + triplets = load_triplets_from_dm(config, _project_root) + print(f" 从达梦读取 {len(triplets)} 条三元组") + elif triplet_input: + input_path = _resolve_path(triplet_input, _project_root) + if os.path.exists(input_path): + raw = load_from_json(input_path, _project_root) + triplets = raw.get("triples", raw) if isinstance(raw, dict) else raw + triplets = triplets if isinstance(triplets, list) else [] + print(f" 从 {triplet_input} 读取 {len(triplets)} 条三元组") + else: + print(f" 跳过:三元组文件不存在 {input_path}") + triplets = [] + else: + print(" 跳过:json 模式未配置 triplet.input_file") + triplets = [] + + if not triplets: + print(" 无三元组数据,跳过导出") + print("\n完成。") + return + + # 三元组清洗配置 + clean_cfg = tc.get('clean', True) + do_clean = {'deduplicate': True, 'filter_orphans': False, 'remove_null_core': True, 'normalize_relation_type': True} if clean_cfg is True else (clean_cfg if isinstance(clean_cfg, dict) else {}) + deduplicate = do_clean.get('deduplicate', True) if do_clean else False + filter_orphans = do_clean.get('filter_orphans', False) if do_clean else False + remove_null_core = do_clean.get('remove_null_core', True) if do_clean else False + normalize_relation_type = do_clean.get('normalize_relation_type', True) if do_clean else False + + if do_clean and (deduplicate or filter_orphans or remove_null_core or normalize_relation_type): + triplets, report = clean_triplets( + triplets, + valid_ids=valid_ids if filter_orphans else None, + deduplicate=deduplicate, + filter_orphans=filter_orphans, + remove_null_core=remove_null_core, + normalize_relation_type=normalize_relation_type, + ) + report_path = _resolve_path(tc.get('report_file', 'report/triplet_cleaning_report.json'), _project_root) + os.makedirs(os.path.dirname(report_path), exist_ok=True) + with open(report_path, 'w', encoding='utf-8') as f: + json.dump(report, f, ensure_ascii=False, indent=2, default=_json_serializer) + print(f" 清洗: {report['original_count']} -> {report['final_count']}") + print(f" 报告: {report_path}") + + # 转为输出格式:head, head_type, relation, tail, tail_type + from src.triplet_cleaner import transform_triplet_output_format + id_to_role = cleaner.get_id_to_role() + triplets = transform_triplet_output_format(triplets, id_to_role) + + output_path = _resolve_path(tc.get('output_file', 'data/triples.json'), _project_root) + os.makedirs(os.path.dirname(output_path), exist_ok=True) + with open(output_path, 'w', encoding='utf-8') as f: + json.dump(triplets, f, ensure_ascii=False, indent=2, default=_json_serializer) + print(f" 输出: {output_path}") + + # ---------- 3. 模块1.3:形式化入库 ---------- + formal_cfg = config.get("formal", {}) + if source == "db" and formal_cfg.get("enabled", False): + print("\n【3/3】形式化模块 读取-补齐-入库") + try: + result = run_formalization_pipeline(config) + if result.get("ok"): + stats = result.get("stats", {}) + print(f" 批次: {result.get('batch_id')}") + print(f" 推理三元组: {stats.get('total_triples', 0)}") + print(f" 形式化入库: {stats.get('inserted_formal_count', 0)}") + print(f" 属性补齐写回: {stats.get('generated_attrs_count', 0)}") + else: + print(f" 形式化流程跳过: {result.get('reason', 'unknown')}") + except Exception as e: + print(f" 形式化流程失败: {e}") + raise + elif formal_cfg.get("enabled", False): + print("\n【3/3】形式化模块 已跳过(仅 source=db 时启用)") + + print("\n完成。") + +if __name__ == "__main__": + main() diff --git a/final/scripts/utils.py b/final/scripts/utils.py new file mode 100644 index 0000000..6252d16 --- /dev/null +++ b/final/scripts/utils.py @@ -0,0 +1,110 @@ +import numpy as np +from typing import Dict, List, Any +from scipy.spatial.distance import euclidean + +class NetworkUtils: + """无需 aux_data,全部现场从节点属性读取""" + """ 角色匹配矩阵暂时没加 """ + # ----------- 通用兜底 ----------- + _DEFAULT = { + "protocol": 0.80, + "format": 0.85, + "security": 0.90, + "role": 0.70, + "area": 0.50, + "org": 0.70, + "area_1": 1, + "area_2": 0.7, + "history": 0.8 + } + + # ----------- 空间 ----------- + @staticmethod + def calculate_distance(pos1, pos2): + return euclidean(pos1, pos2) + + @staticmethod + def calculate_range_match(R_i: float, R_j: float, d_ij: float) -> float: + r_min = min(R_i, R_j) + if d_ij <= r_min: + return 1.0 + return r_min / d_ij if d_ij > 0 else 0.0 + + @staticmethod + def calculate_time_window_overlap(node_i, node_j): + w_i = node_i["temporal"].get("time_window", 24) + w_j = node_j["temporal"].get("time_window", 24) + overlap = min(w_i, w_j) + return overlap / max(w_i, w_j, 1) + + # ----------- 协议兼容性:Jaccard ----------- + @staticmethod + def get_protocol_compatibility(node_i, node_j, _dummy=None): + """节点属性里放 'protocol_list'""" + p_i = set(node_i.get("protocol_list", [])) + p_j = set(node_j.get("protocol_list", [])) + if not p_i or not p_j: + return NetworkUtils._DEFAULT["protocol"] + intersection = len(p_i & p_j) + union = len(p_i | p_j) + return intersection / union if union else NetworkUtils._DEFAULT["protocol"] + + # ----------- 安全等级:1-5 映射 0-1 ----------- + @staticmethod + def get_security_compatibility(node_i, node_j, _dummy=None): + lv_i = node_i.get("security_level", 3) + lv_j = node_j.get("security_level", 3) + gap = abs(lv_i - lv_j) + return max(0, 1 - gap / 5) + + # ----------- 组织隶属:同单位给高分 ----------- + @staticmethod + def get_organization_relation(node_i, node_j, _dummy=None): + unit_i = node_i.get("org_unit", "") + unit_j = node_j.get("org_unit", "") + return 1.0 if unit_i == unit_j and unit_i else NetworkUtils._DEFAULT["org"] + + # ----------- 历史交互:直接读属性 ----------- + @staticmethod + def get_interaction_history(node_i, node_j, _dummy=None): + his_i = node_i.get("history_success", NetworkUtils._DEFAULT["history"]) + # print("111111111111111111111",node_i.get("history_success")) + his_j = node_j.get("history_success", NetworkUtils._DEFAULT["history"]) + return (his_i + his_j) / 2 + + # ----------- 区域关联:同 code 高分 ----------- + @staticmethod + def get_area_relation(node_i, node_j, _dummy=None): + code_i = node_i.get("nation") + code_j = node_j.get("nation") + if code_i == code_j: + return NetworkUtils._DEFAULT["area_1"] + else: + return NetworkUtils._DEFAULT["area_2"] + + # ----------- 接口/角色/格式:若节点属性扩展了再读,否则给默认 ----------- + @staticmethod + def get_role_match(node_i, node_j, _dummy=None): + return node_i.get("role_match", NetworkUtils._DEFAULT["role"]) + + @staticmethod + def get_interface_standard(node_i, node_j, _dummy=None) -> float: + """接口标准兼容性 = Jaccard(i_list, j_list)""" + i_set = set(node_i.get("interface_list", [])) + j_set = set(node_j.get("interface_list", [])) + if not i_set or not j_set: + return NetworkUtils._DEFAULT["protocol"] # 默认0.8 + inter = len(i_set & j_set) + union = len(i_set | j_set) + return inter / union if union else NetworkUtils._DEFAULT["protocol"] + + @staticmethod + def get_format_compatibility(node_i, node_j, _dummy=None) -> float: + """数据格式兼容性 = Jaccard(i_format, j_format)""" + i_set = set(node_i.get("format_list", [])) + j_set = set(node_j.get("format_list", [])) + if not i_set or not j_set: + return NetworkUtils._DEFAULT["format"] # 默认0.85 + inter = len(i_set & j_set) + union = len(i_set | j_set) + return inter / union if union else NetworkUtils._DEFAULT["format"] \ No newline at end of file diff --git a/final/src/__init__.py b/final/src/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/final/src/__pycache__/__init__.cpython-313.pyc b/final/src/__pycache__/__init__.cpython-313.pyc new file mode 100644 index 0000000..dc2ca63 Binary files /dev/null and b/final/src/__pycache__/__init__.cpython-313.pyc differ diff --git a/final/src/__pycache__/attribute_schema.cpython-313.pyc b/final/src/__pycache__/attribute_schema.cpython-313.pyc new file mode 100644 index 0000000..44636fa Binary files /dev/null and b/final/src/__pycache__/attribute_schema.cpython-313.pyc differ diff --git a/final/src/__pycache__/cleaner.cpython-313.pyc b/final/src/__pycache__/cleaner.cpython-313.pyc new file mode 100644 index 0000000..d71aa71 Binary files /dev/null and b/final/src/__pycache__/cleaner.cpython-313.pyc differ diff --git a/final/src/__pycache__/cleaner.cpython-38.pyc b/final/src/__pycache__/cleaner.cpython-38.pyc new file mode 100644 index 0000000..70c758d Binary files /dev/null and b/final/src/__pycache__/cleaner.cpython-38.pyc differ diff --git a/final/src/__pycache__/data_loader.cpython-313.pyc b/final/src/__pycache__/data_loader.cpython-313.pyc new file mode 100644 index 0000000..b201690 Binary files /dev/null and b/final/src/__pycache__/data_loader.cpython-313.pyc differ diff --git a/final/src/__pycache__/data_loader.cpython-38.pyc b/final/src/__pycache__/data_loader.cpython-38.pyc new file mode 100644 index 0000000..98804a7 Binary files /dev/null and b/final/src/__pycache__/data_loader.cpython-38.pyc differ diff --git a/final/src/__pycache__/formalization_pipeline.cpython-313.pyc b/final/src/__pycache__/formalization_pipeline.cpython-313.pyc new file mode 100644 index 0000000..054ddb9 Binary files /dev/null and b/final/src/__pycache__/formalization_pipeline.cpython-313.pyc differ diff --git a/final/src/__pycache__/main_227.cpython-313.pyc b/final/src/__pycache__/main_227.cpython-313.pyc new file mode 100644 index 0000000..9509fb5 Binary files /dev/null and b/final/src/__pycache__/main_227.cpython-313.pyc differ diff --git a/final/src/__pycache__/triplet_cleaner.cpython-313.pyc b/final/src/__pycache__/triplet_cleaner.cpython-313.pyc new file mode 100644 index 0000000..2ec3cb8 Binary files /dev/null and b/final/src/__pycache__/triplet_cleaner.cpython-313.pyc differ diff --git a/final/src/attribute_schema.py b/final/src/attribute_schema.py new file mode 100644 index 0000000..d32bca1 --- /dev/null +++ b/final/src/attribute_schema.py @@ -0,0 +1,701 @@ +# -*- coding: utf-8 -*- +""" +属性规范定义模块 - 基于 1125暂时属性需求 +实现内容与格式的双重对齐:格式校验(结构类型)+ 内容校验(取值范围、类型) +""" + +import math +from typing import Any, Dict, List, Optional, Tuple + +# ============ 目标 Schema 定义(来自 1125暂时属性需求.xlsx) ============ + +# function_vector: 字典,键为功能维度,值为 [0,1] 浮点数 +FUNCTION_VECTOR_KEYS = [ + "f_IC", # 情报收集能力 + "f_IA", # 信息分析能力 + "f_CS", # 协同作战能力 + "f_IT", # 信息传输能力 + "f_DP", # 数据处理能力 + "f_CPS", # 指挥控制能力 + "f_CC", # 综合保障能力 +] + +# spatial: 字典 +SPATIAL_KEYS = { + "position": lambda v: isinstance(v, (list, tuple)) and len(v) >= 2 + and all(isinstance(x, (int, float)) for x in v[:2]), + "effective_radius": lambda v: isinstance(v, (int, float)) and not isinstance(v, bool), +} + +# temporal: 字典 +TEMPORAL_KEYS = { + "response_time": lambda v: isinstance(v, (int, float)) and not isinstance(v, bool), + "cycle_time": lambda v: isinstance(v, (int, float)) and not isinstance(v, bool), + "data_age": lambda v: isinstance(v, (int, float)) and not isinstance(v, bool), + "time_window": lambda v: isinstance(v, (int, float)) and not isinstance(v, bool), +} + +# performance: 字典 +PERFORMANCE_KEYS = { + "core_performance": lambda v: isinstance(v, (int, float)) and not isinstance(v, bool) + and 0 <= float(v) <= 1, + "survivability": lambda v: isinstance(v, (int, float)) and not isinstance(v, bool) + and 0 <= float(v) <= 1, + "mtbf": lambda v: isinstance(v, (int, float)) and not isinstance(v, bool), +} + +# nodes.json 输出字段(完全对齐 xlsx,仅含规范字段 + 节点标识) +# TARGET_ID 为节点唯一标识(三元组 head/tail 引用所需) +OUTPUT_SCHEMA_FIELDS = [ + "TARGET_ID", + "function_vector", + "spatial", + "temporal", + "performance", + "protocol_list", + "format_list", + "interface_list", + "security_level", + "org_unit", + "nation", + "history_success", +] + +# 原始字段 -> 目标 schema 映射(用于 flat 数据转换为规范格式) +RAW_TO_TARGET_MAPPING = { + # function_vector 从多个能力字段推导 + "function_vector": { + "f_IC": ["DETECTION_ACCURACY", "TARGET_RECOGNITION_CAPABILITY"], # 情报收集 + "f_IA": ["INFORMATION_FUSION_CAPABILITY", "DETECTION_ACCURACY"], # 信息分析 + "f_CS": ["MOBILITY", "ENVIRONMENT_ADAPTABILITY"], # 协同作战 + "f_IT": ["ANTI_JAMMING_CAPABILITY"], # 信息传输(抗干扰) + "f_DP": ["PROCESSING_CAPACITY", "INFORMATION_FUSION_CAPABILITY"], # 数据处理 + "f_CPS": ["DECISION_RESPONSE_TIME"], # 指挥控制(响应时间反推) + "f_CC": ["SUPPORT_CAPACITY", "LOAD_CAPACITY"], # 综合保障 + }, + "spatial": { + "position": ["X", "Y"], + "effective_radius": ["COMMUNICATION_RANGE"], + }, + "temporal": { + "response_time": ["DECISION_RESPONSE_TIME"], + "cycle_time": ["REFRESH_RATE"], + "data_age": ["TRANSMISSION_DELAY"], # 传输延迟可近似数据新鲜度 + "time_window": ["REFRESH_RATE"], # 周期倒数近似时间窗口 + }, + "performance": { + "core_performance": ["STRIKE_ACCURACY", "DETECTION_ACCURACY", "MOBILITY"], + "survivability": ["ENVIRONMENT_ADAPTABILITY", "ANTI_JAMMING_CAPABILITY"], + "mtbf": ["RELIABILITY", "SYSTEM_RELIABILITY"], + }, + "nation": ["COUNTRY_REGION"], + "org_unit": ["LEVEL", "ROLE_ID"], + "history_success": [], # 无直接映射,需默认或缺失 +} + + +def _clamp_0_1(val: Any) -> Optional[float]: + """将值限制在 [0,1] 范围内,无效返回 None""" + if val is None or (isinstance(val, float) and (val != val)): + return None + try: + f = float(val) + if f < 0: + return 0.0 + if f > 1: + return 1.0 + return f + except (TypeError, ValueError): + return None + + +def _safe_float(val: Any) -> Optional[float]: + if val is None or (isinstance(val, float) and (val != val)): + return None + try: + return float(val) + except (TypeError, ValueError): + return None + + +def _safe_int(val: Any, lo: int = None, hi: int = None) -> Optional[int]: + if val is None: + return None + try: + i = int(float(val)) + if lo is not None and i < lo: + return lo + if hi is not None and i > hi: + return hi + return i + except (TypeError, ValueError): + return None + + +def _ensure_list_of_strings(val: Any) -> List[str]: + """确保为字符串列表""" + if val is None: + return [] + if isinstance(val, list): + return [str(x).strip() for x in val if x is not None and str(x).strip()] + if isinstance(val, str) and val.strip(): + return [val.strip()] + return [] + + +# ---------- 固定参考值转换(用于 function_vector 中需特殊归一化的维度)---------- +# 参考时间(秒):响应时间 t 越短,f_CPS 越高 +_CPS_REF_TIME = 30.0 +# 处理能力参考上限 +_FDP_REF_CAP = 10000.0 +# 保障/载荷能力参考 +_FCC_REF_SUPPORT = 10000.0 +_FCC_REF_LOAD = 100.0 + + +def _response_time_to_cps(val: Any) -> Optional[float]: + """响应时间(秒) -> f_CPS [0,1],响应越快能力越高""" + f = _safe_float(val) + if f is None or f < 0: + return None + v = 1.0 / (1.0 + f / _CPS_REF_TIME) + return min(1.0, max(0.0, v)) + + +def _processing_to_fdp(raw: dict) -> Optional[float]: + """PROCESSING_CAPACITY 或 INFORMATION_FUSION_CAPABILITY -> f_DP [0,1]""" + pc = raw.get("PROCESSING_CAPACITY") + if pc is not None and (not isinstance(pc, float) or pc == pc): + try: + v = float(pc) + if v < 0: + return 0.0 + norm = math.log10(1 + v) / math.log10(1 + _FDP_REF_CAP) + return min(1.0, norm) + except (TypeError, ValueError): + pass + ifc = raw.get("INFORMATION_FUSION_CAPABILITY") + if ifc is not None and (not isinstance(ifc, float) or ifc == ifc): + return _clamp_0_1(ifc) + return None + + +def _support_load_to_fcc(raw: dict) -> Optional[float]: + """SUPPORT_CAPACITY 与 LOAD_CAPACITY -> f_CC [0,1],支持组合""" + support = raw.get("SUPPORT_CAPACITY") + load = raw.get("LOAD_CAPACITY") + s_norm = None + l_norm = None + if support is not None and (not isinstance(support, float) or support == support): + try: + v = float(support) + if v >= 0: + s_norm = min(1.0, math.log10(1 + v) / math.log10(1 + _FCC_REF_SUPPORT)) + except (TypeError, ValueError): + pass + if load is not None and (not isinstance(load, float) or load == load): + try: + v = float(load) + if v >= 0: + l_norm = min(1.0, v / _FCC_REF_LOAD) + except (TypeError, ValueError): + pass + if s_norm is not None and l_norm is not None: + return round(0.6 * s_norm + 0.4 * l_norm, 4) + if s_norm is not None: + return s_norm + return l_norm + + +# ============ 格式校验 ============ + +def check_format_function_vector(val: Any) -> Tuple[bool, str]: + """校验 function_vector 格式:必须为字典""" + if val is None: + return True, "optional" + if not isinstance(val, dict): + return False, f"期望 dict,实际 {type(val).__name__}" + for k in val: + if not isinstance(k, str): + return False, f"键必须为 str,发现 {type(k).__name__}" + v = val[k] + if not isinstance(v, (int, float)) or isinstance(v, bool): + return False, f"键 {k} 的值应为 [0,1] 浮点数,实际 {type(v).__name__}" + f = float(v) + if f < 0 or f > 1: + return False, f"键 {k} 的值 {f} 超出 [0,1]" + return True, "ok" + + +def check_format_spatial(val: Any) -> Tuple[bool, str]: + """校验 spatial 格式:必须为字典,含 position 与 effective_radius""" + if val is None: + return True, "optional" + if not isinstance(val, dict): + return False, f"期望 dict,实际 {type(val).__name__}" + pos = val.get("position") + if pos is not None: + if not isinstance(pos, (list, tuple)) or len(pos) < 2: + return False, "position 应为 [x, y] 列表" + if not all(isinstance(x, (int, float)) for x in pos[:2]): + return False, "position 元素应为数字" + rad = val.get("effective_radius") + if rad is not None and not isinstance(rad, (int, float)): + return False, "effective_radius 应为数字" + return True, "ok" + + +def check_format_temporal(val: Any) -> Tuple[bool, str]: + """校验 temporal 格式""" + if val is None: + return True, "optional" + if not isinstance(val, dict): + return False, f"期望 dict,实际 {type(val).__name__}" + for k in ["response_time", "cycle_time", "data_age", "time_window"]: + v = val.get(k) + if v is not None and not isinstance(v, (int, float)): + return False, f"{k} 应为数字" + return True, "ok" + + +def check_format_performance(val: Any) -> Tuple[bool, str]: + """校验 performance 格式""" + if val is None: + return True, "optional" + if not isinstance(val, dict): + return False, f"期望 dict,实际 {type(val).__name__}" + for k in ["core_performance", "survivability"]: + v = val.get(k) + if v is not None: + try: + f = float(v) + if f < 0 or f > 1: + return False, f"{k} 应在 [0,1],实际 {f}" + except (TypeError, ValueError): + return False, f"{k} 应为数字" + return True, "ok" + + +def check_format_protocol_list(val: Any) -> Tuple[bool, str]: + if val is None: + return True, "optional" + if not isinstance(val, list): + return False, f"期望 list,实际 {type(val).__name__}" + for i, x in enumerate(val): + if not isinstance(x, str): + return False, f"元素[{i}] 应为 str,实际 {type(x).__name__}" + return True, "ok" + + +def check_format_format_list(val: Any) -> Tuple[bool, str]: + return check_format_protocol_list(val) + + +def check_format_interface_list(val: Any) -> Tuple[bool, str]: + return check_format_protocol_list(val) + + +def check_format_security_level(val: Any) -> Tuple[bool, str]: + if val is None: + return True, "optional" + if not isinstance(val, int) or isinstance(val, bool): + try: + int(val) + except (TypeError, ValueError): + return False, f"期望 int [1,5],实际 {type(val).__name__}" + v = int(val) + if v < 1 or v > 5: + return False, f"security_level 应在 [1,5],实际 {v}" + return True, "ok" + + +def check_format_org_unit(val: Any) -> Tuple[bool, str]: + if val is None: + return True, "optional" + if not isinstance(val, str): + return False, f"期望 str,实际 {type(val).__name__}" + return True, "ok" + + +def check_format_nation(val: Any) -> Tuple[bool, str]: + return check_format_org_unit(val) + + +def check_format_history_success(val: Any) -> Tuple[bool, str]: + if val is None: + return True, "optional" + if not isinstance(val, (int, float)) or isinstance(val, bool): + return False, f"期望 float [0,1],实际 {type(val).__name__}" + f = float(val) + if f < 0 or f > 1: + return False, f"history_success 应在 [0,1],实际 {f}" + return True, "ok" + + +# ============ 内容校验(取值范围、语义) ============ + +def check_content_function_vector(val: dict) -> List[str]: + """内容校验:键是否在规范内,值是否合法""" + issues = [] + if not isinstance(val, dict): + return ["非字典类型"] + for k, v in val.items(): + if k not in FUNCTION_VECTOR_KEYS: + issues.append(f"未知键: {k}") + else: + try: + f = float(v) + if f < 0 or f > 1: + issues.append(f"{k}={f} 超出 [0,1]") + except (TypeError, ValueError): + issues.append(f"{k} 值非数字: {v}") + return issues + + +def check_content_spatial(val: dict) -> List[str]: + issues = [] + if not isinstance(val, dict): + return ["非字典类型"] + pos = val.get("position") + if pos is not None and len(pos) >= 2: + if not all(isinstance(x, (int, float)) for x in pos[:2]): + issues.append("position 含非数字") + rad = val.get("effective_radius") + if rad is not None: + try: + f = float(rad) + if f < 0: + issues.append("effective_radius 不应为负") + except (TypeError, ValueError): + issues.append("effective_radius 非数字") + return issues + + +def check_content_temporal(val: dict) -> List[str]: + issues = [] + if not isinstance(val, dict): + return ["非字典类型"] + for k in ["response_time", "cycle_time", "data_age", "time_window"]: + v = val.get(k) + if v is not None: + try: + f = float(v) + if f < 0: + issues.append(f"{k} 不应为负: {f}") + except (TypeError, ValueError): + issues.append(f"{k} 非数字: {v}") + return issues + + +def check_content_performance(val: dict) -> List[str]: + issues = [] + if not isinstance(val, dict): + return ["非字典类型"] + for k in ["core_performance", "survivability"]: + v = val.get(k) + if v is not None: + try: + f = float(v) + if f < 0 or f > 1: + issues.append(f"{k} 超出 [0,1]: {f}") + except (TypeError, ValueError): + issues.append(f"{k} 非数字: {v}") + mtbf = val.get("mtbf") + if mtbf is not None: + try: + f = float(mtbf) + if f < 0: + issues.append("mtbf 不应为负") + except (TypeError, ValueError): + issues.append("mtbf 非数字") + return issues + + +# ============ 统一校验入口 ============ + +FORMAT_CHECKERS = { + "function_vector": check_format_function_vector, + "spatial": check_format_spatial, + "temporal": check_format_temporal, + "performance": check_format_performance, + "protocol_list": check_format_protocol_list, + "format_list": check_format_format_list, + "interface_list": check_format_interface_list, + "security_level": check_format_security_level, + "org_unit": check_format_org_unit, + "nation": check_format_nation, + "history_success": check_format_history_success, +} + +CONTENT_CHECKERS = { + "function_vector": check_content_function_vector, + "spatial": check_content_spatial, + "temporal": check_content_temporal, + "performance": check_content_performance, +} + + +def validate_record( + record: dict, + target_schema_fields: Optional[List[str]] = None, +) -> Dict[str, Any]: + """ + 对单条记录进行格式与内容双重校验。 + 若 record 已包含目标 schema 字段,则直接校验; + 否则会先通过 raw_to_target_schema 转换后再校验。 + """ + target_fields = target_schema_fields or list(FORMAT_CHECKERS.keys()) + result = { + "format_errors": {}, + "content_errors": {}, + "aligned": False, + "transformed": False, + } + + # 若缺少目标字段,尝试从原始字段转换 + has_target = any(f in record for f in target_fields) + data = record + if not has_target: + data = raw_to_target_schema(record) + result["transformed"] = True + + # 格式校验 + for field in target_fields: + val = data.get(field) + if val is None and field in ["protocol_list", "format_list", "interface_list"]: + val = [] + checker = FORMAT_CHECKERS.get(field) + if checker: + ok, msg = checker(val) + else: + ok, msg = True, "no_checker" + if not ok: + result["format_errors"][field] = msg + + # 内容校验(仅对复杂类型) + for field in CONTENT_CHECKERS: + val = data.get(field) + if val is None: + continue + issues = CONTENT_CHECKERS[field](val) + if issues: + result["content_errors"][field] = issues + + result["aligned"] = ( + len(result["format_errors"]) == 0 and len(result["content_errors"]) == 0 + ) + return result + + +# ============ 原始数据 -> 目标 Schema 转换 ============ + +def _get_first_valid(row: dict, keys: List[str], cast=_clamp_0_1) -> Optional[Any]: + """从 row 中按 keys 顺序取第一个非空值并转换""" + for k in keys: + v = row.get(k) + if v is not None and (not isinstance(v, float) or v == v): + return cast(v) if cast else v + return None + + +def raw_to_target_schema(raw: dict) -> dict: + """ + 将扁平原始记录转换为符合 1125 属性规范的目标结构。 + 仅输出 xlsx 定义字段,不保留任何原始其他字段。 + """ + # TARGET_ID:节点唯一标识 + tid = raw.get("TARGET_ID") + tid = str(tid).strip() if tid is not None and str(tid).strip() else None + + out: Dict[str, Any] = {f: None for f in OUTPUT_SCHEMA_FIELDS} + out["TARGET_ID"] = tid + + # function_vector(f_CPS/f_DP/f_CC 使用固定参考值转换,其余用 _clamp_0_1) + fv = {} + _fv_mapping = RAW_TO_TARGET_MAPPING["function_vector"] + for fk, raw_keys in _fv_mapping.items(): + if fk == "f_CPS": + t = raw.get("DECISION_RESPONSE_TIME") + val = _response_time_to_cps(t) + elif fk == "f_DP": + val = _processing_to_fdp(raw) + elif fk == "f_CC": + val = _support_load_to_fcc(raw) + else: + val = _get_first_valid(raw, raw_keys, _clamp_0_1) + if val is not None: + fv[fk] = round(val, 4) + # 下游 f_relation1125/f_net1125 要求必为 dict,无推导值时用默认(避免 NoneType) + if not fv: + fv = {fk: 0.5 for fk in FUNCTION_VECTOR_KEYS} + out["function_vector"] = fv + + # spatial(支持 X/x、Y/y、position、POSITION_X/Y、LONGITUDE/LATITUDE;确保元素恒为 float) + def _safe_coord(v: Any) -> float: + if v is None or (isinstance(v, float) and v != v): + return 0.0 + try: + return round(float(v), 2) + except (TypeError, ValueError): + return 0.0 + + pos_raw = raw.get("position") or raw.get("POSITION") + if isinstance(pos_raw, (list, tuple)) and len(pos_raw) >= 2: + x, y = _safe_coord(pos_raw[0]), _safe_coord(pos_raw[1]) + else: + x = raw.get("X") or raw.get("x") or raw.get("POSITION_X") or raw.get("LONGITUDE") + y = raw.get("Y") or raw.get("y") or raw.get("POSITION_Y") or raw.get("LATITUDE") + x, y = _safe_coord(x), _safe_coord(y) + pos = [x, y] + radius = _get_first_valid(raw, RAW_TO_TARGET_MAPPING["spatial"]["effective_radius"], _safe_float) + sp = { + "position": pos, + "effective_radius": round(float(radius), 4) if radius is not None else 1.0, + } + out["spatial"] = sp + + # temporal + _temporal_defaults = {"response_time": 1.0, "cycle_time": 1.0, "data_age": 1.0, "time_window": 24.0} + temporal = {} + for tk, rks in RAW_TO_TARGET_MAPPING["temporal"].items(): + v = _get_first_valid(raw, rks, _safe_float) + if v is not None: + temporal[tk] = round(float(v), 4) + for k, default in _temporal_defaults.items(): + temporal.setdefault(k, default) + out["temporal"] = temporal + + # performance + _perf_defaults = {"core_performance": 0.5, "survivability": 0.5, "mtbf": 1.0} + perf = {} + for pk, rks in RAW_TO_TARGET_MAPPING["performance"].items(): + cast = _clamp_0_1 if pk in ["core_performance", "survivability"] else _safe_float + v = _get_first_valid(raw, rks, cast) + if v is not None: + perf[pk] = round(float(v), 4) + for k, default in _perf_defaults.items(): + perf.setdefault(k, default) + out["performance"] = perf + + # protocol_list, format_list, interface_list + for field in ["protocol_list", "format_list", "interface_list"]: + raw_key = field.upper().replace("_LIST", "") + out[field] = _ensure_list_of_strings(raw.get(raw_key, raw.get(field))) + + # security_level:下游 utils.get_security_compatibility 会做 lv_i - lv_j,不可为 None + sl = raw.get("security_level") or raw.get("SECURITY_LEVEL") + out["security_level"] = _safe_int(sl, 1, 5) if sl is not None else 3 + + # org_unit, nation + nation = _get_first_valid(raw, RAW_TO_TARGET_MAPPING["nation"], lambda v: str(v).strip() if v is not None else None) + out["nation"] = nation + org = _get_first_valid(raw, RAW_TO_TARGET_MAPPING["org_unit"], lambda v: str(v).strip() if v is not None else None) + out["org_unit"] = org + + # history_success:下游 utils.get_interaction_history 会做 (his_i + his_j)/2,不可为 None + hs = raw.get("history_success") or raw.get("HISTORY_SUCCESS") + if hs is not None: + v = _clamp_0_1(hs) + out["history_success"] = round(v, 4) if v is not None else 0.8 + else: + out["history_success"] = 0.8 + + return out + + +def align_and_validate_records( + records: List[dict], + id_key: str = "TARGET_ID", +) -> Tuple[List[dict], dict]: + """ + 对记录列表进行转换、格式与内容校验。 + 返回:(对齐后的记录列表, 统计报告) + """ + aligned = [] + report = { + "total": len(records), + "format_errors_by_field": {}, + "content_errors_by_field": {}, + "records_with_errors": 0, + "aligned_count": 0, + "transformed_count": 0, + "samples": [], + } + + for rec in records: + rid = rec.get(id_key, "?") + val_result = validate_record(rec) + aligned_rec = raw_to_target_schema(rec) + aligned.append(aligned_rec) + + if val_result["transformed"]: + report["transformed_count"] += 1 + if val_result["aligned"]: + report["aligned_count"] += 1 + else: + report["records_with_errors"] += 1 + for f, msg in val_result["format_errors"].items(): + report["format_errors_by_field"].setdefault(f, 0) + report["format_errors_by_field"][f] += 1 + for f, issues in val_result["content_errors"].items(): + report["content_errors_by_field"].setdefault(f, 0) + report["content_errors_by_field"][f] += 1 + if len(report["samples"]) < 5: + report["samples"].append({ + "id": rid, + "format_errors": val_result["format_errors"], + "content_errors": val_result["content_errors"], + }) + + return aligned, report + + +def sanitize_node_for_relation_calc(node: dict) -> dict: + """ + 写入 nodes.json 前对节点做最终净化,确保 f_relation1125/utils 中参与运算的字段无 None。 + 避免 euclidean、get_security_compatibility、get_interaction_history 等出现 NoneType 运算错误。 + """ + import copy + n = copy.deepcopy(node) + + def _safe_float(v: Any, default: float) -> float: + if v is None or (isinstance(v, float) and v != v): + return default + try: + return float(v) + except (TypeError, ValueError): + return default + + # spatial.position 必须为 [float, float] + sp = n.get("spatial") + if not isinstance(sp, dict): + sp = {} + pos = sp.get("position") + if not isinstance(pos, (list, tuple)) or len(pos) < 2: + pos = [0.0, 0.0] + else: + pos = [_safe_float(pos[0], 0.0), _safe_float(pos[1], 0.0)] + sp["position"] = pos + sp["effective_radius"] = _safe_float(sp.get("effective_radius"), 1.0) + n["spatial"] = sp + + # temporal 参与 time_window_overlap + tmp = n.get("temporal") + if not isinstance(tmp, dict): + tmp = {} + for k in ["response_time", "cycle_time", "data_age", "time_window"]: + if tmp.get(k) is None: + tmp[k] = 24.0 if k == "time_window" else 1.0 + n["temporal"] = tmp + + # security_level、history_success 参与 utils 运算 + sl = n.get("security_level") + n["security_level"] = int(_safe_float(sl, 3)) if sl is not None else 3 + if n["security_level"] < 1 or n["security_level"] > 5: + n["security_level"] = 3 + + hs = n.get("history_success") + n["history_success"] = _safe_float(hs, 0.8) + n["history_success"] = max(0.0, min(1.0, n["history_success"])) + + return n diff --git a/src/cleaner.py b/final/src/cleaner.py similarity index 70% rename from src/cleaner.py rename to final/src/cleaner.py index ad0d553..bd7867d 100644 --- a/src/cleaner.py +++ b/final/src/cleaner.py @@ -2,6 +2,10 @@ import json import numpy as np import pandas as pd from datetime import datetime +try: + from .attribute_schema import align_and_validate_records, sanitize_node_for_relation_calc +except ImportError: + from attribute_schema import align_and_validate_records, sanitize_node_for_relation_calc def _json_serializer(obj): @@ -45,7 +49,16 @@ class AdvancedDataCleaner: "fields_processed": ["COMMUNICATION_RANGE"], "total_smoothed": 0 }, - "standardization": [] + "standardization": [], + "attribute_alignment": { # 内容与格式双重对齐(基于 1125 属性需求) + "enabled": True, + "format_errors_by_field": {}, + "content_errors_by_field": {}, + "records_with_errors": 0, + "aligned_count": 0, + "transformed_count": 0, + "samples": [] + } } } @@ -141,6 +154,22 @@ class AdvancedDataCleaner: self.df["COMMUNICATION_RANGE"] = np.round(smoothed, 2) self.report["details"]["noise_reduction"]["total_smoothed"] = len(vals) + def align_attribute_schema(self): + """内容与格式双重对齐:按 1125 属性需求转换并校验""" + if self.df is None or len(self.df) == 0: + return + records = self.df.to_dict('records') + aligned, align_report = align_and_validate_records(records, id_key="TARGET_ID") + self.df = pd.DataFrame(aligned) + self.report["details"]["attribute_alignment"].update({ + "format_errors_by_field": align_report.get("format_errors_by_field", {}), + "content_errors_by_field": align_report.get("content_errors_by_field", {}), + "records_with_errors": align_report.get("records_with_errors", 0), + "aligned_count": align_report.get("aligned_count", 0), + "transformed_count": align_report.get("transformed_count", 0), + "samples": align_report.get("samples", []), + }) + def run(self): print("正在执行高级清洗...") self.load_data() @@ -148,18 +177,39 @@ class AdvancedDataCleaner: self.handle_missing_values() self.correct_outliers() self.apply_kalman_filter() - + self.align_attribute_schema() + # 最终统计 self.report["summary"]["final_records"] = len(self.df) self.report["details"]["standardization"].append("Coordinates normalized to 2 decimal places") self.report["details"]["standardization"].append("Timestamps formatted to ISO-8601") + self.report["details"]["standardization"].append("Attributes aligned to 1125 schema (format + content)") # 保存数据(确保输出目录存在) import os output_dir = os.path.dirname(self.output_file) if output_dir: os.makedirs(output_dir, exist_ok=True) - result_data = self.df.to_dict('records') + records = self.df.to_dict('records') + # 输出格式兼容 main_227 / f_relation1125:{nodes: {TARGET_ID: obj}, global_params: {mtbf_max}} + nodes_dict = {} + mtbf_values = [] + id_col = 'TARGET_ID' + for r in records: + nid = r.get(id_col) + if nid is not None: + nid = str(nid).strip() + if nid: + nodes_dict[nid] = sanitize_node_for_relation_calc(r) + perf = r.get('performance') if isinstance(r.get('performance'), dict) else {} + mtbf = perf.get('mtbf') + if mtbf is not None and (isinstance(mtbf, (int, float)) and not (isinstance(mtbf, float) and mtbf != mtbf)): + mtbf_values.append(float(mtbf)) + mtbf_max = max(mtbf_values, default=1.0) if mtbf_values else 1.0 + result_data = { + "nodes": nodes_dict, + "global_params": {"mtbf_max": round(mtbf_max, 6)}, + } with open(self.output_file, 'w', encoding='utf-8') as f: json.dump(result_data, f, ensure_ascii=False, indent=2, default=_json_serializer) @@ -172,6 +222,25 @@ class AdvancedDataCleaner: print(f"完成!报告已生成至 {self.report_file}") + def get_valid_target_ids(self) -> set: + """返回清洗后的有效 TARGET_ID 集合(用于三元组 filter_orphans)""" + if self.df is None or 'TARGET_ID' not in self.df.columns: + return set() + return set(self.df['TARGET_ID'].dropna().astype(str).str.strip().unique()) + + def get_id_to_role(self) -> dict: + """返回 TARGET_ID -> ROLE_ID 映射(用于三元组 head_type/tail_type)""" + if hasattr(self, '_id_to_role'): + return self._id_to_role + if self.df is None or 'TARGET_ID' not in self.df.columns or 'ROLE_ID' not in self.df.columns: + return {} + return dict( + zip( + self.df['TARGET_ID'].dropna().astype(str).str.strip(), + self.df['ROLE_ID'].fillna('').astype(str).str.strip(), + ) + ) + def load_config(project_root: str) -> dict: """加载 config/config.json 或 config.yaml(json 优先,便于部署时只改 json)""" import os @@ -192,7 +261,7 @@ def load_config(project_root: str) -> dict: 'source': 'json', 'json': { 'input_file': 'data/raw_data_sample.json', - 'output_file': 'data/cleaned_data_final.json', + 'output_file': 'data/nodes.json', 'report_file': 'report/detailed_cleaning_report.json', }, } diff --git a/final/src/data_loader.py b/final/src/data_loader.py new file mode 100644 index 0000000..13cff42 --- /dev/null +++ b/final/src/data_loader.py @@ -0,0 +1,614 @@ +""" +数据加载模块:支持从 JSON 文件或达梦数据库读取数据 +开发阶段使用 JSON,生产环境切换到达梦时只需修改 config 中的 source +""" +import json +import os +import uuid +from typing import Any, Dict, List, Optional, Tuple + +try: + from attribute_schema import FUNCTION_VECTOR_KEYS, raw_to_target_schema +except ImportError: + from src.attribute_schema import FUNCTION_VECTOR_KEYS, raw_to_target_schema + + +def load_from_json(file_path: str, project_root: str = None) -> list: + """从 JSON 文件加载数据""" + path = file_path + if project_root and not os.path.isabs(file_path): + path = os.path.join(project_root, file_path) + with open(path, 'r', encoding='utf-8') as f: + return json.load(f) + + +def _dm_connect(config: dict): + """创建达梦连接,返回 (conn, db_cfg)。需环境变量 DM_PASS。""" + try: + import dmPython + except ImportError as e: + raise RuntimeError( + "达梦数据库模式需要安装 dmPython。\n" + "请执行: pip install dmPython\n" + "并在有达梦客户端的环境运行(需配置 DM_HOME/LD_LIBRARY_PATH)" + ) from e + + db_cfg = config.get('db', {}) + host = os.getenv('DM_HOST', db_cfg.get('host', '127.0.0.1')) + port = int(os.getenv('DM_PORT', str(db_cfg.get('port', 9080)))) + user = os.getenv('DM_USER', db_cfg.get('user', 'SYSDBA')) + password = os.getenv('DM_PASS') + if not password: + raise ValueError( + "达梦模式需要设置环境变量 DM_PASS。\n" + "示例: export DM_PASS=你的密码" + ) + + conn = dmPython.connect( + user=user, + password=password, + server=host, + port=port, + schema=db_cfg.get('schema', 'SYSDBA'), + ) + return conn, db_cfg + + +def load_from_dm(config: dict, project_root: str = None) -> list: + """ + 从达梦数据库加载数据 + 需要安装 dmPython 及达梦客户端库,仅在 source=db 时调用 + """ + conn, db_cfg = _dm_connect(config) + + try: + cursor = conn.cursor() + query = (db_cfg.get('query') or '').strip() + table = db_cfg.get('table') + if query: + cursor.execute(query) + elif table: + schema = db_cfg.get('schema', 'SYSDBA') + cursor.execute(f'SELECT * FROM "{schema}"."{table}"') + else: + raise ValueError( + "达梦模式需配置 db.query(自定义 SQL)或 db.table。\n" + "当前达梦为规范化表,需通过 query 编写 JOIN 得到扁平化数据。" + ) + columns = [desc[0] for desc in cursor.description] + rows = cursor.fetchall() + cursor.close() + return [dict(zip(columns, row)) for row in rows] + finally: + conn.close() + + +def load_data(config: dict, project_root: str) -> Tuple[list, dict]: + """ + 根据配置加载数据,返回 (数据列表, 路径配置) + """ + source = config.get('source', 'json') + project_root = project_root or os.getcwd() + + if source == 'json': + json_cfg = config.get('json', {}) + data = load_from_json(json_cfg.get('input_file', 'data/raw_data_sample.json'), project_root) + paths = { + 'output': _resolve_path(json_cfg.get('output_file', 'data/nodes.json'), project_root), + 'report': _resolve_path(json_cfg.get('report_file', 'report/detailed_cleaning_report.json'), project_root), + } + return data, paths + elif source == 'db': + data = load_from_dm(config, project_root) + json_cfg = config.get('json', {}) + paths = { + 'output': _resolve_path(json_cfg.get('output_file', 'data/nodes.json'), project_root), + 'report': _resolve_path(json_cfg.get('report_file', 'report/detailed_cleaning_report.json'), project_root), + } + return data, paths + else: + raise ValueError(f"不支持的 source 类型: {source},应为 json 或 db") + + +def load_triplets_from_dm(config: dict, project_root: str = None) -> list: + """ + 从达梦数据库读取三元组数据(RELATION_INSTANCE 表) + 返回格式: [{"HEAD_ID": x, "RELATION_TYPE": y, "TAIL_ID": z, ...}, ...] + """ + conn, db_cfg = _dm_connect(config) + + try: + cursor = conn.cursor() + schema = db_cfg.get('schema', 'SYSDBA') + triplet_table = db_cfg.get('triplet_table', 'RELATION_INSTANCE') + query = db_cfg.get('triplet_query') + if query and query.strip(): + cursor.execute(query.strip()) + else: + cursor.execute(f'SELECT * FROM "{schema}"."{triplet_table}"') + columns = [desc[0] for desc in cursor.description] + rows = cursor.fetchall() + cursor.close() + return [dict(zip(columns, row)) for row in rows] + finally: + conn.close() + + +def _ci_key_map(d: dict) -> Dict[str, str]: + return {str(k).upper(): k for k in d.keys()} + + +def _get_ci(d: dict, key: str) -> Any: + k = _ci_key_map(d).get(str(key).upper()) + return d.get(k) if k else None + + +def _set_ci(d: dict, key: str, value: Any) -> None: + um = _ci_key_map(d) + k = um.get(str(key).upper()) + if k is None: + d[key] = value + else: + d[k] = value + + +def _table_columns(cursor, schema: str, table: str) -> List[str]: + cursor.execute(f'SELECT * FROM "{schema}"."{table}" WHERE 1=0') + return [desc[0] for desc in cursor.description] + + +def _serialize_metric_value(val: Any) -> str: + if val is None: + return "" + if isinstance(val, (dict, list)): + return json.dumps(val, ensure_ascii=False) + return str(val) + + +def _value_from_aligned_node(node: dict, attr: str) -> Any: + """从 raw_to_target_schema 输出中取 required_attrs 对应值。""" + if attr in FUNCTION_VECTOR_KEYS: + return (node.get("function_vector") or {}).get(attr) + if attr in ("position", "effective_radius"): + return (node.get("spatial") or {}).get(attr) + if attr in ("response_time", "cycle_time", "data_age", "time_window"): + return (node.get("temporal") or {}).get(attr) + if attr in ("core_performance", "survivability", "mtbf"): + return (node.get("performance") or {}).get(attr) + if attr in ("protocol_list", "format_list", "interface_list"): + return node.get(attr) + if attr in ("security_level", "org_unit", "nation", "history_success"): + return node.get(attr) + return None + + +def _fetch_reasoned_triples(cursor, config: dict, formal: dict) -> List[dict]: + db_cfg = config.get("db", {}) + schema = db_cfg.get("schema", "SYSDBA") + user_id = formal.get("user_id", "ADMIN") + task_id = formal.get("task_id", "TASK_FULL_KB") + source_sys_type = formal.get("source_sys_type", "关系推理后的体系") + raw_query = (formal.get("source_query") or "").strip() + if raw_query: + cursor.execute(raw_query) + else: + table = formal.get("triplet_table") or db_cfg.get("triplet_table", "RELATION_INSTANCE") + uc = formal.get("user_column", "USER_ID") + tc = formal.get("task_column", "TASK_ID") + sc = formal.get("sys_type_column", "SYS_TYPE") + sql = ( + f'SELECT * FROM "{schema}"."{table}" ' + f'WHERE "{uc}" = ? AND "{tc}" = ? AND "{sc}" = ?' + ) + cursor.execute(sql, [user_id, task_id, source_sys_type]) + columns = [desc[0] for desc in cursor.description] + rows = cursor.fetchall() + return [dict(zip(columns, row)) for row in rows] + + +def _validate_source_sys_type(rows: List[dict], formal: dict) -> Optional[str]: + """若存在与 source_sys_type 不一致的 SYS_TYPE,返回错误信息(硬失败)。""" + if formal.get("skip_sys_type_validation"): + return None + sc = formal.get("sys_type_column", "SYS_TYPE") + expected = formal.get("source_sys_type", "关系推理后的体系") + if not rows: + return None + vals = [_get_ci(r, sc) for r in rows] + if all(v is None for v in vals): + # 结果集中无 SYS_TYPE 列(例如仅用 source_query 投影),由 SQL 保证类型 + return None + bad_indices = [] + for i, v in enumerate(vals): + if v is None or str(v).strip() != str(expected).strip(): + bad_indices.append(i) + if bad_indices: + return f"sys_type_mismatch: expected={expected!r}, bad_row_indices={bad_indices[:20]}" + return None + + +def _entity_ids_from_triples(triples: List[dict]) -> List[str]: + ids = set() + for t in triples: + h = _get_ci(t, "HEAD_ID") or t.get("head") + tail = _get_ci(t, "TAIL_ID") or t.get("tail") + if h is not None and str(h).strip(): + ids.add(str(h).strip()) + if tail is not None and str(tail).strip(): + ids.add(str(tail).strip()) + return sorted(ids) + + +def _load_objectives_by_target( + cursor, schema: str, table: str, entity_col: str, target_ids: List[str], +) -> Dict[str, dict]: + if not target_ids: + return {} + cols = _table_columns(cursor, schema, table) + ec = None + for c in cols: + if c.upper() == entity_col.upper(): + ec = c + break + if not ec: + return {} + placeholders = ",".join(["?"] * len(target_ids)) + sql = f'SELECT * FROM "{schema}"."{table}" WHERE "{ec}" IN ({placeholders})' + cursor.execute(sql, target_ids) + out = {} + row_cols = [desc[0] for desc in cursor.description] + for row in cursor.fetchall(): + d = dict(zip(row_cols, row)) + tid = _get_ci(d, entity_col) + if tid is not None: + out[str(tid).strip()] = d + return out + + +def _load_existing_metric_keys( + cursor, schema: str, attr_table: str, entity_col: str, + metric_col: str, target_ids: List[str], +) -> Dict[str, set]: + """target_id -> set(METRIC_ID) 已有记录。""" + if not target_ids: + return {} + tcols = _table_columns(cursor, schema, attr_table) + ec = next((c for c in tcols if c.upper() == entity_col.upper()), None) + mc = next((c for c in tcols if c.upper() == metric_col.upper()), None) + if not ec or not mc: + return {} + placeholders = ",".join(["?"] * len(target_ids)) + sql = ( + f'SELECT "{ec}", "{mc}" FROM "{schema}"."{attr_table}" ' + f'WHERE "{ec}" IN ({placeholders})' + ) + cursor.execute(sql, target_ids) + out: Dict[str, set] = {} + for row in cursor.fetchall(): + tid, mid = row[0], row[1] + if tid is None or mid is None: + continue + tid_s = str(tid).strip() + out.setdefault(tid_s, set()).add(str(mid).strip()) + return out + + +def _insert_generated_metrics( + cursor, + schema: str, + attr_table: str, + table_cols: List[str], + entity_col: str, + metric_col: str, + value_col: str, + target_id: str, + metric_id: str, + value_str: str, + static_extra: Optional[dict], +) -> bool: + """插入一条指标行;仅写入表中存在的列。未写入任何列时返回 False。""" + um = {c.upper(): c for c in table_cols} + row: Dict[str, Any] = {} + if entity_col.upper() in um: + row[um[entity_col.upper()]] = target_id + if metric_col.upper() in um: + row[um[metric_col.upper()]] = metric_id + if value_col.upper() in um: + row[um[value_col.upper()]] = value_str + if static_extra: + for k, v in static_extra.items(): + ku = str(k).upper() + if ku in um: + row[um[ku]] = v + cols = list(row.keys()) + if entity_col.upper() not in um or metric_col.upper() not in um: + return False + if not cols: + return False + quoted = ",".join(f'"{c}"' for c in cols) + ph = ",".join(["?"] * len(cols)) + sql = f'INSERT INTO "{schema}"."{attr_table}" ({quoted}) VALUES ({ph})' + cursor.execute(sql, [row[c] for c in cols]) + return True + + +def _build_formal_triple_rows( + source_rows: List[dict], + formal: dict, + batch_id: str, + result_table_cols: List[str], +) -> Tuple[List[dict], int]: + """复制源行,写入 target_sys_type 与 batch_id;丢弃无效核字段。""" + sys_col = formal.get("sys_type_column", "SYS_TYPE") + target_sys = formal.get("target_sys_type", "形式化后的体系") + pk = formal.get("triplet_primary_key") or formal.get("triplet_pk") + omit_pk = formal.get("triplet_omit_primary_key_on_insert", True) + batch_col = formal.get("triple_batch_column", "BATCH_ID") + colset_upper = {c.upper() for c in result_table_cols} + out_rows = [] + skipped = 0 + for r in source_rows: + h = _get_ci(r, "HEAD_ID") or r.get("head") + tail = _get_ci(r, "TAIL_ID") or r.get("tail") + rel = _get_ci(r, "RELATION_TYPE") or r.get("relation") + if not h or not tail or not rel: + skipped += 1 + continue + new_r = dict(r) + _set_ci(new_r, sys_col, target_sys) + if batch_col.upper() in colset_upper: + _set_ci(new_r, batch_col, batch_id) + if omit_pk and pk: + kmap = _ci_key_map(new_r) + pk_actual = kmap.get(str(pk).upper()) + if pk_actual and pk_actual in new_r: + del new_r[pk_actual] + filtered = {} + for k, v in new_r.items(): + if k in result_table_cols: + filtered[k] = v + out_rows.append(filtered) + return out_rows, skipped + + +def _insert_rows_executemany( + cursor, schema: str, table: str, rows: List[dict], +) -> int: + if not rows: + return 0 + all_keys = [] + for r in rows: + for k in r: + if k not in all_keys: + all_keys.append(k) + quoted = ",".join(f'"{k}"' for k in all_keys) + ph = ",".join(["?"] * len(all_keys)) + sql = f'INSERT INTO "{schema}"."{table}" ({quoted}) VALUES ({ph})' + params = [tuple(r.get(k) for k in all_keys) for r in rows] + cursor.executemany(sql, params) + return len(rows) + + +def _insert_res_formal_analysis( + cursor, + schema: str, + analysis_table: str, + batch_id: str, + formal: dict, + stats: dict, + detail_obj: dict, +) -> bool: + cols = _table_columns(cursor, schema, analysis_table) + cu = {c.upper(): c for c in cols} + row: Dict[str, Any] = {} + mapping = [ + ("BATCH_ID", batch_id), + ("USER_ID", formal.get("user_id", "ADMIN")), + ("TASK_ID", formal.get("task_id", "TASK_FULL_KB")), + ("SOURCE_SYS_TYPE", formal.get("source_sys_type", "")), + ("TARGET_SYS_TYPE", formal.get("target_sys_type", "")), + ] + for key, val in mapping: + if key in cu: + row[cu[key]] = val + detail_json = json.dumps(detail_obj, ensure_ascii=False) + detail_candidates = ( + "DETAIL_JSON", + "DETAIL", + "ANALYSIS_JSON", + "CONTENT", + "RULE_DETAIL", + "STATS_JSON", + "RES_FORMAL_ANALYSIS", + ) + detail_key_col = None + for cand in detail_candidates: + if cand in cu: + detail_key_col = cu[cand] + break + if not detail_key_col: + for c in cols: + u = c.upper() + if any( + token in u + for token in ( + "DETAIL", + "JSON", + "CONTENT", + "RULE", + "TEXT", + "MEMO", + "DESC", + "REMARK", + "INFO", + "ANALYSIS", + ) + ): + detail_key_col = c + break + if detail_key_col: + row[detail_key_col] = detail_json + static = formal.get("analysis_static_columns") or formal.get("analysis_static") or {} + for k, v in static.items(): + if str(k).upper() in cu: + row[cu[str(k).upper()]] = v + insert_cols = formal.get("analysis_insert_columns") + if insert_cols: + use_cols = [c for c in insert_cols if c in cols] + if not use_cols: + return False + vals = [row.get(c) for c in use_cols] + ph = ",".join(["?"] * len(use_cols)) + qc = ",".join(f'"{c}"' for c in use_cols) + sql = f'INSERT INTO "{schema}"."{analysis_table}" ({qc}) VALUES ({ph})' + cursor.execute(sql, vals) + return True + if not row: + return False + quoted = ",".join(f'"{c}"' for c in row.keys()) + ph = ",".join(["?"] * len(row)) + sql = f'INSERT INTO "{schema}"."{analysis_table}" ({quoted}) VALUES ({ph})' + cursor.execute(sql, list(row.values())) + return True + + +def run_formalization_pipeline(config: dict) -> dict: + """ + 模块 1.3:读取「关系推理后的体系」三元组,补齐实体属性并写回, + 将形式化结果作为新记录写入 formal_result_table,并写入 RES_FORMAL_ANALYSIS。 + 需在 config 中 formal.enabled=true 且 source=db;达梦密码 DM_PASS。 + """ + formal = config.get("formal") or {} + if not formal.get("enabled", False): + return {"ok": False, "reason": "formal.disabled", "batch_id": None, "stats": {}} + if config.get("source", "json") != "db": + return {"ok": False, "reason": "source_not_db", "batch_id": None, "stats": {}} + + batch_id = str(uuid.uuid4()) + stats: Dict[str, Any] = { + "total_triples": 0, + "inserted_formal_count": 0, + "generated_attrs_count": 0, + "skipped_triples": 0, + "analysis_written": False, + } + + conn = None + try: + conn, db_cfg = _dm_connect(config) + except (RuntimeError, ValueError) as e: + return {"ok": False, "reason": str(e), "batch_id": None, "stats": stats} + + schema = db_cfg.get("schema", "SYSDBA") + user_id = formal.get("user_id", "ADMIN") + task_id = formal.get("task_id", "TASK_FULL_KB") + source_sys_type = formal.get("source_sys_type", "关系推理后的体系") + target_sys_type = formal.get("target_sys_type", "形式化后的体系") + attr_table = formal.get("attribute_table", "METRIC_VALUE_INSTANCE") + result_table = formal.get("formal_result_table", "RELATION_INSTANCE") + analysis_table = formal.get("analysis_table", "RES_FORMAL_ANALYSIS") + entity_col = formal.get("entity_id_column", "TARGET_ID") + metric_col = formal.get("metric_id_column", "METRIC_ID") + value_col = formal.get("metric_value_column", "METRIC_VALUE") + objective_table = formal.get("objective_table") or db_cfg.get("table", "OBJECTIVE_INSTANCE") + required_attrs: List[str] = list(formal.get("required_attrs") or []) + + try: + if hasattr(conn, "autocommit"): + conn.autocommit = False + cursor = conn.cursor() + + triples = _fetch_reasoned_triples(cursor, config, formal) + stats["total_triples"] = len(triples) + err = _validate_source_sys_type(triples, formal) + if err: + conn.rollback() + return {"ok": False, "reason": err, "batch_id": batch_id, "stats": stats} + + eids = _entity_ids_from_triples(triples) + objectives = _load_objectives_by_target( + cursor, schema, objective_table, entity_col, eids, + ) + existing_metrics = _load_existing_metric_keys( + cursor, schema, attr_table, entity_col, metric_col, eids, + ) + mvi_cols = _table_columns(cursor, schema, attr_table) + static_metric = formal.get("metric_insert_static") or {} + + for tid in eids: + raw = dict(objectives.get(tid, {})) + raw["TARGET_ID"] = tid + aligned = raw_to_target_schema(raw) + have = existing_metrics.get(tid, set()) + for attr in required_attrs: + if attr in have: + continue + val = _value_from_aligned_node(aligned, attr) + vstr = _serialize_metric_value(val) + if _insert_generated_metrics( + cursor, + schema, + attr_table, + mvi_cols, + entity_col, + metric_col, + value_col, + tid, + attr, + vstr, + static_metric, + ): + stats["generated_attrs_count"] += 1 + have.add(attr) + + result_cols = _table_columns(cursor, schema, result_table) + formal_rows, skipped = _build_formal_triple_rows( + triples, formal, batch_id, result_cols, + ) + stats["skipped_triples"] = skipped + if formal_rows: + _insert_rows_executemany(cursor, schema, result_table, formal_rows) + stats["inserted_formal_count"] = len(formal_rows) + + detail = { + "batch_id": batch_id, + "user_id": user_id, + "task_id": task_id, + "source_sys_type": source_sys_type, + "target_sys_type": target_sys_type, + "stats": stats, + "rules": formal.get("rules_summary") + or "结构校验+属性对齐(raw_to_target_schema)+sys_type切换为形式化后的体系", + } + stats["analysis_written"] = _insert_res_formal_analysis( + cursor, schema, analysis_table, batch_id, formal, stats, detail, + ) + if not stats["analysis_written"]: + raise RuntimeError( + "RES_FORMAL_ANALYSIS 未写入:表无可匹配列。请配置 formal.analysis_insert_columns " + "或在表中提供 BATCH_ID/USER_ID/TASK_ID 及 DETAIL/JSON 类文本列。" + ) + + conn.commit() + cursor.close() + return {"ok": True, "reason": None, "batch_id": batch_id, "stats": stats} + except Exception as e: + if conn is not None: + try: + conn.rollback() + except Exception: + pass + stats.setdefault("error", str(e)) + return {"ok": False, "reason": str(e), "batch_id": batch_id, "stats": stats} + finally: + if conn is not None: + try: + conn.close() + except Exception: + pass + + +def _resolve_path(path: str, project_root: str) -> str: + if os.path.isabs(path): + return path + return os.path.join(project_root, path) diff --git a/final/src/main_227.py b/final/src/main_227.py new file mode 100644 index 0000000..13644fc --- /dev/null +++ b/final/src/main_227.py @@ -0,0 +1,666 @@ +# main.py +import numpy as np +import json, copy +import pandas as pd +from typing import Dict, List +import sys +from pathlib import Path +sys.path.append(str(Path(__file__).parent.parent)) +from scripts.f_relation1125 import RelationCalculator +from scripts.f_net1125 import TaskNetworkEvaluator + +# ========== 新增:导入 cleaner ========== +sys.path.append(str(Path(__file__).parent)) # 添加 src 目录到路径 +from cleaner import load_config, AdvancedDataCleaner +from data_loader import load_data as load_data_source, run_formalization_pipeline + +# -------------- 默认配置(与原来硬编码保持一致) -------------- +DEFAULT_CFG = { + "W_REL": { # 5 类关系权重 + "IS": {"w_f": 0.35, "w_s": 0.25, "w_t": 0.15, "w_p": 0.15, "w_i": 0.10}, + "CC": {"w_f": 0.30, "w_s": 0.20, "w_t": 0.20, "w_p": 0.20, "w_i": 0.10}, + "SF": {"w_f": 0.30, "w_s": 0.20, "w_t": 0.25, "w_p": 0.15, "w_i": 0.10}, + "PD": {"w_f": 0.25, "w_s": 0.35, "w_t": 0.15, "w_p": 0.15, "w_i": 0.10}, + "CO": {"w_f": 0.30, "w_s": 0.20, "w_t": 0.20, "w_p": 0.20, "w_i": 0.10}, + }, + "W_NET": { # 5 类任务网络权重 + "defense": {"w1": 0.30, "w2": 0.25, "w3": 0.20, "w4": 0.15, "w5": 0.10}, + "fire": {"w1": 0.35, "w2": 0.25, "w3": 0.20, "w4": 0.10, "w5": 0.10}, + "logistics":{"w1": 0.30, "w2": 0.25, "w3": 0.20, "w4": 0.15, "w5": 0.10}, + "medical": {"w1": 0.35, "w2": 0.25, "w3": 0.20, "w4": 0.10, "w5": 0.10}, + "evacuation":{"w1":0.30, "w2": 0.25, "w3": 0.20, "w4": 0.15, "w5": 0.10}, + }, + "LAMBDA": {"IS": 100, "CC": 50, "SF": 80, "PD": 30, "CO": 60}, + "TIME": {"alpha": 0.5, "beta": 0.6, "gamma": 0.4}, + "PD_SGM": 20, + "THRESHOLD": 0.15 # 关系过滤阈值 +} + + +def var_desc(): + return { + # 共用 + "dij": "节点 i 与 j 之间的欧氏距离", + "Ri": "节点 i 的有效作用半径", + "Rmatch(i,j)": "两节点作用范围重叠度", + "s_area": "作战区域关联度(同区 1.0 / 邻区 0.7 / 异区 0.3)", + "stdij": "接口标准兼容性(0-1)", + "rij": "任务角色匹配度(0-1)", + "t_resp": "节点响应时间得分 exp(-α·T_resp)", + "t_cycle": "节点处理周期得分 exp(-β·T_cycle)", + "fresh_i": "数据新鲜度 exp(-γ·数据年龄)", + "wij": "时间窗口重叠比例", + "p_core": "节点核心性能", + "p_rel": "节点可靠性 MTBF/MTBF_max", + "p_surv": "节点生存性", + "protij": "协议兼容性", + "fmtij": "数据格式兼容性", + "secij": "安全等级兼容性", + "orgij": "组织隶属关联度", + "histij": "历史交互成功率", + # 关系专用 + "M_F^IS": "情报保障功能匹配项", + "M_S^IS": "情报保障空间匹配项", + "M_T^IS": "情报保障时间匹配项", + "M_P^IS": "情报保障性能匹配项", + "M_I^IS": "情报保障交互匹配项", + "λ_IS": "情报特征距离(λ_IS=100 km)", + # 网络专用 + "N_IC": "信息对抗节点数量", + "∑f_IC/N_IC": "信息对抗节点平均能力", + "∑L_IS/N_IS": "情报保障关系平均强度", + "∑t_resp/N": "系统平均响应速度", + "∑L_CC/N_CC": "指挥控制关系平均强度", + "∑f_CS/N_CS": "协同打击节点平均能力", + "∑f_IA/N_IA": "信息获取节点平均能力", + "∑L_CO/N_CO": "协同作战关系平均强度", + "∑p_core·f_CS/N_CS": "打击节点性能加权能力", + "∑f_CPS/N_CPS": "综合保障节点平均能力", + "∑f_DP/N_DP": "部署平台节点平均能力", + "∑L_PD/N_PD": "平台部署关系平均强度", + "∑p_rel/N": "系统平均可靠性", + "∑f_IT/N_IT": "信息传输节点平均能力", + "∑L_SF/N_SF": "状态反馈关系平均强度", + "∑fresh_i/N": "系统平均数据新鲜度", + "α1...α5": "综合防御权重 [0.30,0.25,0.20,0.15,0.10]", + "β1...β5": "火力打击权重 [0.35,0.25,0.20,0.10,0.10]", + "γ1...γ5": "后勤保障权重 [0.30,0.25,0.20,0.15,0.10]", + "δ1...δ5": "医疗救援权重 [0.35,0.25,0.20,0.10,0.10]", + "ε1...ε5": "紧急疏散权重 [0.30,0.25,0.20,0.15,0.10]", + } + + +def load_data(project_root=None): + """加载节点和三联数据,路径从配置读取(兼容 run_all 输出)""" + if project_root is None: + project_root = Path(__file__).resolve().parent.parent + project_root = Path(project_root) + cfg = load_config(str(project_root)) + eval_cfg = cfg.get("eval", {}) + json_cfg = cfg.get("json", {}) + triplet_cfg = cfg.get("triplet", {}) + + # 节点文件:优先 eval.nodes_file,否则 json.output_file + nodes_file = eval_cfg.get("nodes_file") or json_cfg.get("output_file", "data/nodes.json") + nodes_path = project_root / nodes_file if not Path(nodes_file).is_absolute() else Path(nodes_file) + with open(nodes_path, 'r', encoding='utf-8') as f: + nodes_data = json.load(f) + + # 三元组文件:eval.triples_file,不存在则用 triplet.output_file + triples_file = eval_cfg.get("triples_file", "data/triples.json") + triples_path = project_root / triples_file if not Path(triples_file).is_absolute() else Path(triples_file) + if not triples_path.exists(): + triples_path = project_root / triplet_cfg.get("output_file", "data/triples.json") + with open(triples_path, 'r', encoding='utf-8') as f: + triples_raw = json.load(f) + # 兼容 list 格式(run_all 输出的 triples.json) + triples_data = triples_raw if isinstance(triples_raw, dict) and "triples" in triples_raw else {"triples": triples_raw if isinstance(triples_raw, list) else []} + + return nodes_data, triples_data + + +def calculate_and_filter_relations(nodes_data: Dict, triples_data: Dict, threshold, cfg): + """ + 计算所有三联关系的关系强度,并过滤强度大于阈值的边 + + 返回: + - filtered_relations: 过滤后的关系字典 + - filtered_triples: 过滤后的三元组列表(保持原始结构) + - relation_stats: 关系统计信息 + """ + print("开始计算关系强度并过滤...") + + # 初始化关系计算器 + + calculator = RelationCalculator(nodes_data, cfg) # 改造见下 + # 关系类型映射(中文 -> 英文缩写) + relation_mapping = { + "情报保障": "IS", + "指挥控制": "CC", + "状态反馈": "SF", + "平台部署": "PD", + "协同作战": "CO" + } + + all_relations = {} + filtered_relations = {} + filtered_triples = [] + + valid_triples = 0 + skipped_triples = 0 + passed_triples = 0 + + for triple in triples_data["triples"]: + head = triple["head"] + tail = triple["tail"] + relation_ch = triple["relation"] + + # 检查节点是否存在 + if head not in nodes_data["nodes"] or tail not in nodes_data["nodes"]: + print(f"警告: 节点不存在 - 头: {head}, 尾: {tail},跳过此三元组") + skipped_triples += 1 + continue + + # 映射关系类型 + relation_en = relation_mapping.get(relation_ch) + if not relation_en: + print(f"警告: 未知关系类型 '{relation_ch}',跳过此三元组") + skipped_triples += 1 + continue + + try: + # 根据关系类型调用对应的计算方法 + if relation_en == "IS": + strength = calculator.calculate_IS_relation(head, tail) + elif relation_en == "CC": + strength = calculator.calculate_CC_relation(head, tail) + elif relation_en == "SF": + strength = calculator.calculate_SF_relation(head, tail) + elif relation_en == "PD": + strength = calculator.calculate_PD_relation(head, tail) + elif relation_en == "CO": + strength = calculator.calculate_CO_relation(head, tail) + else: + print(f"警告: 未实现的关系类型 '{relation_en}',跳过此三元组") + skipped_triples += 1 + continue + + # 存储所有关系强度(用于统计) + all_relations[(relation_en, head, tail)] = strength + valid_triples += 1 + + # 过滤:只保留强度大于阈值的关系 + if strength > threshold: + filtered_relations[(relation_en, head, tail)] = strength + # 创建过滤后的三元组(保持原始结构,添加强度字段) + filtered_triple = triple.copy() + filtered_triple["strength"] = float(strength) # 转换为Python float类型 + filtered_triples.append(filtered_triple) + passed_triples += 1 + + if valid_triples % 10 == 0: # 每10个关系打印一次进度 + print(f"已计算 {valid_triples} 个关系,通过 {passed_triples} 个...") + + except Exception as e: + print(f"错误: 计算关系失败 - 头: {head}, 尾: {tail}, 关系: {relation_en}, 错误: {e}") + skipped_triples += 1 + # 1. 先按类型细分 + type_detail = {} + for (rel, _, _), val in all_relations.items(): + type_detail.setdefault(rel, {"all": 0, "pass": 0}) + type_detail[rel]["all"] += 1 + # if val > threshold: + # type_detail[rel]["pass"] += 1 + # 新增:按类型收集被过滤的关系 + filtered_out = {} # rel -> [(head, tail, strength), ...] + for (rel, head, tail), val in all_relations.items(): + if val <= threshold: + filtered_out.setdefault(rel, []).append((head, tail, val)) + + # 2. 再打包大字典 + relation_stats = { + "total_triples": len(triples_data["triples"]), + "valid_triples": valid_triples, + "skipped_triples": skipped_triples, + "passed_triples": passed_triples, + "pass_rate": passed_triples / valid_triples if valid_triples else 0, + "threshold": threshold, + "filtered_out":filtered_out, + "type_detail": { + # rel: {"all": d["all"], "pass": d["pass"], "rate": d["pass"] / d["all"] if d["all"] else 0.} + rel: {"all": d["all"]} + for rel, d in type_detail.items() + } + } + + print(f"关系强度计算和过滤完成!") + print(f"总三元组: {relation_stats['total_triples']}, 有效计算: {valid_triples}, 跳过: {skipped_triples}") + print(f"通过过滤(> {threshold}): {passed_triples}, 通过率: {relation_stats['pass_rate']:.1%}") + + return filtered_relations, filtered_triples, relation_stats, all_relations + + +def evaluate_task_networks(nodes_data, relations, cfg): + """ + 评估所有任务网络效能 + """ + print("\n开始评估任务网络效能...") + + # 初始化网络评估器 + evaluator = TaskNetworkEvaluator(nodes_data["nodes"], relations, weights=cfg["W_NET"]) + + # 评估所有任务网络 + results = evaluator.eval_all() + + print("任务网络效能评估完成!") + return results + + +def generate_evaluation_report(relation_stats: Dict, network_results: Dict, + filtered_relations: Dict, all_relations: Dict, + threshold: float, cfg) -> str: + """ + 生成详细的评价报告 + """ + report = [] + report.append("=" * 60) + report.append("网络关系与效能评价报告") + report.append("=" * 60) + report.append("") + + # 1. 基本信息 + report.append("1. 基本信息") + report.append("-" * 40) + report.append(f"过滤阈值: {threshold} 【关系强度阈值】") + report.append(f"总三元组数量: {relation_stats['total_triples']}") + line = " ".join(f"{rel}={d['all']}" for rel, d in relation_stats["type_detail"].items()) + report.append(f"分别有:{line}") + report.append(f"有效计算三元组: {relation_stats['valid_triples']}") + report.append(f"跳过三元组: {relation_stats['skipped_triples']}") + report.append(f"通过过滤三元组: {relation_stats['passed_triples']}") + report.append(f"通过率: {relation_stats['pass_rate']:.1%}") + report.append("") + + # 添加边关系计算公式和说明 + report.append("2. 计算公式") + report.append("边关系计算公式") + report.append("-" * 50) + rel_cn = {"IS": "情报保障", "CC": "指挥控制", "SF": "状态反馈", "PD": "平台部署", "CO": "协同作战"} + desc = var_desc() + for rel in ["IS", "CC", "SF", "PD", "CO"]: + report.append( + f"{rel_cn[rel]}关系 L_{rel}(i,j) = w_f·M_F^{rel} + w_s·M_S^{rel} + w_t·M_T^{rel} + w_p·M_P^{rel} + w_i·M_I^{rel}") + report.append("【符号说明】") + for sym, exp in desc.items(): + if sym.startswith(("M_F^", "M_S^", "M_T^", "M_P^", "M_I^")): + report.append(f" {sym:<12} {exp}") + report.append("") + + + + report.append("任务网络效能计算公式") + report.append("-" * 50) + task_desc = { + "defense": "综合防御 P_defense = α1·(∑f_IC/N_IC) + α2·(∑f_IA/N_IA) + α3·(∑L_IS/N_IS) + α4·(∑t_resp/N) + α5·(∑L_CC/N_CC)", + "fire": "火力打击 P_fire = β1·(∑f_CS/N_CS) + β2·(∑f_IA/N_IA) + β3·(∑L_CO/N_CO) + β4·(∑p_core·f_CS/N_CS) + β5·(∑L_IS/N_IS)", + "logistics": "后勤保障 P_logistics = γ1·(∑f_CPS/N_CPS) + γ2·(∑f_DP/N_DP) + γ3·(∑L_PD/N_PD) + γ4·(∑p_rel/N) + γ5·(∑f_IT/N_IT)", + "medical": "医疗救援 P_medical = δ1·(∑f_CPS/N_CPS) + δ2·(∑t_resp/N) + δ3·(∑f_IT/N_IT) + δ4·(∑L_SF/N_SF) + δ5·(∑fresh_i/N)", + "evacuation": "紧急疏散 P_evacuation = ε1·(∑f_CC/N_CC) + ε2·(∑f_IT/N_IT) + ε3·(∑L_CC/N_CC) + ε4·(∑f_CPS/N_CPS) + ε5·(∑t_resp/N)" + } + for task, form in task_desc.items(): + report.append(form) + report.append("【符号说明】") + for sym, exp in desc.items(): + if any(sym.startswith(x) for x in ["N_", "∑", "α", "β", "γ", "δ", "ε"]): + report.append(f" {sym:<18} {exp}") + report.append("") + + # 2. 按关系类型统计 + report.append("3. 关系类型统计") + report.append("-" * 40) + + relation_type_stats = {} + for (rel_type, head, tail), strength in all_relations.items(): + if rel_type not in relation_type_stats: + relation_type_stats[rel_type] = {"all": [], "filtered": []} + relation_type_stats[rel_type]["all"].append(strength) + + if strength > threshold: + relation_type_stats[rel_type]["filtered"].append(strength) + + for rel_type in sorted(relation_type_stats.keys()): + stats = relation_type_stats[rel_type] + all_count = len(stats["all"]) + filtered_count = len(stats["filtered"]) + pass_rate = filtered_count / all_count if all_count > 0 else 0 + + report.append(f"{rel_type}关系:") + report.append(f" 总数: {all_count}, 通过: {filtered_count}, 通过率: {pass_rate:.1%}") + if stats["all"]: + report.append(f" 平均强度: {np.mean(stats['all']):.3f}") + if stats["filtered"]: + report.append(f" 过滤后平均强度: {np.mean(stats['filtered']):.3f}") + report.append("【被过滤掉的关系明细】") + report.append("-" * 40) + for rel, lst in relation_stats["filtered_out"].items(): + if not lst: + continue + report.append(f"{rel} 关系(强度 ≤ {threshold}):") + for h, t, v in lst: + report.append(f" {h} → {t} 强度={v:.3f}") + report.append("") # 空行隔开 + + # 1. 取任务得分(排除 dimensions) + task_scores = {task: score for task, score in network_results.items() if isinstance(score, float)} + total = sum(task_scores.values()) or 1.0 # 防 0 + + # 2. 归一化 → 百分比 + task_pct = {task: (sc / total) * 100 for task, sc in task_scores.items()} + + # 3. 输出 + report.append("4. 所属任务网络评估") + report.append("-" * 40) + task_name = { + "defense": "综合防御", + "fire": "火力打击", + "logistics": "后勤保障", + "medical": "医疗救援", + "evacuation": "紧急疏散" + } + # 一行输出所有任务网络百分比 + line = " ".join(f"{task_name[task]} {pct:.1f}%" for task, pct in task_pct.items()) + report.append("任务网络概率:" + line) + # 4. 最可能任务 + max_task = max(task_pct, key=task_pct.get) + report.append(f"最有可能的任务网络:{task_name[max_task]} 可能性为:{task_pct[max_task]:.1f} %") + + # 添加最终网络的五个维度评价 + report.append(f"5. 最终{task_name[max_task]}任务网络的五个维度评价") + dimensions = network_results.get("dimensions", {}) + reference_value = 0.6 # 参考值 + + # 功能维度 + report.append("功能维度 (Function):") + report.append(f"功能维度反映了网络中节点的功能匹配程度。得分: {dimensions.get('function', 0):.3f}") + if dimensions.get('function', 0) > reference_value: + report.append("高于参考值,表示节点在功能上高度互补,能够有效协同工作。") + else: + report.append("低于参考值,表示节点在功能上匹配程度较低,协同工作能力有待提升。") + + # 边关系维度 + report.append("空间系维度 (Relationship):") + report.append(f"空间维度反映了节点之间的连接强度。得分: {dimensions.get('relationship', 0):.3f}") + if dimensions.get('relationship', 0) > reference_value: + report.append("高于参考值,表示节点之间的连接紧密,信息传递高效。") + else: + report.append("低于参考值,表示节点之间的连接较弱,信息传递效率较低。") + + # 性能维度 + report.append("性能维度 (Performance):") + report.append(f"性能维度反映了节点的性能指标,如响应时间和可靠性。得分: {dimensions.get('performance', 0):.3f}") + if dimensions.get('performance', 0) > reference_value: + report.append("高于参考值,表示节点在性能上表现出色,能够稳定运行。") + else: + report.append("低于参考值,表示节点在性能上存在不足,稳定性有待提高。") + + # 时间维度 + report.append("时间维度 (Temporal):") + report.append(f"时间维度反映了节点的时间同步性和响应能力。得分: {dimensions.get('temporal', 0):.3f}") + if dimensions.get('temporal', 0) > reference_value: + report.append("高于参考值,表示节点在时间上高度同步,能够快速响应。") + else: + report.append("低于参考值,表示节点在时间同步性上存在偏差,响应速度较慢。") + + # 交互维度 + report.append("交互维度 (Interaction):") + report.append(f"交互维度反映了节点之间的协议、格式和安全兼容性。得分: {dimensions.get('interaction', 0):.3f}") + if dimensions.get('interaction', 0) > reference_value: + report.append("高于参考值,表示节点在交互上高度兼容,能够安全通信。") + else: + report.append("低于参考值,表示节点在交互上存在兼容性问题,通信安全性较低。") + + return "\n".join(report) + + +def save_filtered_triples(filtered_triples: List[Dict], filename: str = "filtered_triples.json"): + """ + 保存过滤后的三元组到JSON文件 + """ + project_root = Path(__file__).parent.parent # src -> 227 + output_path = project_root / "results" / filename + + output_data = {"triples": filtered_triples} + + with open(output_path, 'w', encoding='utf-8') as f: + json.dump(output_data, f, indent=2, ensure_ascii=False) + + print(f"过滤后的三元组已保存到 {filename}") + + +def save_triples_and_task_probs(filtered_triples: list, + network_results: dict, + excel_name: str = "triples.xlsx", + csv_name: str = "triples.csv") -> None: + """ + 保存过滤后的三元组(csv + Excel 表1)+ + 归一化任务网络概率(Excel 表2) + """ + # 1. 三元组 DataFrame(含 head_type / tail_type) + triple_df = pd.DataFrame([ + { + "head": t["head"], + "head_type": t.get("head_type", ""), + "relation": t["relation"], + "tail": t["tail"], + "tail_type": t.get("tail_type", ""), + "strength": t["strength"] + } + for t in filtered_triples + ]) + + # 2. 任务网络概率 DataFrame + task_scores = {task: score for task, score in network_results.items() if isinstance(score, float)} + total = sum(task_scores.values()) or 1.0 + task_pct = {task: (sc / total) * 100 for task, sc in task_scores.items()} + + task_map = { + "defense": "1-综合防御任务网络", + "fire": "2-火力打击任务网络", + "logistics": "3-后勤保障任务网络", + "medical": "4-医疗救援任务网络", + "evacuation": "5-紧急疏散任务网络" + } + prob_df = pd.DataFrame([ + {"id": int(task_map[task].split('-')[0]), + "任务": task_map[task].split('-')[1], + "概率%": f"{pct:.1f}"} + for task, pct in task_pct.items() + ]) + + # 3. 写文件 + project_root = Path(__file__).parent.parent # src -> 227 + output_path_csv = project_root / "results" / csv_name + triple_df.to_csv(output_path_csv, index=False, encoding='utf-8-sig') + + output_path = project_root / "results" / excel_name + + with pd.ExcelWriter(output_path, engine='openpyxl') as writer: + triple_df.to_excel(writer, sheet_name='triples', index=False) + prob_df.to_excel(writer, sheet_name='TaskProbs', index=False) + + print(f"已生成:{csv_name} | {excel_name}(含 TaskProbs 页)") + + +def save_evaluation_report(report_content: str, filename: str = "evaluation_report.txt"): + """ + 保存评价报告到TXT文件 + """ + project_root = Path(__file__).parent.parent # src -> 227 + output_path = project_root / "results" / filename + + with open(output_path, 'w', encoding='utf-8') as f: + f.write(report_content) + + print(f"评价报告已保存到 {filename}") + + +def main(): + """ + 主函数:整合所有计算流程 + """ + """运行时交互版主函数""" + import os + from data_loader import load_data as load_data_source + + script_dir = os.path.dirname(os.path.abspath(__file__)) + project_root = os.path.dirname(script_dir) + + config = load_config(project_root) + source = config.get('source', 'json') + print(f"数据源模式: {source}") + + try: + data, paths = load_data_source(config, project_root) + except (FileNotFoundError, ValueError) as e: + print(f"错误:{e}") + exit(1) + + os.makedirs(os.path.dirname(paths['report']), exist_ok=True) + + cleaner = AdvancedDataCleaner( + output_file=paths['output'], + report_file=paths['report'], + data=data, + ) + cleaner.run() + + formal_cfg = config.get("formal", {}) + if source == "db" and formal_cfg.get("enabled", False): + print("\n=== 模块1.3:形式化入库流程 ===") + try: + formal_result = run_formalization_pipeline(config) + if formal_result.get("ok"): + print(f"形式化批次: {formal_result.get('batch_id')}") + print(f"形式化统计: {formal_result.get('stats', {})}") + else: + print(f"形式化流程跳过: {formal_result.get('reason', 'unknown')}") + except Exception as e: + print(f"形式化流程执行失败: {e}") + raise + + + print("=== 网络关系与效能评估(交互填参版) ===") + + # 1. 加载默认配置 + cfg = copy.deepcopy(DEFAULT_CFG) + + # 交互式逐项覆盖 + def ask_one_weight(prompt: str, default: float): + """只问一个权重,回车=default""" + while True: + try: + v = input(f"{prompt} (默认={default}):").strip() + return default if v == "" else float(v) + except ValueError: + print("请输入 0-1 之间的数字!") + + def ask_one_int(prompt: str, default: int): + """问整数距离""" + while True: + try: + v = input(f"{prompt} (默认={default} km):").strip() + return default if v == "" else int(v) + except ValueError: + print("请输入整数!") + + def ask_one_float(prompt: str, default: float): + """问时间衰减系数""" + while True: + try: + v = input(f"{prompt} (默认={default}):").strip() + return default if v == "" else float(v) + except ValueError: + print("请输入数字!") + + # print("\n========== ① 关系权重 (0-1) ==========") + # rels = ["IS", "CC", "SF", "PD", "CO"] + # rel_keys = ["w_f", "w_s", "w_t", "w_p", "w_i"] + # rel_names = ["功能(w_f)", "空间(w_s)", "时间(w_t)", "性能(w_p)", "交互(w_i)"] + # for rel in ["IS", "CC", "SF", "PD", "CO"]: + # print(f"\n-- {rel} 关系 --w_f/w_s/w_t/w_p/w_i") + # for k, name in zip(rel_keys, rel_names): + # old = cfg["W_REL"][rel][k] + # cfg["W_REL"][rel][k] = ask_one_weight(name, old) + # + # print("\n========== ② 网络权重 (0-1) ==========") + # tasks = ["defense", "fire", "logistics", "medical", "evacuation"] + # tfactor = ["w1", "w2", "w3", "w4", "w5"] + # for task in tasks: + # print(f"\n-- {task} -- w1/w2/w3/w4/w5") + # for i, tf in enumerate(tfactor): + # old = cfg["W_NET"][task][tf] + # cfg["W_NET"][task][tf] = ask_one_weight(tf, old) + # + # print("\n========== ③ 特征距离 LAMBDA (km) ==========") + # for rel in rels: + # old = cfg["LAMBDA"][rel] + # cfg["LAMBDA"][rel] = ask_one_float(f"{rel} 距离", old) + # + # print("\n========== ④ 时间衰减系数 ==========") + # cfg["TIME"]["alpha"] = ask_one_float("alpha", cfg["TIME"]["alpha"]) + # cfg["TIME"]["beta"] = ask_one_float("beta", cfg["TIME"]["beta"]) + # cfg["TIME"]["gamma"] = ask_one_float("gamma", cfg["TIME"]["gamma"]) + # + # print("\n========== ⑤ 其他 ==========") + # cfg["PD_SGM"] = ask_one_float("平台共位阈值 PD_SGM", cfg["PD_SGM"]) + # cfg["THRESHOLD"] = ask_one_weight("关系过滤阈值", cfg["THRESHOLD"]) + # + + print("开始网络关系计算") + print("=" * 50) + + + try: + # 1. 加载数据 + print("步骤1: 加载数据...") + nodes_data, triples_data = load_data(project_root) + print(f"加载节点数: {len(nodes_data['nodes'])}") + print(f"加载三元组数: {len(triples_data['triples'])}") + + # 2. 计算并过滤关系强度 + print(f"\n步骤2: 计算关系强度并过滤(阈值={cfg['THRESHOLD']})") + filtered_relations, filtered_triples, relation_stats, all_relations = calculate_and_filter_relations( + nodes_data, triples_data, cfg["THRESHOLD"], cfg + ) + + # 3. 评估任务网络效能(使用过滤后的关系) + print("\n步骤3: 使用过滤后的关系评估任务网络效能...") + network_results = evaluate_task_networks(nodes_data, filtered_relations, cfg) + + # 4. 生成评价报告 + print("\n步骤4: 生成评价报告...") + report_content = generate_evaluation_report( + relation_stats, network_results, filtered_relations, all_relations, cfg["THRESHOLD"],cfg + ) + + # 5. 保存结果 + print("\n步骤5: 保存结果文件...") + save_triples_and_task_probs(filtered_triples, network_results) + save_filtered_triples(filtered_triples) + save_evaluation_report(report_content) + + # 6. 在控制台显示关键信息 + print("\n" + "=" * 50) + print("关键结果摘要:") + print(f"- 过滤后保留的三元组: {len(filtered_triples)} 个") + print("所有计算完成!") + print("=" * 50) + + except Exception as e: + print(f"程序执行出错: {e}") + import traceback + traceback.print_exc() + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/final/src/triplet_cleaner.py b/final/src/triplet_cleaner.py new file mode 100644 index 0000000..73c3071 --- /dev/null +++ b/final/src/triplet_cleaner.py @@ -0,0 +1,113 @@ +""" +三元组清洗模块 +""" +from datetime import datetime +from typing import List, Dict, Any, Set, Tuple + + +def clean_triplets( + triplets: List[Dict[str, Any]], + valid_ids: Set[str] = None, + deduplicate: bool = True, + filter_orphans: bool = False, + remove_null_core: bool = True, + normalize_relation_type: bool = True, +) -> Tuple[List[Dict[str, Any]], Dict[str, Any]]: + """ + 清洗三元组数据 + + :param triplets: 原始三元组列表 + :param valid_ids: 有效实体 ID 集合(用于 filter_orphans),None 表示不校验 + :param deduplicate: 是否按 (HEAD_ID, RELATION_TYPE, TAIL_ID) 去重 + :param filter_orphans: 是否过滤悬空引用(HEAD_ID/TAIL_ID 不在 valid_ids 中) + :param remove_null_core: 是否移除 HEAD_ID/TAIL_ID/RELATION_TYPE 为空的记录 + :param normalize_relation_type: 是否规范化 RELATION_TYPE(去空格) + :return: (清洗后列表, 清洗报告) + """ + report = { + "timestamp": datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "original_count": len(triplets), + "deduplicate": {"enabled": deduplicate, "removed": 0}, + "filter_orphans": {"enabled": filter_orphans, "removed": 0}, + "remove_null_core": {"enabled": remove_null_core, "removed": 0}, + "normalize_relation_type": {"enabled": normalize_relation_type}, + "final_count": 0, + } + + result = list(triplets) + + def _head(t): return _str(t.get("HEAD_ID") or t.get("head")) + def _tail(t): return _str(t.get("TAIL_ID") or t.get("tail")) + def _rel(t): return _str(t.get("RELATION_TYPE") or t.get("relation")) + + if remove_null_core: + before = len(result) + result = [t for t in result if _not_empty(_head(t)) and _not_empty(_tail(t)) and _not_empty(_rel(t))] + report["remove_null_core"]["removed"] = before - len(result) + + if normalize_relation_type: + for t in result: + k = "RELATION_TYPE" if "RELATION_TYPE" in t else "relation" + if isinstance(t.get(k), str): + t[k] = t[k].strip() + + if filter_orphans and valid_ids is not None: + before = len(result) + result = [t for t in result if _head(t) in valid_ids and _tail(t) in valid_ids] + report["filter_orphans"]["removed"] = before - len(result) + + if deduplicate: + before = len(result) + seen = set() + unique = [] + for t in result: + key = (_head(t), _rel(t), _tail(t)) + if key not in seen: + seen.add(key) + unique.append(t) + result = unique + report["deduplicate"]["removed"] = before - len(result) + + report["final_count"] = len(result) + return result, report + + +def _not_empty(v: Any) -> bool: + if v is None: + return False + if isinstance(v, str) and not v.strip(): + return False + return True + + +def _str(v: Any) -> str: + if v is None: + return "" + return str(v).strip() + + +def transform_triplet_output_format( + triplets: List[Dict[str, Any]], + id_to_role: dict = None, +) -> List[Dict[str, Any]]: + """ + 将三元组转为输出格式: + - HEAD_ID/head -> head, TAIL_ID/tail -> tail, RELATION_TYPE/relation -> relation + - 新增 head_type、tail_type(从 id_to_role 查 ROLE_ID,已有则保留) + """ + id_to_role = id_to_role or {} + result = [] + for t in triplets: + head = _str(t.get("HEAD_ID") or t.get("head")) + tail = _str(t.get("TAIL_ID") or t.get("tail")) + rel = _str(t.get("RELATION_TYPE") or t.get("relation")) + head_type = _str(t.get("head_type")) or id_to_role.get(head, "") + tail_type = _str(t.get("tail_type")) or id_to_role.get(tail, "") + result.append({ + "head": head, + "head_type": head_type, + "relation": rel, + "tail": tail, + "tail_type": tail_type, + }) + return result diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index b937909..0000000 --- a/requirements.txt +++ /dev/null @@ -1,5 +0,0 @@ -numpy>=1.20.0 -pandas>=1.3.0 -PyYAML>=5.4 -# 达梦数据库(仅 source=db 时需要,开发阶段可不安) -# pip install dmPython diff --git a/scripts/inspect_dm_tables.py b/scripts/inspect_dm_tables.py deleted file mode 100644 index 2c9d381..0000000 --- a/scripts/inspect_dm_tables.py +++ /dev/null @@ -1,102 +0,0 @@ -#!/usr/bin/env python3 -""" -在达梦数据库机器上运行,查看各表结构,用于编写 config 中的 db.query -用法: python scripts/inspect_dm_tables.py - -密码获取顺序:环境变量 DM_PASSWORD > 下方 LOCAL_PASSWORD -若使用 LOCAL_PASSWORD,切勿提交到 git!可执行:git update-index --assume-unchanged scripts/inspect_dm_tables.py -""" -import os -import sys - -# 可选:在此直接填写密码(仅限本机调试,切勿提交到版本库!) -LOCAL_PASSWORD = None # 例如: "你的密码" - -# 支持从项目根或 scripts 目录运行 -_script_dir = os.path.dirname(os.path.abspath(__file__)) -_project_root = os.path.dirname(_script_dir) -if _project_root not in sys.path: - sys.path.insert(0, _project_root) - -try: - import dmPython -except ImportError: - print("请先安装: pip install dmPython") - sys.exit(1) - -CONFIG = { - "user": "SYSDBA", - "password": os.environ.get("DM_PASSWORD") or LOCAL_PASSWORD, - "server": "127.0.0.1", - "port": 5080, - "schema": "SYSDBA", -} - -TABLES = [ - "OBJECTIVE_INSTANCE", - "METRIC_VALUE_INSTANCE", - "METRIC_PROFILE", - "ROLE_PROFILE", - "TASK_PROFILE", - "RELATION_INSTANCE", -] - - -def main(): - if not CONFIG["password"]: - print("请设置环境变量 DM_PASSWORD 或在脚本中填写 LOCAL_PASSWORD") - sys.exit(1) - - try: - conn = dmPython.connect( - user=CONFIG["user"], - password=CONFIG["password"], - server=CONFIG["server"], - port=CONFIG["port"], - schema=CONFIG["schema"], - ) - except Exception as e: - print(f"连接失败: {e}") - sys.exit(1) - - cursor = conn.cursor() - print("=" * 60) - print("达梦表结构(用于编写 config/db.query)") - print("=" * 60) - - for table in TABLES: - try: - cursor.execute(f'SELECT * FROM "{CONFIG["schema"]}"."{table}" WHERE 1=0') - cols = [d[0] for d in cursor.description] - print(f"\n【{table}】 列: {cols}") - except Exception as e: - print(f"\n【{table}】 查询失败: {e}") - - cursor.execute( - """ - SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE - FROM DBA_TAB_COLUMNS - WHERE OWNER = ? - ORDER BY TABLE_NAME, COLUMN_ID - """, - (CONFIG["schema"],), - ) - rows = cursor.fetchall() - - print("\n" + "=" * 60) - print("所有列详情 (TABLE_NAME | COLUMN_NAME | DATA_TYPE)") - print("=" * 60) - cur_table = None - for table, col, dtype in rows: - if table != cur_table: - cur_table = table - print(f"\n--- {table} ---") - print(f" {col}: {dtype}") - - cursor.close() - conn.close() - print("\n完成。请根据上述结构在 config 中编写 db.query。") - - -if __name__ == "__main__": - main() diff --git a/src/data_loader.py b/src/data_loader.py deleted file mode 100644 index 6437a05..0000000 --- a/src/data_loader.py +++ /dev/null @@ -1,101 +0,0 @@ -""" -数据加载模块:支持从 JSON 文件或达梦数据库读取数据 -开发阶段使用 JSON,生产环境切换到达梦时只需修改 config 中的 source -""" -import json -import os -from typing import Tuple - - -def load_from_json(file_path: str, project_root: str = None) -> list: - """从 JSON 文件加载数据""" - path = file_path - if project_root and not os.path.isabs(file_path): - path = os.path.join(project_root, file_path) - with open(path, 'r', encoding='utf-8') as f: - return json.load(f) - - -def load_from_dm(config: dict, project_root: str = None) -> list: - """ - 从达梦数据库加载数据 - 需要安装 dmPython 及达梦客户端库,仅在 source=db 时调用 - """ - try: - import dmPython - except ImportError as e: - raise RuntimeError( - "达梦数据库模式需要安装 dmPython。\n" - "请执行: pip install dmPython\n" - "并在有达梦客户端的环境运行(需配置 DM_HOME/LD_LIBRARY_PATH)" - ) from e - - db_cfg = config.get('db', {}) - password = os.environ.get('DM_PASSWORD') - if not password: - raise ValueError( - "达梦模式需要设置环境变量 DM_PASSWORD。\n" - "示例: export DM_PASSWORD=你的密码" - ) - - conn = dmPython.connect( - user=db_cfg.get('user', 'SYSDBA'), - password=password, - server=db_cfg.get('host', '127.0.0.1'), - port=int(db_cfg.get('port', 5080)), - schema=db_cfg.get('schema', 'SYSDBA'), - ) - - try: - cursor = conn.cursor() - query = (db_cfg.get('query') or '').strip() - table = db_cfg.get('table') - if query: - cursor.execute(query) - elif table: - schema = db_cfg.get('schema', 'SYSDBA') - cursor.execute(f'SELECT * FROM "{schema}"."{table}"') - else: - raise ValueError( - "达梦模式需配置 db.query(自定义 SQL)或 db.table。\n" - "当前达梦为规范化表,需通过 query 编写 JOIN 得到扁平化数据。" - ) - columns = [desc[0] for desc in cursor.description] - rows = cursor.fetchall() - cursor.close() - return [dict(zip(columns, row)) for row in rows] - finally: - conn.close() - - -def load_data(config: dict, project_root: str) -> Tuple[list, dict]: - """ - 根据配置加载数据,返回 (数据列表, 路径配置) - """ - source = config.get('source', 'json') - project_root = project_root or os.getcwd() - - if source == 'json': - json_cfg = config.get('json', {}) - data = load_from_json(json_cfg.get('input_file', 'data/raw_data_sample.json'), project_root) - paths = { - 'output': _resolve_path(json_cfg.get('output_file', 'data/cleaned_data_final.json'), project_root), - 'report': _resolve_path(json_cfg.get('report_file', 'report/detailed_cleaning_report.json'), project_root), - } - return data, paths - elif source == 'db': - data = load_from_dm(config, project_root) - json_cfg = config.get('json', {}) - paths = { - 'output': _resolve_path(json_cfg.get('output_file', 'data/cleaned_data_final.json'), project_root), - 'report': _resolve_path(json_cfg.get('report_file', 'report/detailed_cleaning_report.json'), project_root), - } - return data, paths - else: - raise ValueError(f"不支持的 source 类型: {source},应为 json 或 db") - - -def _resolve_path(path: str, project_root: str) -> str: - if os.path.isabs(path): - return path - return os.path.join(project_root, path)