简析开源Boost库在网络的应用论文
随着地理信息产业的建立和数字化信息产品的普及地理信息系统已经深入到各行各业成为人们生产、生活、学习和工作中不可缺少的工具和助手。
技术的发展离不开信息技术的革新。
随着信息技术的发展很多新概念、新理念提出并得到应用后很快就会被软件吸纳进去。
地理网络分析是地理信息系统的核心功能也是地理信息系统与其他计算机系统的根本区别。
数学上的网络图在地理网络建模以及网络分析运算中仍具有重要的作用。
同时其相对的独立性更容易形成独立的模块化、组件化的软件包。
目前已经有很多这样的软件包或独立的类库存在既有商业版本的也有开源性质的也包括基于不同操作平台和利用各种程序语言开发的这其中开源的++类库就是其中优秀的代表之一。
1系统开发语言与++库在地理信息系统的开发过程中程序语言的选择具有重要的意义。
虽然随着软件开发平台和编译技术的不断发展程序语言有着相互借鉴和融合的趋势但不同的程序语言在软件成果的运行效率、可移植性、可复用性以及与软件设计平台的结合等方面存在很大的差异。
++作为软件开发的主要程序语言是专门为扩展性而设计的语言为泛型构造提供的便利极为强大 目前仍然具有不可或缺的作用。
随着++语言的高级工具和技术不断涌现开发复杂应用软件正变得更简单、更高效。
同时开放源代码软件运动的兴起和发展不但推动了++语言自身的不断完善也推动了开发技术的快速发展和应用领域的不断拓宽。
库是一个可移植、开放源代码的++库作为标准库的后备是++标准化进程的发动机之一。
是由++标准委员会库工作组成员发起的一个++准标准库相当于++标准模板库的延续和扩充它的设计理念和比较接近都是利用泛型让复用达到最大化对比更加实用。
主要集中在算法部分而包含了不少工具类可以完成比较具体的工作。
库覆盖了广泛的应用领域从数学应用库到智能指针从模板元编程库到预处理器库从线程到表达式等。
可以在目前存在的绝大多数操作系统 等平台上使用 同时可以应用目前使用的各种++程序开发平台进行编译和连接还为很多目前流行的程序语言 #等提供相对统一的接口方便了其他语言的应用。
基于库进行程序设计和开发使得利用++语言进行开发更为优雅、有活力、高效。
2在地理网络分析中的作用地理网络分析是空间分析的一个重要方面是依据地理网络拓扑关系并通过考察地理网络元素的空间、属性数据对网络的性能特征进行多方面的分析计算。
地理网络分析主要包括路径分析、服务中心范围的确定、可达性分析等其核心是对最短路径的求解。
地理网络分析作为应用最主要的功能之一其主要目的是对地理网络如交通网络、城市基础设施网络如各种网线、 电力线、 电话线、供排水管线等进行地理分析和模型化。
按照数学意义上的看法可以把地理网络看作图因而可以按照图论的理论基础来描述地理网络并可以利用图论的研究成果来解决地理网络中的网络分析问题图论中的网络概念和一些分析算法在地理网络的表示和网络分析中具有重要的意义。
作为的工具类之一是一个处理图数据结构的库可以应用于地理网络分析的很多领域。
1的设计受到的重要影响包括多个不同的泛型图数据结构邻接链表、邻接矩阵和边列表等作为网络表示和存贮的基础。
同时提供了一个标准化的用来访问图数据结构的通用接口和遵照这套接口的通用类。
这套接口不但隐藏了繁杂的内部实现同时作为一套开放的规范化的接口一些用其它图库实现的接口也能够使用中的各种通用算法。
2提出了基于泛型的图算法其算法由一组核心算法模型用泛型算法实现和一组较大的图算法组成。
核心算法模型包括广度优先搜索、深度优先搜索、均匀开销搜索。
中的图算法被写成了一种把具体数据结构细节抽象出来的接口本身并不进行任何有意义的计算仅仅是为了构建图算法而已。
每一个算法都是用数据结构无关的方法写出的允许一个单独的函数模版处理多种不同的容器类。
同时中的图算法是可扩展的用户能够通过函数对象改写和定制算法 以处理特定领域的问题。
中的图算法当前包括最短路径、 -最短路径、任意两点间最短路径、最小生成树、最小生成树、连通分支、强连通分支、动态连通分支使用不相交集合、拓扑排序、转置、逆排序、拓扑逻辑排序等算法。
3可以实现适应图的附加属性这在地理网络分析中有着重要的意义。
地理网络虽然一般可以用纯数学意义代写论文上的图论上的网络来描述和模拟但它又是一个既具有空间分布特征又具有其本身的许多描述性特征即空间数据和属性数据相互结合的网络系统因此必须给数学意义上的网络添加属性才能更好地模拟地理网络。
中的图数据结构类也有模板参数作为边、点的属性一个属性详细说明了该属性的参数化类型并且分配了标识该属性的标签用来区分边或点的多重属性附着到特定的点或边的属性能够通过属性映射-获得。
在图算法中可以为图结构添加两种属性外在存贮属性和内在存贮属性并且为这两种图的附加属性提供了一致的访问接口。
3在地理网络分析中的应用实例分析31最短路径在地理网络分析中的应用最短路径问题是地理网络分析中的基本问题作为资源分配、线路规划、流量分析等网络优化问题的基础很多网络相关问题
如最优路径问题、最可靠路径问题、网络最大流问题以及各种流量分析问题均可纳入最短路径研究的范畴各种网络分析技术实现的关键在于网络拓扑结构的建立和高效的最短路径算法。
最短路径算法是图论中的一个经典问题经典的图论与不断发展完善的计算机数据结构及算法的有效结合使得新的最短路径算法不断涌现。
针对不同的网络特征、应用需求及具体的软硬件环境各种最短路径算法在空间复杂度、时间复杂度、易实现性及应用范围等方面各具特色。
目前大家的研究工作主要集中于算法实现的优化改进与应用方面一般用于路径最短求解的经典算法有算法、算法、启发式算法及其它算法。
在图论中 图的存储方式有邻接矩阵和邻接表两种基本方法。
地理网络一般可以看成是带权有向不完全稀疏图对于大型稀疏地理网络如道路网而言利用邻接矩阵存储其数据冗余度过大因而是不适宜的。
邻接表是一种常用且对稀疏图效率非常高的存储结构邻接表存储结构的最差运行时间复杂度比邻接矩阵法存储结构低一阶。
综合比较起来邻接表存储结构占优。
提供了基于模板的无向图和有向图的邻接表存储方式的构造方法以及各种经典的最短路径算法基本能够满足地理网络分析的应用。
32基于的最短路径的实现利用实现最短路径的基本步骤如下1构造网络图结构。
利用提供的模板可以定义各种网络图结构可以在这些模板的基础上创建自己的类型如下所示即定义了一个基于邻接表的无向图结构且其边的权值边的属性为双精度浮点性。
_>_;2创建网络图实例。
首先定义网络节点和边。
___;__-_;定义边的属性表__;得到边的属性表_=_ ;从网络数据文件或数据库中得到网络图的拓扑数据并循环插入_; ; ; {_; ; =_ ; []=; }3运行最短路径算法以算法为例。
定义算法的访问算子__-__{___{}_ &{==__; }_; } ;运行算法_-;_;_=1 ;_=2 ;_=_ ;__ &[0] &[0] _ _ 00 __;4得到路径分析结果。
得到最短路径链段_=; [] !={=[] ;…; }= ;得到最短路径的长度=[]33试验结果与分析利用库建立一个独立于系统之外的地理网络分析软件包随着的更新而更新仅仅可以通过替换的动态链接库及其相应头文件即可。
该软件包已经应用于军队及地方的很多重大课题取得很好的效果。
同时为保证软件包应用的稳定性、可靠性以及对其实际应用性能进行检验作者在基于700和256内存的微机上对于27619个节点和36066条边的某地区的实际道路网进行单对节点间的最短路径
分析其运行时间一般为3运行以后的效果如图1所示。
根据应用和试验效果以及对源代码的分析可以得到图库的算法是高效和易用的利用图库完全可以满足中地理网络分析的应用。
可提高系统开发效率而且最新的还提供了基于图结构的并行算法可以满足未来地理网络分析中海量数据分析的需要。
图1最短路径分析的运行效果4结束语目前随着开放源代码软件运动的兴起和发展利用一些优秀的开源代码可以使开发人员更好地关注设计过程将一些的底层模块例如网络分析、数学运算、异常处理等分离开来并独立开发可以提高系统的开发效率和模块化程度。
作为一种优秀的编程范式功能强大的++类库为基于地理网络的空间分析提供了一个新的解决框架可以帮助用户模拟现实世界中的网络条件与情景。
这使得程序设计代码更加简洁改进程序性能同时使程序员花费更少的时间重写相同的代码为不同过程提供更好的可复用性、封装性和互操作性便于程序维护和扩展。
georgedatacenter这次其实是两个促销,一是促销一款特价洛杉矶E3-1220 V5独服,性价比其实最高;另外还促销三款特价vps,georgedatacenter是一家成立于2019年的美国VPS商家,主营美国洛杉矶、芝加哥、达拉斯、新泽西、西雅图机房的VPS、邮件服务器和托管独立服务器业务。georgedatacenter的VPS采用KVM和VMware虚拟化,可以选择windows...
totyun,新公司,主要运作香港vps、日本vps业务,接入cn2网络,不限制流量!VPS基于KVM虚拟,采用系统盘和数据盘分离,从4G内存开始支持Windows系统...大家注意下,网络分“Premium China”、“Global”,由于站长尚未测试,所以也还不清楚情况,有喜欢吃螃蟹的尝试过不妨告诉下站长。官方网站:https://totyun.com一次性5折优惠码:X4QTYVNB3P...
如今我们还有在做个人网站吗?随着自媒体和短视频的发展和兴起,包括我们很多WEB2.0产品的延续,当然也包括个人建站市场的低迷和用户关注的不同,有些个人已经不在做网站。但是,由于我们有些朋友出于网站的爱好或者说是有些项目还是基于PC端网站的,还是有网友抱有信心的,比如我们看到有一些老牌个人网站依旧在运行,且还有新网站的出现。今天在这篇文章中谈谈有网友问关于个人网站备案的问题。这个也是前几天有他在选择...