本系统是基于KMeans聚类算法的城乡产业融合智能决策系统,面向政府部门、农业企业、乡村经营主体、金融机构提供全流程智能决策支持。
- 数据管理: 多源数据采集、清洗、标准化处理
- KMeans聚类分析: 农户分类、产业聚类、区域竞争力分析
- 融合指数计算: 五维度融合指数(生产、供应、市场、服务、价值)
- 智能决策支持: 产业规划、项目选址、风险评估、投资分析
- ABM模拟: 基于主体的农户行为演化模拟
- 可视化报告: 交互式Web界面与报告生成
城乡融合智能决策系统/
├── app.py # Streamlit主应用
├── api.py # FastAPI后端服务
├── requirements.txt # 依赖包列表
├── run.bat # Windows启动脚本
├── run.sh # Linux/Mac启动脚本
├── config/
│ └── config.py # 配置文件
├── src/
│ ├── models/
│ │ ├── kmeans_model.py # KMeans聚类模型
│ │ └── abm_model.py # ABM模拟模型
│ ├── analysis/
│ │ ├── fusion_index.py # 融合指数计算
│ │ └── decision_support.py # 决策支持引擎
│ └── utils/
│ ├── data_generator.py # 数据生成器
│ └── data_processor.py # 数据处理器
├── data/
│ ├── raw/ # 原始数据
│ ├── processed/ # 处理后数据
│ └── output/ # 输出结果
├── static/ # 静态资源
├── templates/ # 模板文件
└── tests/ # 测试文件
- Python 3.8+
- pip 包管理器
- 克隆项目
git clone [项目地址]
cd 城乡融合智能决策系统- 安装依赖
pip install -r requirements.txt- 启动系统
方式一:使用启动脚本
# Windows
run.bat
# Linux/Mac
chmod +x run.sh
./run.sh方式二:命令行启动
# 启动Web界面
streamlit run app.py
# 启动API服务
python api.py- 访问系统
- Web界面: http://localhost:8501
- API文档: http://localhost:8000/docs
- 查看农户、村庄、产业、时间序列数据
- 数据统计与分布展示
- 数据下载功能
- 基于土地、资本、劳动力、融合指数等特征
- 自动识别农户类型:规模融合型、融合发展型、初级融合型、传统型
- 生成转型建议
- 产业类型聚类分析
- 优势产业识别
- 村庄竞争力评估
- 区域排名
五维度融合指数计算:
- 生产融合: 技术应用、规模生产
- 供应融合: 供应链整合、合作社参与
- 市场融合: 品牌建设、渠道拓展
- 服务融合: 社会化服务利用
- 价值融合: 产业链延伸、附加值提升
- 产业诊断
- 优先发展产业识别
- 政策建议生成
- 多维度评分
- 最优选址推荐
- 市场、生产、政策、金融风险
- 风险等级划分
- 缓解措施建议
- ROI、NPV、IRR计算
- 可行性评估
- 敏感性分析
基于主体的建模模拟:
- 农户行为演化
- 状态转移模拟
- 空间分布可视化
一键生成完整分析报告
POST /api/data/generate?n_farmers=1000&n_villages=50
POST /api/clustering/farmers
Body: { "data": [...], "n_clusters": 4 }
POST /api/fusion/calculate
Body: { "data": [...] }
POST /api/decision/planning
POST /api/decision/site-selection
POST /api/decision/risk-assessment
POST /api/decision/investment
完整API文档: http://localhost:8000/docs
- n_clusters: 聚类数量 (默认4)
- max_iter: 最大迭代次数 (默认300)
- n_init: 初始化次数 (默认10)
- production: 0.25
- supply: 0.20
- market: 0.25
- service: 0.15
- value: 0.15
- town_decay: 0.05 (城镇距离衰减)
- road_decay: 0.08 (道路距离衰减)
- learning_rate: 0.3 (学习速率)
编辑 src/models/kmeans_model.py:
self.clustering_features = [
'land_area', 'capital', 'labor',
'new_feature' # 添加新特征
]编辑 config/config.py:
'fusion_weights': {
'production': 0.25,
'supply': 0.20,
# ...
}编辑 src/analysis/decision_support.py 中的相关方法
- 后端: Python, FastAPI, Streamlit
- 数据处理: Pandas, NumPy, Scikit-learn
- 可视化: Plotly, Matplotlib, Seaborn
- 聚类算法: KMeans, MiniBatchKMeans
- 建模: ABM (基于主体的建模)
MIT License
如有问题或建议,请联系开发团队。
城乡产业融合智能决策系统 - 让数据驱动决策,助力乡村振兴