2013年国赛高教杯数学建模D题公共自行车服务系统解题全过程文档及程序

news2024/10/17 21:27:14

2013年国赛高教杯数学建模

D题 公共自行车服务系统

  公共自行车作为一种低碳、环保、节能、健康的出行方式,正在全国许多城市迅速推广与普及。在公共自行车服务系统中,自行车租赁的站点位置及各站点自行车锁桩和自行车数量的配置,对系统的运行效率与用户的满意度有重要的影响。
  附件1为浙江省温州市鹿城区公共自行车管理中心提供的某20天借车和还车的原始数据,所给站点的地理位置参见附件2(详细信息可以参考温州市鹿城区公共自行车管理中心网站:http://www.wzbicycle.com)。请你们在搞清楚公共自行车服务模式和使用规则的基础上,根据附件提供的数据,建立数学模型,讨论以下问题:
  1. 分别统计各站点20天中每天及累计的借车频次和还车频次,并对所有站点按累计的借车频次和还车频次分别给出它们的排序。另外,试统计分析每次用车时长的分布情况。
  2. 试统计20天中各天使用公共自行车的不同借车卡(即借车人)数量,并统计数据中出现过的每张借车卡累计借车次数的分布情况。
  3. 找出所有已给站点合计使用公共自行车次数最大的一天,并讨论以下问题:
  (1)请定义两站点之间的距离,并找出自行车用车的借还车站点之间(非零)最短距离与最长距离。对借还车是同一站点且使用时间在1分钟以上的借还车情况进行统计。
  (2)选择借车频次最高和还车频次最高的站点,分别统计分析其借、还车时刻的分布及用车时长的分布。
  (3)找出各站点的借车高峰时段和还车高峰时段,在地图上标注或列表给出高峰时段各站点的借车频次和还车频次,并对具有共同借车高峰时段和还车高峰时段的站点分别进行归类。
  4. 请说明上述统计结果携带了哪些有用的信息,由此对目前公共自行车服务系统站点设置和锁桩数量的配置做出评价。
  5. 找出公共自行车服务系统的其他运行规律,提出改进建议。

  附件1:公共自行车数据(内含20个Excel文件)
  附件2:公共自行车站点分布图

整体求解过程概述(摘要)

  本文针对温州市鹿城区公共自行车管理中心提供的数据,首先对所给数据进行预处理,建立了相关统计模型,运用SPSS20.0、matlab等软件进行统计分析,最后应用关联度分析法对系统进行评价,并提出改进建议。
  针对问题一:在已处理好的数据基础上,建立了频率与频数、用车时长的统计模型,利用SPSS软件分别统计各站点20天中每天及累计的借车及还车频次,得到每天和累计的借车和还车频次(见表五和表六);并对所有站点按累计的借车和还车频次排序(见表七和表八);对每次用车时长的分布情况进行统计分析,画出其分布图(见图一和图二),由图可知:每天用车时长分布形状非常相似且近似服从χ^2分布。
  针对问题二:在已处理好的数据基础上,建立了使用公用自行车的不同借车卡数量的统计模型,利用SPSS统计20天中每天使用不同借车卡数量,其中最大的为第20天的19885;统计了每张借车卡累计借车次数的分布图(见图三),对图形分析可得:借车次数在10次以内的占54.86%,借车次数在10至30次占35.88%,借车次数在30至50次占7.51%,借车次数在50以上占1.75%,最大借车次数高达"182" 次。
  针对问题三:根据问题一的分析,已给站点累计所用公共自行车次数最大的一天是第20天。对于第一小问:利用第20天数据,运用floyd算法求得两站点间最短时间,将站与站间的距离定义为两站间的最短时间与自行车速度之积,同时考虑到了速度和时间的随机误差影响;利用距离的定义,通过matlab计算得两站点最长距离为:675,最短距离为:0.08。利用问题一中的频数模型,对借还车是同一站点且使用时间在1分钟以上的借还车情况进行统计,得借车频次表(见表十一)和用车时间分布图(见图四)。对于第二小问:根据问题一的统计,第20天的借车和还车频次最高的站点分别为42(街心公园)和56(五马美食林),利用SPSS统计出两站点借、还车时刻和用车时长的分布图(见图五,图六,图七),由图形分析可知:借还车的高峰期与人们上下班的时间非常吻合,在借还车时间上大体都在一小时以内。第三小问:将第20天数据从6点到22点每半小时作为一时段,分别统计各站点各时段借还车频数,利用matlab编程求出借还车高峰时段(见表十二),并对具有借车高峰时段与还车高峰时段的站点进行归类。(见表十四)
  针对问题四:根据前三个问题的统计结果,结合公共自行车服务指南,确定评价公共自行车服务系统站点设置和锁桩数量的配置的主要指标有:借车频数、还车频数、可借比例、可还比例、锁桩数目,建立了基于灰色关联分析法和聚类分析的公共自行车服务评价模型,得到评价结果:180个站点分成有优劣之分的三个类(见表十五)。
  针对问题五:通过查阅相关资料知:公共自行车的其他运行规律主要是借还车时间有限制,用车时间集中在短时间内等。针对此问题提出了相关建议。

模型假设:

  1、以自行车车站号做为借车车站的唯一标识
  2、附件中所给的数据能准确描述公共自行车系统管理与运营状况
  3、自行车行驶的过程中,以匀速行驶,行驶过程中不会停留
  4、异常数据的剔除,不影响数据的整体性

问题分析:

  题目提供了20天公共自行车借车和还车等原始数据,本文的关键就是通过分析处理所给数据,建立数学模型来研究公共自行车服务系统,并对公共自行车服务系统进行评级及提出改进建议。
  问题一分析
  要统计各站点20天中每天和累计的借车和还车频次,查阅资料知[1],频数为频率和频数,对于借车与还车频数,可引入0-1变量表示各站第i天借车和还车在j次记录中出现的频数,各站每天和累计的借车频数就是借出车站号在每天出现的次数和总天数的借车频数和,各站每天的借车频率是借出车站号在每天出现的次数与每天的有效数据,累计的借车频率是累计借车的频数比上总有效数据,对于借车每天及累计的频数类似,从而可建立相应的统计模型。根据以上分析,可统计出各站点20天中每天和累计的借车和还车频次,进而可对所有站点累计的借车和还车频次排序。分析每次用车时长的分布情况,可运用相关软件将分布情况作出。
  问题二分析
  要统计20天每天使用公共自行车的不同借车卡的数量,对于各天的借车人数相当多,为此先用相关软件对有效数据进行处理,即将重复的借车卡,累计到不同借车卡的一行中,可得到没有重复的不同借车卡数据,引入0-1变量表示第i张卡第j个数据中出现的情况,累计求和,就可得到各天不同借车卡的数量,即得相应统计模型,再运用相关软件分析每张借车卡累计次数的分布情况。
  问题三分析
  (1)由于站点之间的实际距离很难得到,且城市里人流量较大,自行车行驶速度不可能很大,应比较均匀,所以定义两站点之间的距离,可根据物理中距离与时间和速度的关系定义距离,其中时间的获取可通过数据中所给的站与站之间的用时加以处理后得到。该定义的距离会应不同的骑车速度和时间,导致两站点距离不同,因此速度和时间需要引进误差,且将两相同站点的距离定义为0,为此可得到距离的定义。对于借还车是同一站点且用时一分钟以上的借还车情况直接利用SPSS进行统计即可得出相应结果。
  (2)根据问题一得到结果,可找到所有站点使用自行车次数最大一天,借车频次高和还车频次最高的站点,根据相应站点的数据,可应用相关软件将各站点的借、还车时刻的分布及用车时长的分布求出。
  (3)题中给出数据的借车还车时间段为6:00-21:00,要求各站点借车还车的高峰时段,可对总的时间段进行划分,考虑到数据量以及统计的精确度,可采用一定时间间隔作为一个时间段,分别统计各个站点在每个事件段内的借车频数以及还车频数,则最高借还车频数对应的时间段即为高峰时段,进而能得出高峰时段各站点的借车频次和还车频次,此处统计工作量可能较大。再对其整体分析,即能得到具有共同借车高峰时段和还车高峰时段的站点的归类情况
  问题四分析
  要对目前公共自行车服务系统站点设置和数量的配置做出评价,要根据前几问统计的数据,找出相应的指标,根据问题一,可让借车频数和还车频数作为其中指标,从数据的初步分析来看,借车、与还车频数可能大,说明车流量比较多,从这方面,也可根据题目所提供的站点地理位置,可以知道各个站台的得可借比例(可借车位比上总车位)和可还比例(可借车位比上总车位),作为其中指标,对于数量的配置,根据各站锁桩的数量等作为其中指标,为此可得到相应指标对自行车服务系统进行评价,运用灰色关联分析法,求出各个站点的关联度,进行排序,可再用SPSS聚类分析分成三类,求出每一类的均值,从而进一步确定出类别间的优劣。
  问题五分析
  要找出自行车服务系统的其他运行规律并提出改进意见,要先对问题中所有数据的一个时间分布情况、借车高峰、还车高峰、以及站点中桩位设置的合理性,进行改进。而改进的方法可能从现有数据和系统流程不能解决,因此可通过查找其他服务系统中号的服务规则进行改进。

模型的建立与求解整体论文缩略图

在这里插入图片描述
在这里插入图片描述

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

程序代码:

function D=floyd(w)
D=w;
n=length(w);
path=zeros(n);
for i=1:n
    for j=1:n
        if D(i,j)~=inf
            path(i,j)=j;
        end
    end
end
for k=1:n
    for i=1:n
        for j=1:n
            if D(i,k)+D(k,j)<D(i,j)
                D(i,j)=D(i,k)+D(k,j);
                path(i,j)=path(i,k);
            end
        end
    end
end
clc;clear;
data=xlsread('day_20.xls');%第一列是借车站号;第二列是还车站号;第三列是用车时长
%P为任意两点间的最小时间
min_time=ones(181)*inf;
for i=1:size(data,1)-1
    if min_time(data(i,1),data(i,2))==inf
        min_time(data(i,1),data(i,2))=data(i,3);
    end
end
min_time;
for i=1:181
    for j=i:181
        min_time(i,j)=min(min_time(i,j),min_time(j,i));
        min_time(j,i)=min(min_time(i,j),min_time(j,i));
    end
end

P=floyd(min_time)
xlswrite('day_20_P.xls',P)
function gaofeng=gaofengqi(y)
x=zeros(size(y,1),size(y,1)-1);
x=y(:,2:end);
gaofeng=[];
for i=1:size(x,1)
    [max1,index1]=max(x(i,:));
    [max2,index2]=max([setdiff(x(i,:),x(i,index1)),0]);
    gaofeng=[gaofeng;i,max1,index1,max2,index2];
end
function output=grayrela
x0=xlsread('参考因子与比较因子.xls','Sheet1','B2:F182')'
%计算灰色关联系数
%参考因子与比较因子共同存储在一个矩阵x0中,参考因子位于第一列

%斜率序列
for i=2:length(x0(:,1))
    x1(i,:)=x0(i,:)-x0(i-1,:);
end

%标准化
m=length(x1(1,:));
for i=1:m
x2(:,i)=x1(:,i)/std(x1(:,i));
end

%排序
[y,pos]=sort(x2(:,1));
x2_sorted=x2(pos,:);

% 判定关联性质
n=length(x1(:,1));
k=[1:n]';
for j=1:m
sig_j(j)=qiuhe(k.*x2_sorted(:,j))-qiuhe(x2_sorted(:,j))*qiuhe(k)/n;
end

%caculation of distantion
for j=2:m
    dist_0i(:,j)=abs(sign(sig_j(:,j)./sig_j(:,1)).*x2_sorted(:,j)-x2_sorted(:,1));
end

%计算关联系数
for i=1:n
    for j=1:m
        coef_rela(i,j)=(min(dist_0i)+0.5*max(dist_0i))/(dist_0i(i,j)+0.5*max(dist_0i));
    end
end

for j=1:m
    output(j)=qiuhe(coef_rela(:,j))/n;
end
xlswrite('day_20_Coef',output);
% function output=qiuhe(input)
% output=0;
% for i=1:length(input)
%     output=output+input(i);
% end
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2209524.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

提升邮件营销设计精准度秘诀,效率与效果实践

邮件营销通过确定目标群体、数据分析、邮件设计、测试优化、保持频率时效性及结合其他渠道实现精准营销&#xff0c;提高市场效益。ZohoCampaigns集成CRM、自动化功能和客户细分提升效果。 1、确定目标群体 精准营销的第一步是了解并确定你的目标群体。标定目标群体包括年龄、…

SpringSecirity(四)——用户退出

因为JWT是无状态的&#xff0c;去中心化的&#xff0c;在服务器端无法清除&#xff0c;服务器一旦进行颁发&#xff0c;就只能等待自动过期 才会失效&#xff0c;所以需要redis配合才能完成登录状态的记录。 实现思路&#xff1a; 登录后在redis中添加一个白名单&#xff0c;把…

信息系统运维管理方案,运维建设文档,运维平台建设方案,软件硬件中间件运维方案,信息安全管理(原件word,PPT,excel)

建设方案目录&#xff1a; 1、智慧运维系统建设背景 2、智慧运维系统建设目标 3、智慧运维系统建设内容 4、智慧运维系统建设技术 5、智慧运维系统建设流程 6、智慧运维系统建设收益 企业对运维管理的需求&#xff1a; 1、提高运维效率&#xff1a;降低运维成本&#xff0c;提高…

威纶通触摸屏与三菱FX5u之间 EtherNet/IP无线以太网通信方案

在实际系统中&#xff0c;同一个车间里分布多台PLC&#xff0c;由触摸屏集中控制。通常所有设备距离在几十米到上百米不等。在有通讯需求的时候&#xff0c;如果布线的话&#xff0c;工程量较大且不美观&#xff0c;这种情况下比较适合采用无线通信方式。本方案以威纶通触摸屏和…

Python数据分析-Scipy科学计算法

1.认识Scipy SciPy&#xff08;发音为 "Sigh Pie"&#xff09;是一个开源的 Python 算法库和数学工具包。 通常与 NumPy、Matplotlib 和 pandas 等库一起使用&#xff0c;这些库共同构成了 Python 的科学计算基础。 2.使用Scipy基本函数 2.1 引用Scipy函数 impor…

vue+echarts实现雷达图及刻度标注

文章目录 前言代码实现实现效果总结 前言 最近项目有做数据可视化 大屏 不免再次使用些echarts应用 记录下其中echarts雷达图的实现 代码实现 先上代码 <template><div class"container"><div ref"chart" style"width: 500px; heig…

【Spring AI】Java实现类似langchain的向量数据库RAG_原理与具体实践

介绍一下RAG&#xff1a; 检索增强生成&#xff08;RAG&#xff09;是一种技术&#xff0c;它结合了检索模型和生成模型来提高文本生成的质量。通过从企业私有或专有的数据源中检索相关信息&#xff0c;并将这些信息与大型语言模型相结合&#xff0c;RAG能够显著减少模型产生幻…

如何建立高质量的谷歌外链?

想做谷歌seo&#xff0c;外链是绝对绕不开的一个门槛&#xff0c;外链对网站的流量和SEO表现有很大帮助&#xff0c;正常途径想建立高质量外链需要策略和技巧&#xff0c;内容平台和博客是获取外链的好地方。在这些平台上发布文章并嵌入外链&#xff0c;不仅可以展示你的专业能…

删除链表的倒数第 N 个结点 | LeetCode-19 | 双指针 | 递归 | 栈 | 四种方法

&#x1f64b;大家好&#xff01;我是毛毛张! &#x1f308;个人首页&#xff1a; 神马都会亿点点的毛毛张 这道题还可以用递归法&#xff0c;你想到了吗&#xff1f;毛毛张介绍四种方法 LeetCode链接&#xff1a;19. 删除链表的倒数第 N 个结点 1.题目描述 给你一个链表&a…

《Linux从小白到高手》综合应用篇:深入理解Linux进程调优

本篇深入介绍Linux进程调优. 1. Linux系统进程类型&#xff1a; Linux的进程可能有成千上万个&#xff1a; ‌新建状态‌&#xff1a;进程刚刚被创建&#xff0c;但尚未运行。 ‌就绪状态‌&#xff1a;进程已经准备好运行&#xff0c;等待CPU分配。 ‌运行状态‌&#xff1…

解读 AI 获客关键要素,开启营销新未来

​在当今数字化浪潮席卷的时代&#xff0c;企业获客的难度与日俱增&#xff0c;传统方式逐渐力不从心。而 AI 获客宛如一颗璀璨的新星&#xff0c;为企业带来全新的机遇。 AI 获客凭借人工智能强大的数据分析能力&#xff0c;能从海量数据中精准挖掘出目标客户。其优势显著&…

C语言题目练习2

前面我们知道了单链表的结构及其一些数据操作&#xff0c;今天我们来看看有关于单链表的题目~ 移除链表元素 移除链表元素&#xff1a; https://leetcode.cn/problems/remove-linked-list-elements/description/ 这个题目要求我们删除链表中是指定数据的结点&#xff0c;最终返…

虹科应用 | 15分钟部署CAN记录仪,节省95%成本的秘诀是什么?

欢迎关注虹科&#xff0c;为您提供最新资讯&#xff01; 导读 虹科CSS的CANedge数据记录仪专为汽车和工业领域的工程师设计&#xff0c;旨在通过监控现场资产来支持研发、诊断和预测性维护。为了将这些数据转化为直观的可视化信息&#xff0c;工程师们通常依赖于Grafana仪表板…

MuMu模拟器12 KitsumeMask安装教程

这里是引用"> 在MuMu模拟器上安装KitsumeMask的时候遇到安装失败的情况。 一、下载APK安装包 如果你没有apk安装包可以通过下面的百度网盘进行下载 通过网盘分享的文件:KitsumeMask 链接: https://pan.baidu.com/s/1yeq3I6BsUD7J6uI-bnk-Vw?pwd=7n3v 提取码: 7n3v 二…

【LeetCode】动态规划—123. 买卖股票的最佳时机 III(附完整Python/C++代码)

动态规划—123. 买卖股票的最佳时机 III 题目描述前言基本思路1. 问题定义2. 理解问题和递推关系状态定义&#xff1a;状态转移公式&#xff1a;初始条件&#xff1a; 3. 解决方法动态规划方法伪代码&#xff1a; 4. 进一步优化5. 小总结 Python代码Python代码解释 C代码C代码解…

『网络游戏』代码操作数据库增删改查【22】

创建一个新的Vistual Studio案例工程 命名为SqlTest 导入MySql.dll (官网安装即可) 导入到新建工程创建Libs文件夹放里即可 浏览找到位置添加引用即可 1.增加数据 编写脚本&#xff1a;Program 运行工程 - 添加/插入完成 打开navicat查看数据库表信息 在增加数据中可以获取主…

如何安装Tensorflow GPU版本

可以安装对应版本的cudatoolkit cudnn 我这次需要安装tensorflow-gpu1.15.0 经查看 对应的cuda 10 所以&#xff1a; conda install cudatoolkit10.0.130它对应的是cudnn 7.4 但是没安装成功 然后我直接输入 conda install cudnn 它根据cuda10 找到了对应的cudnn 7.6.…

13.JVM内存模型深度剖析

一、JDK体系结构 JDK代表Java Development Kit(Java开发工具包)&#xff0c;是用于开发和编译Java应用程序的软件包。JDK是由Oracle提供的Java平台的官方实现&#xff0c;包含了开发和运行Java程序所需的工具、库和JRE(Java Runtime Environment)。 二、JAVA语言跨平台特性 Ja…

控制模型执行 | AnyLogic帮助

控制模型执行 | AnyLogic帮助 当运行AnyLogic模型时&#xff0c;您可以使用控制面板来控制模型的执行&#xff0c;控制面板显示在AnyLogic模型窗口的底部。 控制面板包含用于控制启动模型执行的按钮&#xff1a; 按钮命令描述运行[仅当模型当前未运行时可见]从当前状态运行模…

无人机之交互系统篇

一、系统构成 无人机交互系统通常由多个子系统组成&#xff0c;包括但不限于&#xff1a; 多模式人机交互装置&#xff1a;这是人机交互系统的基础层&#xff0c;通常包括计算机、局域网、传感器等设备&#xff0c;用于实现操作员与无人机之间的数据交互和指令传递。例如&…