CN104183123A - 基于判断线段是否相交的叫车订单播送系统 - Google Patents
基于判断线段是否相交的叫车订单播送系统 Download PDFInfo
- Publication number
- CN104183123A CN104183123A CN201410421805.3A CN201410421805A CN104183123A CN 104183123 A CN104183123 A CN 104183123A CN 201410421805 A CN201410421805 A CN 201410421805A CN 104183123 A CN104183123 A CN 104183123A
- Authority
- CN
- China
- Prior art keywords
- order
- rightarrow
- line segment
- taxi
- chauffeur
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Traffic Control Systems (AREA)
Abstract
本发明涉及出租车订单分配方法的技术领域,具体公开了一种基于判断线段是否相交的叫车订单播送系统,其包括:判断模块,订单播送模块;所述判断模块,用于判断各在线出租车针对某一叫车订单是否需要跨越障碍物;所述订单播送模块,用于向不需要跨越障碍物的出租车播送所述叫车订单信息。本发明的技术方案基于线段是否相交的判断,能检测出订单周围的司机是否有需要跨越障碍物的情形,因此在算法的性能和复杂度上有非常好优势,相比与传统的基于路面距离的计算,无需考虑实时路况,大大降低了服务器的计算性能;同时也避免了向需要跨越障碍物的司机推送订单,也提高了订单推送的效率和准确度。
Description
技术领域
本发明涉及出租车智能设备技术领域,尤其涉及出租车订单分配方法的技术领域。
背景技术
随着打车软件的普及,人们的打车习惯已经被深刻的改变。现有的打车软件使用时,乘客通过打车软件发出叫车订单需求,服务器接收到叫车订单需求后,自动匹配该订单起点位置周围的多个司机,将该订单推送给相关司机。
然而由于目前实时路况的复杂性,在获取一订单周围的司机方面,现有的打车软件只能以直线距离为准。这样就暴露出一个问题,对南方的某些城市如武汉、上海、杭州等,存在跨江播送的情况。以武汉为例,武汉市中心被长江切为两半,而现有的打车软件在计算司机与订单的距离时只能计算出直线距离,在这种情况下,某一订单A起点位置和某一司机甲当前位置分布在长江的两岸,直线距离只有0.5km,而司机甲从其当前位置实际接到订单A的乘客则需要先行驶较远距离,过桥,再返回一段路程,实际行程可能达到5km,因此司机甲实际上不属于订单A起点位置周围的司机,不应当将订单A推送给司机甲。
发明内容
本发明要解决的技术问题是:在叫车订单分配或推送过程中,如何克服只通过直线距离获取一订单周围的司机的方法的缺陷,避免向需要跨江、跨河以及跨越立交桥等障碍物的司机推送订单。
为了解决上述技术问题,本发明所采用的技术方案是:
一种基于判断线段是否相交的叫车订单播送系统,其包括:判断模块,订单播送模块;
所述判断模块,用于判断各在线出租车针对某一叫车订单是否需要跨越障碍物;
所述订单播送模块,用于向不需要跨越障碍物的出租车播送所述叫车订单信息。
优选的,所述判断模块包括如下步骤:
步骤1,采集障碍物上至少两个点,形成一个以上障碍物线段,取其中一个障碍物线段为P1P2;
步骤2,取叫车订单集合中任一叫车订单Q,设Q的起点位置为P3,设有一个以上的出租车符合出租车当前位置在叫车订单Q起点位置周围的条件,形成出租车信息集合;
步骤3,取出租车信息集合中任一个出租车C,设C的当前位置为P4,形成司机订单线段P3P4;
步骤4,判断P1P2和P3P4是否相交,如果是,则出租车C针对叫车订单Q需要跨越障碍物,转步骤6;如果否,转下一步骤;
步骤5,各障碍物线段是否已经遍历完,如果否,返回步骤4,取下一个障碍物线段判断是否与司机订单线段P3P4相交;如果是,则出租车C针对叫车订单Q不需要跨越障碍物,转步骤6;
步骤6,出租车信息集合是否已经遍历完,如果否,返回步骤3,取出租车信息集合中下一个出租车;如果是,转下一步骤;
步骤7,叫车订单集合是否已经遍历完,如果否,返回步骤2,取叫车订单集合中下一叫车订单;如果是,结束。
进一步优选的,所述判断P1P2和P3P4是否相交的步骤是:
设定条件1为: 或者
设定条件2为: 或者
如果条件1和条件2同时满足,则P1P2和P3P4相交。
进一步优选的,如果条件1满足,条件2不满足,但时,如果叫车订单Q的起点位置P3在P1P2线段上,P1P2和P3P4是相交的;如果叫车订单Q的起点位置P3在P1P2线段的延长线上,P1P2和P3P4是不相交的。
进一步优选的,所述障碍物为江、河或立交桥。
本发明的上述技术方案基于线段是否相交的判断,能检测出订单周围的司机是否有需要跨越障碍物的情形,达到如下技术效果:
1、在算法的性能和复杂度上有非常好优势,相比与传统的基于路面距离的计算,无需考虑实时路况,大大降低了服务器的计算性能;
2、避免向需要跨越障碍物的司机推送订单,也提高了订单推送的效率和准确度。
附图说明
图1本发明判断模块流程图。
图2基于向量的叉积方式判断两线段是否相交原理图。
图3基于向量的叉积方式判断两线段是否相交的一种特殊情况图。
图4基于向量的叉积方式判断两线段是否相交的另一种特殊情况图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
本发明的工作原理是:基于判断线段是否相交,把江、河、立交桥等需要跨越的障碍物认为是若干个线段连接而成的折线;将司机-订单连线认为是一段线段,一次判断司机-订单线段与障碍物折线中的所有线段是否相交,如果发生相交,则认为存在跨越障碍物的情形;否则不存在跨越障碍物的情形。
本发明,基于判断线段是否相交的叫车订单播送系统,包括:判断模块,订单播送模块;
所述判断模块,用于判断各在线出租车针对某一叫车订单是否需要跨越障碍物;
所述订单播送模块,用于向不需要跨越障碍物的出租车播送所述叫车订单信息。
如图1所示,本发明判断模块流程图。所述判断模块包括如下步骤:
步骤1,采集障碍物上至少两个点,形成一个以上障碍物线段,取其中一个障碍物线段为P1P2;
步骤2,取叫车订单集合中任一叫车订单Q,设Q的起点位置为P3,设有一个以上的出租车符合出租车当前位置在叫车订单Q起点位置周围的条件,形成出租车信息集合;
步骤3,取出租车信息集合中任一个出租车C,设C的当前位置为P4,形成司机订单线段P3P4;
步骤4,判断P1P2和P3P4是否相交,如果是,则出租车C针对叫车订单Q需要跨越障碍物,转步骤6;如果否,转下一步骤;
步骤5,各障碍物线段是否已经遍历完,如果否,返回步骤4,取下一个障碍物线段判断是否与司机订单线段P3P4相交;如果是,则出租车C针对叫车订单Q不需要跨越障碍物,转步骤6;
步骤6,出租车信息集合是否已经遍历完,如果否,返回步骤3,取出租车信息集合中下一个出租车;如果是,转下一步骤;
步骤7,叫车订单集合是否已经遍历完,如果否,返回步骤2,取叫车订单集合中下一叫车订单;如果是,结束。
可以采用基于向量的叉积(cross product)方式判断两线段是否相交,也可以采用其他方法判断两线段是否相交。
采用向量的叉积(cross product)方式判断两线段对应向量和是否相交的原理是:如图2所示,设有线段P1P2,P3P4。和的叉积为正时,说明在的顺时针方向上;为负时,说明在的逆时针方向上;叉积为0说明两向量共线(同向或反向)。因此,当同时满足以下两个条件时则和相交:
(1)和在的两侧(即 或者 );
(2)和在的两侧(即 或者 )。
图3和图4是特殊情况,满足条件(1),不满足条件(2),因为和重合,即和的叉积为0。当叉积为0时要分情况讨论,当P3在线段P1P2上时两线段相交;当P3在线段P1P2的延长线上时两线段不相交。
根据上述基于向量的叉积方式判断两线段是否相交的方法,所述判断P1P2和P3P4是否相交的步骤是:
设定条件1为: 或者
设定条件2为: 或者
如果条件1和条件2同时满足,则P1P2和P3P4相交。
进一步的,如果条件1满足,条件2不满足,但时,如果叫车订单Q的起点位置P3在P1P2线段上,此时P1P2和P3P4是相交的;如果叫车订单Q的起点位置P3在P1P2线段的延长线上,此时P1P2和P3P4是不相交的。
具体实施例一:
以武汉为例,长江在武汉市内近似为一条直线,我们采用人工打点的方式,取长江在武汉的两端点(114.377997,30.666914)和(114.157229,30.380211)
某司机在湖北省武汉市江岸区中山大道1125号,经纬度(114.31108,,30.604891),某乘客在和平达到与秦园路交叉口发出订单,经纬度(114.338137,30.59485),单看司机与乘客的直线距离在2km以内,而因为司机乘客联系横跨了长江,导致司机需要绕桥接乘客,实际距离近8km。
将上面长江两点(114.377997,30.666914)和(114.157229,30.380211)作为P1P2线段,司机(114.31108,,3.604891)与订单(114.338137,30.59485)连线作为OD线段,根据上述基于向量的叉积方式判断两线段是否相交的方法可准确识别出P1P2线段与OD线段相交,因而判断该订单对该司机为跨江播送,进而将该订单对该司机隔离,即不向该司机播送该订单。
具体实施例二:
上海的黄浦江相对复杂,在上海的走势不是一条直线,那么我们通过采集若干个关键点,将黄浦江在上海内的河段描述为一个折线,依次为P1P2、P2P3、P3P4、P5P6、P7P8,判断是否夸奖播送只需判断司乘连线OD是否与上面的任一条线段相交即可。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
Claims (5)
1.一种基于判断线段是否相交的叫车订单播送系统,其特征在于,其包括:判断模块,订单播送模块;
所述判断模块,用于判断各在线出租车针对某一叫车订单是否需要跨越障碍物;
所述订单播送模块,用于向不需要跨越障碍物的出租车播送所述叫车订单信息。
2.如权利要求1所述的叫车订单播送系统,其特征在于,所述判断模块包括如下步骤:
步骤1,采集障碍物上至少两个点,形成一个以上障碍物线段,取其中一个障碍物线段为P1P2;
步骤2,取叫车订单集合中任一叫车订单Q,设Q的起点位置为P3,设有一个以上的出租车符合出租车当前位置在叫车订单Q起点位置周围的条件,形成出租车信息集合;
步骤3,取出租车信息集合中任一个出租车C,设C的当前位置为P4,形成司机订单线段P3P4;
步骤4,判断P1P2和P3P4是否相交,如果是,则出租车C针对叫车订单Q需要跨越障碍物,转步骤6;如果否,转下一步骤;
步骤5,各障碍物线段是否已经遍历完,如果否,返回步骤4,取下一个障碍物线段判断是否与司机订单线段P3P4相交;如果是,则出租车C针对叫车订单Q不需要跨越障碍物,转步骤6;
步骤6,出租车信息集合是否已经遍历完,如果否,返回步骤3,取出租车信息集合中下一个出租车;如果是,转下一步骤;
步骤7,叫车订单集合是否已经遍历完,如果否,返回步骤2,取叫车订单集合中下一叫车订单;如果是,结束。
3.如权利要求2所述的叫车订单播送系统,其特征在于,所述判断P1P2和P3P4是否相交的步骤是:
设定条件1为: 或者
设定条件2为: 或者
如果条件1和条件2同时满足,则P1P2和P3P4相交。
4.如权利要求3所述的叫车订单播送系统,其特征在于,
如果条件1满足,条件2不满足,但时,如果叫车订单Q的起点位置P3在P1P2线段上,P1P2和P3P4是相交的;如果叫车订单Q的起点位置P3在P1P2线段的延长线上,P1P2和P3P4是不相交的。
5.如权利要求1、2、3或4所述的叫车订单播送系统,其特征在于,所述障碍物为江、河或立交桥。
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410421805.3A CN104183123B (zh) | 2014-08-25 | 2014-08-25 | 基于判断线段是否相交的叫车订单播送系统 |
SG11201700895YA SG11201700895YA (en) | 2014-08-04 | 2015-08-04 | Methods and systems for distributing orders |
KR1020177003867A KR20180006871A (ko) | 2014-08-04 | 2015-08-04 | 주문들을 분배하기 위한 방법들 및 시스템들 |
MYPI2017000173A MY188692A (en) | 2014-08-04 | 2015-08-04 | Methods and systems for distributing orders |
US15/501,824 US20170228683A1 (en) | 2014-08-04 | 2015-08-04 | Methods and systems for distributing orders |
EP15829451.2A EP3179420A4 (en) | 2014-08-04 | 2015-08-04 | Service distribution system and method |
SG10201901024TA SG10201901024TA (en) | 2014-08-04 | 2015-08-04 | Methods and systems for distributing orders |
KR1020187037289A KR20190000400A (ko) | 2014-08-04 | 2015-08-04 | 서비스 분배 시스템 및 방법 |
PCT/CN2015/086075 WO2016019857A1 (zh) | 2014-08-04 | 2015-08-04 | 服务派发系统及方法 |
PH12017500192A PH12017500192B1 (en) | 2014-08-04 | 2017-02-01 | Methods and systems for distributing orders |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410421805.3A CN104183123B (zh) | 2014-08-25 | 2014-08-25 | 基于判断线段是否相交的叫车订单播送系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104183123A true CN104183123A (zh) | 2014-12-03 |
CN104183123B CN104183123B (zh) | 2016-05-18 |
Family
ID=51964126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410421805.3A Active CN104183123B (zh) | 2014-08-04 | 2014-08-25 | 基于判断线段是否相交的叫车订单播送系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104183123B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107438226A (zh) * | 2016-05-25 | 2017-12-05 | 滴滴(中国)科技有限公司 | 订单发布处理方法及服务器 |
CN111854768A (zh) * | 2020-03-05 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 地图路线的确定方法和系统、终端和计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1588476A (zh) * | 2004-08-07 | 2005-03-02 | 中华电信股份有限公司 | 出租车营运安全与派遣监控系统 |
JP2006018383A (ja) * | 2004-06-30 | 2006-01-19 | Omron Corp | 情報提供システム及び方法 |
CN103198652A (zh) * | 2013-04-11 | 2013-07-10 | 周文峰 | 一种基于移动互联网的出租车运营业务管理系统及方法 |
CN103531025A (zh) * | 2013-11-08 | 2014-01-22 | 宁波市康惠网络科技有限公司 | 一种利用线路分段方法来匹配信息的拼车系统 |
-
2014
- 2014-08-25 CN CN201410421805.3A patent/CN104183123B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006018383A (ja) * | 2004-06-30 | 2006-01-19 | Omron Corp | 情報提供システム及び方法 |
CN1588476A (zh) * | 2004-08-07 | 2005-03-02 | 中华电信股份有限公司 | 出租车营运安全与派遣监控系统 |
CN103198652A (zh) * | 2013-04-11 | 2013-07-10 | 周文峰 | 一种基于移动互联网的出租车运营业务管理系统及方法 |
CN103531025A (zh) * | 2013-11-08 | 2014-01-22 | 宁波市康惠网络科技有限公司 | 一种利用线路分段方法来匹配信息的拼车系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107438226A (zh) * | 2016-05-25 | 2017-12-05 | 滴滴(中国)科技有限公司 | 订单发布处理方法及服务器 |
CN107438226B (zh) * | 2016-05-25 | 2021-03-16 | 北京嘀嘀无限科技发展有限公司 | 订单发布处理方法及服务器 |
US11069247B2 (en) | 2016-05-25 | 2021-07-20 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for distributing a service request for an on-demand service |
CN111854768A (zh) * | 2020-03-05 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 地图路线的确定方法和系统、终端和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104183123B (zh) | 2016-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sang et al. | A novel method for restoring the trajectory of the inland waterway ship by using AIS data | |
CN104134349B (zh) | 一种基于交通多源数据融合的公交路况处理系统及方法 | |
CN103996293B (zh) | 基于车友协同的实时路况采集查询系统及采集查询方法 | |
CN104464314B (zh) | 一种公交车专用道交叉口的公交优先通行方法 | |
CN104732789A (zh) | 一种基于公交车gps数据生成道路路网地图的方法 | |
CN103295414A (zh) | 一种基于海量历史gps轨迹数据的公交车到站时间预测方法 | |
CN103514758A (zh) | 一种基于车车通信的高效道路交通防碰撞预警方法 | |
CN104732075A (zh) | 一种城市道路交通事故风险实时预测方法 | |
CN103218240B (zh) | 一种基于浮动车轨迹的废弃道路识别方法 | |
CN102855756A (zh) | 一种智能出租车应召方法、服务器和系统 | |
CN105608895B (zh) | 一种基于局部异常因子的城市交通拥堵路段检测方法 | |
CN104680829B (zh) | 基于多用户协同的公交车辆到站时间预测系统及方法 | |
Sotelo et al. | Introduction to the special issue on emergent cooperative technologies in intelligent transportation systems | |
EP4138059A2 (en) | Method, apparatus, and system for processing vehicle-road collaboration information | |
CN106205125A (zh) | 一种救护车抵达时间实时预测系统及方法 | |
CN108280991A (zh) | 车载短距离通信网的车辆交通事故预测方法 | |
CN102982693A (zh) | 导航规划路线上同步显示实时路况的方法和系统 | |
CN102750826A (zh) | 一种用于群体诱导信息下驾驶员响应行为的辨识方法 | |
Yun et al. | Comparison of emergency vehicle preemption methods using a hardware-in-the-loop simulation | |
CN104183123B (zh) | 基于判断线段是否相交的叫车订单播送系统 | |
CN101807348A (zh) | 一种动态网络导航系统及方法 | |
CN111161531A (zh) | 一种基于公交车载终端判断线路正返程和进出站的方法 | |
CN105550364A (zh) | 一种无车道线路口驶入驶出车道连接配对的算法 | |
CN105448088A (zh) | 一种基于大数据的交通状况监测方法及系统 | |
Deng et al. | The bus travel time prediction based on Bayesian networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |