[发明专利]一种基于凸包覆盖的医疗站点部署方法有效
申请号: | 201711479345.X | 申请日: | 2017-12-29 |
公开(公告)号: | CN108229737B | 公开(公告)日: | 2022-01-04 |
发明(设计)人: | 朱旭东;张吕峥;娄华杰;蔡锋;苏寿海 | 申请(专利权)人: | 创业慧康科技股份有限公司 |
主分类号: | G06Q10/04 | 分类号: | G06Q10/04;G06Q30/02;G06Q50/26 |
代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
地址: | 310051 浙江省杭州市滨*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 覆盖 医疗 站点 部署 方法 | ||
1.一种基于凸包覆盖的医疗站点部署方法,其特征在于包括如下步骤:
步骤1、将城市交通平面图映射为网络拓扑图;
步骤2、根据运动手环数据计算每个人的医疗需求;
步骤3、计算得到一个站点集合S,使S能够覆盖顶点集合V的凸包;
步骤1所述的将城市交通平面图映射为网络拓扑图,具体实现如下:
步骤1-1.初始化i为0,初始化顶点集合V为空集合;
步骤1-2.如果城市交通平面图中所有的路段都已经被标记,则跳转到步骤1-5;
步骤1-3.令i增加1,找到城市交通平面图中任意一条没有被标记的路段,创建一个顶点vi,将vi(x)和vi(y)设置为该条路段中心的经度和维度,将顶点vi加入顶点集合V中,并标记该路段为已处理;
所述的路段指两个交叉口之间没有其他交叉口的道路;
步骤1-4.跳转到步骤1-2;
步骤1-5.将i赋值给n1,即n1=i,其中n1用于表示顶点集合V中顶点的个数;
步骤1-6.初始化边的集合E为空集合,同时初始化i为1;
步骤1-7.如果i大于n1,则跳转到步骤1-13;
步骤1-8.初始化j为1;
步骤1-9.如果j大于n1,则跳转到步骤1-12;
步骤1-10.如果vi和vj所代表的路段在城市交通图上通过一个交叉路口直接相连,则在边的集合E中加入边(vi,vj)
步骤1-11.令j增加1,跳转到步骤1-9;
步骤1-12.令i增加1,跳转到步骤1-7;
步骤1-13.结束;
步骤2所述的根据运动手环数据计算每个人的医疗需求,具体实现如下:
步骤2-1.初始化数组N[n],其中每一个元素N[i]表示i号人员对医疗服务的需求强度,即该人员平均每天需要的医疗次数;
步骤2-2.初始化i为1;
步骤2-3.如果i大于n,步骤2结束,其中n为人员运动信息表的记录总数;
步骤2-4.令x等于T(i).age,令μ等于25,σ等于1,正态分布f(x)见公式(1);令N[i]等于k*(f(25)-f(T(i).age)),其中k为经验常数,运动手环数据构成人员运动信息表T,T(i)表示人员运动信息表T的第i行记录,T(i).age为第i号人员的年龄;
步骤2-5.令i增加1,跳转到步骤2-3;
步骤3所述的计算得到一个站点集合S,使S能够覆盖顶点集合V的凸包,具体实现如下:
步骤3-1.生成顶点集合V的凸包顶点集合B和凸包边集合E,初始化S为空集,初始化TV为V;
步骤3-2初始化level_S为空集,同时初始化i为1;
步骤3-3.选定第一个站点的位置si,将si放入集合level_S,并将对应的顶点si.v从TV中删除;
步骤3-4.如果凸包边集合E已经完全被level_S中的站点覆盖,则跳转到步骤3-7.
步骤3-5.令i增加1,选定下一个站点的位置si,将站点的位置si放入level_S;
步骤3-6.跳转到步骤3-4;
步骤3-7.将level_S中的站点加入到S中;
步骤3-8.如果凸包顶点集合B所围出来的区域已经被集合level_S中所有顶点的覆盖圆组成的区域完全覆盖,则跳转到步骤3-10.
步骤3-9.使用函数Next_B(level_S,E)生成内层凸包顶点集合B'和内层凸包边集合E',将B'赋值到B,E'赋值到E;令i增加1,跳转到步骤3-2;
步骤3-10.返回站点集合S,即需要部署站点的位置,结束;
步骤3-1所述的生成顶点集合V的凸包顶点集合B和凸包边集合E的过程具体如下:
步骤3-1-1.初始化边的集合E为空集合,初始化凸包顶点集合B为空集合;
步骤3-1-2.初始化i为1;
步骤3-1-3.如果i大于顶点集合V中顶点的个数,则跳转到步骤3-1-14;
步骤3-1-4.初始化j为1;
步骤3-1-5.如果j大于顶点集合V中顶点的个数,则跳转到步骤3-1-13;
步骤3-1-6.如果i和j相等,则j增加1,然后跳转到步骤3-1-5;
步骤3-1-7.如果(vi,vj)或者(vj,vi)已经在集合E中,则令j增加1,跳转到步骤3-1-5;
步骤3-1-8.如果V中其他所有顶点不是全部在直线(vi,vj)的一侧,则令j增加1,跳转到步骤3-1-5;
步骤3-1-9.将(vi,vj)加入集合E;
步骤3-1-10.如果vi不在B中,则将vi加入B;
步骤3-1-11.如果vj不在B中,则将vj加入B;
步骤3-1-12.令j增加1,跳转到步骤3-1-5;
步骤3-1-13.令i增加1,跳转到步骤3-1-3;
步骤3-1-14.返回凸包的顶点集合B和凸包的边集合E,结束;
步骤3-3所述的选定第一个站点的位置si,具体实现过程如下:
步骤3-3-1.将凸包边集合E赋值到集合TE;
步骤3-3-2.初始化i为1,初始化v为null,初始化d为10000,初始化r为10000;
步骤3-3-3.如果in2,跳转到步骤3-3-11,其中n2表示集合TV中顶点的个数;
步骤3-3-4.顶点vi的覆盖半径ri等于get_r(vi,N);
步骤3-3-5.初始化顶点vi到集合TE中边的最短距离di为10000;
步骤3-3-6.取出集合TE中的一条边(vp,vq),将该边从TE中删除,
new_di=Abs((vq(y)-vp(y))*vi(x)+(vp(x)-vq(x))*vi(y)+(vp(y)-vq(y))*vi(x)+(vq.(x)-vp.(x))*vi.(y))/Sqrt((vq.(y)-vp.(y))*(vq.(y)-vp.(y))+(vp.(x)-vq(x))*(vp(x)-vq(x)));
步骤3-3-7.如果new_di小于di,则di等于new_di;
步骤3-3-8.如果TE不为空,跳转到步骤3-3-6;
步骤3-3-9.如果abs(di-ri/2)小于abs(d-r/2),则令d等于di,令v等于vi,令r等于ri;
步骤3-3-10.令i增加1,跳转到步骤3-3-3
步骤3-3-11.返回(v,r);
步骤3-5所述的选定下一个站点si,具体的实现如下:
在V中找到一个顶点v,则该顶点v需满足以下条件:
Ⅰ.在v部署站点的覆盖圆与E中的边相交,也与当前已经求得的level_S中某个站点v’的覆盖圆相交;
Ⅱ.在v部署的站点与E中的边交点的连线长度加上v与v’交点的连线长度最短;
步骤3-9所述的生成内层凸包顶点集合B'和内层凸包边集合E'的函数Next_B(level_S,E)具体实现如下:
步骤3-9-1.初始化NB和NV为空;
步骤3-9-2.取level_S中的两个站点,得到覆盖圆的交点vp和vq;
步骤3-9-3.如果vp与E中所有边的最短距离小于vq与E中所有边的最短距离,则将vq加入到NV中,否则将vp加入到NV中;
步骤3-9-4.如果level_S中任意两个站点都已经计算过覆盖圆的交点,则跳转到步骤3-9-6;
步骤3-9-5.跳转到步骤3-9-2;
步骤3-9-6.生成顶点集合NV的凸包顶点集合B和凸包边集合E;
步骤3-9-7.返回凸包的顶点集合B和凸包的边集合E,结束;
所述的步骤3-9-6生成顶点集合NV的凸包顶点集合B和凸包边集合E的方法与步骤3-1相同;
所述的步骤3-3-4中顶点vi的覆盖半径ri的函数get_r(vi,N)求解如下:
步骤①.初始化服务半径r为R,R表示站点的服务半径上限;
步骤②.初始化服务负载l为demand(vi(x),vi(y),r),初始化迭代阈值a为0.99;
步骤③.如果l小于等于L,则跳转到步骤⑧;
步骤④.令r等于L*r/l;
步骤⑤.令l等于demand(vi(x),vi(y),r);
步骤⑥.如果l小于L且l大于L*a,则跳转到步骤⑧;
步骤⑦.跳转到步骤④;
步骤⑧.返回r,结束;
步骤②和步骤⑤中的函数demand是获得以(x,y)为圆心,r为半径的范围内的医疗需求,并将获取的数据赋值在函数demand(x,y,r)中,实现过程如下:
步骤a.初始化i为0,初始化d为0;
步骤b.如果i大于n,跳转到步骤e;
步骤c.如果(T(i).x-x)^2+(T(i).y-y)^2小于r^2,则令d等于d+N[i];
步骤d.令i增加1,跳转到步骤b;
步骤e.返回d,结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创业慧康科技股份有限公司,未经创业慧康科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711479345.X/1.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理