【优化选址】基于matlab穷举法求解小区基站选址优化问题【含Matlab源码 439期】
一、获取代码方式
获取代码方式1:
完整代码已上传我的资源:【优化选址】基于matlab穷举法求解小区基站选址优化问题【含Matlab源码 439期】
获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。
备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);
二、背景简介
【案例】有一个移动电话运营商计划在一个目前尚未覆盖的区域开展业务,预算为1000万元。调查表明,此区域有7个位置可以安设基站,每个基站只能覆盖一定数目的社区,具体数据见下表:
解决思路:
1)穷举基站建造的可能性(排列组合,7选1至7选7)
2)去掉预算超标的
3)计算每个组合覆盖的社区
4)计算覆盖的人数
5)求人数最大值找出最优方案
三、部分源代码
function [C,P] = GetPlan()
clc
clearGet_OptimalCombination(1);
Get_OptimalCombination(2);
Get_OptimalCombination(3);
Get_OptimalCombination(4);
Get_OptimalCombination(5);end%function [Plan_BuildStation, Plan_BuildCost, Plan_CoverCommunity, Plan_CoverPeople] = Get_OptimalCombination(SelectNum)
function Result = Get_OptimalCombination(SelectNum)%基站建设费用Cost = [1.8, 1.3, 4.0, 3.5,3.8,2.6,2.1];%基站对应的社区BaseStation_Community = [1,2,4,0,0; 2,3,5,0,0; 4,7,8,10,0; 5,6,8,9,0; 8,9,12,0,0; 7,10,11,12,15; 12,13,14,15,0];%社区对应的人口数Community_Person = [2, 4, 13, 6, 9, 4, 8, 12, 10, 11, 6, 14, 9, 3, 6];CB_num = combntns(1:7, SelectNum);%求排列组合数[Size_row, Size_column] = size(CB_num);%求组合的行数和列数CB_num;%测试项%求出每种组合的价格for i = 1:1:Size_rowBuild_Cost(i) = 0;for j = 1:1:Size_columnTemp1 = Cost(CB_num(i,j));Build_Cost(i) = Build_Cost(i) + Temp1;endendBuild_Cost;%测试项 %判断是否超出预算,并删除不符合要求的组合abcd1 = 0;for i = 1:1:Size_rowif Build_Cost(i) > 10abcd2 = i;abcd1 = [abcd1 abcd2]; %取出不合适的序号 end endabcd1(:,1) = [];%删除第一项0for i = length(abcd1):-1:1abcd1(i);CB_num(abcd1(i),:) = [];Build_Cost(:,abcd1(i)) = [];end[Size_row, Size_column] = size(CB_num);%更新数组参数 if Size_row == 0return;end%求每种组合覆盖的社区for i = 1:1:Size_rowTemp2 = 0;for j = 1:1:Size_column;Temp3 = BaseStation_Community(CB_num(i,j),:);Temp2 = [Temp2 Temp3];%数组组合Cover_Community{i} = Temp2(Temp2~=0);%组成元包数组endendCover_Community{1};%测试项%Cover_Community{1}(:,4)%求覆盖的人数for i = 1:1:Size_rowTemp4 = Cover_Community{i};Temp6 = 0;for j = 1:1:length(Cover_Community{i});Temp7 = Cover_Community{i}(:,j);%读覆盖的社区Temp6 = Temp6 + Temp5;%求和Plan_TotlePeople(i) = Temp6;end
四、运行结果
五、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.
【优化选址】基于matlab穷举法求解小区基站选址优化问题【含Matlab源码 439期】相关推荐
- 【Matlab指纹识别】指纹识别门禁系统【含GUI源码 1692期】
一.代码运行视频(哔哩哔哩) [Matlab指纹识别]指纹识别门禁系统[含GUI源码 1692期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余继 ...
- 【Matlab人脸识别】人脸实时检测与跟踪【含GUI源码 673期】
一.代码运行视频(哔哩哔哩) [Matlab人脸识别]人脸实时检测与跟踪[含GUI源码 673期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]孟逸凡,柳益君 ...
- 【Matlab树叶分类】BP神经网络植物叶片分类【含GUI源码 916期】
一.代码运行视频(哔哩哔哩) [Matlab树叶分类]BP神经网络植物叶片分类[含GUI源码 916期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅 ...
- 【Matlab水果蔬菜识别】形态学水果蔬菜识别【含GUI源码 919期】
一.代码运行视频(哔哩哔哩) [Matlab水果蔬菜识别]形态学水果蔬菜识别[含GUI源码 919期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅. ...
- 【Matlab青草识别】形态学马唐草+牛筋草识别【含GUI源码 908期】
一.代码运行视频(哔哩哔哩) [Matlab青草识别]形态学马唐草+牛筋草识别[含GUI源码 908期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅 ...
- 【Matlab限速标志识别】形态学限速标志识别【含GUI源码 1142期】
一.代码运行视频(哔哩哔哩) [Matlab限速标志识别]形态学限速标志识别[含GUI源码 1142期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅 ...
- 【微电网优化】基于matlab粒子群算法求解综合能源系统优化问题【含Matlab源码 1969期】
一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[微电网优化]基于matlab粒子群算法求解综合能源系统优化问题[含Matlab源码 1969期] 点击上面蓝色字体,直接付费下载,即可. ...
- 穷举法求解鸡兔同笼问题
#include<iostream> #include<cstdlib> using namespace std;int main() {//int heads = 23, f ...
- 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】
一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...
- 【Matlab电力负荷预测】粒子群优化支持向量机短期电力负荷预测【含GUI源码 751期】
一.代码运行视频(哔哩哔哩) [Matlab电力负荷预测]粒子群优化支持向量机短期电力负荷预测[含GUI源码 751期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 ...
最新文章
- laravel ajax ip,怎么在Laravel中利用AJAX动态刷新部分页面
- 【渝粤教育】 国家开放大学2020年春季 2710蔬菜栽培技术 参考试题
- LeetCode 804. 唯一摩尔斯密码词(哈希+set)
- 字符串匹配算法_4月16日活动预告|字符串匹配算法解析
- Golang 的 “omitempty” 关键字略解
- 小米这个系列绝了!7款之后再添新机,完全分不清
- 杭电1285确定比赛名次
- 串口485接法图_RS485通讯的正确接线方式介绍
- 典型三种近场通信的特点以及未来趋势
- 漫画 | 前端发展史的江湖恩怨情仇
- Windows服务器tomcat日志拆分(cronolog )
- H3C S6520 配置arp static
- 海康威视监控云存储服务器,监控设备,云存储服务器,安防监控—年轻人安防官网...
- latex解决存在/任意/非符号如何打
- LeetCode:逆波兰式;
- cesium 鼠标点击pick与drillPick的区别
- 【教学】深度学习小项目汇总_含源代码_包运行
- 怎样选择步进电机和驱动器,计算方式
- java实现.费诺编码_使用递归算法编写的费诺编码
- 1214. 波动数列
热门文章
- 20165234 《Java程序设计》第八周学习总结
- 修改PostgreSQL数据库的默认用户postgres的密码
- Cogs 647. [Youdao2010] 有道搜索框(Trie树)
- ElasticSearch 2 (11) - 节点调优(ElasticSearch性能)
- @JVM垃圾收集器种类
- slitax 制定iso
- [转]在Sql Server中将字符串分割成表格数据示例
- holotoolkit 客户端与服务器架构的建立
- Atitit 前端性能提升方案 目录 1. 优化分类	2 1.1. ,第一类是页面级别的优化,	2 1.2. 第二类则是代码级别的优化,	2 1.3. 前端性能优化的七大手段,包括减少请求数量、减小
- Atitit 研发管理之道 attilax总结 艾龙 著 研发管理	1 简介	1 基本理念	2 基本原则	2 内容	3 团队建设	4 流程设计	4 成本管理	4 项目管理	4 绩效管理	4 风险管理