Go to file
AgentLabCn 1c4ae92e32 rename some IC nodes 2023-10-26 09:21:35 +08:00
.vscode desensitize 2023-09-16 18:20:49 -04:00
__pycache__ desensitize 2023-09-16 18:20:49 -04:00
input_data rename some IC nodes 2023-10-26 09:21:35 +08:00
output_result desensitize in risk_analysis 2023-09-16 20:09:23 -04:00
.gitignore add git ignore file 2023-09-17 09:41:10 +08:00
README.md rename some IC nodes 2023-10-26 09:21:35 +08:00
SQL_analysis_experiment.sql new repo 2023-09-10 10:35:48 -04:00
SQL_analysis_risk.sql new repo 2023-09-10 10:35:48 -04:00
SQL_db_user_create.sql add README.md and db connection test, but not finished yet 2023-09-15 01:15:42 +08:00
SQL_export_high_risk_setting.sql new repo 2023-09-10 10:35:48 -04:00
SQL_migrate_db.sql new repo 2023-09-10 10:35:48 -04:00
computation.py new repo 2023-09-10 10:35:48 -04:00
conf_db.yaml rename some IC nodes 2023-10-26 09:21:35 +08:00
conf_db_prefix.yaml desensitize 2023-09-16 18:20:49 -04:00
conf_experiment.yaml new repo 2023-09-10 10:35:48 -04:00
controller_db.py add README.md and db connection test, but not finished yet 2023-09-15 01:15:42 +08:00
firm.py desensitize 2023-09-16 18:20:49 -04:00
main.py new repo 2023-09-10 10:35:48 -04:00
model.py desensitize 2023-09-16 18:20:49 -04:00
orm.py add README.md and db connection test, but not finished yet 2023-09-15 01:15:42 +08:00
product.py new repo 2023-09-10 10:35:48 -04:00
requirements.txt new repo 2023-09-10 10:35:48 -04:00
requirements_manual_selected_20230304.txt new repo 2023-09-10 10:35:48 -04:00
risk_analysis_count.py new repo 2023-09-10 10:35:48 -04:00
risk_analysis_firm_network.py desensitize in risk_analysis 2023-09-16 20:09:23 -04:00
risk_analysis_prod_network.py rename some IC nodes 2023-10-26 09:21:35 +08:00
risk_analysis_sum_result.py rename some IC nodes 2023-10-26 09:21:35 +08:00

README.md

安装内容

  1. 数据库推荐使用mysql 8.0以上版本
  2. Python 3.8
  3. 通过pip等方法安装requirements_manual_selected_20230304.txt文件中的包

前期准备工作

  1. 复制整个代码到本地
  2. 用root及密码登录mysql在本地数据库中创建一个数据库命名为iiabmdb
  3. 在mysql中运行SQL_db_user_create.sql里的sql命令创建数据库用户。如果创建用户报错需打开该文件并运行第三行被注释掉的代码。该文件后面的sql命令也需要运行将数据库用户的权限赋予iiabmdb数据库
  4. 之后直接运行controller.py文件如果没有报错则说明前期准备工作完成

运行程序

  1. conf_db_prefix.yaml文件中的db_prefix改为db_name_prefix: without_exp
  2. 打开命令行,进入代码所在目录,运行
python main.py --exp without_exp --reset_db True
  1. 等待运行完成23750个样本。结束后db_name_prefix: without_exp改为db_name_prefix: with_exp,并运行
python main.py --exp with_exp --reset_db True
  1. 漫长的等待17.1万个样本),直到运行完成

获得结果,绘制图表

风险节点分析

  1. 运行risk_analysis_sum_result.py文件该程序自动产生风险节点分析统计数据并放置到output_result/risk文件夹中
  2. 依次运行risk_analysis_prod_network.pyrisk_analysis_firm_network.py文件将自动产生相关结果放置到output_result/risk文件夹中

韧性影响因素分析

  1. 运行SQL_analysis_experiment.sql文件将汇总结果手工复制至output_result/resilience文件夹experiment_result.csv文件中
  2. 使用Minitab进行田口设计分析
  3. 新建田口设计统计——DOE——田口——创建田口设计——混合水平设计因子数选项设置为8设计选项设置为L36水平^列为2^33^5因子选项中将列名依次修改为is_prf_sizeis_prf_connex_cap_typen_max_trialex_cap_paraprob_new_connt_max_trialn_sourcing
  4. 将output_result/resilience文件夹experiment_result.csv文件中结果复制入田口设计表格右侧列
  5. 依次对各个韧性指标进行田口设计分析统计——DOE——田口——分析田口设计从mean_count_firm_prodmean_max_ts_firm_prodmean_n_remove_firm_prodmean_end_ts中选择一个韧性指标图形选项勾选均值分析选项中显示响应表勾选均值拟合线性模型勾选均值点击确定
  6. 手工汇总方差分析结果至output_result/resilience文件夹anova.csv文件中,汇总响应表结果至anova_visualization.csv文件中