Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

Aller à Demande

1. WO2020107440 - SYSTÈMES ET PROCÉDÉS D'ANALYSE D'ENCOMBREMENT DU TRAFIC

Document

Description

Title of Invention 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126  

Claims

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23  

Drawings

1   2   3   4   5   6   7   8  

Description

Title of Invention : SYSTEMS AND METHODS FOR ANALYZING TRAFFIC CONGESTION

[0001]
CROSS-REFERENCE TO RELATED APPLICATIONS
[0002]
This application claims priority to Chinese Application No. 201811438318.2, filed on November 27, 2018, the entire contents of which are hereby incorporated by reference.

TECHNICAL FIELD

[0003]
The present disclosure generally relates to intelligent transportation, and in particular, systems and methods for determining a traffic time index (TTI) associated with an object within a start time and an end time.

BACKGROUND

[0004]
Traffic congestion is a phenomenon that vehicles can only travel at a low speed due to too much traffic on the road. Traffic congestion may be particularly serious during the morning and evening rush hours or holidays. Thus, when traveling on the road, a driver may expect to know real-time traffic conditions so as to choose a driving route.
[0005]
Online to offline (O2O) services, such as online car-hailing services, have been widely used in daily lives because of their convenience. Online car-hailing service systems or platforms may store a large amount of trajectory data of vehicles (such as vehicle speed, the number of vehicles on the road) , which can be used to determine real-time traffic congestion. For example, if a road is under construction, the trajectory data of vehicles near the road can be applied to measure the impact of construction on the traffic. Also, in general, traffic congestion can be evaluated by a traffic time index (TTI) . Thus, it is desirable to provide systems and methods for determining a more accurate TTI associated with an object (e.g., a road, an area) within a start time and an end time based on the trajectory data of vehicles to forecast related traffic congestion.
[0006]
SUMMARY
[0007]
In one aspect of the present disclosure, a system for analyzing traffic congestion is provided. The system may include at least one storage device, and at least one processor in communication with the at least one storage device. The at least one storage device may include a set of instructions for determining a traffic time index (TTI) associated with an object within a start time and an end time. When executing the set of instructions, the at least one processor may be directed to determine one or more target links corresponding to the object from a spatial database storing a target map. The at least one processor may also be directed to select one or more sets of parameters corresponding to the each target link based on the start time and the end time for each target link of the one or more target links. The at least one processor may be further directed to determine a traffic time index corresponding to the object within the start time and the end time based on the each target link and the one or more sets of parameters corresponding to the each target link.
[0008]
In some embodiments, the object may be a target road. To determine the one or more target links, the at least one processor may be directed to generate a buffer zone using one or more template links on a template map with respect to the target road, and obtain one or more candidate links covered by the buffer zone by performing a spatial index query with respect the target road in the spatial database. For a candidate link of the one or more candidate links, the at least one processor may also be directed to generate a projected link by projecting the candidate link onto the one or more template links on the template map; determine a matching score between the candidate link and the projected link; and determine the candidate link as one of the one or more target links if the matching score exceeds a threshold.
[0009]
In some embodiments, the at least one processor may be further directed to determine the matching score between the candidate link and the projected link according to a Hausdorff distance matching.
[0010]
In some embodiments, the object may be a target area. To determine the one or more target links corresponding to the target area, the at least one processor may be directed to perform a spatial index query with respect to the target area in the spatial database to determine the one or more target links on the target map.
[0011]
In some embodiments, the spatial database may include at least one of a PostGIS spatial database, an Oracle Spatial, a Spatial DataBlade, or a DB2 Spatial Extender.
[0012]
In some embodiments, the one or more sets of parameters may correspond to one or more target periods. To select the one or more sets of parameters corresponding to the each target link, the at least one processor may be directed to determine a first time period corresponding to the start time; determine a second time period corresponding to the end time; determine the one or more target periods based on the first time period and the second time period; and select the one or more sets of parameters corresponding to the each target link based on the one or more target periods.
[0013]
In some embodiments, each of the one or more sets of parameters of the each target link may include a free-flow speed and a number of vehicles on the each target link within one of the one or more target periods.
[0014]
In some embodiments, to determine the traffic time index corresponding to the object within the start time and the end time, the at least one processor may be further directed to determine an actual time corresponding to the object based on the one or more target periods, and determine a free-flow time corresponding to the object based on the one or more target periods.
[0015]
In some embodiments, the traffic time index corresponding to the object within the start time and the end time may be a ratio of the actual time and the free-flow time.
[0016]
In some embodiments, when the object is mapped to more than one target link of the one or more target links, the actual time may be related to the actual traveling time of vehicle on the more than one target link corresponding to the object, and the free-flow time may be related to the ideal traveling time of vehicle on the more thank target link corresponding to the object.
[0017]
In some embodiments, the system may further include a network configured to facilitate communication in the system, and a plurality of processing devices distributed connected to the network simultaneously process a request, executed in a user terminal by an application, for the traffic time index. The request may include the object, the start time and the end time. The traffic time index may be sent to an interface of the user terminal for display by the at least one processor.
[0018]
In another aspect of the present disclosure, a method implemented on a computing device is provided. The computing device may have at least one processor, at least one computer-readable storage medium, and a communication platform connected to a network. The method may include determining one or more target links corresponding to the object from a spatial database storing a target map. The method may also include selecting one or more sets of parameters corresponding to the each target link based on the start time and the end time for each target link of the one or more target links. The method may further include determining a traffic time index corresponding to the object within the start time and the end time based on the each target link and the one or more sets of parameters corresponding to the each target link.
[0019]
In another aspect of the present disclosure, a non-transitory computer-readable storage medium is provided. The non-transitory computer-readable storage medium may include at least one set of instructions for determining a traffic time index (TTI) associated with an object within a start time and an end time. When executed by at least one processor of a computing device, the at least one set of instructions may direct the at least one processor to perform acts of determining one or more target links corresponding to the object from a spatial database storing a target map. The at least one set of instructions may also direct the at least one processor to perform acts of selecting one or more sets of parameters corresponding to the each target link based on the start time and the end time for each target link of the one or more target links. The at least one set of instructions may also direct the at least one processor to perform acts of determining a traffic time index corresponding to the object within the start time and the end time based on the each target link and the one or more sets of parameters corresponding to the each target link.
[0020]
In another aspect of the present disclosure, a system for analyzing traffic congestion is provided. The system may include a target link determination module configured to determine one or more target links corresponding to the object from a spatial database storing a target map. The system may also include a parameter selection module configured to select one or more sets of parameters corresponding to the each target link based on the start time and the end time for each target link of the one or more target links. The system may further include a traffic time index determination module configured to determine a traffic time index corresponding to the object within the start time and the end time based on the each target link and the one or more sets of parameters corresponding to the each target link.
[0021]
Additional features will be set forth in part in the description which follows, and in part will become apparent to those skilled in the art upon examination of the following and the accompanying drawings or may be learned by production or operation of the examples. The features of the present disclosure may be realized and attained by practice or use of various aspects of the methodologies, instrumentalities and combinations set forth in the detailed examples discussed below.

BRIEF DESCRIPTION OF THE DRAWINGS

[0022]
The present disclosure is further described in terms of exemplary embodiments. These exemplary embodiments are described in detail with reference to the drawings. The drawings are not to scale. These embodiments are non-limiting schematic embodiments, in which like reference numerals represent similar structures throughout the several views of the drawings, and wherein:
[0023]
FIG. 1 is a schematic diagram illustrating an exemplary O2O service system according to some embodiments of the present disclosure;
[0024]
FIG. 2 is a schematic diagram illustrating exemplary hardware and/or software components of a computing device according to some embodiments of the present disclosure;
[0025]
FIG. 3 is a schematic diagram illustrating exemplary hardware and/or software components of a mobile device according to some embodiments of the present disclosure;
[0026]
FIG. 4 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure;
[0027]
FIG. 5 is a flowchart illustrating an exemplary process for determining a traffic time index according to some embodiments of the present disclosure;
[0028]
FIG. 6 is a flowchart illustrating an exemplary process for determining one or more target links corresponding to a road according to some embodiments of the present disclosure;
[0029]
FIG. 7 is a flowchart illustrating an exemplary process for determining one or more sets of parameters corresponding to a target link according to some embodiments of the present disclosure; and
[0030]
FIG. 8 is a flowchart illustrating an exemplary process for determining a traffic time index according to some embodiments of the present disclosure.

DETAILED DESCRIPTION

[0031]
The following description is presented to enable any person skilled in the art to make and use the present disclosure, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present disclosure. Thus, the present disclosure is not limited to the embodiments shown, but is to be accorded the widest scope consistent with the claims.
[0032]
The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting. As used herein, the singular forms “a, ” “an, ” and “the” may be intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprise, ” “comprises, ” and/or “comprising, ” “include, ” “includes, ” and/or “including, ” when used in this disclosure, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
[0033]
These and other features, and characteristics of the present disclosure, as well as the methods of operations and functions of the related elements of structure and the combination of parts and economies of manufacture, may become more apparent upon consideration of the following description with reference to the accompanying drawings, all of which form a part of this disclosure. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended to limit the scope of the present disclosure. It is understood that the drawings are not to scale.
[0034]
The flowcharts used in the present disclosure illustrate operations that systems implement according to some embodiments of the present disclosure. It is to be expressly understood, the operations of the flowcharts may be implemented not in order. Conversely, the operations may be implemented in inverted order, or simultaneously. Moreover, one or more other operations may be added to the flowcharts. One or more operations may be removed from the flowcharts.
[0035]
Moreover, while the system and method in the present disclosure is described primarily regarding an on-demand transportation service (e.g., O2O service) , it should also be understood that this is only one exemplary embodiment. The system or method of the present disclosure may be applied to any other kind of on demand service. For example, the system or method of the present disclosure may be applied to transportation systems of different environments including land, ocean, aerospace, or the like, or any combination thereof. The vehicle of the transportation systems may include a taxi, a private car, a hitch, a bus, a train, a bullet train, a high-speed rail, a subway, a vessel, an aircraft, a spaceship, a hot-air balloon, a driverless vehicle, or the like, or any combination thereof. The transportation system may also include any transportation system for management and/or distribution, for example, a system for sending and/or receiving an express. The application of the system or method of the present disclosure may include a web page, a plug-in of a browser, a client terminal, a custom system, an internal analysis system, an artificial intelligence robot, or the like, or any combination thereof.
[0036]
The terms “passenger, ” “requester, ” “service requester, ” and “customer” in the present disclosure are used interchangeably to refer to an individual, an entity or a tool that may request or order a service. Also, the term “driver, ” “provider, ” “service provider, ” and “supplier” in the present disclosure are used interchangeably to refer to an individual, an entity or a tool that may provide a service or facilitate the providing of the service. The term “user” in the present disclosure may refer to an individual, an entity, or a tool that may request a service, order a service, provide a service, or facilitate the providing of the service. For example, the user may be a passenger, a driver, an operator, or the like, or any combination thereof. In the present disclosure, “passenger” and “passenger terminal” may be used interchangeably, and “driver” and “driver terminal” may be used interchangeably.
[0037]
The terms “service request” and “order” in the present disclosure are used interchangeably to refer to a request that may be initiated by a passenger, a requester, a service requester, a customer, a driver, a provider, a service provider, a supplier, or the like, or any combination thereof. The service request may be accepted by any one of a passenger, a requester, a service requester, a customer, a driver, a provider, a service provider, or a supplier. The service request may be chargeable or free.
[0038]
The positioning technology used in the present disclosure may be based on a global positioning system (GPS) , a global navigation satellite system (GLONASS) , a compass navigation system (COMPASS) , a Galileo positioning system, a quasi-zenith satellite system (QZSS) , a wireless fidelity (WiFi) positioning technology, or the like, or any combination thereof. One or more of the above positioning technologies may be used interchangeably in the present disclosure.
[0039]
The present disclosure relates to systems and methods for analyzing traffic congestion. The traffic congestion may be evaluated by a traffic time index (TTI) . The systems and methods may receive a request, executed in a user terminal by an application, including an object, a start time and an end time. The systems and methods may determine one or more target links corresponding to the object from a spatial database storing a target map. If the object is the target area, the systems and methods may perform a spatial index query with respect to the target area in the spatial database to determine the one or more target links on the target map. If the object is the target road, the systems and methods may generate a buffer zone using one or more template links on a template map with respect to the target road, and obtain one or more candidate links covered by the buffer zone by performing a spatial index query with respect to the target road in the spatial database. The systems and methods may determine the one or more target links corresponding to the target road according to the candidate links. The systems and methods may select one or more sets of parameters corresponding to each of the one or more target links based on the start time and the end time. Each of the one or more sets of parameters of a target link may include a free-flow speed and a number of vehicle on the target link during a target period. The systems and methods may determine a TTI corresponding to the object within the start time and the end time based on the one or more target links and the one or more sets of parameters corresponding to each of the one or more target links. The systems and methods may send the TTI to an interface of the user terminal for display. In some embodiments, the systems and methods may determine a plurality of TTIs corresponding to the object within the start time and the end time, which may be used to evaluate traffic congestion corresponding to the object.
[0040]
FIG. 1 is a schematic diagram illustrating an exemplary O2O service system 100 according to some embodiments of the present disclosure. For example, the O2O service system 100 may be an online transportation service platform for transportation services. As illustrated in FIG. 1, the O2O service system 100 may include a server 110, a network 120, a requester terminal 130, a provider terminal 140, a storage device 150, and a navigation system 160.
[0041]
The O2O service system 100 may provide a plurality of services. Exemplary services may include a taxi hailing service, a chauffeur service, an express car service, a carpool service, a bus service, a driver hiring service, and a shuttle service. In some embodiments, the O2O service may be any online service, such as booking a meal, shopping, or the like, or any combination thereof. In some embodiments, the O2O service system 100 may be configured to analyze traffic congestion associated with a road or an area.
[0042]
In some embodiments, the server 110 may be a single server or a server group. The server group may be centralized, or distributed (e.g., server 110 may be a distributed system) . In some embodiments, the server 110 may be local or remote. For example, the server 110 may access information and/or data stored in the requester terminal 130, the provider terminal 140, and/or the storage device 150 via the network 120. As another example, the server 110 may be directly connected to the requester terminal 130, the provider terminal 140, and/or the storage device 150 to access stored information and/or data. In some embodiments, the server 110 may be implemented on a cloud platform. Merely by way of example, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof. In some embodiments, the server 110 may be implemented on a computing device 200 having one or more components illustrated in FIG. 2 in the present disclosure.
[0043]
In some embodiments, the server 110 may include a processing device 112. The processing device 112 may process information and/or data relating to a request to perform one or more functions described in the present disclosure. For example, the processing device 112 may determine a traffic time index in response to a request including an object, a start time and an end time. In some embodiments, the server 110 may include a plurality of processing devices distributed connected to the network 120. The plurality of processing devices may simultaneously process a plurality of request corresponding to a plurality of objects. For example, a first processing device may be configured to process a first request, and a second processing device may be configured to process a second request. The first request may include a first object (e.g., a road) , a first start time, and a first end time. The second request may include a second object (e.g., an area) , a second start time, and a second end time. In some embodiments, the processing device 112 may include one or more processing devices (e.g., single-core processing device (s) or multi-core processor (s) ) . Merely by way of example, the processing device 112 may include one or more hardware processors, such as a central processing unit (CPU) , an application-specific integrated circuit (ASIC) , an application-specific instruction-set processor (ASIP) , a graphics processing unit (GPU) , a physics processing unit (PPU) , a digital signal processor (DSP) , a field-programmable gate array (FPGA) , a programmable logic device (PLD) , a controller, a microcontroller unit, a reduced instruction-set computer (RISC) , a microprocessor, or the like, or any combination thereof.
[0044]
The network 120 may facilitate the exchange of information and/or data. In some embodiments, the network 112 may facilitate communication in the O2O service system 100. One or more components of the O2O service system 100 (e.g., the server 110, the requester terminal 130, the provider terminal 140, the storage device 150, and the navigation system 160) may send information and/or data to other component (s) in the O2O service system 100 via the network 120. For example, the server 110 may obtain/acquire service request from the requester terminal 130 via the network 120. In some embodiments, the network 120 may be any type of wired or wireless network, or a combination thereof. Merely by way of example, the network 130 may include a cable network, a wireline network, an optical fiber network, a telecommunications network, an intranet, the Internet, a local area network (LAN) , a wide area network (WAN) , a wireless local area network (WLAN) , a metropolitan area network (MAN) , a wide area network (WAN) , a public telephone switched network (PSTN) , a Bluetooth TM network, a ZigBee TM network, a near field communication (NFC) network, or the like, or any combination thereof. In some embodiments, the network 120 may include one or more network access points. For example, the network 120 may include wired or wireless network access points such as base stations and/or internet exchange points 120-1, 120-2, …, through which one or more components of the O2O service system 100 may be connected to the network 120 to exchange data and/or information.
[0045]
In some embodiments, a requester may be a user of the requester terminal 130. In some embodiments, the user of the requester terminal 130 may be someone other than the requester. For example, a user A of the requester terminal 130 may use the requester terminal 130 to send a service request for a user B, or receive service and/or information or instructions from the server 110. In some embodiments, a provider may be a user of the provider terminal 140. In some embodiments, the user of the provider terminal 140 may be someone other than the provider. For example, a user C of the provider terminal 140 may user the provider terminal 140 to receive a service request for a user D, and/or information or instructions from the server 110. In some embodiments, “requester” and “requester terminal” may be used interchangeably, and “provider” and “provider terminal” may be used interchangeably. In some embodiments, the provider terminal may be associated with one or more providers (e.g., a night-shift service provider, or a day-shift service provider) .
[0046]
In some embodiments, the requester terminal 130 may include a mobile device 130-1, a tablet computer 130-2, a laptop computer 130-3, a built-in device in a motor vehicle 130-4, or the like, or any combination thereof. In some embodiments, the mobile device 130-1 may include a smart home device, a wearable device, a mobile device, a virtual reality device, an augmented reality device, or the like, or any combination thereof. In some embodiments, the smart home device may include a smart lighting device, a control device of an intelligent electrical apparatus, a smart monitoring device, a smart television, a smart video camera, an interphone, or the like, or any combination thereof. In some embodiments, the wearable device may include a bracelet, footgear, glasses, a helmet, a watch, clothing, a backpack, a smart accessory, or the like, or any combination thereof. In some embodiments, the mobile device may include a mobile phone, a personal digital assistance (PDA) , a gaming device, a navigation device, a point of sale (POS) device, a laptop, a desktop, or the like, or any combination thereof. In some embodiments, the virtual reality device and/or the augmented reality device may include a virtual reality helmet, a virtual reality glass, a virtual reality patch, an augmented reality helmet, augmented reality glasses, an augmented reality patch, or the like, or any combination thereof. For example, the virtual reality device and/or the augmented reality device may include a Google Glass TM, a RiftCon TM, a Fragments TM, a Gear VR TM, etc. In some embodiments, a built-in device in the motor vehicle 130-4 may include an onboard computer, an onboard television, etc. In some embodiments, the requester terminal 130 may be a device with positioning technology for locating the position of the requester and/or the requester terminal 130.
[0047]
The provider terminal 140 may include a plurality of provider terminals 140-1, 140-2, …, 140-n. In some embodiments, the provider terminal 140 may be a device that is similar to, or the same as the requester terminal 130. In some embodiments, the provider terminal 140 may be a device utilizing positioning technology for locating the position of a user of the provider terminal 140 (e.g., a service provider) and/or the provider terminal 140. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may communicate with one or more other positioning devices to determine the position of the requester, the requester terminal 130, the provider, and/or the provider terminal 140. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may send positioning information to the server 110.
[0048]
The storage device 150 may store data and/or instructions. In some embodiments, the storage device 150 may store data obtained from the requester terminal 130 and/or the provider terminal 140. In some embodiments, the storage device 150 may store data and/or instructions that the server 110 may execute or use to perform exemplary methods described in the present disclosure. In some embodiments, storage device 150 may include a mass storage, a removable storage, a volatile read-and-write memory, a read-only memory (ROM) , or the like, or any combination thereof. Exemplary mass storage may include a magnetic disk, an optical disk, a solid-state drive, etc. Exemplary removable storage may include a flash drive, a floppy disk, an optical disk, a memory card, a zip disk, a magnetic tape, etc. Exemplary volatile read-and-write memory may include a random access memory (RAM) . Exemplary RAM may include a dynamic RAM (DRAM) , a double date rate synchronous dynamic RAM (DDR SDRAM) , a static RAM (SRAM) , a thyrisor RAM (T-RAM) , and a zero-capacitor RAM (Z-RAM) , etc. Exemplary ROM may include a mask ROM (MROM) , a programmable ROM (PROM) , an erasable programmable ROM (EPROM) , an electrically-erasable programmable ROM (EEPROM) , a compact disk ROM (CD-ROM) , and a digital versatile disk ROM, etc. In some embodiments, the storage device 150 may be implemented on a cloud platform. Merely by way of example, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof.
[0049]
In some embodiments, the storage device 150 may be connected to the network 120 to communicate with one or more components of the O2O service system 100 (e.g., the server 110, the requester terminal 130, the provider terminal 140) . One or more components in the O2O service system 100 may access the data or instructions stored in the storage device 150 via the network 120. In some embodiments, the storage device 150 may be directly connected to or communicate with one or more components in the O2O service system 100 (e.g., the server 110, the requester terminal 130, the provider terminal 140) . In some embodiments, the storage device 150 may be part of the server 110.
[0050]
The navigation system 160 may determine information associated with an object, for example, one or more of the requester terminal 130, the provider terminal 140, etc. The information may include a location, an elevation, a velocity, or an acceleration of the object, or a current time. For example, the navigation system 160 may determine a current location of the requester terminal 130. In some embodiments, the navigation system 160 may be a global positioning system (GPS) , a global navigation satellite system (GLONASS) , a compass navigation system (COMPASS) , a BeiDou navigation satellite system, a Galileo positioning system, a quasi-zenith satellite system (QZSS) , etc. The location may be in the form of coordinates, such as, latitude coordinate and longitude coordinate, etc. The navigation system 160 may include one or more satellites, for example, a satellite 160-1, a satellite 160-2, and a satellite 160-3. The satellites 160-1 through 160-3 may determine the information mentioned above independently or jointly. The navigation system 160 may send the information mentioned above to the network 120, the requester terminal 130, or the provider terminal 140 via wireless connections.
[0051]
In some embodiments, one or more components of the O2O service system 100 (e.g., the server 110, the requester terminal 130, the provider terminal 140) may have permission to access the storage device 150. In some embodiments, one or more components of the O2O service system 100 may read and/or modify information relating to the requester, provider, and/or the public when one or more conditions are met. For example, the server 110 may read and/or modify one or more users’ information after a service is completed. As another example, the provider terminal 140 may access information relating to the requester when receiving a service request from the requester terminal 130, but the provider terminal 140 may not modify the relevant information of the requester.
[0052]
One of ordinary skill in the art would understand that when an element (or component) of the O2O service system 100 performs, the element may perform through electrical signals and/or electromagnetic signals. For example, when a requester terminal 130 transmits out a service request to the server 110, a processor of the requester terminal 130 may generate an electrical signal encoding the request. The processor of the requester terminal 130 may then transmit the electrical signal to an output port. If the requester terminal 130 communicates with the server 110 via a wired network, the output port may be physically connected to a cable, which further may transmit the electrical signal to an input port of the server 110. If the requester terminal 130 communicates with the server 110 via a wireless network, the output port of the requester terminal 130 may be one or more antennas, which convert the electrical signal to electromagnetic signal. Similarly, a provider terminal 140 may receive an instruction and/or service request from the server 110 via electrical signal or electromagnet signals. Within an electronic device, such as the requester terminal 130, the provider terminal 140, and/or the server 110, when a processor thereof processes an instruction, transmits out an instruction, and/or performs an action, the instruction and/or action is conducted via electrical signals. For example, when the processor retrieves or saves data from a storage medium, it may transmit out electrical signals to a read/write device of the storage medium, which may read or write structured data in the storage medium. The structured data may be transmitted to the processor in the form of electrical signals via a bus of the electronic device. Here, an electrical signal may refer to one electrical signal, a series of electrical signals, and/or a plurality of discrete electrical signals.
[0053]
FIG. 2 is a schematic diagram illustrating exemplary hardware and software components of a computing device 200 according to some embodiments of the present disclosure. In some embodiments, the server 110, the requester terminal 130, and/or the provider terminal 140 may be implemented on the computing device 200. For example, the processing device 112 of the server 110 may be implemented on the computing device 200 and configured to perform functions of the processing device 112 disclosed in this disclosure.
[0054]
The computing device 200 may be a general purpose computer or a special purpose computer, both may be used to implement an O2O service system for the present disclosure. The computing device 200 may be used to implement any component of the O2O service system as described herein. For example, the processing device 112 may be implemented on the computing device, via its hardware, software program, firmware, or a combination thereof. Although only one such computer is shown, for convenience, the computer functions relating to the O2O service as described herein may be implemented in a distributed fashion on a number of similar platforms, to distribute the processing load.
[0055]
The computing device 200, for example, may include a COM port 250 connected to and/or from a network connected thereto to facilitate data communications. The computing device 200 may also include a processor 220, in the form of one or more processors (or CPUs) , for executing program instructions. The exemplary computing device may include an internal communication bus 210, different types of program storage units and data storage units (e.g., a disk 270, a read only memory (ROM) 230, a random access memory (RAM) 240) , various data files applicable to computer processing and/or communication. The exemplary computing device may also include program instructions stored in the ROM 230, RAM 240, and/or other type of non-transitory storage medium to be executed by the processor 220. The method and/or process of the present disclosure may be implemented as the program instructions. The computer device 200 also includes an I/O device 260 that may support the input and/or output of data flows between the computing device 200 and other components. The computing device 200 may also receive programs and data via the communication network.
[0056]
Merely for illustration, only one CPU and/or processor is described in the computing device 200. However, it should be noted that the computing device 200 in the present disclosure may also include multiple CPUs and/or processors, thus operations and/or method steps that are performed by one CPU and/or processor as described in the present disclosure may also be jointly or separately performed by the multiple CPUs and/or processors. For example, if in the present disclosure the CPU and/or processor of the computing device 200 executes both step A and step B, it should be understood that step A and step B may also be performed by two different CPUs and/or processors jointly or separately in the computing device 200 (e.g., the first processor executes step A and the second processor executes step B, or the first and second processors jointly execute steps A and B) .
[0057]
FIG. 3 is a schematic diagram illustrating exemplary hardware and/or software components of a mobile device 300 according to some embodiments of the present disclosure. In some embodiments, the mobile device 300 may be an exemplary embodiment corresponding to the requester terminal 130 or the provider terminal 140. As illustrated in FIG. 3, the mobile device 300 may include a communication platform 310, a display 320, a graphic processing unit (GPU) 330, a central processing unit (CPU) 340, an I/O 350, a memory 360, an operating system (OS) 370, a storage 390. In some embodiments, any other suitable component, including but not limited to a system bus or a controller (not shown) , may also be included in the mobile device 300.
[0058]
In some embodiments, an operating system 370 (e.g., iOS TM, Android TM, Windows Phone TM, etc. ) and one or more applications 380 may be loaded into the memory 360 from the storage 390 in order to be executed by the CPU 340. The applications 380 may include a browser or any other suitable mobile apps for receiving and rendering information relating to image processing or other information from the O2O service system 100. User interactions with the information stream may be achieved via the I/O 350 and provided to the storage device 150, the server 110 and/or other components of the O2O service system 100.
[0059]
To implement various modules, units, and their functionalities described in the present disclosure, computer hardware platforms may be used as the hardware platform (s) for one or more of the elements described herein. A computer with user interface elements may be used to implement a personal computer (PC) or any other type of work station or terminal device. A computer may also act as a system if appropriately programmed.
[0060]
FIG. 4 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure. In some embodiments, the processing device 112 may include a receiving module 401, a target link determination module 403, a parameter selection module 405, and a travel time index (TTI) determination module 407. The modules may be hardware circuits of all or part of the processing device 112. The modules may also be implemented as an application or set of instructions read and executed by the processing device 112. Further, the modules may be any combination of the hardware circuits and the application/instructions. For example, the modules may be the part of the processing device 112 when the processing device 112 is executing the application/set of instructions.
[0061]
The receiving module 401 may be configured to receive information and/or data from one or more components (e.g., the requester terminal 130, the provider terminal 140, the storage device 150) of the O2O service system 100. In some embodiments, the receiving module 401 may receive a request, executed in a user terminal (e.g., the requester terminal 130, the provider terminal 140) by an application, including an object, a start time and an end time. The request may be used to request to determine traffic conditions associated with the object within the start time and the end time. In some embodiments, the object may be a road or an area. The start time and the end may correspond to a time span that defined by a user. In some embodiments, the time span may be within an hour, a day, a month, a year, or more than one year, or the like.
[0062]
The target link determination module 403 may be configured to determine one or more target links corresponding to the object from a spatial database. In some embodiments, the target link determination module 403 may determine one or more target maps from a plurality of maps stored in the spatial database based on the start time and the end time. Each of the target map (s) may include a plurality of links. In different target maps, the object may correspond to different link (s) . Thus, the target link determination module 403 may determine one or more target links corresponding to the object on each of the one or more target maps. If the object is a target area, the target link determination module 403 may perform a spatial index query with respect to the target area in the spatial database to determine one or more target links on each of the target map (s) . Alternatively, if the object is a target road, the target link determination module 403 may generate a buffer zone using one or more template links on a template map with respect to a target road, and obtain one or more candidate links covered by the buffer zone by performing a spatial index query with respect to the target road in the spatial database. The target link determination module 403 may then determine the one or more target links based on the candidate link (s) . Details regarding the determination of target link (s) corresponding to the target road may be found elsewhere in the present disclosure (e.g., FIG. 6 and the descriptions thereof) .
[0063]
The parameter selection module 405 may be configured to select one or more sets of parameters corresponding to each of the one or more target links based on the start time and the end time. Each set of parameters of a target link may include a free-flow speed and a number of vehicles on the target link within a certain time period (e.g., 1 days, 5 days, 10 days, 15 days, a month) . The free-flow speed may refer to the maximum speed that can be achieved without traffic congestion. The number of vehicles on the target link may refer to a total number of vehicles passing through the target link within the time period, which may be designated as a weighted value of the target link. Details regarding the selection of the set (s) of parameters may be found elsewhere in the present disclosure (e.g., FIG. 7 and the relevant descriptions thereof) .
[0064]
The TTI determination module 407 may be configured to a traffic time index (TTI) corresponding to the object within the start time and the end time. In some embodiments, the TTI determination module 407 may determine the TTI based on the one or more target links and the one or more sets of parameters corresponding to each of the one or more target links. In some embodiments, the TTI corresponding to the object within the start time and the end time may be a ratio of an actual time and a free-flow time. In some embodiments, the TTI determination module 407 may determine a time interval within the start time and the end time. At the time interval, the TTI determination module 407 may determine an actual time and a free-flow time corresponding to the object, and determine the TTI corresponding to the object at the time interval based on the actual time and the free-flow time. In some embodiments, the TTI determination module 407 may determine a plurality of TTIs corresponding to a plurality of time intervals. Details regarding the determination of the TTI may be found elsewhere in the present disclosure (e.g., FIG. 8 and the descriptions thereof) .
[0065]
The modules in the processing device 112 may be connected to or communicate with each other via a wired connection or a wireless connection. The wired connection may include a metal cable, an optical cable, a hybrid cable, or the like, or any combination thereof. The wireless connection may include a Local Area Network (LAN) , a Wide Area Network (WAN) , a Bluetooth, a ZigBee, a Near Field Communication (NFC) , or the like, or any combination thereof.
[0066]
It should be noted that the above description is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. In some embodiments, any one of the modules may be divided into two or more units. For example, the target link determination module 403 may be divided into two units. The first unit may be configured to determine one or more target links corresponding to a target road. The second unit may be configured to determine one or more target links corresponding to a target area. In some embodiments, the processing device 112 may include one or more additional modules. For example, the processing device 112 may include a storage module (not shown) . The storage module may be configured to store data generated during any process performed by any component of the processing device 140.
[0067]
FIG. 5 is a flowchart illustrating an exemplary process for determining a traffic time indexes (TTI) according to some embodiments of the present disclosure. For illustration purpose only, the processing device 112 may be described as a subject to perform the process 500. However, one of ordinary skill in the art would understand that the process 500 may also be performed by other entities. For example, one of ordinary skill in the art would understand that at least a portion of process 500 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 500 may be implemented in the O2O service system 100 as illustrated in FIG. 1. In some embodiments, one or more operations in the process 500 may be stored in the storage device 150 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . In some embodiments, the instructions may be transmitted in a form of electronic current or electrical signals.
[0068]
In 510, the processing device 112 (e.g., the receiving module 401) may receive a request from a terminal (e.g., the requester terminal 130, the provider terminal 140) . The request may include an object, a start time and an end time. In some embodiments, the object may include a road (e.g., Changan Street) , an area (e.g., an area within 2 kilometers of a train station, a business district, an administrative district (e.g., Chaoyang District) , a city (e.g., Beijing city) , a country (e.g., China) ) , or the like. The road may include a shape of the road, which is also referred to as linear data. The area may include a shape of the area, which is also referred to as planar data. The start time and the end time may correspond to a time span that defined by a user. In some embodiments, the time span may be within an hour. For example, the start time may be 8: 10 am on January 1, and the end time may be 8: 50 am on January 1. Alternatively, the time span may be within a day. For example, the start time may be 7 am on September 7, and the end time may be 9 am on September 7. Alternatively, the time span may be within a month. For example, the start time may be October 1, and the end time may be October 7. As another example, the start time may be January 20, and the end time may be February 15. Alternatively, the time span may within a year. For example, the start time may be January 1, and the end time may be February 15. As another example, the start time may be January 1, and the end time may be June 30. Alternatively, the time span may traverse more than one year. For example, the start time may be January 1, 2017, and the end time may be June 30, 2018. It should be noted that the above-mentioned start time and end time are merely for illustration purposes, and are not intended to limit the scope of the present disclosure.
[0069]
In some embodiments, the request may be entered by the user via the terminal, in order to request to determine traffic conditions (e.g., a degree of traffic congestion) associated with a certain road or a certain area within a certain time span. For example, a user wants to know a degree of traffic congestion associated with an object (e.g., a road or an area) within a time span. The user may enter a request including the object, the start time and the end time of the time span via his/her terminal, referred as a user terminal (e.g., the requester terminal 130, the provider terminal 140) .
[0070]
In 520, the processing device 112 (e.g., the target link determination module 403) may determine one or more one or more target links corresponding to the object from a spatial database storing a target map.
[0071]
The spatial database may be a database that is optimized for storing and querying data that represents objects defined in a geometric space. The spatial database can use a spatial index to speed up database operations, for example, a spatial index query, a spatial measurement, a spatial predication, etc. Exemplary spatial databases may include a PostGIS spatial database, an Oracle Spatial, a Spatial DataBlade, a DB2 Spatial Extender, or the like, or any combination thereof. The spatial database may store a map. In some embodiments, the map may be updated periodically. The updating period may be a default or an empirical value related to the O2O service system 100, such as 10 days, half a month, a month, two months, half a year, or the like. In some embodiments, the updating period may be preset by a user or operator via the terminal (e.g., the requester terminal 130, or the provider terminal 140) . For example, if the updating period is 10 days, three updated maps may be generated in a month. The updated maps may be stored into the spatial database.
[0072]
In some embodiments, the processing device 112 may determine, among the (updated) maps stored in the spatial database, one or more target maps based on the start time and the end time in the request received in operation 510. In some embodiments, if the start time and the end time are within the same updating period, the processing device 112 may determine only one target map corresponding to the updating period. For example, the updating period may be a month. If the start time is October 1 and the end time is October 7, which are both within the updating period of October 1 to October 31, the processing device 112 may determine a target map corresponding to the updating period of October 1 to October 31. Alternatively, if the start time and the end time fall in two different updating periods, the processing device 112 may determine two or more target maps based on the two updating periods. For example, the updating period may be 15 days. The start time may be June 1 that is within an updating period of June 1 to June 15, and the end time may be July 15 that is within an updating period of July 1 to July 15, the processing device 112 may determine three target maps based on the two updating periods. The three target maps may correspond to the updating period of June 1 to June 15, an updating period of June 16 to June 30, the updating period of July 1 to July 15, respectively.
[0073]
In some embodiments, the one or more target maps may be one or more updated maps. Each of the target map (s) may include a plurality of links. In different target maps, the object may correspond to different link (s) . Thus, the processing device 112 may determine one or more target links corresponding to the object on each of the one or more target maps. If the object is a target area, the processing device 112 may perform a spatial index query with respect to the target area in the spatial database to determine one or more target links on each of the target map (s) . Alternatively, if the object is a target road, the determination of one or more target links on each of the target map (s) may be performed according to process 600 illustrated in FIG. 6 and described in detail below.
[0074]
In 530, the processing device 112 (e.g., the parameter selection module 405) may select one or more sets of parameters corresponding to each of the one or more target links based on the start time and the end time. In some embodiments, each set of parameters of a target link may include a free-flow speed and a number of vehicles on the target link within a certain time period (e.g., 1 days, 5 days, 10 days, 15 days, a month) . The free-flow speed may refer to the maximum speed that can be achieved without traffic congestion. The free-flow speed may be used to determine a free-flow time on a target link. The number of vehicles on the target link may refer to a total number of vehicles passing through the target link within the time period. In some embodiments, the number of vehicles on a target link may be designated as a weighted value of the target link.
[0075]
In some embodiments, a plurality of sets of parameters on each link in a target map may be periodically determined by MapReduce. The MapReduce may be a framework for processing and generating vast amounts of data in-parallel on a cluster (including a large number of computers or nodes) in a reliable, fault-tolerant manner. The plurality of sets of parameters on each link may be stored in a storage device (e.g., the storage device 150) , a spatial database (e.g., PostGIS spatial database) , etc. Each set of parameters of a link may correspond to a parameter determination period. In different parameter determination periods, the free-flow speeds and the weighted values (e.g., the number of vehicles) of the same link may be different. Thus, it is desirable to determine one or more target periods within the start time and the end time. In some embodiments, the processing device 112 may determine a first time period corresponding to the start time and a second time period corresponding to the end time. The processing device 112 may determine one or more target periods based on the first time period and the second time period. The processing device 112 may then select, from the storage device (e.g., the storage device 150) or the spatial database (e.g., PostGIS spatial database) , one or more sets of parameters for each of the one or more target links based on the one or more target periods. Details regarding the determination of the set (s) of parameters may be found elsewhere in the present disclosure (e.g., FIG. 7 and the relevant descriptions thereof) .
[0076]
In 540, the processing device 112 (e.g., the TTI determination module 407) may determine a traffic time index corresponding to the object within the start time and the end time based on the one or more target links and the one or more sets of parameters corresponding to each of the one or more target links. In some embodiments, the TTI corresponding to the object within the start time and the end time may be a ratio of an actual time and a free-flow time.
[0077]
In some embodiments, the processing device 112 may determine a time interval within the start time and the end time. In some embodiments, the time interval may be several minutes (e.g., 2 minutes, 5 minutes, 10 minutes, 15 minutes, or the like) . At the time interval, the processing device 112 may determine an actual time and a free-flow time corresponding to the object. In some embodiments, the actual time may be related to the actual traveling time of vehicle (s) on the one or more target links. The actual traveling time of vehicle (s) on a target link may be determined based on the length of the target link and an actual speed on the target link. The length of the target link may be manually predetermined. The actual speed on the target link may be determined based on a car recorder, or a car-hailing application mounted on the vehicle (s) or a terminal of driver (s) of the vehicle (s) . In some embodiments, the actual speed on the target link may be an average speed on the target link within the time interval. For example, a speed on the target link may be detected by a car recorder every 2 minutes. If the time interval is 10 minutes, there may be five detected speeds. An average value of the five detected speeds may be designated as the actual speed on the target link within the time interval. The free-flow time may be related to the ideal traveling time of vehicle (s) on the one or more target links. The ideal traveling time of vehicle (s) on a target link may be determined based on the length of the target link and a free-flow speed on the target link. As described in operation 530, in different target periods, the free-flow speeds of the same target link may be different. The processing device 112 may select one target period from the one or more target periods based on the time interval, and may determine the free-flow speed of each target link at the time interval based on the selected target period.
[0078]
In some embodiments, if the object is mapped to one target link, the actual time may be equal to the actual traveling time of vehicle (s) on the target link, and the free-flow time may be equal to the ideal traveling time of vehicle (s) on the target link. Alternatively or additionally, if the object is mapped to more than one target link, different target links may have different impacts on the traffic. The importance of each target link may be considered. In some embodiments, the importance of a link may be represented by the number of vehicles on the link. Specifically, the number of vehicles on the link within a time period may be used as a weighted value of the link. As described in operation 530, in different target periods, the weighted values (i.e., the number of vehicles) on the same target link may be different. Thus, the processing device 112 may determine the weighted value of each target link at the time interval based on the selected target period. In some embodiments, the actual time may be determined based on the actual traveling time of vehicle (s) on each target link and the weighted value of each target link at the time interval. The free-flow time may be determined based on the ideal traveling time of vehicle (s) on each target link and the weighted value of each target link at the time interval. Then the processing device 112 may determine the TTI corresponding to the object at the time interval based on the actual time and the free-flow time. Details regarding the determination of the TTI may be found elsewhere in the present disclosure (e.g., FIG. 8 and the descriptions thereof) .
[0079]
It should be noted that the above description regarding the process 500 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. In some embodiments, in 540, the processing device 112 may determine a plurality of time intervals within the start time and the end time, and determine a plurality of TTIs corresponding to the plurality of time intervals. In some embodiments, operation 530 may be performed before operation 520. In some embodiments, the processing device 112 may send the traffic time index to an interface of the user terminal for display.
[0080]
FIG. 6 is a flowchart illustrating an exemplary process for determining one or more target links corresponding to a road according to some embodiments of the present disclosure. For illustration purpose only, the processing device 112 may be described as a subject to perform the process 600. However, one of ordinary skill in the art would understand that the process 600 may also be performed by other entities. For example, one of ordinary skill in the art would understand that at least a portion of process 600 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 600 may be implemented in the O2O service system 100 as illustrated in FIG. 1. In some embodiments, one or more operations in the process 600 may be stored in the storage device 150 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . In some embodiments, the instructions may be transmitted in a form of electronic current or electrical signals. In some embodiments, at least portion of operation 520 of the process 500 may be performed according to the process 600. For example, one or more target links corresponding to the target road as illustrated in operation 520 of the process 500 may be determined according to the process 600.
[0081]
In 610, the processing device 112 (e.g., the target link determination module 403) may generate a buffer zone using one or more template links on a template map with respect to a target road. The template map may refer to a basic map that is manually annotated. The template map may include a plurality of links (also referred to as template links) . In some embodiments, a mapping relationship between road (s) in reality and template link (s) on the template map may be manually annotated. A road in reality may be mapped to one or more template links on the template map. For example, Changan Street may be mapped to five template links on the template map. In some embodiments, one or more template links with respect to a target road may be determined according to the manually annotated mapping relationship.
[0082]
In some embodiments, the processing device 112 may generate a buffer zone based on the one or more template links. The buffer zone may correspond to an area on the template map. Specifically, the processing device 112 may obtain a buffer distance (e.g., 5 meters, 10 meters, or the like) . The buffer distance may be a default or an empirical value related to the O2O service system 100, or may be preset by a user or operator via a terminal (e.g., the requester terminal 130, or the provider terminal 140) . For each of the one or more template links, the processing device 112 may take the template link as an axis and the buffer distance as a translation distance, and determine two parallel lines at both sides of the link. The processing device 112 may generate the buffer zone based on parallel lines corresponding to each of the one or more template links. Alternatively or additionally, for each of the one or more template links, the processing device 112 may take the template link as an axis and the buffer distance as a translation distance, and determine a parallel line at one sides of the link. The processing device 112 may generate the buffer zone based on the one or more template links and the corresponding parallel lines.
[0083]
In 620, the processing device 112 (e.g., the target link determination module 403) may obtain one or more candidate links covered by the buffer zone by performing a spatial index query with respect to the target road in a spatial database. The spatial database has been described in operation 520 of the process 500, and the descriptions thereof are not repeated here. As described in connection with operation 520 of the process 500, the processing device 112 may determine a target map among the (updated) maps stored in the spatial database based on a start time and an end time in a request (e.g., the start time and the end time in the request in 510) . The target map may include a plurality of links.
[0084]
In some embodiments, the processing device 112 may perform the spatial index query on the target map in the spatial database using the buffer zone determined in 610, and determine one or more candidate links covered by the buffer zone from the plurality of links of the target map. In some embodiments, at least some of the one or more candidate links may have substantially same direction as the template links. In some embodiments, at least some of the one or more candidate links may correspond to the target road.
[0085]
In 630, for a candidate link of the one or more candidate links, the processing device 112 (e.g., the target link determination module 403) may generate a projected link by projecting the candidate link onto the one or more template links on the template map. In some embodiments, the projected link may correspond to a portion of one of the one or more template links. Alternatively, the projected link may correspond to one of the one or more template links. Alternatively, the projected link may correspond to a portion of at least two of the one or more template links. Alternatively, the projected link may correspond to at least two of the one or more template links.
[0086]
In 640, the processing device 112 (e.g., the target link determination module 403) may determine a matching score between the candidate link and the projected link. The processing device 112 may compare the candidate link and the projected link using a shape-based matching. For example, the processing device may determine the matching score between the candidate link and the projected link according to a Hausdorff distance matching. The Hausdorff distance between the candidate link and the projected link may be associated with a plurality of parameters, for example, including a difference in spatial locations between the candidate link and the projected link, a difference in directions between the candidate link and the projected link, a difference in curvatures between the candidate link and the projected link, a difference in shapes between the candidate link and the projected link, a difference in lengths between the candidate link and the projected link, or the like, or any combination thereof. In some embodiments, each of the plurality of parameters may be assigned with a weight. The processing device 112 may determine the Hausdorff distance based on the plurality of parameters and the corresponding weights. The processing device 112 may determine the matching score between the candidate link and the projected link based on the Hausdorff distance. In some embodiments, the smaller the Hausdorff distance is, the higher the matching score is. When the candidate link and the projected link are completely matched, the matching score may be 1. When the candidate link and the projected link are completely not matched, the matching score may be 0. It should be noted that the processing device 112 may determine the matching score between the candidate link and the projected link according to other shaped-based matching, such as a generalized hough transform, a neural network-based matching algorithm, a genetic algorithm, a deformable template algorithm, or the like.
[0087]
In 650, the processing device 112 (e.g., the target link determination module 403) may determine whether the matching score exceeds a threshold. In some embodiments, the threshold may be a default or an empirical value related to the O2O service system 100, or may be preset by a user or operator via a terminal (e.g., the requester terminal 130, or the provider terminal 140) . The processing device 112 may compare the matching score with the threshold. In response to a determination that the matching score exceeds the threshold, the processing device 112 may proceed to operation 660. In 660, the processing device 112 (e.g., the target link determination module 403) may determine the candidate link as a target link. Alternatively or additionally, in response to a determination that the matching score does not exceed the threshold, the processing device 112 may proceed to operation 670. In 670, the processing device 112 (e.g., the target link determination module 403) may abandon the candidate link.
[0088]
In the present disclosure, the target map may be an updated map with respect to the template map. At least portion of the plurality of links in the target map may be different from the template link (s) in the template map due to the updating of the map. Thus, the manually annotated mapping relationship may not work on the link (s) in the target map. That is, one or more target links corresponding to the target road cannot be selected from the target map according to the manually annotated mapping relationship. In order to determine the one or more target links corresponding to the target road, the processing device 112 may transform the template link (s) corresponding to the target road to a buffer zone (i.e., an area) , and perform a spatial index query in the spatial database using the buffer zone to determine one or more candidate links. Then the processing device 112 may determine the one or more target links corresponding to the target road according to the candidate links. In the present disclosure, the spatial database may provide very fast spatial index query, which may shorten the total time of determining the target link (s) . Besides, the target link (s) are determined by the processing device 112 other than manually annotated, which may be labor-saving and time-saving.
[0089]
It should be noted that the above description regarding the process 600 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. In some embodiments, the processing device 112 may repeat operations 630 through 670 to determine the one or more target links corresponding to the target road among the one or more candidate links. In some embodiments, in operation 620, the processing device 112 may determine more than one target map according to the start time and the end time. The processing device 112 map repeat operations 620 through 670 to determine one or more candidate links corresponding to the target road on each of the target maps.
[0090]
FIG. 7 is a flowchart illustrating an exemplary process for determining one or more sets of parameters corresponding to a target link according to some embodiments of the present disclosure. For illustration purpose only, the processing device 112 may be described as a subject to perform the process 700. However, one of ordinary skill in the art would understand that the process 700 may also be performed by other entities. For example, one of ordinary skill in the art would understand that at least a portion of process 700 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 700 may be implemented in the O2O service system 100 as illustrated in FIG. 1. In some embodiments, one or more operations in the process 700 may be stored in the storage device 150 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . In some embodiments, the instructions may be transmitted in a form of electronic current or electrical signals. In some embodiments, operation 530 of the process 500 may be performed according to the process 700.
[0091]
In some embodiments, a set of parameters of a link may include a free-flow speed and a number of vehicles on the link within a time period (e.g., 1 day, 5 days, 10 days, 15 days, a month) . The free-flow speed may refer to the maximum speed that can be achieved without traffic congestion. The free-flow speed may be used to determine a free-flow time (also referred to as ideal traveling time of vehicle (s) ) on the link. The “ideal traveling time of a vehicle on a link” may refer to a time spent by a vehicle when passing through the link without traffic congestion. The number of vehicles on the link may refer to a total number of vehicles passing through the link within the time period. The number of vehicles may be used to represent the importance of a link. The more important a link is, the larger the number of vehicles passing through the link is. In some embodiments, the number of vehicles on a link may be designated as a weighted value of the link. For example, if the number of vehicles on a link within a time period is one thousand, the weighted value of the link within the time period may be one thousand. Since the number of vehicles on a link may be different in two different time periods, the weighted value of the link may be varied, thus reflecting the importance of a link in real-time.
[0092]
In some embodiments, the free-flow speed on a link may be determined based on a plurality of actual speeds on the link. The actual speed on the link may be determined based on a car recorder, a car-hailing application mounted on a vehicle or a terminal of driver (s) of the vehicle, etc. In some embodiments, the actual speed may be an average speed within several minutes (e.g., 1 minute, 2 minutes, 5 minutes, etc. ) . In some embodiments, to determine a free-flow speed in a day, the processing device 112 may divide 24 hours in the day into a plurality of time intervals. In each time interval, the processing device 112 may determine an average speed based on a plurality of actual speeds in the time interval. Then the processing device 112 may determine a plurality of average speeds corresponding to the plurality of time intervals, and select average speeds with top N (N is an integer) from the plurality of average speeds. The processing device 112 may designate an average value of the top N average speeds as a free-flow speed of the day. Merely by way of example, the processing device 112 may divide 24 hours into 24 time intervals, that is, a time interval corresponds to an hour. For each hour of the day, the processing device 112 may determine an average speed by determining an average value of a plurality of actual speeds in the hour. Thus, the processing device 112 may determine 24 average speeds within the day. The processing device 112 may rank the 24 average speeds, and select average speeds with top five. The processing device 112 may further determine a free-flow speed of the day by determining an average value of the five average speeds.
[0093]
In some embodiments, to determine a free-flow speed during a time period (e.g., one or more days) , the processing device 112 may determine a free-flow speed corresponding to each day within the time period. The processing device 112 may determine the free-flow speed during the time period based on one or more free-flow speeds of the one or more days. For example, if the time period is 10 days, the processing device 112 may determine 10 free-flow speeds corresponding to the 10 days. Then the processing device 112 may determine a free-flow speed within the time period based on the 10 free-flow speeds of the 10 days. It should be noted that the above-mentioned approach of determining a free-flow speed within a time period is merely for illustration purposes, and the free-flow speed within the time period may be determined according to any other approach. For example, at a time interval from 4 am to 6 am of a day, the number of vehicles on the road may be relatively little, and there may be no traffic congestion. Therefore, an average speed within the time interval may be designated as a free-flow speed of this day.
[0094]
In some embodiments, for each link on a map, a free-flow speed of each link may be determined based on a plurality of actual speeds of each link, which may require great computations. In some embodiments, the free-flow speed corresponding to each link may be generated by MapReduce. The MapReduce may be a framework for processing and generating vast amounts of data in-parallel on a cluster (including a large number of computers or nodes) in a reliable, fault-tolerant manner. For example, the MapReduce framework may determine a free-flow speed of each link using a plurality of computers in a parallel manner. In some embodiments, the MapReduce framework may also count vehicles passing through each link.
[0095]
In some embodiments, the MapReduce framework may determine a plurality of sets of parameters (i.e., a free-flow speed and/or a weighted value) on each link periodically. The plurality of sets of parameters may correspond to a plurality of parameter determination periods. In a parameter determination period, the MapReduce framework may determine a free-flow speed of a link based on a plurality of actual speeds within the parameter determination period. The determination of the free-flow speed may be same as that described above, and the relevant descriptions are not repeated herein. In the parameter determination period, the MapReduce may count vehicles passing through the link, and determine the total number of vehicles passing through the link as a weighted value of the link. Each set of parameters (e.g., a free-flow speed and/or a weighted value) may be determined based on information (e.g., actual speeds, the number of vehicles) within the corresponding parameter determination period. Thus, in two different parameter determination periods, the two sets of parameters may be different. The plurality of sets of parameters on each link may be stored in a storage device (e.g., the storage device 150) , a spatial database (e.g., PostGIS spatial database) , etc.
[0096]
In some embodiments, the parameter determination period may be a default or an empirical value related to the O2O service system 100, such as 10 days, half a month, a month, two months, half a year, or the like. In some embodiments, the parameter determination period may be preset by a user or operator via the terminal (e.g., the requester terminal 130, or the provider terminal 140) . In some embodiments, the parameter determination period may match with an updating period of updating a map (also referred to as map updating period) . In this case, each link on the map may only have one set of parameters. Alternatively or additionally, the parameter determination period may not match with the map updating period. In some embodiment, the parameter determination period may be less than within the map updating period. For example, a parameter determination period may be from January 1 to January 15, and a map updating period may be from January 1 to January 31. In this case, each link on the map may correspond to two sets of parameters. In some embodiments, the map updating period may be less than or within the parameter determination period. For example, a parameter determination period may be from June 1 to June 30, and a map updating period may be from June 16 to June 30. In this case, in the parameter determination period, there may be two maps, i.e., a first map corresponding to a map updating period of June 1 to June 15, and a second map corresponding to a map updating period of June 16 to June 30. Each link on the first map or the second map may respectively correspond to one set of parameters. If a link only falls in the first map, a free-flow speed on the link may be determined based on a plurality of actual speeds in the first map. The weighted value of the link may be determined based on the number of vehicles passing through the link in the first map. If a link only falls in the second map, a free-flow speed on the link may be determined based on a plurality of actual speeds in the second map. The weighted value of the link may be determined based on the number of vehicles passing through the link in the second map. It should be noted that, the above examples are merely provided for illustration purposes, and are not intended to limit the scope of the present disclosure. For example, the parameter determine period may partially overlap with the map updating period.
[0097]
Table 1 shows exemplary determined values of the parameters related to a link. As shown in Table 1, the map updating period (s) may be greater than the parameter determination period (s) . Each parameter determination period may correspond to a set of parameters, while each map updating period may correspond to two sets of parameters. The free-flow speeds of the link within different parameter determination periods may be different, and the weighted value of the link within different parameter determination periods may also be different. For example, the free-flow speed of the link within the parameter determination period of January 1 to January 15 is 57 km/h, and the free-flow speed of the link within the parameter determination period of February 1 to February 14 is 63 km/h. The weighted value of the link within the parameter determination period of April 1 to April 15 is 6.1 thousand, and the weighted value of the link within the parameter determination period of May 1 to May 15 is 4.3 thousand. Thus, it is desirable to determine one or more target periods corresponding to the start time and the end time in the request received in operation 510, and then determine one or more sets of parameters on each target link corresponding to the one or more target periods.
[0098]
In 710, the processing device 112 (e.g., the parameter selection module 405) may determine a first time period corresponding to the start time. In some embodiments, the first time period may correspond to one of the plurality of parameter determination periods. Thus, in the first time period, there may be only one set of parameters. In some embodiments, the start time may correspond to a specific moment or a specific day within the first time period. For example, as shown in Table 1, if the start time is January 10, the first time period may correspond to the parameter determination period from January 1 to January 15. As another example, as shown in Table 1, if the start time is 8 am on June 1, the first time period may correspond to the parameter determination period from June 1 to June 15.
[0099]
In 720, the processing device 112 (e.g., the parameter selection module 405) may determine a second time period corresponding to the end time. Similarly, the second time period may correspond to one of the plurality of parameter determination periods. Thus, in the second time period, there may be only one set of parameters. Similarly, the end time may correspond to a specific moment or a specific day within the second time period. For example, as shown in Table 1, if the end time is March 27, the second time period may correspond to the parameter determination period from March 16 to March 31. As another example, as shown in Table, if the end time is 8 am on June 2, the second time period may correspond to the parameter determination period from June 1 to June 15.
[0100]
In 730, the processing device 112 (e.g., the parameter selection module 405) may determine one or more target periods based on the first time period and the second time period. In some embodiments, if the first time period and the second time period correspond to the same parameter determination period, the processing device 112 may determine one target period. The target period may correspond to the parameter determination period. For example, if the first time period and the second time period both correspond to the parameter determination period from June 1 to June 15, the processing device 112 may determine the period from June 1 to June 15 as a target period. Alternatively or additionally, if the first time period and the second time period correspond to two different parameter determination periods, the processing device 112 may determine more than one target period. For example, as shown in Table 1, if the first time period corresponds to the parameter determination period from January 1 to January 15, the second time period corresponds to the parameter determination period from March 16 to March 31, the processing device 112 may determine six target periods. The six target periods may include the target period from January 1 to January 15, the target period from January 16 to January 31, the target period from February 1 to February 14, the target period from February 15 to February 28, the target period from March 1 to March 15, the target period from March 16 to March 31.
[0101]
In 740, the processing device 112 (e.g., the parameter selection module 405) may select one or more sets of parameters corresponding to a target link based on the one or more target periods. As mentioned above, each set of parameters of a link may include a free-flow speed on the link and a weighted value of the link (i.e., the number of vehicles on the link) . According to the one or more target period, the processing device 112 may determine one or more sets of parameters for a target link. In some embodiments, the processing device 112 may select, among a plurality of sets of parameters, the one or more sets of parameters corresponding to the target link from the storage device (e.g., the storage device 150) , the spatial database (e.g., the PostGIS spatial database) .
[0102]
Table 1 Exemplary determined values of the parameters related to a link
[0103]
[0104]
[0105]
It should be noted that the above description regarding the process 700 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. For example, operations 710 and 720 may be performed simultaneously. As another example, operation 720 may be performed before operation 710. In some embodiments, a road or an area may include one or more target links. The processing device 112 may repeat operation 740 to select one or more sets of parameters for each of the target link (s) based on the one or more target periods.
[0106]
FIG. 8 is a flowchart illustrating an exemplary process for determining a traffic time index according to some embodiments of the present disclosure. For illustration purpose only, the processing device 112 may be described as a subject to perform the process 800. However, one of ordinary skill in the art would understand that the process 800 may also be performed by other entities. For example, one of ordinary skill in the art would understand that at least a portion of process 800 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 800 may be implemented in the O2O service system 100 as illustrated in FIG. 1. In some embodiments, one or more operations in the process 800 may be stored in the storage device 150 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . In some embodiments, the instructions may be transmitted in a form of electronic current or electrical signals. In some embodiments, operation 540 may be performed according to the process 800.
[0107]
In 810, the processing device 112 (e.g., the TTI determination module 407) may determine an actual time corresponding to the object based on the one or more target periods. In some embodiments, the object may be a target road or a target area, which may correspond to one or more target links. In some embodiments, the processing device 112 may determine a time interval within the start time and the end time. In some embodiments, the time interval may be several minutes (e.g., 2 minutes, 5 minutes, 10 minutes, 15 minutes, or the like) . In some embodiments, the actual time at the time interval may be related to the actual traveling time of vehicle (s) on the one or more target links. The actual traveling time of vehicle (s) on a target link may be determined based on the length of the target link and an actual speed on the target link. The length of the target link may be manually predetermined. The actual speed on the target link may be determined based on a car recorder, or a car-hailing application mounted on the vehicle (s) or a terminal of driver (s) of the vehicle (s) . In some embodiments, the actual speed on the target link may be an average speed on the target link within the time interval.
[0108]
In some embodiments, different links may have different contributions to traffic. Thus, when determining the TTI, the importance of different links may be considered. For example, a first target link corresponding to a main road may have greater impact on traffic than a second target link corresponding to an auxiliary road. Thus, the first target link should be given a larger weighted value than the second target link when determining a TTI. In some embodiments, the importance of a link may be represented by the number of vehicles on the link. Specifically, the number of vehicles on the link within a time period may be used as a weighted value of the link. As described in connection with FIG. 7, in different target periods, the weighted values (i.e., the number of vehicles) on the same target link may be different. Thus, the processing device 112 may select one target period from the one or more target periods based on the time interval. The processing device 112 may determine the weighted value of each target link at the time interval based on the selected target period.
[0109]
In some embodiments, the actual time at the time interval may be determined based on the actual traveling time of vehicle (s) on each target link and the weighted value of the target link at the time interval. Merely by way of example, the actual time at the time interval may be determined according to Equation (1) as below:
[0110]
[0111]
wherein t refers to the actual time at the time interval; i refers to the serial number of a target link; n refers to the total number of target links; w i refers to the weighted value of link i at the time interval; and t i refers to the actual traveling time of vehicle (s) on link i at the time interval.
[0112]
In 820, the processing device 112 (e.g., the TTI determination module 407) may determine a free-flow time corresponding to the object based on the one or more target periods. In some embodiments, the free-flow time at the time interval may be related to the ideal traveling time of vehicle (s) on the one or more target links. The “ideal traveling time of a vehicle on a target link” may refer to a time spent by a vehicle when passing through the target link without traffic congestion. The ideal traveling time of vehicle (s) on a target link may be determined based on the length of the target link and a free-flow speed on the target link. The length of the target link may be manually predetermined. As described in connection with FIG. 7, in different target periods, the free-flow speeds on the same target link may be different. Thus, the processing device 112 may select one target period from the one or more target periods based on the time interval. The selected target period may be the same as the selected target period in operation 810. The processing device 112 may determine the free-flow speed of each target link at the time interval based on the selected target period. Similar to operation 810, when determining the free-flow time, the weighted value of each target link should be considered.
[0113]
In some embodiments, the free-flow time at the time interval may be determined based on the ideal traveling time of vehicle (s) on each target link and the weighted value of the target link at the time interval. Merely by way of example, the free-flow time at the time interval may be determined according to Equation (2) as below:
[0114]
[0115]
wherein t’ refers to the free-flow time at the time interval; i refers to the serial number of a target link; n refers to the total number of target links; w i refers to the weighted value of link i at the time interval; and t′ i refers to the ideal traveling time of vehicle (s) on link i at the time interval.
[0116]
In 830, the processing device 112 (e.g., the TTI determination module 407) may determine a traffic time index (TTI) corresponding to the object within the start time and the end time based on the actual time and the free-flow time. In some embodiments, the TTI may be an indicator of reflecting traffic conditions. The higher the TTI is, the more congested the object is. For example, if the TTI of the object is within a range of 1-1.4, it may indicate that the object is unblocked. If the TTI of the object is greater than 2.1, it may indicate that the object is congested. In some embodiments, the TTI at the time interval corresponding to the object may be a ratio of the actual time and the free-flow time. Merely by way of example, the TTI at the time interval may be determined according to Equation (3) as below:
[0117]
[0118]
In the present disclosure, when determining the actual time and/or the free-flow time, the importance of each target link may be considered. The importance of a link may be represented by the number of vehicles passing through the link within a time period, which is also referred to as the weighted value of the link. Since the number of vehicles passing through a link may be different in two different time periods, the weighted value of the link may be varied, thus reflecting the importance of a link in real-time. Merely by way of example, in a first time period, a first link may correspond to a main road, and a second link may correspond to an auxiliary road. A large number of vehicles may pass through the first link, and a small number of vehicles may pass through the second link. In a second time period, the main road may be blocked due to road construction. Thus, vehicle (s) cannot pass through the first link, and a large number of vehicles may pass through the second link. In this cases, the number of vehicles passing through the second link in the second time period may be larger than that in the first time period, which reflects that the second link may be more importance in the second time period than the first time period. As described in this disclosure, TTI of this invention reports traffic congestion in real-time, and thus, more accurately reflecting the traffic congestion.
[0119]
It should be noted that the above description regarding the process 700 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. In some embodiments, the processing device 112 may determine a plurality of time intervals within the start time and the end time. At each of the plurality of time intervals, the processing device 112 may determine a TTI corresponding to the object. Thus, the processing device 112 may determine a plurality of TTIs within the start time and the end time, which may reflect traffic conditions within the start time and the end time. In some embodiments, if the object is mapped to one target link, the weighted value of the target link may be ignored. Then the actual time may be equal to the actual traveling time of vehicle (s) on the target link, and the free-flow time may be equal to the ideal traveling time of vehicle (s) on the target link.
[0120]
Having thus described the basic concepts, it may be rather apparent to those skilled in the art after reading this detailed disclosure that the foregoing detailed disclosure is intended to be presented by way of example only and is not limiting. Various alterations, improvements, and modifications may occur and are intended to those skilled in the art, though not expressly stated herein. These alterations, improvements, and modifications are intended to be suggested by this disclosure, and are within the spirit and scope of the exemplary embodiments of this disclosure.
[0121]
Moreover, certain terminology has been used to describe embodiments of the present disclosure. For example, the terms “one embodiment, ” “an embodiment, ” and/or “some embodiments” mean that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Therefore, it is emphasized and should be appreciated that two or more references to “an embodiment” or “one embodiment” or “an alternative embodiment” in various portions of this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures or characteristics may be combined as suitable in one or more embodiments of the present disclosure.
[0122]
Further, it will be appreciated by one skilled in the art, aspects of the present disclosure may be illustrated and described herein in any of a number of patentable classes or context including any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof. Accordingly, aspects of the present disclosure may be implemented entirely hardware, entirely software (including firmware, resident software, micro-code, etc. ) or combining software and hardware implementation that may all generally be referred to herein as a “unit, ” “module, ” or “system. ” Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable media having computer readable program code embodied thereon.
[0123]
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including electro-magnetic, optical, or the like, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that may communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable signal medium may be transmitted using any appropriate medium, including wireless, wireline, optical fiber cable, RF, or the like, or any suitable combination of the foregoing.
[0124]
Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB. NET, Python or the like, conventional procedural programming languages, such as the "C" programming language, Visual Basic, Fortran 2003, Perl, COBOL 2002, PHP, ABAP, dynamic programming languages such as Python, Ruby and Groovy, or other programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN) , or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider) or in a cloud computing environment or offered as a service such as a Software as a Service (SaaS) .
[0125]
Furthermore, the recited order of processing elements or sequences, or the use of numbers, letters, or other designations therefore, is not intended to limit the claimed processes and methods to any order except as may be specified in the claims. Although the above disclosure discusses through various examples what is currently considered to be a variety of useful embodiments of the disclosure, it is to be understood that such detail is solely for that purpose, and that the appended claims are not limited to the disclosed embodiments, but, on the contrary, are intended to cover modifications and equivalent arrangements that are within the spirit and scope of the disclosed embodiments. For example, although the implementation of various components described above may be embodied in a hardware device, it may also be implemented as a software only solution, e.g., an installation on an existing server or mobile device.
[0126]
Similarly, it should be appreciated that in the foregoing description of embodiments of the present disclosure, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure aiding in the understanding of one or more of the various embodiments. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed subject matter requires more features than are expressly recited in each claim. Rather, claimed subject matter may lie in less than all features of a single foregoing disclosed embodiment.

Claims

[Claim 1]
A system for analyzing traffic congestion, comprising: at least one storage device including a set of instructions for determining a traffic time index (TTI) associated with an object within a start time and an end time; at least one processor in communication with the at least one storage device, wherein when executing the set of instructions, the at least one processor is directed to: determine, from a spatial database storing a target map, one or more target links corresponding to the object; for each target link of the one or more target links, select one or more sets of parameters corresponding to the each target link based on the start time and the end time; and determine, based on the each target link and the one or more sets of parameters corresponding to the each target link, a traffic time index corresponding to the object within the start time and the end time.
[Claim 2]
The system of claim 1, wherein the object is a target road, and to determine the one or more target links, the at least one processor is directed to: generate a buffer zone using one or more template links on a template map with respect to the target road; obtain one or more candidate links covered by the buffer zone by performing a spatial index query with respect to the target road in the spatial database; for a candidate link of the one or more candidate links, generate a projected link by projecting the candidate link onto the one or more template links on the template map; determine a matching score between the candidate link and the projected link; and determine the candidate link as one of the one or more target links if the matching score exceeds a threshold.
[Claim 3]
The system of claim 2, wherein the at least one processor is further directed to: determine the matching score between the candidate link and the projected link according to a Hausdorff distance matching.
[Claim 4]
The system of claim 1, wherein the object is a target area, and to determine the one or more target links corresponding to the target area, the at least one processor is directed to: perform a spatial index query with respect to the target area in the spatial database to determine the one or more target links on the target map.
[Claim 5]
The system of any one of claims 1 to 4, wherein the spatial database includes at least one of a PostGIS spatial database, an Oracle Spatial, a Spatial DataBlade, or a DB2 Spatial Extender.
[Claim 6]
The system of any of claims 1 to 5, wherein the one or more sets of parameters correspond to one or more target periods, and to select the one or more sets of parameters corresponding to the each target link, the at least one processor is directed to: determine a first time period corresponding to the start time; determine a second time period corresponding to the end time; determine the one or more target periods based on the first time period and the second time period; and select the one or more sets of parameters corresponding to the each target link based on the one or more target periods.
[Claim 7]
The system of claim 6, wherein each of the one or more sets of parameters of the each target link includes a free-flow speed and a number of vehicles on the each target link within one of the one or more target periods.
[Claim 8]
The system of claim 6, wherein to determine the traffic time index corresponding to the object within the start time and the end time, the at least one processor is further directed to: determine an actual time corresponding to the object based on the one or more target periods; and determine a free-flow time corresponding to the object based on the one or more target periods.
[Claim 9]
The system of claim 8, wherein the traffic time index corresponding to the object within the start time and the end time is a ratio of the actual time and the free-flow time.
[Claim 10]
The system of claim 8 or 9, wherein when the object is mapped to more than one target link of the one or more target links, the actual time is related to the actual traveling time of vehicle on the more than one target link corresponding to the object; and the free-flow time is related to the ideal traveling time of vehicle on the more thank target link corresponding to the object.
[Claim 11]
The system of claim 1, wherein the system further comprises: a network configured to facilitate communication in the system; and a plurality of processing devices distributed connected to the network simultaneously process a request, executed in a user terminal by an application, for the traffic time index, wherein the request includes the object, the start time and the end time, wherein the traffic time index, by the at least one processor, is sent to an interface of the user terminal for display.
[Claim 12]
A method implemented on a computing device having at least one processor, at least one computer-readable storage medium, and a communication platform connected to a network, comprising: determining, from a spatial database storing a target map, one or more target links corresponding to the object; for each target link of the one or more target links, selecting one or more sets of parameters corresponding to the each target link based on the start time and the end time; and determining, based on the each target link and the one or more sets of parameters corresponding to the each target link, a traffic time index corresponding to the object within the start time and the end time.
[Claim 13]
The method of claim 12, wherein the object is a target road, and determining the one or more target links comprising: generating a buffer zone using one or more template links on a template map with respect to the target road; obtaining one or more candidate links covered by the buffer zone by performing a spatial index query with respect the target road in the spatial database; for a candidate link of the one or more candidate links, generating a projected link by projecting the candidate link onto the one or more template links on the template map; determining a matching score between the candidate link and the projected link; and determining the candidate link as one of the one or more target links if the matching score exceeds a threshold.
[Claim 14]
The method of claim 13, further comprising: determining the matching score between the candidate link and the projected link according to a Hausdorff distance matching.
[Claim 15]
The method of claim 12, wherein the object is a target area, and determining the one or more target links corresponding to the target area comprising: performing a spatial index query with respect to the target area in the spatial database to determine the one or more target links on the target map.
[Claim 16]
The method of any one of claims 12 to 15, wherein the spatial database includes at least one of a PostGIS spatial database, an Oracle Spatial, a Spatial DataBlade, or a DB2 Spatial Extender.
[Claim 17]
The method of any of claims 12 to 16, wherein the one or more sets of parameters correspond to one or more target periods, and selecting the one or more sets of parameters corresponding to the each target link comprising: determining a first time period corresponding to the start time; determining a second time period corresponding to the end time; determining the one or more target periods based on the first time period and the second time period; and selecting the one or more sets of parameters corresponding to the each target link based on the one or more target periods.
[Claim 18]
The method of claim 17, wherein each of the one or more sets of parameters of the each target link includes a free-flow speed and a number of vehicles on the each target link within one of the one or more target periods.
[Claim 19]
The method of claim 17, wherein determining the traffic time index corresponding to the object within the start time and the end time comprising: determining an actual time corresponding to the object based on the one or more target periods; and determining a free-flow time corresponding to the object based on the one or more target periods.
[Claim 20]
The method of claim 19, wherein the traffic time index corresponding to the object within the start time and the end time is a ratio of the actual time and the free-flow time.
[Claim 21]
The method of claim 19 or 20, wherein when the object is mapped to more than one target link of the one or more target links, the actual time is related to the actual traveling time of vehicle on the more than one target link corresponding to the object; and the free-flow time is related to the ideal traveling time of vehicle on the more thank target link corresponding to the object.
[Claim 22]
A non-transitory computer-readable storage medium, comprising at least one set of instructions for determining a traffic time index (TTI) associated with an object within a start time and an end time, wherein when executed by at least one processor of a computing device, the at least one set of instructions directs the at least one processor to perform acts of: determining, from a spatial database storing a target map, one or more target links corresponding to the object; for each target link of the one or more target links, selecting one or more sets of parameters corresponding to the each target link based on the start time and the end time; and determining, based on the each target link and the one or more sets of parameters corresponding to the each target link, a traffic time index corresponding to the object within the start time and the end time.
[Claim 23]
A system for analyzing traffic congestion, comprising: a target link determination module configured to determine, from a spatial database storing a target map, one or more target links corresponding to the object; a parameter selection module configured to, for each target link of the one or more target links, select one or more sets of parameters corresponding to the each target link based on the start time and the end time; and a traffic time index determination module configured to determine, based on the each target link and the one or more sets of parameters corresponding to the each target link, a traffic time index corresponding to the object within the start time and the end time.

Drawings

[ Fig. 1]  
[ Fig. 2]  
[ Fig. 3]  
[ Fig. 4]  
[ Fig. 5]  
[ Fig. 6]  
[ Fig. 7]  
[ Fig. 8]