WO2021128365A1 - Systems and methods for controlling traffic signals - Google Patents

Systems and methods for controlling traffic signals Download PDF

Info

Publication number
WO2021128365A1
WO2021128365A1 PCT/CN2019/129541 CN2019129541W WO2021128365A1 WO 2021128365 A1 WO2021128365 A1 WO 2021128365A1 CN 2019129541 W CN2019129541 W CN 2019129541W WO 2021128365 A1 WO2021128365 A1 WO 2021128365A1
Authority
WO
WIPO (PCT)
Prior art keywords
traffic
intersections
intersection
combination
traffic model
Prior art date
Application number
PCT/CN2019/129541
Other languages
French (fr)
Inventor
Minjun Liu
Jianfeng Zheng
Xianghong Liu
Original Assignee
Beijing Didi Infinity Technology And Development Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Didi Infinity Technology And Development Co., Ltd. filed Critical Beijing Didi Infinity Technology And Development Co., Ltd.
Priority to PCT/CN2019/129541 priority Critical patent/WO2021128365A1/en
Publication of WO2021128365A1 publication Critical patent/WO2021128365A1/en

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/07Controlling traffic signals
    • G08G1/081Plural intersections under common control

Definitions

  • the present disclosure generally relates to traffic control, and more specifically, relates to methods and systems for arterial coordination in a road network.
  • Coordination is a mode of traffic signal operation in which adjacent intersections cooperate with one another to prioritize certain movements. It is particularly important and has been widely implemented at signalized arterials, due to significant traffic demands at through movements. A well-designed coordination can facilitate movements on traffic arterials with minimum stops and delays while an improper design, by contrast, can incur congestion and unnecessary costs to the motorists.
  • a system for controlling traffic signals may include one or more storage devices and one or more processors configured to communicate with the one or more storage devices.
  • the one or more storage devices may include a set of instructions.
  • the one or more processors may be directed to perform one or more of the following operations.
  • the one or more processors may obtain intersection information associated with a plurality of intersections of a route.
  • the one or more processors may determine traffic parameters based on the intersection information and a traffic model. The traffic parameters may be used to control traffic signals of the plurality of intersections.
  • the traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
  • an optimization objective of the traffic model may be a green bandwidth associated with the route.
  • the traffic model may be configured to take into account an inbound direction and an outbound direction of the route.
  • the traffic model may be configured to take into account (a) and (b) ; and the traffic parameters may include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and a second combination including an offset of the traffic signal of each of the plurality of intersections.
  • the traffic parameters may be determined without requiring a common cycle length for the traffic signals of the plurality of intersections.
  • the one or more processors may determine the traffic parameters by solving a function deduced from the traffic model using a genetic algorithm and dynamic programming.
  • the one or more processors may determine the first combination based on the traffic model and the genetic algorithm.
  • the one or more processors may determine the second combination based on the traffic model, the first combination, and the dynamic programming.
  • the one or more processors may randomly determine an initial generation of populations, each population including a combination of candidate cycle lengths of the plurality of intersections.
  • the one or more processors may perform a first iteration process including a plurality of iterations.
  • Each of the plurality of iterations may include determining, for each population in a previous generation of populations, a fitness value based on the traffic model.
  • the previous generation of populations may be the initial generation of populations in a first iteration of the plurality of iterations or a new generation of populations generated in a previous iteration.
  • Each of the plurality of iterations may also include reserving at least one population in the previous generation of populations based on the fitness values.
  • Each of the plurality of iterations may also include generating a new generation of populations by performing crossover and mutation to at least one population in the at least one reserved population.
  • Each of the plurality of iterations may also include determining whether a first termination condition is satisfied. In response to a determination that the first termination condition is satisfied, each of the plurality of iterations may also include terminating the first iteration process. In response to a determination that the first termination condition is not satisfied, each of the plurality of iterations may also include initiating a new iteration.
  • the one or more processors may determine the first combination based on the new generation of populations generated in the last iteration of the plurality of iterations of the first iteration process.
  • the one or more processors may determine a boundary state associated with a first intersection of the plurality of intersections based on the traffic model. For each intersection from a second intersection to a last intersection of the plurality of intersections, the one or more processors may determine a state of the each intersection based on the traffic model, the first combination, a state of the each intersection’s last intersection, and a target offset for the each intersection. The state of the each intersection’s last intersection may be the boundary state when the each intersection is the second intersection of the plurality of intersections. The state of the each intersection may be an optimal value of the traffic model from the first intersection to the each intersection. The one or more processors may determine the second combination based on the target offset for each intersection from the second intersection to the last intersection of the plurality of intersections.
  • the traffic model may be configured to take into account all of (a) , (b) , and (c) .
  • the traffic parameters may include a second combination including an offset of the traffic signal of each of the plurality of intersections.
  • the one or more processors may obtain an initial vehicle arrival distribution in the route.
  • the one or more processors may perform a second iteration process including a plurality of iterations.
  • Each of the plurality of iterations may include determining a candidate combination including a candidate offset of the traffic signal of each of the plurality of intersections based on an updated vehicle arrival distribution, the traffic model, and dynamic programming.
  • the updated vehicle arrival distribution may be the initial vehicle arrival distribution in a first of the plurality of iterations or a vehicle arrival distribution generated in a previous iteration.
  • Each of the plurality of iterations may also include generating a new vehicle arrival distribution based on the candidate combination.
  • Each of the plurality of iterations may also include determining whether a second termination condition is satisfied. In response to a determination that the second termination condition is satisfied, each of the plurality of iterations may also include terminating the second iteration process. In response to a determination that the second termination condition is not satisfied, each of the plurality of iterations may also include initiating a new iteration.
  • the one or more processors may determine the second combination based on the candidate combination determined in the last iteration of the plurality of iterations of the second iteration process.
  • a method for controlling traffic signals may include one or more of the following operations.
  • One or more processors may obtain intersection information associated with a plurality of intersections of a route.
  • the one or more processors may determine traffic parameters based on the intersection information and a traffic model.
  • the traffic parameters may be used to control traffic signals of the plurality of intersections.
  • the traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
  • a system for controlling traffic signals may include an information obtaining module configured to obtain intersection information associated with a plurality of intersections of a route.
  • the system may also include a parameter determination module configured to determine traffic parameters based on the intersection information and a traffic model.
  • the traffic parameters may be used to control traffic signals of the plurality of intersections.
  • the traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
  • a non-transitory computer readable medium may comprise at least one set of instructions.
  • the at least one set of instructions may be executed by one or more processors of a computing device.
  • the one or more processors may obtain intersection information associated with a plurality of intersections of a route.
  • the one or more processors may determine traffic parameters based on the intersection information and a traffic model.
  • the traffic parameters may be used to control traffic signals of the plurality of intersections.
  • the traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
  • a system for controlling traffic signals may include one or more storage devices and one or more processors configured to communicate with the one or more storage devices.
  • the one or more storage devices may include a set of instructions.
  • the one or more processors may be directed to perform one or more of the following operations.
  • the one or more processors may obtain a traffic model.
  • the traffic model may relate to mix integer linear programming (MILP) .
  • MILP integer linear programming
  • the traffic model may be configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections.
  • the one or more processors may determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming. Traffic signals of the plurality of intersections may be controlled based on the traffic parameters.
  • the traffic parameters may include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and a second combination including an offset of the traffic signal of each of the plurality of intersections.
  • the one or more processors may determine the first combination based on the traffic model and the genetic algorithm.
  • the one or more processors may determine the second combination based on the traffic model, the first combination, and the dynamic programming.
  • a method for controlling traffic signals may include one or more of the following operations.
  • One or more processors may obtain a traffic model.
  • the traffic model may relate to mix integer linear programming (MILP) .
  • MILP integer linear programming
  • the traffic model may be configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections.
  • the one or more processors may determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming. Traffic signals of the plurality of intersections may be controlled based on the traffic parameters.
  • a system for controlling traffic signals may include an information obtaining module configured to obtain a traffic model.
  • the traffic model may relate to mix integer linear programming (MILP) .
  • MILP integer linear programming
  • the traffic model may be configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections.
  • the system may also include a parameter determination module configured to determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming. Traffic signals of the plurality of intersections may be controlled based on the traffic parameters.
  • a non-transitory computer readable medium may comprise at least one set of instructions.
  • the at least one set of instructions may be executed by one or more processors of a computing device.
  • the one or more processors may obtain a traffic model.
  • the traffic model may relate to mix integer linear programming (MILP) .
  • MILP integer linear programming
  • the traffic model may be configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections.
  • the one or more processors may determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming. Traffic signals of the plurality of intersections may be controlled based on the traffic parameters.
  • FIG. 1 is a schematic diagram illustrating an exemplary traffic control system according to some embodiments of the present disclosure
  • 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
  • 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
  • FIG. 4 is a schematic block diagram illustrating an exemplary processing engine according to some embodiments of the present disclosure
  • FIG. 5 is a flowchart illustrating an exemplary process for determining traffic parameters according to some embodiments of the present disclosure
  • FIG. 6 is a schematic diagram illustrating an example of a route according to some embodiments of the present disclosure.
  • FIG. 7 illustrates an exemplary time-space diagram for a first traffic model according to some embodiments of the present disclosure
  • FIGs. 8A-8B illustrate exemplary time-space diagrams including vehicle travelling trajectories according to some embodiments of the present disclosure
  • FIG. 9 is a flowchart illustrating an exemplary process for determining a first combination based on a genetic algorithm according to some embodiments of the present disclosure.
  • FIG. 10 illustrates an exemplary diagram indicating a relation between iteration times of a genetic algorithm and maximum fitness values according to some embodiments of the present disclosure
  • FIG. 11 is a flowchart illustrating an exemplary process for determining a second combination based on a first traffic model and dynamic programming according to some embodiments of the present disclosure
  • FIG. 12 is a flowchart illustrating an exemplary process for determining a second combination based on a second traffic model and dynamic programming according to some embodiments of the present disclosure
  • FIG. 13A illustrates an exemplary time-space diagram of a test road before optimization according to some embodiments of the present disclosure.
  • FIG. 13B illustrates an exemplary time-space diagram of a test road after optimization using a second traffic model according to some embodiments of the present disclosure.
  • 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.
  • the positioning technology used in the present disclosure may include 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, a BeiDou navigation satellite system, an inertial navigation system (INS) , or the like, or any combination thereof.
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • COMPASS compass navigation system
  • Galileo positioning system Galileo positioning system
  • QZSS quasi-zenith satellite system
  • WiFi wireless fidelity positioning technology
  • BeiDou navigation satellite system a BeiDou navigation satellite system
  • INS inertial navigation system
  • An aspect of the present disclosure provides two traffic models for traffic signal coordination in a route.
  • a first traffic model may include an objective function configured to take into account: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, and (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, aiming at improving spatial efficiencies of the coordination.
  • the second traffic model may include an objective function further taking into account (c) a vehicle arrival distribution in the route to account for both spatial and temporal efficiency of the green bandwidth.
  • the first and second traffic models may optimize coordination with different cycle lengths along the route, and therefore may be more flexible for coordination design.
  • the first and second traffic models may lead to a large MILP problem that is difficult to solve efficiently.
  • another aspect of the present disclosure provides a heuristic solution algorithm using a genetic algorithm and dynamic programming, which successfully reduces the time complexity from an exponential one to polynomial one.
  • FIG. 1 is a schematic diagram illustrating an exemplary traffic control system according to some embodiments of the present disclosure.
  • the traffic control system 100 may include a server 110, a network 120, a user terminal 130, a storage device 150, and a positioning system 160.
  • the server 110 may include a processing engine 112.
  • the server 110 may be a single server or a server group.
  • the server group may be centralized, or distributed (e.g., the server 110 may be a distributed system) .
  • the server 110 may be local or remote.
  • the server 110 may access information and/or data stored in the user terminal 130 and/or the storage device 150 via the network 120.
  • the server 110 may be directly connected to the user terminal 130 and/or the storage device 150 to access stored information and/or data.
  • the server 110 may be implemented on a cloud platform.
  • 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.
  • the server 110 may be implemented on a computing device 200 having one or more components illustrated in FIG. 2 in the present disclosure.
  • the server 110 may include a processing engine 112.
  • the processing engine 112 may process information and/or data relating to the traffic control system 100. For example, the processing engine 112 may determine traffic parameters based on intersection information and a traffic model.
  • the processing engine 112 may include one or more processing engines (e.g., single-core processing engine (s) or multi-core processor (s) ) .
  • the processing engine 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.
  • CPU central processing unit
  • ASIC application-specific integrated circuit
  • ASIP application-specific instruction-set processor
  • GPU graphics processing unit
  • PPU physics processing unit
  • DSP digital signal processor
  • FPGA field-programmable gate array
  • PLD
  • the network 120 may facilitate the exchange of information and/or data.
  • one or more components in the traffic control system 100 e.g., the server 110, the user terminal 130, the storage device 150, or the positioning system 160
  • the server 110 may obtain intersection information associated with a plurality of intersections of a route in a road network from the storage device 150 via the network 120.
  • the user terminal 130 may transmit real-time location information of vehicles to the server 110 via the network 120.
  • the network 120 may be any type of wired or wireless network, or a combination thereof.
  • the network 120 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.
  • the network 120 may include one or more network access points.
  • 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 traffic control system 100 may be connected to the network 120 to exchange data and/or information.
  • the user 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • the built-in device in the motor vehicle 130-4 may include an onboard computer, an onboard television, etc.
  • the user terminal 130 may be a device with positioning technology for locating the position of a user of the user terminal 130 (e.g., a vehicle of the user) and/or the user terminal 130.
  • the user terminal 130 may communicate with one or more other positioning devices to determine the position of the user terminal 130.
  • the user terminal 130 may send positioning information to the server 110.
  • the user terminal 130 may receive/transmit information related to the traffic control system 100 from/to one or more components (e.g., the server 110, the storage device 150, the positioning system 160) of the traffic control system 100. For example, the user terminal 130 may transmit the real-time position of the user to the server 110.
  • one or more components e.g., the server 110, the storage device 150, the positioning system 160.
  • the storage device 150 may store data and/or instructions. In some embodiments, the storage device 150 may store data obtained from the user terminal 130. For example, the storage device 150 may store real-time location information obtained from the user terminal 130. 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. For example, the storage device 150 may store data and/or instructions that the server 110 may execute or use to determine traffic parameters based on intersection information and a traffic model described in the present disclosure. In some embodiments, the 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.
  • ROM read-only memory
  • 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.
  • DRAM dynamic RAM
  • DDR SDRAM double date rate synchronous dynamic RAM
  • SRAM static RAM
  • T-RAM thyrisor RAM
  • Z-RAM zero-capacitor RAM
  • 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.
  • the storage device 150 may be implemented on a cloud platform.
  • 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.
  • the storage device 150 may be connected to the network 120 to communicate with one or more components in the traffic control system 100 (e.g., the server 110, the user terminal 130, etc. ) .
  • One or more components in the traffic control system 100 may access the data or instructions stored in the storage device 150 via the network 120.
  • the storage device 150 may be directly connected to or communicate with one or more components in the traffic control system 100 (e.g., the server 110, the user terminal 130, etc. ) .
  • one or more components in the traffic control system 100 e.g., the server 110, the user terminal 130, etc.
  • the storage device 150 may be part of the server 110.
  • the positioning system 160 may determine information associated with an object, for example, the user terminal 130, etc. For example, the positioning system 160 may determine a current location of the user terminal 130.
  • the positioning 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 information may include a location, an elevation, a velocity, or an acceleration of the object, or a current time.
  • the location may be in the form of coordinates, such as, latitude coordinate and longitude coordinate, etc.
  • the positioning 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 satellite positioning system 160 may send the information mentioned above to the network 120 or the user terminal 130, via wireless connections.
  • the user terminal 130 and/or the positioning system 160 may be omitted in the traffic control system 100.
  • FIG. 2 is a schematic diagram illustrating exemplary hardware and/or software components of a computing device on which the processing engine 112 may be implemented according to some embodiments of the present disclosure.
  • the processing engine 112 may be computing device 200, which may include a processor 210, a storage 220, an input/output (I/O) 230, and a communication port 240.
  • the processor 210 may execute computer instructions (e.g., program code) and perform functions of the processing engine 112 in accordance with techniques described herein.
  • the processor 210 may include interface circuits 210-a and processing circuits 210-b therein.
  • the interface circuits may be configured to receive electronic signals from a bus (not shown in FIG. 2) , wherein the electronic signals encode structured data and/or instructions for the processing circuits to process.
  • the processing circuits may conduct logic calculations, and then determine a conclusion, a result, and/or an instruction encoded as electronic signals. Then the interface circuits may send out the electronic signals from the processing circuits via the bus.
  • the computer instructions may include, for example, routines, programs, objects, components, data structures, procedures, modules, and functions, which perform particular functions described herein.
  • the processor 210 may determine traffic parameters based on intersection information and a traffic model.
  • the processor 210 may include one or more hardware processors, such as a microcontroller, a microprocessor, a reduced instruction set computer (RISC) , an application specific integrated circuits (ASICs) , an application-specific instruction-set processor (ASIP) , a central processing unit (CPU) , a graphics processing unit (GPU) , a physics processing unit (PPU) , a microcontroller unit, a digital signal processor (DSP) , a field programmable gate array (FPGA) , an advanced RISC machine (ARM) , a programmable logic device (PLD) , any circuit or processor capable of executing one or more functions, or the like, or any combinations thereof.
  • RISC reduced instruction set computer
  • ASICs application specific integrated
  • processors of the computing device 200 may also include multiple processors, thus operations and/or method steps that are performed by one processor as described in the present disclosure may also be jointly or separately performed by the multiple processors.
  • the 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 or more different processors jointly or separately in the computing device 200 (e.g., a first processor executes step A and a second processor executes step B, or the first and second processors jointly execute steps A and B) .
  • the storage 220 may store data/information obtained from the user terminal 130, the storage device 150, and/or any other component of the traffic control system 100.
  • the storage 220 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.
  • the mass storage may include a magnetic disk, an optical disk, a solid-state drives, etc.
  • the removable storage may include a flash drive, a floppy disk, an optical disk, a memory card, a zip disk, a magnetic tape, etc.
  • the volatile read-and-write memory may include a random access memory (RAM) .
  • the RAM may include a dynamic RAM (DRAM) , a double date rate synchronous dynamic RAM (DDR SDRAM) , a static RAM (SRAM) , a thyristor RAM (T-RAM) , and a zero-capacitor RAM (Z-RAM) , etc.
  • the 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.
  • the storage 220 may store one or more programs and/or instructions to perform exemplary methods described in the present disclosure.
  • the storage 220 may store a program for the processing engine 112 for determining traffic parameters based on intersection information and a traffic model.
  • the I/O 230 may input and/or output signals, data, information, etc. In some embodiments, the I/O 230 may enable a user interaction with the processing engine 112. In some embodiments, the I/O 230 may include an input device and an output device. Examples of the input device may include a keyboard, a mouse, a touch screen, a microphone, or the like, or a combination thereof. Examples of the output device may include a display device, a loudspeaker, a printer, a projector, or the like, or a combination thereof.
  • Examples of the display device may include a liquid crystal display (LCD) , a light-emitting diode (LED) -based display, a flat panel display, a curved screen, a television device, a cathode ray tube (CRT) , a touch screen, or the like, or a combination thereof.
  • LCD liquid crystal display
  • LED light-emitting diode
  • CRT cathode ray tube
  • the communication port 240 may be connected to a network (e.g., the network 120) to facilitate data communications.
  • the communication port 240 may establish connections between the processing engine 112 and the user terminal 130, the positioning system 160, or the storage device 150.
  • the connection may be a wired connection, a wireless connection, any other communication connection that can enable data transmission and/or reception, and/or any combination of these connections.
  • the wired connection may include, for example, an electrical cable, an optical cable, a telephone wire, or the like, or any combination thereof.
  • the wireless connection may include, for example, a Bluetooth TM link, a Wi-Fi TM link, a WiMax TM link, a WLAN link, a ZigBee TM link, a mobile network link (e.g., 3G, 4G, 5G, etc. ) , or the like, or a combination thereof.
  • the communication port 240 may be and/or include a standardized communication port, such as RS232, RS485, etc.
  • FIG. 3 a schematic diagram illustrating exemplary hardware and/or software components of a mobile device on which the user terminal 130 may be implemented according to some embodiments of the present disclosure.
  • 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, and a storage 390.
  • 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.
  • a mobile operating system (OS) 370 e.g., iOS TM , Android TM , Windows Phone TM , etc.
  • the applications 380 may include a browser or any other suitable mobile apps for receiving and rendering information relating to an online to offline carpooling service or other information from the processing engine 112, and sending information relating to an online to offline carpooling service or other information to the processing engine 112.
  • User interactions with the information stream may be achieved via the I/O 350 and provided to the processing engine 112 and/or other components of the traffic control system 100 via the network 120.
  • an element of the traffic control system 100 may perform through electrical signals and/or electromagnetic signals.
  • the processing engine 112 may operate logic circuits in its processor to process such task.
  • data e.g., instructions including traffic parameters that are used to control traffic signals of a plurality of intersections
  • a processor of the processing engine 112 may generate electrical signals encoding the data.
  • the processor of the processing engine 112 may then send the electrical signals to an information exchange port (e.g., an output port) of the processing engine 112.
  • the information exchange port of the processing engine 112 may be physically connected to a cable, which may further transmit the electrical signals to an information exchange port (e.g., an input port) of the traffic light.
  • the information exchange port of the processing engine 112 may be one or more antennas, which may convert the electrical signals to electromagnetic signals.
  • an electronic device such as the user terminal 130 or the server 110, when a processor thereof processes an instruction, sends out an instruction, and/or performs an action, the instruction and/or action is conducted via electrical signals.
  • the processor when the processor retrieves or saves data from a storage medium (e.g., the storage device 150, the storage 220) , it may send 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.
  • an electrical signal may refer to one electrical signal, a series of electrical signals, and/or a plurality of discrete electrical signals.
  • FIG. 4 is a schematic block diagram illustrating an exemplary processing engine according to some embodiments of the present disclosure.
  • the processing engine 112 may include an information obtaining module 410 and a parameter determination module 420.
  • the information obtaining module 410 may obtain intersection information of a plurality of intersections of a route in a road network.
  • the intersection may be a place where two or more roads meet or cross.
  • the intersection may include a crossroad, a T-intersection, an X-intersection, a Y-intersection, or the like.
  • the route may include an inbound portion in which vehicles travel along an inbound direction and an outbound portion in which vehicles travel along an outbound direction.
  • the outbound direction may be an opposite direction of the inbound direction.
  • the route may be divided into a plurality of links by the plurality of intersections. For example, a segment of the route between two adjacent intersections of the plurality of intersections may be a link.
  • the traffic signals in the plurality of intersections may refer to the traffic signals configured to control the traffic in the route.
  • the traffic signal configured to control the traffic in the inbound direction e.g., the traffic in the inbound portion of the route
  • the traffic signal configured to control the traffic in the outbound direction e.g., the traffic in the outbound portion of the route
  • an outbound traffic signal e.g., the traffic in the outbound traffic signal
  • the route may include the inbound portion (e.g., 601) and the outbound portion (e.g., 602) .
  • the route may go through three intersections, such as intersections 603, 604, and 605.
  • the route may include link 606 connecting intersections 603 and 604, and link 607 connecting intersections 604 and 605.
  • the traffic signals in the intersections 603-605 may be configured to control the traffic in the inbound direction (e.g., the direction A in FIG. 6) and the outbound direction (e.g., the direction B in FIG. 6) of the route.
  • the intersection information may include the number (or count) of the plurality of intersections of the route, a driving distance between each pair of adjacent intersections of the plurality of intersections, a road structure (e.g., the number of lanes) between each pair of adjacent intersections of the plurality of intersections, a free-flow driving speed between each pair of adjacent intersections of the plurality of intersections, traffic rules of the route, a green split of the traffic signal in each of the plurality of intersections, traffic flow between each pair of adjacent intersections of the plurality of intersections, traffic capacity between each pair of adjacent intersections of the plurality of intersections, or the like, or any combination thereof.
  • the green split of the traffic signal may refer to a duration of the green light phase in a cycle of the traffic signal.
  • the green split of the traffic signals of the plurality of intersections may be default of the traffic control system 100.
  • a user e.g., an engineer
  • the green split of the traffic signal in each of the plurality of intersections may be automatically determined based on traffic flow and/or traffic capacity of the intersection using, for example, Webster’s formula and/or machine learning.
  • the green splits that the traffic signals in the plurality of intersections is working with may be used to determine the traffic parameters of the traffic signals in the plurality of intersections to perform traffic signal coordination.
  • the user terminal 130 may establish a communication (e.g., a wireless communication) with the processing engine 112, via an application installed in the user terminal 130.
  • the application may associate with the traffic control system 100.
  • the application may be a taxi-hailing application or a navigation application.
  • the real-time position of the user terminal 130 may be obtained through a positioning technology in the user terminal 130, for example, a GPS, a GLONASS, a COMPASS, a QZSS, a WiFi positioning technology, or the like, or any combination thereof.
  • the application installed in the user terminal 130 may direct the user terminal 130 to constantly send the real-time position of the user terminal 130 to the processing engine 112. If the user terminal 130 moves along with a vehicle, the real-time position of the user terminal 130 may be determined as the real-time position of the vehicle. Consequently, the processing engine 112 may acquire trajectory data of the vehicle based on the real-time positions of the vehicle.
  • one or more sensors may be installed at each of the plurality of intersections to collect traffic data at each of the plurality of intersections, such as the number (count) of vehicles, the driving speeds of vehicles, vehicles’ trajectories, traffic flow, traffic capacities, or the like, or any combination thereof.
  • the one or more sensors may include range imaging sensors, microwave sensors, inductive loops, black and white cameras, red green blue (RGB) cameras, infrared (IR) cameras, multi-spectral cameras, hyper-spectral cameras, directional sensors, radar, laser radar, audio sensors such as microphones, or the like, or any combination thereof.
  • At least one of the free-flow driving speed, the traffic flow, and the traffic capacity between each pair of adjacent intersections of the plurality of intersections may be obtained based on the trajectory data acquired from the user terminal 130 and/or the traffic data acquired from the sensors installed at the plurality of intersections.
  • the parameter determination module 420 may determine traffic parameters based on the intersection information and a traffic model.
  • the traffic parameters may be used to control traffic signals of the plurality of intersections in the route during a time period of day (e.g., 7: 00 a.m. -10: 00 a.m. or 10: 00 a.m. -4: 00 p.m. ) .
  • the traffic parameters may include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and/or a second combination including an offset of the traffic signal of each of the plurality of intersections.
  • the free-flow driving speed between each pair of adjacent intersections of the plurality of intersections, the traffic rules of the route, the green split of the traffic signal in each of the plurality of intersections, the traffic flow between each pair of adjacent intersections of the plurality of intersections, and the traffic capacity between each pair of adjacent intersections of the plurality of intersections may correspond to the application time of the traffic parameters.
  • a cycle of the traffic signal may include a red light phase and a green light phase. In some embodiments, a period of the yellow light may be included in the green light phase. In some embodiments, in the same intersection, the cycle lengths of the inbound traffic signal and the outbound traffic signal may be the same. The inbound traffic signal and the outbound traffic signal may be or not be synchronous (as shown in FIG. 7) .
  • the offset of the traffic signal in an intersection may refer to a difference between a specific time point and a start time of a cycle of the traffic signal that is closest to the specific time point.
  • the offset of the traffic signal in an intersection may refer to an offset between two inbound (outbound) traffic signals in the intersection and the intersection’s adjacent intersection.
  • the offset between the two inbound (outbound) traffic signals in the pair of adjacent intersections may refer to a difference between a first start time of a cycle of the inbound (outbound) traffic signal in one intersection in the pair of adjacent intersections and a second start time of a cycle of the inbound (outbound) traffic signal in the other intersection that is closest to the first start time.
  • an optimization objective of the traffic model may relate to a green bandwidth.
  • the green bandwidth may refer to a time width in which vehicles can travel through two or more successive intersections without being stopped by a red light (e.g., the vehicles can encounter a string of green lights when travelling through the two or more successive intersections) .
  • the traffic model may include an objective function configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
  • an objective function configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
  • a common cycle length for traffic signals of the plurality of intersections may not be required.
  • the arterial green bandwidth may refer to a time width in which vehicles can travel through the plurality of intersections of the route without being stopped by a red light.
  • the link green bandwidth may refer to a time width in which vehicles can successively travel through a part of the plurality of intersections of the route without being stopped by a red light.
  • the objective function of the traffic model may be configured to optimize a weighted sum of different types of bandwidths in the route.
  • the different types of bandwidths may include an inbound (outbound) bandwidth of spillover at the red light in each of the plurality of intersections, a first inbound (outbound) link green bandwidth, a second inbound (outbound) link green bandwidth, and an inbound (outbound) arterial green bandwidth.
  • the inbound (outbound) bandwidth of spillover at the red light in each of the plurality of intersections may refer to a time width in which spillover may occur at the red light that controls the traffic in the inbound (outbound) direction of the route.
  • the spillover may refer to a situation that a vehicle queue caused by the red light at an intersection extends to or beyond its upstream intersection along the travel direction (e.g., the inbound direction or the outbound direction) , which may block the upstream intersection.
  • the first inbound (outbound) link green bandwidth may refer to a link green bandwidth in which vehicles can travel through two successive intersections along the inbound (outbound) direction without being stopped by a red light.
  • the second inbound (outbound) link green bandwidth may refer to a link green bandwidth in which vehicles can travel through three successive intersections along the inbound (outbound) direction without being stopped by a red light.
  • the inbound (outbound) arterial green bandwidth may refer to an arterial green bandwidth in which vehicles can travel through the plurality of intersections in the route along the inbound (outbound) direction without being stopped by a red light.
  • a first traffic model may include a first objective function configured to take into account (a) and (b) .
  • a second traffic model may include a second objective function configured to take into account (a) , (b) , and (c) .
  • the parameter determination module 420 may solve the first objective function of the first traffic model using a genetic algorithm and dynamic programming. In some embodiments, the parameter determination module 420 may determine the first combination based on the first traffic model and the genetic algorithm. Then the parameter determination module 420 may determine the second combination based on the first traffic model, the first combination, and the dynamic programming. Details related to determining the first combination based on the genetic algorithm may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 9) . Details related to determining the second combination based on the dynamic programming may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 11) .
  • the first combination when the second traffic model is used to determine the traffic parameters, the first combination may be default of the traffic control system 100. In some embodiments, a user (e.g., an engineer) of the traffic control system 100 may set the first combination. In some embodiments, the first combination may be automatically determined based on the intersection information using, for example, Webster’s formula and/or machine learning. In some embodiments, the first combination may be automatically determined by solving the first objective function of the first traffic model using the genetic algorithm. In some embodiments, the cycle lengths that the traffic signals in the plurality of intersections is working with may be used as the first combination.
  • the parameter determination module 420 may determine the second combination based on the second traffic model and the dynamic programming. Details related to determining the second combination based on the second traffic model and the dynamic programming may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 12) .
  • the traffic parameters may be transmitted to the traffic signals at the plurality of intersections to cause the traffic signals to work according to the traffic parameters.
  • the modules in the processing engine 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.
  • LAN Local Area Network
  • WAN Wide Area Network
  • Bluetooth a ZigBee
  • NFC Near Field Communication
  • the processing engine 112 may further include a storage module (not shown in FIG. 4) .
  • the storage module may be configured to store data generated during any process performed by any component of in the processing engine 112.
  • each of components of the processing engine 112 may include a storage device. Additionally or alternatively, the components of the processing engine 112 may share a common storage device.
  • FIG. 5 is a flowchart illustrating an exemplary process for determining traffic parameters according to some embodiments of the present disclosure.
  • the process 500 may be implemented in the traffic control system 100 illustrated in FIG. 1.
  • the process 500 may be stored in a storage medium (e.g., the storage device 150, or the storage 220 of the processing engine 112) as a form of instructions, and can be invoked and/or executed by the server 110 (e.g., the processing engine 112, the processor 210 of the processing engine 112, or one or more modules in the processing engine 112 illustrated in FIG. 4) .
  • the operations of the illustrated process 500 presented below are intended to be illustrative. In some embodiments, the process 500 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 500 as illustrated in FIG. 5 and described below is not intended to be limiting.
  • the processing engine 112 may obtain intersection information of a plurality of intersections of a route in a road network.
  • the intersection may be a place where two or more roads meet or cross.
  • the intersection may include a crossroad, a T-intersection, an X-intersection, a Y-intersection, or the like.
  • the route may include an inbound portion in which vehicles travel along an inbound direction and an outbound portion in which vehicles travel along an outbound direction.
  • the outbound direction may be an opposite direction of the inbound direction.
  • the route may be divided into a plurality of links by the plurality of intersections. For example, a segment of the route between two adjacent intersections of the plurality of intersections may be a link.
  • the traffic signals in the plurality of intersections may refer to the traffic signals configured to control the traffic in the route.
  • the traffic signal configured to control the traffic in the inbound direction e.g., the traffic in the inbound portion of the route
  • the traffic signal configured to control the traffic in the outbound direction e.g., the traffic in the outbound portion of the route
  • an outbound traffic signal e.g., the traffic in the outbound traffic signal
  • the route may include the inbound portion (e.g., 601) and the outbound portion (e.g., 602) .
  • the route may go through three intersections, such as intersections 603, 604, and 605.
  • the route may include link 606 connecting intersections 603 and 604, and link 607 connecting intersections 604 and 605.
  • the traffic signals in the intersections 603-605 may be configured to control the traffic in the inbound direction (e.g., the direction A in FIG. 6) and the outbound direction (e.g., the direction B in FIG. 6) of the route.
  • the intersection information may include the number (or count) of the plurality of intersections of the route, a driving distance between each pair of adjacent intersections of the plurality of intersections, a road structure (e.g., the number of lanes) between each pair of adjacent intersections of the plurality of intersections, a free-flow driving speed between each pair of adjacent intersections of the plurality of intersections, traffic rules of the route, a green split of the traffic signal in each of the plurality of intersections, traffic flow between each pair of adjacent intersections of the plurality of intersections, traffic capacity between each pair of adjacent intersections of the plurality of intersections, or the like, or any combination thereof.
  • the green split of the traffic signal may refer to a duration of the green light phase in a cycle of the traffic signal.
  • the green split of the traffic signals of the plurality of intersections may be default of the traffic control system 100.
  • a user e.g., an engineer
  • the green split of the traffic signal in each of the plurality of intersections may be automatically determined based on traffic flow and/or traffic capacity of the intersection using, for example, Webster’s formula and/or machine learning.
  • the green splits that the traffic signals in the plurality of intersections is working with may be used to determine the traffic parameters of the traffic signals in the plurality of intersections to perform traffic signal coordination.
  • the user terminal 130 may establish a communication (e.g., a wireless communication) with the processing engine 112, via an application installed in the user terminal 130.
  • the application may associate with the traffic control system 100.
  • the application may be a taxi-hailing application or a navigation application.
  • the real-time position of the user terminal 130 may be obtained through a positioning technology in the user terminal 130, for example, a GPS, a GLONASS, a COMPASS, a QZSS, a WiFi positioning technology, or the like, or any combination thereof.
  • the application installed in the user terminal 130 may direct the user terminal 130 to constantly send the real-time position of the user terminal 130 to the processing engine 112. If the user terminal 130 moves along with a vehicle, the real-time position of the user terminal 130 may be determined as the real-time position of the vehicle. Consequently, the processing engine 112 may acquire trajectory data of the vehicle based on the real-time positions of the vehicle.
  • one or more sensors may be installed at each of the plurality of intersections to collect traffic data at each of the plurality of intersections, such as the number (count) of vehicles, the driving speeds of vehicles, vehicles’ trajectories, traffic flow, traffic capacities, or the like, or any combination thereof.
  • the one or more sensors may include range imaging sensors, microwave sensors, inductive loops, black and white cameras, red green blue (RGB) cameras, infrared (IR) cameras, multi-spectral cameras, hyper-spectral cameras, directional sensors, radar, laser radar, audio sensors such as microphones, or the like, or any combination thereof.
  • At least one of the free-flow driving speed, the traffic flow, and the traffic capacity between each pair of adjacent intersections of the plurality of intersections may be obtained based on the trajectory data acquired from the user terminal 130 and/or the traffic data acquired from the sensors installed at the plurality of intersections.
  • the processing engine 112 may determine traffic parameters based on the intersection information and a traffic model.
  • the traffic parameters may be used to control traffic signals of the plurality of intersections in the route during a time period of day (e.g., 7: 00 a.m. -10: 00 a.m. or 10: 00 a.m. -4: 00 p.m. ) .
  • the traffic parameters may include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and/or a second combination including an offset of the traffic signal of each of the plurality of intersections.
  • the free-flow driving speed between each pair of adjacent intersections of the plurality of intersections, the traffic rules of the route, the green split of the traffic signal in each of the plurality of intersections, the traffic flow between each pair of adjacent intersections of the plurality of intersections, and the traffic capacity between each pair of adjacent intersections of the plurality of intersections may correspond to the application time of the traffic parameters.
  • a cycle of the traffic signal may include a red light phase and a green light phase. In some embodiments, a period of the yellow light may be included in the green light phase. In some embodiments, in the same intersection, the cycle lengths of the inbound traffic signal and the outbound traffic signal may be the same. The inbound traffic signal and the outbound traffic signal may be or not be synchronous (as shown in FIG. 7) .
  • the offset of the traffic signal in an intersection may refer to a difference between a specific time point and a start time of a cycle of the traffic signal that is closest to the specific time point.
  • the offset of the traffic signal in an intersection may refer to an offset between two inbound (outbound) traffic signals in the intersection and the intersection’s adjacent intersection.
  • the offset between the two inbound (outbound) traffic signals in the pair of adjacent intersections may refer to a difference between a first start time of a cycle of the inbound (outbound) traffic signal in one intersection in the pair of adjacent intersections and a second start time of a cycle of the inbound (outbound) traffic signal in the other intersection that is closest to the first start time.
  • an optimization objective of the traffic model may relate to a green bandwidth.
  • the green bandwidth may refer to a time width in which vehicles can travel through two or more successive intersections without being stopped by a red light (e.g., the vehicles can encounter a string of green lights when travelling through the two or more successive intersections) .
  • the traffic model may include an objective function configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
  • an objective function configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
  • a common cycle length for traffic signals of the plurality of intersections may not be required.
  • the arterial green bandwidth may refer to a time width in which vehicles can travel through the plurality of intersections of the route without being stopped by a red light.
  • the link green bandwidth may refer to a time width in which vehicles can successively travel through a part of the plurality of intersections of the route without being stopped by a red light.
  • the objective function of the traffic model may be configured to optimize a weighted sum of different types of bandwidths in the route.
  • the different types of bandwidths may include an inbound (outbound) bandwidth of spillover at the red light in each of the plurality of intersections, a first inbound (outbound) link green bandwidth, a second inbound (outbound) link green bandwidth, and an inbound (outbound) arterial green bandwidth.
  • the inbound (outbound) bandwidth of spillover at the red light in each of the plurality of intersections may refer to a time width in which spillover may occur at the red light that controls the traffic in the inbound (outbound) direction of the route.
  • the spillover may refer to a situation that a vehicle queue caused by the red light at an intersection extends to or beyond its upstream intersection along the travel direction (e.g., the inbound direction or the outbound direction) , which may block the upstream intersection.
  • the first inbound (outbound) link green bandwidth may refer to a link green bandwidth in which vehicles can travel through two successive intersections along the inbound (outbound) direction without being stopped by a red light.
  • the second inbound (outbound) link green bandwidth may refer to a link green bandwidth in which vehicles can travel through three successive intersections along the inbound (outbound) direction without being stopped by a red light.
  • the inbound (outbound) arterial green bandwidth may refer to an arterial green bandwidth in which vehicles can travel through the plurality of intersections in the route along the inbound (outbound) direction without being stopped by a red light.
  • a first traffic model may include a first objective function configured to take into account (a) and (b) .
  • the first objective function of the first traffic model may have the following form of Formula (1) :
  • the least common multiple C lcm of each traffic signal’s cycle length in the plurality of intersections may be determined.
  • one or more successive cycles may be taken into account during C lcm .
  • the number (count) of the one or more successive cycles may be equal to a ratio of C lcm to the cycle length of the traffic signal.
  • C i refers to the cycle length of the traffic signal (e.g., the inbound and the outbound traffic signals) in intersection i.
  • FIG. 7 illustrates an exemplary time-space diagram for the first traffic model according to some embodiments of the present disclosure.
  • the route includes intersections i, j, k, and l, referred to as S i , S j , S k , and S l .
  • the vertical axis indicates location information in the route.
  • the horizontal axis indicates the time scale.
  • a direction from S i to S l may be referred to as the inbound direction, and a direction from S l to S i may be referred to as the outbound direction.
  • the upper black bars (e.g., 701 at S i ) refer to the red light phases of the inbound traffic signal
  • the lower black bars (e.g., 702 in S i ) refer to the red light phases of the outbound traffic signal
  • the upper dashed bars (e.g., 703 in S i ) refer to the green light phases of the inbound traffic signal
  • the lower dashed bars (e.g., 704 in S i ) refer to the green light phases of the outbound traffic signal.
  • the cycle lengths of the inbound traffic signal and the outbound traffic signal may be the same.
  • the inbound traffic signal and the outbound traffic signal may be or not be synchronous.
  • the first traffic model Compared with traditional bandwidth models, the first traffic model considers not only the green bandwidth through the whole route but also the link green bandwidth for each pair of adjacent intersections. Different from MAXBAND or MULTIBAND, the first traffic model does not require a common cycle length for determining the plurality of intersections, which makes it more flexible and suitable for the route with substantially different traffic volumes at each intersection. What’s more, the first traffic model also considers the spillover situation and avoids the spillover that occurs at the red light, which will block the intersection.
  • the issue of the different types of green bandwidths may be decomposed as a combination of a few MAXBAND issues.
  • the issue of may be decomposed as N-1 (N refers to the number (count) of the plurality of intersections of the route) two-intersection coordination issues with the MAXBAND model.
  • the issue of may be decomposed as N-2 three-intersection coordination issues with the MAXBAND model.
  • the issue of may include the N-intersection coordination issue with the MAXBAND model.
  • one or more successive cycles may be taken into account.
  • the number (count) of the one or more successive cycles may be equal to a ratio of C lcm to the cycle length of the traffic signal. For example, for the inbound (outbound) traffic signal in intersection i, successive cycles may be taken into account. Therefore, may be decomposed as sub-bandwidths.
  • the number (count) of sub-bandwidth combinations for each intersection may be
  • the first objective function of the first traffic model may become an extremely large MILP, which involves more than unrestricted integer variables.
  • the processing engine 112 may solve the first objective function of the first traffic model using a genetic algorithm and dynamic programming. In some embodiments, the processing engine 112 may determine the first combination based on the first traffic model and the genetic algorithm. Then the processing engine 112 may determine the second combination based on the first traffic model, the first combination, and the dynamic programming. Details related to determining the first combination based on the genetic algorithm may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 9) . Details related to determining the second combination based on the dynamic programming may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 11) .
  • traffic models including a large MILP issue may also be processed using the genetic algorithm in combination with the dynamic programming provided in the present disclosure.
  • FIGs. 8A-8B illustrate exemplary time-space diagrams including vehicle travelling trajectories according to some embodiments of the present disclosure.
  • the route includes intersections S 1 , S 2 , and S 3 .
  • the vertical axis indicates location information in the route.
  • the horizontal axis indicates the time scale.
  • a direction from S 1 to S 3 may be referred to as the inbound direction, and a direction from S 3 to S 1 may be referred to as the outbound direction.
  • each line (e.g., 801 and 802) represents a vehicle travelling trajectory.
  • FIG. 801 and 802 represents a vehicle travelling trajectory.
  • the coordination plan may be more efficient, and vehicles may stop less. Therefore, in some embodiments, in addition to the spillover situation and the arterial green bandwidth in combination with the link green bandwidth, the objective function of the traffic model may be further configured to take into account a vehicle arrival distribution at each of the plurality of intersections as features to refine the coordination optimization and improve efficiency of the arterial green bandwidth and/or the link green bandwidth.
  • the penetration rate and the traffic state are stable for the same movement in a time of day (TOD) .
  • TOD time of day
  • the vehicle arrival distribution of sampled trajectories may be similar to that from whole traffic, when the number of samples is enough.
  • a second traffic model may include a second objective function configured to take into account all of (a) , (b) and (c) .
  • the second objective function of the second traffic model may have the following form of Formula (4) :
  • the elements of the first vector represent the frequency of vehicles arriving at intersection i for each second (e.g., in a cycle of the inbound (outbound) traffic signal of intersection i) ; refers to a second vector of the inbound (outbound) green state at intersection i, the elements of the second vector represent whether the green light of the inbound (outbound) traffic signal of intersection i is available for each second (e.g., in a cycle of the inbound (outbound) traffic signal of intersection i) , for example, the element “1” of the second vector represents the green light is available, the element “0” of the second vector represents the green light is not available;
  • W g refers to a weight of the vehicle arrival distribution; and W S >>
  • At least one of W i (S) , W i (1) , W i (2) , W i (C) W S , W g , W 1 , W 2 , and W C may be set by the user of the traffic control system 100, or may be automatically determined by the processing engine 112 based on the intersection information using, for example, machine learning.
  • the first combination when the second traffic model is used to determine the traffic parameters (e.g., the second combination) , the first combination may be a known parameter that is input into the second traffic model to determine the second combination. In some embodiments, the first combination may be default of the traffic control system 100. In some embodiments, a user (e.g., an engineer) of the traffic control system 100 may set the first combination. In some embodiments, the first combination may be automatically determined based on the intersection information using, for example, Webster’s formula and/or machine learning. In some embodiments, the first combination may be automatically determined by solving the first objective function of the first traffic model using the genetic algorithm. In some embodiments, the cycle lengths that the traffic signals in the plurality of intersections is working with may be used as the first combination.
  • the most important factor in the coordination may be the vehicle arrival distribution.
  • the vehicle arrival distribution is dynamic, and depends on the signal plan of all upstream intersections. Because W g >>W 1 ⁇ W 2 ⁇ W C , the vehicle arrival distribution may be the main factor of Formula (4) , and the different types of bandwidths may be auxiliary to avoid the situation lack of samples of trajectory. As the most important part of the dynamic process, it’s necessary to rebuild the vehicle arrival distribution with the second traffic model after the signal plan changes.
  • the processing engine 112 may determine the second combination based on the second traffic model and the dynamic programming. Details related to determining the second combination based on the second traffic model and the dynamic programming may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 12) .
  • the traffic parameters may be transmitted to the traffic signals at the plurality of intersections to cause the traffic signals to work according to the traffic parameters.
  • An aspect of the present disclosure provides a first traffic model and a second traffic model for traffic signal coordination optimization of a route.
  • the first traffic model and the second traffic model may be available for the case with different cycle lengths for different intersections in the route, which is suitable for the route with a large different traffic volumes between two adjacent intersections in the route.
  • the first traffic model may be flexible and add the critical sub-path to the objective function easily.
  • the second traffic model may be suitable for the case with non-uniform arrival volume and may improve the efficiency of the green band of the route.
  • another aspect of the present disclosure provides a genetic algorithm in combination with dynamic programming. Due to the reduction of time complexity from an exponential degree to a polynomial degree, the coordination of the first traffic model may be used for a large scale road network.
  • FIG. 9 is a flowchart illustrating an exemplary process for determining a first combination based on genetic algorithm according to some embodiments of the present disclosure.
  • the process 900 may be implemented in the traffic control system 100 illustrated in FIG. 1.
  • the process 900 may be stored in a storage medium (e.g., the storage device 150, or the storage 220 of the processing engine 112) as a form of instructions, and can be invoked and/or executed by the server 110 (e.g., the processing engine 112, the processor 210 of the processing engine 112, or one or more modules in the processing engine 112 illustrated in FIG. 4) .
  • the operations of the illustrated process 900 presented below are intended to be illustrative. In some embodiments, the process 900 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 900 as illustrated in FIG. 9 and described below is not intended to be limiting.
  • a green band between two intersections may be satisfied with one of Formulas (5) - (8) as follows:
  • gs i refers to a start time of a green light phase of the inbound (outbound) traffic signal (also referred to as a first inbound (outbound) green start time) of intersection i of the plurality of intersections
  • gs j refers to a start time of a green light phase of the inbound (outbound) traffic signal (also referred to as a second inbound (outbound) green start time) of intersection j of the plurality of intersections
  • ge i refers to an end time of the green light phase of the inbound (outbound) traffic signal (also referred to as a first inbound (outbound) green end time) of intersection i
  • ge j refers to an end time of the green light phase of the inbound (outbound) traffic signal (also referred to as a second inbound (outbound) green end time) of intersection j
  • L i, j (L j, i ) refers to a driving distance from
  • an acceptable range of the cycle length including a plurality of candidate cycle lengths (e.g., the number (count) of the candidate cycle lengths may be represented as L acc ) may be set by the user or may be automatically determined by the processing engine 112 based on the intersection information. For the whole route including N intersections, the number (count) of candidate cycle length combinations in a universal set may be equal to (the N th power of L acc ) .
  • the universal set may include all of the candidate cycle length combinations based on the acceptable cycle lengths.
  • the candidate cycle length combination may include a candidate cycle length for each of the plurality of intersections.
  • the processing engine 112 may use the genetic algorithm (e.g., the process 900) to determine the first combination based on the candidate cycle length combinations.
  • the processing engine 112 may randomly determine a first generation of populations.
  • the candidate cycle length combination for the whole route may be determined as a population.
  • each of the plurality of intersections may be determined as an individual.
  • the candidate cycle length for each of the plurality of intersections in the population may be determined as the gene of each individual.
  • the processing engine 112 may randomly determine the first generation of populations based on the acceptable range of cycle length. In some embodiments, the first generation of populations may include at least a part of the universal set.
  • the processing engine 112 may determine, for each population of the d th generation, a fitness value based on the first traffic model. In some embodiments, the processing engine 112 may determine the fitness value based on the candidate cycle lengths in the each population of the d th generation and the first objective function of the first traffic model. In some embodiments, the processing engine 112 may determine the fitness value based on the candidate cycle lengths in the each population of the d th generation and Formulas (1) and (5) - (8) .
  • the processing engine 112 may reserve at least one population in the d th generation of populations based on the fitness values. In some embodiments, the processing engine 112 may determine a selection probability for each population of the d th generation based on the fitness value. The processing engine 112 may reserve at least one population in the d th generation of populations of which the selection probability is greater than a probability threshold. In some embodiments, the processing engine 112 may determine the selection probability based on Formula (9) below:
  • P p refers to the selection probability of population p in the d th generation
  • fitness p refers to the fitness value of population p
  • fitness max and fitness min refers to the maximum value and the minimum value among the fitness values of the d th generation of populations, respectively.
  • the processing engine 112 may generate an (d+1) th generation of populations by performing crossover and mutation to at least one population in the at least one reserved population.
  • the processing engine 112 may generate at least one new population by performing crossover to at least one population in the at least one reserved population.
  • the processing engine 112 may perform crossover to 80%of the reserved populations.
  • the processing engine 112 may generate the (d+1) th generation of populations by performing mutation to the at least one new population.
  • the processing engine 112 may perform mutation to the at least one new population with 1%mutation probability.
  • the processing engine 112 may determine whether a first termination condition is satisfied. In response to a determination that the first termination condition is satisfied, the processing engine 112 may determine the first combination based on the (d+1) th generation of populations (operation 960) . For example, the processing engine 112 may determine the fitness value for each population in the (d+1) th generation. The processing engine 112 may determine the population in the (d+1) th generation with the maximum fitness value as the first combination. In response to a determination that the first termination condition is not satisfied, the processing engine 112 may initiate a new iteration.
  • the first termination condition may include that the number (count) of iterations that have been performed is larger than or equal to a first iteration threshold, and/or that the maximum fitness value of the generations determined in the last few (e.g., 5, 10, 20, etc. ) iterations tends to converge.
  • FIG. 10 illustrates an exemplary diagram indicating a relation between iteration times of the genetic algorithm of the process 900 and the maximum fitness value according to some embodiments of the present disclosure. As shown in FIG. 10, after about 100 iterations, the maximum fitness value tends to converge.
  • FIG. 11 is a flowchart illustrating an exemplary process for determining a second combination based on a first traffic model and dynamic programming according to some embodiments of the present disclosure.
  • the process 1100 may be implemented in the traffic control system 100 illustrated in FIG. 1.
  • the process 1100 may be stored in a storage medium (e.g., the storage device 150, or the storage 220 of the processing engine 112) as a form of instructions, and can be invoked and/or executed by the server 110 (e.g., the processing engine 112, the processor 210 of the processing engine 112, or one or more modules in the processing engine 112 illustrated in FIG. 4) .
  • the operations of the illustrated process 1100 presented below are intended to be illustrative. In some embodiments, the process 1100 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 1100 as illustrated in FIG. 11 and described below is not intended to be limiting.
  • the issue of determining the second combination may be broken into multiple sub-issues that include optimizing offsets from the traffic signal of the first intersection to the traffic signal of k th intersection (k ⁇ N) along the inbound or outbound direction.
  • the second combination may include an inbound offset combination and an outbound offset combination.
  • the inbound offset combination may include an offset of the inbound traffic signal in each of the plurality of intersections.
  • the outbound offset combination may include an offset of the outbound traffic signal in each of the plurality of intersections.
  • a process for determining the inbound offset combination may be illustrated in the process 1100 as an example.
  • the processing engine 112 may determine the inbound offset combination by performing a process similar to the process 1100.
  • the processing engine 112 may determine a boundary state of a first intersection (e.g., along the inbound direction) of the plurality of intersections based on the first traffic model.
  • the boundary state of the first intersection may include a target offset of the inbound traffic signal of the first intersection.
  • the processing engine 112 may perform operations 1120-1130 to determine a state of the each intersection based on the first traffic model, the first combination, a state of the each intersection’s last intersection, and a target offset for the each intersection.
  • the state of the each intersection may include an optimal value of the first objective function (e.g., Formula (1) ) of the first traffic model from the first intersection to the each intersection.
  • the state of the (t+1) th intersection may include an optimal value of the first objective function (e.g., Formula (1) ) of the first traffic model from the first intersection to the (t+1) th intersection.
  • the target offset for the (t+1) th intersection may correspond to the state of the (t+1) th intersection.
  • the processing engine 112 may determine the state of the (t+1) th intersection based on Formula (10) below:
  • the processing engine 112 may determine whether the (t+1) th intersection is the last intersection of the plurality of intersections. In response to a determination that the (t+1) th intersection is the last intersection of the plurality of intersections, the processing engine 112 may determine the second combination based on the target offset for each of the plurality of intersections. In some embodiments, the processing engine 112 may determine the inbound offset combination based on the target offset for each of the plurality of intersections. In response to a determination that the (t+1) th intersection is not the last intersection of the plurality of intersections, the processing engine 112 may determine the state of the next intersection (e.g., the (t+1) th intersection) .
  • the next intersection e.g., the (t+1) th intersection
  • the time complexity of the dynamic programming in the process 1100 may be while N refers to the number (count) of the plurality of intersections, and C max refers to the maximum cycle of the plurality of intersections.
  • FIG. 12 is a flowchart illustrating an exemplary process for determining a second combination based on a second traffic model and dynamic programming according to some embodiments of the present disclosure.
  • the process 1200 may be implemented in the traffic control system 100 illustrated in FIG. 1.
  • the process 1200 may be stored in a storage medium (e.g., the storage device 150, or the storage 220 of the processing engine 112) as a form of instructions, and can be invoked and/or executed by the server 110 (e.g., the processing engine 112, the processor 210 of the processing engine 112, or one or more modules in the processing engine 112 illustrated in FIG. 4) .
  • the operations of the illustrated process 1200 presented below are intended to be illustrative. In some embodiments, the process 1200 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 1200 as illustrated in FIG. 12 and described below is not intended to be limiting.
  • the key point of determining the second combination based on the vehicle arrival distribution may be to update the second combination and the vehicle arrival distribution simultaneously.
  • the vehicle arrival distribution at each individual intersection is not independent. If the vehicle arrival distribution and the second combination are updated simultaneously for inbound and outbound directions, the time complexity may be exponential. To reduce the time complexity, in the process 1200, the vehicle arrival distribution and the second combination may be updated separately.
  • the processing engine 112 may obtain a first vehicle arrival distribution in the route.
  • the first vehicle arrival distribution may be obtained based on the trajectory data acquired from the user terminal 130 and/or the traffic data acquired from the sensors installed at the plurality of intersections.
  • the processing engine 112 may determine a q th candidate combination including a candidate offset of each of the plurality of intersections based on the q th vehicle arrival distribution, the second traffic model, the first combination, and dynamic programming. In some embodiments, the processing engine 112 may determine the q th candidate combination based on the process 1100 in FIG. 11.
  • the processing engine 112 may generate a (q+1) th vehicle arrival distribution based on the q th candidate combination.
  • the vehicle arrival distribution may be updated according to the traffic light state determined based on the q th candidate combination. For example, when arriving at the green light phase of an intersection, vehicles may pass through the intersection directly, otherwise pass at the beginning of the green light phase) . Then the vehicle arrival distribution may extend to the downstream intersection with the free-flow speed to rebuild the downstream arrival distribution.
  • the processing engine 112 may determine whether a second termination condition is satisfied. In response to a determination that the second termination condition is satisfied, the processing engine 112 may determine the second combination based on the q th candidate combination (operation 1250) . For example, the processing engine 112 may determine the q th candidate combination as the second combination. In response to a determination that the second termination condition is not satisfied, the processing engine 112 may initiate a new iteration.
  • the second termination condition may include that the number (count) of iterations that have been performed is larger than or equal to a second iteration threshold, and/or that the candidate combinations determined in the last few (e.g., 3, 4, 5, etc. ) iterations tends to converge.
  • the time complexity of the process 1200 may be while N refers to the number (count) of the plurality of intersections, I refers to the number (count) (e.g., usually less than 10) of the iterations of the second iteration process, and C max refers to the maximum cycle of the plurality of intersections.
  • the traffic model provided in the present disclosure has been applied to optimize coordination of numerous arteries in multiple cities in China. For example, Heping Road, Jinan, Shandong, China, was chose to demonstrate performance of the first traffic model and the second traffic model provided in the present disclosure. The first traffic model and the second traffic model were tested for one week, and the average value of stop delay and stop ratio were determined as the model performance index. Test TOD is from 9: 00 a. m. to 4: 00 p. m., the offpeak period.
  • the first traffic model leads to a 19.34%reduction of stop delay and a 20.99%reduction of stop ratio.
  • the second traffic model leads to a 30.20%reduction of stop delay and a 29.64%reduction of stop ratio.
  • the first traffic model leads to additional 2.76%and 8.91%reduction, for stop delay and stop ratio correspondingly.
  • the second traffic model leads to additional 15.85%and 18.88%reduction, for stop delay and stop ratio correspondingly.
  • the second traffic model gives the best performance for the test road.
  • FIG. 13A illustrates an exemplary time-space diagram of the test road before optimization according to some embodiments of the present disclosure.
  • FIG. 13B illustrates an exemplary time-space diagram of the test road after optimization using the second traffic model according to some embodiments of the present disclosure.
  • a line represents an inbound or outbound vehicle trajectory in the test road.
  • Darker bars e.g., 1302 indicate red light phases and lighter bars (e.g., 1301) indicate green light phases.
  • FIGs. 13A and 13B after optimization using the second traffic model, vehicles stop less and the green band of the test road is more efficient.
  • 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.
  • 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.
  • 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.
  • 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) .
  • LAN local area network
  • WAN wide area network
  • SaaS Software as a Service

Abstract

A method for controlling traffic signals may include obtaining intersection information associated with a plurality of intersections of a route (510). The method may also include determining traffic parameters based on the intersection information and a traffic model (520). The traffic parameters may be used to control traffic signals of the plurality of intersections. The traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.

Description

SYSTEMS AND METHODS FOR CONTROLLING TRAFFIC SIGNALS TECHNICAL FIELD
The present disclosure generally relates to traffic control, and more specifically, relates to methods and systems for arterial coordination in a road network.
BACKGROUND
Coordination is a mode of traffic signal operation in which adjacent intersections cooperate with one another to prioritize certain movements. It is particularly important and has been widely implemented at signalized arterials, due to significant traffic demands at through movements. A well-designed coordination can facilitate movements on traffic arterials with minimum stops and delays while an improper design, by contrast, can incur congestion and unnecessary costs to the motorists.
Despite the benefit claimed, conventional studies mostly focus on the design stage of signal timing with manually collected data and do not effectively utilize detector and signal data from existing infrastructures. With an awareness of increasing data availability, more recent researches have been conducted to fine tune coordinated-actuated traffic signals. In these studies, however, the cycle lengths of intersections are usually set as common along intersections for a coordinated arterial. Such an approach is often impractical because, depending on the network topology, minimum green and the volume of different intersections, there would be a different range of cycle lengths suitable for different intersections. Coordination between intersections with different cycle lengths is an important subject in arterial coordination. Therefore, it is desirable to provide systems and/or methods for effectively and efficiently controlling traffic signals to solve the above problems.
SUMMARY
According to a first aspect of the present disclosure, a system for controlling traffic signals may include one or more storage devices and one or more processors configured to communicate with the one or more storage devices. The one or more storage devices may include a set of instructions. When the one or more processors executing the set of instructions, the one or more processors may be directed to perform one or more of the following operations. The one or more processors may obtain intersection information associated with a plurality of intersections of a route. The one or more processors may determine traffic parameters based on the intersection information and a traffic model. The traffic parameters may be used to control traffic signals of the plurality of intersections. The traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
In some embodiments, an optimization objective of the traffic model may be a green bandwidth associated with the route.
In some embodiments, the traffic model may be configured to take into account an inbound direction and an outbound direction of the route.
In some embodiments, the traffic model may be configured to take into account (a) and (b) ; and the traffic parameters may include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and a second combination including an offset of the traffic signal of each of the plurality of intersections.
In some embodiments, the traffic parameters may be determined without requiring a common cycle length for the traffic signals of the plurality of intersections.
In some embodiments, to determine the traffic parameters based on the intersection information and the traffic model, the one or more processors may determine the traffic parameters by solving a function deduced from the traffic model using a genetic algorithm and dynamic programming.
In some embodiments, to determine the traffic parameters by solving the function deduced from the traffic model using the genetic algorithm and the dynamic programming, the one or more processors may determine the first combination based on the traffic model and the genetic algorithm. The one or more processors may determine the second combination based on the traffic model, the first combination, and the dynamic programming.
In some embodiments, to determine the first combination based on the traffic model and the genetic algorithm, the one or more processors may randomly determine an initial generation of populations, each population including a combination of candidate cycle lengths of the plurality of intersections. The one or more processors may perform a first iteration process including a plurality of iterations. Each of the plurality of iterations may include determining, for each population in a previous generation of populations, a fitness value based on the traffic model. The previous generation of populations may be the initial generation of populations in a first iteration of the plurality of iterations or a new generation of populations generated in a previous iteration. Each of the plurality of iterations may also include reserving at least one population in the previous generation of populations based on the fitness values. Each of the plurality of iterations may also include generating a new generation of populations by performing crossover and mutation to at least one population in the at least one reserved population. Each of the plurality of iterations may also include determining whether a first termination condition is satisfied. In response to a determination that the first termination condition is satisfied, each of the plurality of iterations may also include terminating the first iteration process. In response to a determination that the first termination  condition is not satisfied, each of the plurality of iterations may also include initiating a new iteration. The one or more processors may determine the first combination based on the new generation of populations generated in the last iteration of the plurality of iterations of the first iteration process.
In some embodiments, to determine the second combination based on the traffic model, the first combination, and the dynamic programming, the one or more processors may determine a boundary state associated with a first intersection of the plurality of intersections based on the traffic model. For each intersection from a second intersection to a last intersection of the plurality of intersections, the one or more processors may determine a state of the each intersection based on the traffic model, the first combination, a state of the each intersection’s last intersection, and a target offset for the each intersection. The state of the each intersection’s last intersection may be the boundary state when the each intersection is the second intersection of the plurality of intersections. The state of the each intersection may be an optimal value of the traffic model from the first intersection to the each intersection. The one or more processors may determine the second combination based on the target offset for each intersection from the second intersection to the last intersection of the plurality of intersections.
In some embodiments, the traffic model may be configured to take into account all of (a) , (b) , and (c) . The traffic parameters may include a second combination including an offset of the traffic signal of each of the plurality of intersections.
In some embodiments, to determine the traffic parameters based on the intersection information and the traffic model, the one or more processors may obtain an initial vehicle arrival distribution in the route. The one or more processors may perform a second iteration process including a plurality of iterations. Each of the plurality of iterations may include determining a candidate combination including a candidate offset of the traffic signal of each of the plurality of intersections based  on an updated vehicle arrival distribution, the traffic model, and dynamic programming. The updated vehicle arrival distribution may be the initial vehicle arrival distribution in a first of the plurality of iterations or a vehicle arrival distribution generated in a previous iteration. Each of the plurality of iterations may also include generating a new vehicle arrival distribution based on the candidate combination. Each of the plurality of iterations may also include determining whether a second termination condition is satisfied. In response to a determination that the second termination condition is satisfied, each of the plurality of iterations may also include terminating the second iteration process. In response to a determination that the second termination condition is not satisfied, each of the plurality of iterations may also include initiating a new iteration. The one or more processors may determine the second combination based on the candidate combination determined in the last iteration of the plurality of iterations of the second iteration process.
According to another aspect of the present disclosure, a method for controlling traffic signals may include one or more of the following operations. One or more processors may obtain intersection information associated with a plurality of intersections of a route. The one or more processors may determine traffic parameters based on the intersection information and a traffic model. The traffic parameters may be used to control traffic signals of the plurality of intersections. The traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
According to yet another aspect of the present disclosure, a system for controlling traffic signals may include an information obtaining module configured to obtain intersection information associated with a plurality of intersections of a route. The system may also include a parameter determination module configured to  determine traffic parameters based on the intersection information and a traffic model. The traffic parameters may be used to control traffic signals of the plurality of intersections. The traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
According to yet another aspect of the present disclosure, a non-transitory computer readable medium may comprise at least one set of instructions. The at least one set of instructions may be executed by one or more processors of a computing device. The one or more processors may obtain intersection information associated with a plurality of intersections of a route. The one or more processors may determine traffic parameters based on the intersection information and a traffic model. The traffic parameters may be used to control traffic signals of the plurality of intersections. The traffic model may be configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route.
According to yet another aspect of the present disclosure, a system for controlling traffic signals may include one or more storage devices and one or more processors configured to communicate with the one or more storage devices. The one or more storage devices may include a set of instructions. When the one or more processors executing the set of instructions, the one or more processors may be directed to perform one or more of the following operations. The one or more processors may obtain a traffic model. The traffic model may relate to mix integer linear programming (MILP) . The traffic model may be configured to take into account an arterial green bandwidth of a route including a plurality of intersections or  a link green bandwidth between two of the plurality of intersections. The one or more processors may determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming. Traffic signals of the plurality of intersections may be controlled based on the traffic parameters.
In some embodiments, the traffic parameters may include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and a second combination including an offset of the traffic signal of each of the plurality of intersections.
In some embodiments, to determine the traffic parameters based on the traffic model using the genetic algorithm and the dynamic programming, the one or more processors may determine the first combination based on the traffic model and the genetic algorithm. The one or more processors may determine the second combination based on the traffic model, the first combination, and the dynamic programming.
According to yet another aspect of the present disclosure, a method for controlling traffic signals may include one or more of the following operations. One or more processors may obtain a traffic model. The traffic model may relate to mix integer linear programming (MILP) . The traffic model may be configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections. The one or more processors may determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming. Traffic signals of the plurality of intersections may be controlled based on the traffic parameters.
According to yet another aspect of the present disclosure, a system for controlling traffic signals may include an information obtaining module configured to obtain a traffic model. The traffic model may relate to mix integer linear programming (MILP) . The traffic model may be configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link  green bandwidth between two of the plurality of intersections. The system may also include a parameter determination module configured to determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming. Traffic signals of the plurality of intersections may be controlled based on the traffic parameters.
According to yet another aspect of the present disclosure, a non-transitory computer readable medium may comprise at least one set of instructions. The at least one set of instructions may be executed by one or more processors of a computing device. The one or more processors may obtain a traffic model. The traffic model may relate to mix integer linear programming (MILP) . The traffic model may be configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections. The one or more processors may determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming. Traffic signals of the plurality of intersections may be controlled based on the traffic parameters.
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
The present disclosure is further described in terms of exemplary embodiments. These exemplary embodiments are described in detail with reference to the drawings. These embodiments are non-limiting exemplary  embodiments, in which like reference numerals represent similar structures throughout the several views of the drawings, and wherein:
FIG. 1 is a schematic diagram illustrating an exemplary traffic control system according to some embodiments of the present disclosure;
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;
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;
FIG. 4 is a schematic block diagram illustrating an exemplary processing engine according to some embodiments of the present disclosure;
FIG. 5 is a flowchart illustrating an exemplary process for determining traffic parameters according to some embodiments of the present disclosure;
FIG. 6 is a schematic diagram illustrating an example of a route according to some embodiments of the present disclosure;
FIG. 7 illustrates an exemplary time-space diagram for a first traffic model according to some embodiments of the present disclosure;
FIGs. 8A-8B illustrate exemplary time-space diagrams including vehicle travelling trajectories according to some embodiments of the present disclosure;
FIG. 9 is a flowchart illustrating an exemplary process for determining a first combination based on a genetic algorithm according to some embodiments of the present disclosure;
FIG. 10 illustrates an exemplary diagram indicating a relation between iteration times of a genetic algorithm and maximum fitness values according to some embodiments of the present disclosure;
FIG. 11 is a flowchart illustrating an exemplary process for determining a second combination based on a first traffic model and dynamic programming according to some embodiments of the present disclosure;
FIG. 12 is a flowchart illustrating an exemplary process for determining a second combination based on a second traffic model and dynamic programming according to some embodiments of the present disclosure;
FIG. 13A illustrates an exemplary time-space diagram of a test road before optimization according to some embodiments of the present disclosure; and
FIG. 13B illustrates an exemplary time-space diagram of a test road after optimization using a second traffic model according to some embodiments of the present disclosure.
DETAILED DESCRIPTION
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.
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 “comprises, ” “comprising, ” “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.
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 drawing (s) , all of which form part of this specification. It is to be expressly understood, however, that the drawing (s) 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.
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.
The positioning technology used in the present disclosure may include 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, a BeiDou navigation satellite system, an inertial navigation system (INS) , or the like, or any combination thereof. One or more of the above positioning technologies may be used interchangeably in the present disclosure.
An aspect of the present disclosure provides two traffic models for traffic signal coordination in a route. A first traffic model may include an objective function configured to take into account: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, and (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the  plurality of intersections, aiming at improving spatial efficiencies of the coordination. Extending the first traffic model, the second traffic model may include an objective function further taking into account (c) a vehicle arrival distribution in the route to account for both spatial and temporal efficiency of the green bandwidth. Different from existing bandwidth optimization models that usually require a common cycle length, the first and second traffic models may optimize coordination with different cycle lengths along the route, and therefore may be more flexible for coordination design. As a tradeoff, the first and second traffic models may lead to a large MILP problem that is difficult to solve efficiently. To address this challenge, another aspect of the present disclosure provides a heuristic solution algorithm using a genetic algorithm and dynamic programming, which successfully reduces the time complexity from an exponential one to polynomial one.
FIG. 1 is a schematic diagram illustrating an exemplary traffic control system according to some embodiments of the present disclosure. In some embodiments, the traffic control system 100 may include a server 110, a network 120, a user terminal 130, a storage device 150, and a positioning system 160. The server 110 may include a processing engine 112.
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., the 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 user terminal 130 and/or the storage device 150 via the network 120. As another example, the server 110 may be directly connected to the user terminal 130 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.
In some embodiments, the server 110 may include a processing engine 112. The processing engine 112 may process information and/or data relating to the traffic control system 100. For example, the processing engine 112 may determine traffic parameters based on intersection information and a traffic model.
In some embodiments, the processing engine 112 may include one or more processing engines (e.g., single-core processing engine (s) or multi-core processor (s) ) . Merely by way of example, the processing engine 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.
The network 120 may facilitate the exchange of information and/or data. In some embodiments, one or more components in the traffic control system 100 (e.g., the server 110, the user terminal 130, the storage device 150, or the positioning system 160) may send information and/or data to other component (s) in the traffic control system 100 via the network 120. For example, the server 110 may obtain intersection information associated with a plurality of intersections of a route in a road network from the storage device 150 via the network 120. As another example, the user terminal 130 may transmit real-time location information of vehicles to the server 110 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 120 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 traffic control system 100 may be connected to the network 120 to exchange data and/or information.
In some embodiments, the user 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, the built-in device in the motor vehicle 130-4 may include an onboard computer, an onboard television, etc. In some embodiments, the user terminal 130 may be a device with positioning technology for locating the position of a user of the user terminal 130 (e.g., a vehicle of the user) and/or the user terminal 130. In some embodiments, the user terminal 130 may communicate with one or more other positioning devices to determine the position of the user terminal 130. In some embodiments, the user terminal 130 may send positioning information to the server 110.
In some embodiments, the user terminal 130 may receive/transmit information related to the traffic control system 100 from/to one or more components (e.g., the server 110, the storage device 150, the positioning system 160) of the traffic control system 100. For example, the user terminal 130 may transmit the real-time position of the user to the server 110.
The storage device 150 may store data and/or instructions. In some embodiments, the storage device 150 may store data obtained from the user terminal 130. For example, the storage device 150 may store real-time location information obtained from the user terminal 130. 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. For example, the storage device 150 may store data and/or instructions that the server 110 may execute or use to determine traffic parameters based on intersection information and a traffic model described in the present disclosure. In some embodiments, the 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.
In some embodiments, the storage device 150 may be connected to the network 120 to communicate with one or more components in the traffic control system 100 (e.g., the server 110, the user terminal 130, etc. ) . One or more components in the traffic control 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 traffic control system 100 (e.g., the server 110, the user terminal 130, etc. ) . In some embodiments, one or more components in the traffic control system 100 (e.g., the server 110, the user terminal 130, etc. ) may have permission to access the storage device 150. In some embodiments, the storage device 150 may be part of the server 110.
The positioning system 160 may determine information associated with an object, for example, the user terminal 130, etc. For example, the positioning system 160 may determine a current location of the user terminal 130. In some embodiments, the positioning 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 information may include a location, an elevation, a velocity, or an acceleration of the object, or a current time. The location may be in the form of coordinates, such as, latitude coordinate and longitude coordinate, etc. The positioning 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 satellite positioning system 160 may send the information mentioned above to the network 120 or the user terminal 130, via wireless connections.
In some embodiments, the user terminal 130 and/or the positioning system 160 may be omitted in the traffic control system 100.
FIG. 2 is a schematic diagram illustrating exemplary hardware and/or software components of a computing device on which the processing engine 112 may be implemented according to some embodiments of the present disclosure. As illustrated in FIG. 2, the processing engine 112 may be computing device 200, which may include a processor 210, a storage 220, an input/output (I/O) 230, and a communication port 240.
The processor 210 (e.g., logic circuits) may execute computer instructions (e.g., program code) and perform functions of the processing engine 112 in accordance with techniques described herein. For example, the processor 210 may include interface circuits 210-a and processing circuits 210-b therein. The interface circuits may be configured to receive electronic signals from a bus (not shown in FIG. 2) , wherein the electronic signals encode structured data and/or instructions for the processing circuits to process. The processing circuits may conduct logic calculations, and then determine a conclusion, a result, and/or an instruction encoded as electronic signals. Then the interface circuits may send out the electronic signals from the processing circuits via the bus.
The computer instructions may include, for example, routines, programs, objects, components, data structures, procedures, modules, and functions, which  perform particular functions described herein. For example, the processor 210 may determine traffic parameters based on intersection information and a traffic model. In some embodiments, the processor 210 may include one or more hardware processors, such as a microcontroller, a microprocessor, a reduced instruction set computer (RISC) , an application specific integrated circuits (ASICs) , an application-specific instruction-set processor (ASIP) , a central processing unit (CPU) , a graphics processing unit (GPU) , a physics processing unit (PPU) , a microcontroller unit, a digital signal processor (DSP) , a field programmable gate array (FPGA) , an advanced RISC machine (ARM) , a programmable logic device (PLD) , any circuit or processor capable of executing one or more functions, or the like, or any combinations thereof.
Merely for illustration, only one 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 processors, thus operations and/or method steps that are performed by one processor as described in the present disclosure may also be jointly or separately performed by the multiple processors. For example, if in the present disclosure the 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 or more different processors jointly or separately in the computing device 200 (e.g., a first processor executes step A and a second processor executes step B, or the first and second processors jointly execute steps A and B) .
The storage 220 may store data/information obtained from the user terminal 130, the storage device 150, and/or any other component of the traffic control system 100. In some embodiments, the storage 220 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. For example, the mass storage may include a magnetic disk, an optical disk, a solid-state drives, etc. The removable storage may  include a flash drive, a floppy disk, an optical disk, a memory card, a zip disk, a magnetic tape, etc. The volatile read-and-write memory may include a random access memory (RAM) . The RAM may include a dynamic RAM (DRAM) , a double date rate synchronous dynamic RAM (DDR SDRAM) , a static RAM (SRAM) , a thyristor RAM (T-RAM) , and a zero-capacitor RAM (Z-RAM) , etc. The 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 220 may store one or more programs and/or instructions to perform exemplary methods described in the present disclosure. For example, the storage 220 may store a program for the processing engine 112 for determining traffic parameters based on intersection information and a traffic model.
The I/O 230 may input and/or output signals, data, information, etc. In some embodiments, the I/O 230 may enable a user interaction with the processing engine 112. In some embodiments, the I/O 230 may include an input device and an output device. Examples of the input device may include a keyboard, a mouse, a touch screen, a microphone, or the like, or a combination thereof. Examples of the output device may include a display device, a loudspeaker, a printer, a projector, or the like, or a combination thereof. Examples of the display device may include a liquid crystal display (LCD) , a light-emitting diode (LED) -based display, a flat panel display, a curved screen, a television device, a cathode ray tube (CRT) , a touch screen, or the like, or a combination thereof.
The communication port 240 may be connected to a network (e.g., the network 120) to facilitate data communications. The communication port 240 may establish connections between the processing engine 112 and the user terminal 130, the positioning system 160, or the storage device 150. The connection may be a wired connection, a wireless connection, any other communication connection that can enable data transmission and/or reception, and/or any combination of these  connections. The wired connection may include, for example, an electrical cable, an optical cable, a telephone wire, or the like, or any combination thereof. The wireless connection may include, for example, a Bluetooth TM link, a Wi-Fi TM link, a WiMax TM link, a WLAN link, a ZigBee TM link, a mobile network link (e.g., 3G, 4G, 5G, etc. ) , or the like, or a combination thereof. In some embodiments, the communication port 240 may be and/or include a standardized communication port, such as RS232, RS485, etc.
FIG. 3 a schematic diagram illustrating exemplary hardware and/or software components of a mobile device on which the user terminal 130 may be implemented according to some embodiments of the present disclosure. 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, and 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. In some embodiments, a mobile operating system (OS) 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 an online to offline carpooling service or other information from the processing engine 112, and sending information relating to an online to offline carpooling service or other information to the processing engine 112. User interactions with the information stream may be achieved via the I/O 350 and provided to the processing engine 112 and/or other components of the traffic control system 100 via the network 120.
One of ordinary skill in the art would understand that when an element of the traffic control system 100 performs, the element may perform through electrical signals and/or electromagnetic signals. For example, when the processing engine  112 processes a task, such as making a determination, or transmitting information, the processing engine 112 may operate logic circuits in its processor to process such task. When the processing engine 112 sends out data (e.g., instructions including traffic parameters that are used to control traffic signals of a plurality of intersections) to, for example, a traffic light, a processor of the processing engine 112 may generate electrical signals encoding the data. The processor of the processing engine 112 may then send the electrical signals to an information exchange port (e.g., an output port) of the processing engine 112. If the traffic light communicates with the processing engine 112 via a wired network, the information exchange port of the processing engine 112 may be physically connected to a cable, which may further transmit the electrical signals to an information exchange port (e.g., an input port) of the traffic light. If the traffic light communicates with the processing engine 112 via a wireless network, the information exchange port of the processing engine 112 may be one or more antennas, which may convert the electrical signals to electromagnetic signals. Within an electronic device, such as the user terminal 130 or the server 110, when a processor thereof processes an instruction, sends 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 (e.g., the storage device 150, the storage 220) , it may send 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.
FIG. 4 is a schematic block diagram illustrating an exemplary processing engine according to some embodiments of the present disclosure. The processing engine 112 may include an information obtaining module 410 and a parameter determination module 420.
The information obtaining module 410 may obtain intersection information of a plurality of intersections of a route in a road network.
In some embodiments, the intersection may be a place where two or more roads meet or cross. In some embodiments, the intersection may include a crossroad, a T-intersection, an X-intersection, a Y-intersection, or the like. In some embodiments, according to the travel direction in the route, the route may include an inbound portion in which vehicles travel along an inbound direction and an outbound portion in which vehicles travel along an outbound direction. The outbound direction may be an opposite direction of the inbound direction. The route may be divided into a plurality of links by the plurality of intersections. For example, a segment of the route between two adjacent intersections of the plurality of intersections may be a link.
In some embodiments, as used in the present disclosure, the traffic signals in the plurality of intersections may refer to the traffic signals configured to control the traffic in the route. In some embodiments, in the same intersection, the traffic signal configured to control the traffic in the inbound direction (e.g., the traffic in the inbound portion of the route) may be referred to as an inbound traffic signal, and the traffic signal configured to control the traffic in the outbound direction (e.g., the traffic in the outbound portion of the route) may be referred to as an outbound traffic signal.
Merely by way of example, as shown in FIG. 6, the route may include the inbound portion (e.g., 601) and the outbound portion (e.g., 602) . The route may go through three intersections, such as  intersections  603, 604, and 605. The route may include link 606 connecting  intersections  603 and 604, and link 607 connecting  intersections  604 and 605. The traffic signals in the intersections 603-605 may be configured to control the traffic in the inbound direction (e.g., the direction A in FIG. 6) and the outbound direction (e.g., the direction B in FIG. 6) of the route.
In some embodiments, the intersection information may include the number (or count) of the plurality of intersections of the route, a driving distance between  each pair of adjacent intersections of the plurality of intersections, a road structure (e.g., the number of lanes) between each pair of adjacent intersections of the plurality of intersections, a free-flow driving speed between each pair of adjacent intersections of the plurality of intersections, traffic rules of the route, a green split of the traffic signal in each of the plurality of intersections, traffic flow between each pair of adjacent intersections of the plurality of intersections, traffic capacity between each pair of adjacent intersections of the plurality of intersections, or the like, or any combination thereof.
In some embodiments, the green split of the traffic signal may refer to a duration of the green light phase in a cycle of the traffic signal. In some embodiments, the green split of the traffic signals of the plurality of intersections may be default of the traffic control system 100. In some embodiments, a user (e.g., an engineer) of the traffic control system 100 may set the green split of the traffic signal in each of the plurality of intersections. In some embodiments, the green split of the traffic signal in each of the plurality of intersections may be automatically determined based on traffic flow and/or traffic capacity of the intersection using, for example, Webster’s formula and/or machine learning. In some embodiments, the green splits that the traffic signals in the plurality of intersections is working with may be used to determine the traffic parameters of the traffic signals in the plurality of intersections to perform traffic signal coordination.
In some embodiments, the user terminal 130 may establish a communication (e.g., a wireless communication) with the processing engine 112, via an application installed in the user terminal 130. The application may associate with the traffic control system 100. For example, the application may be a taxi-hailing application or a navigation application. The real-time position of the user terminal 130 may be obtained through a positioning technology in the user terminal 130, for example, a GPS, a GLONASS, a COMPASS, a QZSS, a WiFi positioning technology, or the like, or any combination thereof. The application installed in the user terminal 130 may  direct the user terminal 130 to constantly send the real-time position of the user terminal 130 to the processing engine 112. If the user terminal 130 moves along with a vehicle, the real-time position of the user terminal 130 may be determined as the real-time position of the vehicle. Consequently, the processing engine 112 may acquire trajectory data of the vehicle based on the real-time positions of the vehicle.
In some embodiments, one or more sensors may be installed at each of the plurality of intersections to collect traffic data at each of the plurality of intersections, such as the number (count) of vehicles, the driving speeds of vehicles, vehicles’ trajectories, traffic flow, traffic capacities, or the like, or any combination thereof. In some embodiments, the one or more sensors may include range imaging sensors, microwave sensors, inductive loops, black and white cameras, red green blue (RGB) cameras, infrared (IR) cameras, multi-spectral cameras, hyper-spectral cameras, directional sensors, radar, laser radar, audio sensors such as microphones, or the like, or any combination thereof.
In some embodiments, at least one of the free-flow driving speed, the traffic flow, and the traffic capacity between each pair of adjacent intersections of the plurality of intersections may be obtained based on the trajectory data acquired from the user terminal 130 and/or the traffic data acquired from the sensors installed at the plurality of intersections.
The parameter determination module 420 may determine traffic parameters based on the intersection information and a traffic model.
In some embodiments, the traffic parameters may be used to control traffic signals of the plurality of intersections in the route during a time period of day (e.g., 7: 00 a.m. -10: 00 a.m. or 10: 00 a.m. -4: 00 p.m. ) . In some embodiments, the traffic parameters may include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and/or a second combination including an offset of the traffic signal of each of the plurality of intersections.
In some embodiments, the free-flow driving speed between each pair of adjacent intersections of the plurality of intersections, the traffic rules of the route, the green split of the traffic signal in each of the plurality of intersections, the traffic flow between each pair of adjacent intersections of the plurality of intersections, and the traffic capacity between each pair of adjacent intersections of the plurality of intersections may correspond to the application time of the traffic parameters.
In some embodiments, a cycle of the traffic signal may include a red light phase and a green light phase. In some embodiments, a period of the yellow light may be included in the green light phase. In some embodiments, in the same intersection, the cycle lengths of the inbound traffic signal and the outbound traffic signal may be the same. The inbound traffic signal and the outbound traffic signal may be or not be synchronous (as shown in FIG. 7) .
In some embodiments, the offset of the traffic signal in an intersection may refer to a difference between a specific time point and a start time of a cycle of the traffic signal that is closest to the specific time point. In some embodiments, the offset of the traffic signal in an intersection may refer to an offset between two inbound (outbound) traffic signals in the intersection and the intersection’s adjacent intersection. The offset between the two inbound (outbound) traffic signals in the pair of adjacent intersections may refer to a difference between a first start time of a cycle of the inbound (outbound) traffic signal in one intersection in the pair of adjacent intersections and a second start time of a cycle of the inbound (outbound) traffic signal in the other intersection that is closest to the first start time.
In some embodiments, an optimization objective of the traffic model may relate to a green bandwidth. The green bandwidth may refer to a time width in which vehicles can travel through two or more successive intersections without being stopped by a red light (e.g., the vehicles can encounter a string of green lights when travelling through the two or more successive intersections) .
In some embodiments, the traffic model may include an objective function configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route. In some embodiments, when the traffic parameters are determined based on the traffic model, a common cycle length for traffic signals of the plurality of intersections may not be required.
In some embodiments, the arterial green bandwidth may refer to a time width in which vehicles can travel through the plurality of intersections of the route without being stopped by a red light. The link green bandwidth may refer to a time width in which vehicles can successively travel through a part of the plurality of intersections of the route without being stopped by a red light.
In some embodiments, the objective function of the traffic model may be configured to optimize a weighted sum of different types of bandwidths in the route. The different types of bandwidths may include an inbound (outbound) bandwidth of spillover at the red light in each of the plurality of intersections, a first inbound (outbound) link green bandwidth, a second inbound (outbound) link green bandwidth, and an inbound (outbound) arterial green bandwidth.
The inbound (outbound) bandwidth of spillover at the red light in each of the plurality of intersections may refer to a time width in which spillover may occur at the red light that controls the traffic in the inbound (outbound) direction of the route. The spillover may refer to a situation that a vehicle queue caused by the red light at an intersection extends to or beyond its upstream intersection along the travel direction (e.g., the inbound direction or the outbound direction) , which may block the upstream intersection. The first inbound (outbound) link green bandwidth may refer to a link green bandwidth in which vehicles can travel through two successive intersections along the inbound (outbound) direction without being stopped by a red  light. The second inbound (outbound) link green bandwidth may refer to a link green bandwidth in which vehicles can travel through three successive intersections along the inbound (outbound) direction without being stopped by a red light. The inbound (outbound) arterial green bandwidth may refer to an arterial green bandwidth in which vehicles can travel through the plurality of intersections in the route along the inbound (outbound) direction without being stopped by a red light.
In some embodiments, a first traffic model may include a first objective function configured to take into account (a) and (b) . In some embodiments, a second traffic model may include a second objective function configured to take into account (a) , (b) , and (c) .
In some embodiments, the parameter determination module 420 may solve the first objective function of the first traffic model using a genetic algorithm and dynamic programming. In some embodiments, the parameter determination module 420 may determine the first combination based on the first traffic model and the genetic algorithm. Then the parameter determination module 420 may determine the second combination based on the first traffic model, the first combination, and the dynamic programming. Details related to determining the first combination based on the genetic algorithm may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 9) . Details related to determining the second combination based on the dynamic programming may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 11) .
In some embodiments, when the second traffic model is used to determine the traffic parameters, the first combination may be default of the traffic control system 100. In some embodiments, a user (e.g., an engineer) of the traffic control system 100 may set the first combination. In some embodiments, the first combination may be automatically determined based on the intersection information using, for example, Webster’s formula and/or machine learning. In some  embodiments, the first combination may be automatically determined by solving the first objective function of the first traffic model using the genetic algorithm. In some embodiments, the cycle lengths that the traffic signals in the plurality of intersections is working with may be used as the first combination.
In some embodiments, the parameter determination module 420 may determine the second combination based on the second traffic model and the dynamic programming. Details related to determining the second combination based on the second traffic model and the dynamic programming may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 12) .
In some embodiments, the traffic parameters may be transmitted to the traffic signals at the plurality of intersections to cause the traffic signals to work according to the traffic parameters.
The modules in the processing engine 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. Two or more of the modules may be combined as a single module, and any one of the modules may be divided into two or more units.
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. For example, the processing engine 112 may further include a storage module (not shown in FIG. 4) . The storage module may be configured to store data generated during any process performed by any component of in the processing engine 112.  As another example, each of components of the processing engine 112 may include a storage device. Additionally or alternatively, the components of the processing engine 112 may share a common storage device.
FIG. 5 is a flowchart illustrating an exemplary process for determining traffic parameters according to some embodiments of the present disclosure. In some embodiments, the process 500 may be implemented in the traffic control system 100 illustrated in FIG. 1. For example, the process 500 may be stored in a storage medium (e.g., the storage device 150, or the storage 220 of the processing engine 112) as a form of instructions, and can be invoked and/or executed by the server 110 (e.g., the processing engine 112, the processor 210 of the processing engine 112, or one or more modules in the processing engine 112 illustrated in FIG. 4) . The operations of the illustrated process 500 presented below are intended to be illustrative. In some embodiments, the process 500 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 500 as illustrated in FIG. 5 and described below is not intended to be limiting.
In 510, the processing engine 112 (e.g., the information obtaining module 410) may obtain intersection information of a plurality of intersections of a route in a road network.
In some embodiments, the intersection may be a place where two or more roads meet or cross. In some embodiments, the intersection may include a crossroad, a T-intersection, an X-intersection, a Y-intersection, or the like. In some embodiments, according to the travel direction in the route, the route may include an inbound portion in which vehicles travel along an inbound direction and an outbound portion in which vehicles travel along an outbound direction. The outbound direction may be an opposite direction of the inbound direction. The route may be divided into a plurality of links by the plurality of intersections. For example, a  segment of the route between two adjacent intersections of the plurality of intersections may be a link.
In some embodiments, as used in the present disclosure, the traffic signals in the plurality of intersections may refer to the traffic signals configured to control the traffic in the route. In some embodiments, in the same intersection, the traffic signal configured to control the traffic in the inbound direction (e.g., the traffic in the inbound portion of the route) may be referred to as an inbound traffic signal, and the traffic signal configured to control the traffic in the outbound direction (e.g., the traffic in the outbound portion of the route) may be referred to as an outbound traffic signal.
Merely by way of example, as shown in FIG. 6, the route may include the inbound portion (e.g., 601) and the outbound portion (e.g., 602) . The route may go through three intersections, such as  intersections  603, 604, and 605. The route may include link 606 connecting  intersections  603 and 604, and link 607 connecting  intersections  604 and 605. The traffic signals in the intersections 603-605 may be configured to control the traffic in the inbound direction (e.g., the direction A in FIG. 6) and the outbound direction (e.g., the direction B in FIG. 6) of the route.
In some embodiments, the intersection information may include the number (or count) of the plurality of intersections of the route, a driving distance between each pair of adjacent intersections of the plurality of intersections, a road structure (e.g., the number of lanes) between each pair of adjacent intersections of the plurality of intersections, a free-flow driving speed between each pair of adjacent intersections of the plurality of intersections, traffic rules of the route, a green split of the traffic signal in each of the plurality of intersections, traffic flow between each pair of adjacent intersections of the plurality of intersections, traffic capacity between each pair of adjacent intersections of the plurality of intersections, or the like, or any combination thereof.
In some embodiments, the green split of the traffic signal may refer to a duration of the green light phase in a cycle of the traffic signal. In some  embodiments, the green split of the traffic signals of the plurality of intersections may be default of the traffic control system 100. In some embodiments, a user (e.g., an engineer) of the traffic control system 100 may set the green split of the traffic signal in each of the plurality of intersections. In some embodiments, the green split of the traffic signal in each of the plurality of intersections may be automatically determined based on traffic flow and/or traffic capacity of the intersection using, for example, Webster’s formula and/or machine learning. In some embodiments, the green splits that the traffic signals in the plurality of intersections is working with may be used to determine the traffic parameters of the traffic signals in the plurality of intersections to perform traffic signal coordination.
In some embodiments, the user terminal 130 may establish a communication (e.g., a wireless communication) with the processing engine 112, via an application installed in the user terminal 130. The application may associate with the traffic control system 100. For example, the application may be a taxi-hailing application or a navigation application. The real-time position of the user terminal 130 may be obtained through a positioning technology in the user terminal 130, for example, a GPS, a GLONASS, a COMPASS, a QZSS, a WiFi positioning technology, or the like, or any combination thereof. The application installed in the user terminal 130 may direct the user terminal 130 to constantly send the real-time position of the user terminal 130 to the processing engine 112. If the user terminal 130 moves along with a vehicle, the real-time position of the user terminal 130 may be determined as the real-time position of the vehicle. Consequently, the processing engine 112 may acquire trajectory data of the vehicle based on the real-time positions of the vehicle.
In some embodiments, one or more sensors may be installed at each of the plurality of intersections to collect traffic data at each of the plurality of intersections, such as the number (count) of vehicles, the driving speeds of vehicles, vehicles’ trajectories, traffic flow, traffic capacities, or the like, or any combination thereof. In some embodiments, the one or more sensors may include range imaging sensors,  microwave sensors, inductive loops, black and white cameras, red green blue (RGB) cameras, infrared (IR) cameras, multi-spectral cameras, hyper-spectral cameras, directional sensors, radar, laser radar, audio sensors such as microphones, or the like, or any combination thereof.
In some embodiments, at least one of the free-flow driving speed, the traffic flow, and the traffic capacity between each pair of adjacent intersections of the plurality of intersections may be obtained based on the trajectory data acquired from the user terminal 130 and/or the traffic data acquired from the sensors installed at the plurality of intersections.
In 520, the processing engine 112 (e.g., the parameter determination module 420) may determine traffic parameters based on the intersection information and a traffic model.
In some embodiments, the traffic parameters may be used to control traffic signals of the plurality of intersections in the route during a time period of day (e.g., 7: 00 a.m. -10: 00 a.m. or 10: 00 a.m. -4: 00 p.m. ) . In some embodiments, the traffic parameters may include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and/or a second combination including an offset of the traffic signal of each of the plurality of intersections.
In some embodiments, the free-flow driving speed between each pair of adjacent intersections of the plurality of intersections, the traffic rules of the route, the green split of the traffic signal in each of the plurality of intersections, the traffic flow between each pair of adjacent intersections of the plurality of intersections, and the traffic capacity between each pair of adjacent intersections of the plurality of intersections may correspond to the application time of the traffic parameters.
In some embodiments, a cycle of the traffic signal may include a red light phase and a green light phase. In some embodiments, a period of the yellow light may be included in the green light phase. In some embodiments, in the same intersection, the cycle lengths of the inbound traffic signal and the outbound traffic  signal may be the same. The inbound traffic signal and the outbound traffic signal may be or not be synchronous (as shown in FIG. 7) .
In some embodiments, the offset of the traffic signal in an intersection may refer to a difference between a specific time point and a start time of a cycle of the traffic signal that is closest to the specific time point. In some embodiments, the offset of the traffic signal in an intersection may refer to an offset between two inbound (outbound) traffic signals in the intersection and the intersection’s adjacent intersection. The offset between the two inbound (outbound) traffic signals in the pair of adjacent intersections may refer to a difference between a first start time of a cycle of the inbound (outbound) traffic signal in one intersection in the pair of adjacent intersections and a second start time of a cycle of the inbound (outbound) traffic signal in the other intersection that is closest to the first start time.
In some embodiments, an optimization objective of the traffic model may relate to a green bandwidth. The green bandwidth may refer to a time width in which vehicles can travel through two or more successive intersections without being stopped by a red light (e.g., the vehicles can encounter a string of green lights when travelling through the two or more successive intersections) .
In some embodiments, the traffic model may include an objective function configured to take into account at least one of: (a) a spillover situation associated with congestion at red light of each of the plurality of intersections, (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and (c) a vehicle arrival distribution in the route. In some embodiments, when the traffic parameters are determined based on the traffic model, a common cycle length for traffic signals of the plurality of intersections may not be required.
In some embodiments, the arterial green bandwidth may refer to a time width in which vehicles can travel through the plurality of intersections of the route without being stopped by a red light. The link green bandwidth may refer to a time width in  which vehicles can successively travel through a part of the plurality of intersections of the route without being stopped by a red light.
In some embodiments, the objective function of the traffic model may be configured to optimize a weighted sum of different types of bandwidths in the route. The different types of bandwidths may include an inbound (outbound) bandwidth of spillover at the red light in each of the plurality of intersections, a first inbound (outbound) link green bandwidth, a second inbound (outbound) link green bandwidth, and an inbound (outbound) arterial green bandwidth.
The inbound (outbound) bandwidth of spillover at the red light in each of the plurality of intersections may refer to a time width in which spillover may occur at the red light that controls the traffic in the inbound (outbound) direction of the route. The spillover may refer to a situation that a vehicle queue caused by the red light at an intersection extends to or beyond its upstream intersection along the travel direction (e.g., the inbound direction or the outbound direction) , which may block the upstream intersection. The first inbound (outbound) link green bandwidth may refer to a link green bandwidth in which vehicles can travel through two successive intersections along the inbound (outbound) direction without being stopped by a red light. The second inbound (outbound) link green bandwidth may refer to a link green bandwidth in which vehicles can travel through three successive intersections along the inbound (outbound) direction without being stopped by a red light. The inbound (outbound) arterial green bandwidth may refer to an arterial green bandwidth in which vehicles can travel through the plurality of intersections in the route along the inbound (outbound) direction without being stopped by a red light.
In some embodiments, a first traffic model may include a first objective function configured to take into account (a) and (b) . For example, the first objective function of the first traffic model may have the following form of Formula (1) :
Figure PCTCN2019129541-appb-000001
wherein
Figure PCTCN2019129541-appb-000002
refers to a variable of spillover at intersection i of the plurality of intersections, 
Figure PCTCN2019129541-appb-000003
 (indicating that the spillover may occur at intersection i) or 0 (indicating that the spillover may not occur at intersection i) ; 
Figure PCTCN2019129541-appb-000004
refers to the inbound (outbound) bandwidth of spillover at the red light in intersection i; 
Figure PCTCN2019129541-appb-000005
refers to the first inbound (outbound) link green bandwidth from intersection i to an intersection adjacent to intersection i (e.g., intersection i’s downstream adjacent intersection along the inbound (outbound) direction) ; 
Figure PCTCN2019129541-appb-000006
refers to the second inbound (outbound) link green bandwidth starting from intersection i along the inbound (outbound) direction; 
Figure PCTCN2019129541-appb-000007
refers to the inbound (outbound) arterial green bandwidth along the inbound (outbound) direction; C lcm refers to the least common multiple of the cycle lengths for the traffic signals of the plurality of intersections; W i (S) , W i (1) , W i (2) , and W i (C) 
Figure PCTCN2019129541-appb-000008
and
Figure PCTCN2019129541-appb-000009
refer to weights of
Figure PCTCN2019129541-appb-000010
and
Figure PCTCN2019129541-appb-000011
and
Figure PCTCN2019129541-appb-000012
respectively; W S refers to a weight of red-light-spillover bandwidth; W 1 refers to a weight of the link green bandwidth of a single link; W 2 refers to a weight of the link green bandwidth of two continuous links; W C refers to a weight of the arterial green bandwidth; W S>>W 1≈W 2≈W C; and S refers to a set of the plurality of intersections in the route.
In some embodiments, in the first traffic model, the least common multiple C lcm of each traffic signal’s cycle length in the plurality of intersections may be determined. In the first traffic model, for each traffic signal in the plurality of intersections, one or more successive cycles may be taken into account during C lcm. The number (count) of the one or more successive cycles may be equal to a ratio of C lcm to the cycle length of the traffic signal. For example, for the inbound  (outbound) traffic signal in intersection i, 
Figure PCTCN2019129541-appb-000013
successive cycles may be taken into account. C i refers to the cycle length of the traffic signal (e.g., the inbound and the outbound traffic signals) in intersection i.
In some embodiments, 
Figure PCTCN2019129541-appb-000014
and
Figure PCTCN2019129541-appb-000015
may be determined based on Formula (2) or Formula (3) below:
Figure PCTCN2019129541-appb-000016
and
Figure PCTCN2019129541-appb-000017
wherein n=1, 2, or C, 
Figure PCTCN2019129541-appb-000018
may represent
Figure PCTCN2019129541-appb-000019
may represent 
Figure PCTCN2019129541-appb-000020
and
Figure PCTCN2019129541-appb-000021
refers to a sub-bandwidth in
Figure PCTCN2019129541-appb-000022
corresponding to a cycle (e.g., the m th cycle) (e.g., going through the green phase of the m th cycle) of the inbound (outbound) traffic signal in intersection i during C lcm.
For example, 
Figure PCTCN2019129541-appb-000023
refers to an sub-bandwidth in
Figure PCTCN2019129541-appb-000024
corresponding to the m th cycle of the inbound (outbound) traffic signal in intersection i during C lcm
Figure PCTCN2019129541-appb-000025
refers to an sub-bandwidth in
Figure PCTCN2019129541-appb-000026
corresponding to the m th cycle of the inbound (outbound) traffic signal in intersection i during C lcm.
Figure PCTCN2019129541-appb-000027
refers to an sub-bandwidth in
Figure PCTCN2019129541-appb-000028
corresponding to the m th cycle of the inbound (outbound) traffic signal in intersection i during C lcm.
FIG. 7 illustrates an exemplary time-space diagram for the first traffic model according to some embodiments of the present disclosure. As shown in FIG. 7, the route includes intersections i, j, k, and l, referred to as S i, S j, S k, and S l. The vertical axis indicates location information in the route. The horizontal axis indicates the time scale. A direction from S i to S l may be referred to as the inbound direction, and a direction from S l to S i may be referred to as the outbound direction. In each intersection, the upper black bars (e.g., 701 at S i) refer to the red light phases of the  inbound traffic signal, the lower black bars (e.g., 702 in S i) refer to the red light phases of the outbound traffic signal, the upper dashed bars (e.g., 703 in S i) refer to the green light phases of the inbound traffic signal, and the lower dashed bars (e.g., 704 in S i) refer to the green light phases of the outbound traffic signal. As shown in FIG. 7, in the same intersection, the cycle lengths of the inbound traffic signal and the outbound traffic signal may be the same. The inbound traffic signal and the outbound traffic signal may be or not be synchronous.
As shown in FIG. 7, 
Figure PCTCN2019129541-appb-000029
refers to the inbound sub-bandwidth from S i to S j corresponding to the first cycle of the inbound traffic signal in S i during C lcm
Figure PCTCN2019129541-appb-000030
refers to the inbound sub-bandwidth from S i to S k corresponding to the first cycle of the inbound traffic signal in S i during C lcm
Figure PCTCN2019129541-appb-000031
refers to the inbound sub-bandwidth from S i to S l corresponding to the first cycle of the inbound traffic signal in S i during C lcm
Figure PCTCN2019129541-appb-000032
refers to the outbound sub-bandwidth from S l to S i corresponding to the first cycle of the outbound traffic signal in S i during C lcm
Figure PCTCN2019129541-appb-000033
refers to the inbound sub-bandwidth from S i to S l corresponding to the second cycle of the inbound traffic signal in S i during C lcm
Figure PCTCN2019129541-appb-000034
refers to the outbound sub-bandwidth from S l to S i corresponding to the third cycle of the outbound traffic signal in S i during C lcm.
Compared with traditional bandwidth models, the first traffic model considers not only the green bandwidth through the whole route but also the link green bandwidth for each pair of adjacent intersections. Different from MAXBAND or MULTIBAND, the first traffic model does not require a common cycle length for determining the plurality of intersections, which makes it more flexible and suitable for the route with substantially different traffic volumes at each intersection. What’s more, the first traffic model also considers the spillover situation and avoids the spillover that occurs at the red light, which will block the intersection.
In some embodiments, in the first traffic model, the issue of the different types of green bandwidths may be decomposed as a combination of a few MAXBAND issues. For example, the issue of
Figure PCTCN2019129541-appb-000035
may be decomposed as N-1 (N refers to the number (count) of the plurality of intersections of the route) two-intersection coordination issues with the MAXBAND model. As another example, the issue of
Figure PCTCN2019129541-appb-000036
may be decomposed as N-2 three-intersection coordination issues with the MAXBAND model. As still another example, the issue of
Figure PCTCN2019129541-appb-000037
may include the N-intersection coordination issue with the MAXBAND model.
In some embodiments, in the first traffic model, for each traffic signal in the plurality of intersections, one or more successive cycles may be taken into account. The number (count) of the one or more successive cycles may be equal to a ratio of C lcm to the cycle length of the traffic signal. For example, for the inbound (outbound) traffic signal in intersection i, 
Figure PCTCN2019129541-appb-000038
successive cycles may be taken into account. Therefore, 
Figure PCTCN2019129541-appb-000039
may be decomposed as
Figure PCTCN2019129541-appb-000040
sub-bandwidths. The number (count) of sub-bandwidth combinations for each intersection may be
Figure PCTCN2019129541-appb-000041
In some embodiments, after the decomposition, the first objective function of the first traffic model may become an extremely large MILP, which involves more than
Figure PCTCN2019129541-appb-000042
unrestricted integer variables.
In some embodiments, the processing engine 112 may solve the first objective function of the first traffic model using a genetic algorithm and dynamic programming. In some embodiments, the processing engine 112 may determine the first combination based on the first traffic model and the genetic algorithm. Then the processing engine 112 may determine the second combination based on the first traffic model, the first combination, and the dynamic programming. Details related to determining the first combination based on the genetic algorithm may be  found elsewhere in the present disclosure (e.g., the description in connection with FIG. 9) . Details related to determining the second combination based on the dynamic programming may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 11) .
In addition to the first objective function of the first traffic model, other traffic models including a large MILP issue may also be processed using the genetic algorithm in combination with the dynamic programming provided in the present disclosure.
FIGs. 8A-8B illustrate exemplary time-space diagrams including vehicle travelling trajectories according to some embodiments of the present disclosure. As shown in FIGs. 8A-8B, the route includes intersections S 1, S 2, and S 3. The vertical axis indicates location information in the route. The horizontal axis indicates the time scale. A direction from S 1 to S 3 may be referred to as the inbound direction, and a direction from S 3 to S 1 may be referred to as the outbound direction. As shown in FIGs. 8A-8B, each line (e.g., 801 and 802) represents a vehicle travelling trajectory. As shown in FIG. 8A, there are no trajectories passing through S 1, S 2, and S 3 at the beginning of the inbound green band 803 and the outbound green band 804. As shown in FIG. 8B, if the signal sequences of the traffic signals in S 1 and S 2 are shifted to the right for a period of time, the coordination plan may be more efficient, and vehicles may stop less. Therefore, in some embodiments, in addition to the spillover situation and the arterial green bandwidth in combination with the link green bandwidth, the objective function of the traffic model may be further configured to take into account a vehicle arrival distribution at each of the plurality of intersections as features to refine the coordination optimization and improve efficiency of the arterial green bandwidth and/or the link green bandwidth.
Assume that the penetration rate and the traffic state are stable for the same movement in a time of day (TOD) . With the assumption of the even penetration  rate, the vehicle arrival distribution of sampled trajectories may be similar to that from whole traffic, when the number of samples is enough.
In some embodiments, a second traffic model may include a second objective function configured to take into account all of (a) , (b) and (c) . For example, the second objective function of the second traffic model may have the following form of Formula (4) :
Figure PCTCN2019129541-appb-000043
wherein
Figure PCTCN2019129541-appb-000044
refers to a first vector of the inbound (outbound) vehicle arrival distribution at intersection i, the elements of the first vector represent the frequency of vehicles arriving at intersection i for each second (e.g., in a cycle of the inbound (outbound) traffic signal of intersection i) ; 
Figure PCTCN2019129541-appb-000045
refers to a second vector of the inbound (outbound) green state at intersection i, the elements of the second vector represent whether the green light of the inbound (outbound) traffic signal of intersection i is available for each second (e.g., in a cycle of the inbound (outbound) traffic signal of intersection i) , for example, the element “1” of the second vector represents the green light is available, the element “0” of the second vector represents the green light is not available; the sign “·” in Formula (4) represents a convolution operator, for example, a·b=∑ ia ib i (a and b are vectors with the same size) ; W g refers to a weight of the vehicle arrival distribution; and W S>>W g>>W 1≈W 2≈W C.
In some embodiments, at least one of
Figure PCTCN2019129541-appb-000046
W i (S) , W i (1) , W i (2) , W i (C) 
Figure PCTCN2019129541-appb-000047
Figure PCTCN2019129541-appb-000048
W S, W g, W 1, W 2, and W C may be set by the user of the traffic control system 100, or may be automatically determined by the processing engine 112 based on the intersection information using, for example, machine learning.
In some embodiments, when the second traffic model is used to determine the traffic parameters (e.g., the second combination) , the first combination may be a known parameter that is input into the second traffic model to determine the second combination. In some embodiments, the first combination may be default of the traffic control system 100. In some embodiments, a user (e.g., an engineer) of the traffic control system 100 may set the first combination. In some embodiments, the first combination may be automatically determined based on the intersection information using, for example, Webster’s formula and/or machine learning. In some embodiments, the first combination may be automatically determined by solving the first objective function of the first traffic model using the genetic algorithm. In some embodiments, the cycle lengths that the traffic signals in the plurality of intersections is working with may be used as the first combination.
There may be different probabilities of arrival for each second in a cycle, which means different benefits for each second of the green band. Even if the width of the green band is equal, there may be different performance when the position of the green band is different. In Formula (4) , the most important factor in the coordination may be the vehicle arrival distribution. In Formula (4) , 
Figure PCTCN2019129541-appb-000049
is dynamic, and depends on the signal plan of all upstream intersections. Because W g>>W 1≈W 2≈W C, the vehicle arrival distribution may be the main factor of Formula (4) , and the different types of bandwidths may be auxiliary to avoid the situation lack of samples of trajectory. As the most important part of the dynamic process, it’s necessary to rebuild the vehicle arrival distribution with the second traffic model after the signal plan changes.
In some embodiments, the processing engine 112 may determine the second combination based on the second traffic model and the dynamic programming. Details related to determining the second combination based on the second traffic model and the dynamic programming may be found elsewhere in the present disclosure (e.g., the description in connection with FIG. 12) .
In some embodiments, the traffic parameters may be transmitted to the traffic signals at the plurality of intersections to cause the traffic signals to work according to the traffic parameters.
An aspect of the present disclosure provides a first traffic model and a second traffic model for traffic signal coordination optimization of a route. The first traffic model and the second traffic model may be available for the case with different cycle lengths for different intersections in the route, which is suitable for the route with a large different traffic volumes between two adjacent intersections in the route. The first traffic model may be flexible and add the critical sub-path to the objective function easily. The second traffic model may be suitable for the case with non-uniform arrival volume and may improve the efficiency of the green band of the route.
To solve the first objective function of the first traffic model, another aspect of the present disclosure provides a genetic algorithm in combination with dynamic programming. Due to the reduction of time complexity from an exponential degree to a polynomial degree, the coordination of the first traffic model may be used for a large scale road network.
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.
FIG. 9 is a flowchart illustrating an exemplary process for determining a first combination based on genetic algorithm according to some embodiments of the present disclosure. In some embodiments, the process 900 may be implemented in the traffic control system 100 illustrated in FIG. 1. For example, the process 900 may be stored in a storage medium (e.g., the storage device 150, or the storage 220 of the processing engine 112) as a form of instructions, and can be invoked and/or  executed by the server 110 (e.g., the processing engine 112, the processor 210 of the processing engine 112, or one or more modules in the processing engine 112 illustrated in FIG. 4) . The operations of the illustrated process 900 presented below are intended to be illustrative. In some embodiments, the process 900 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 900 as illustrated in FIG. 9 and described below is not intended to be limiting.
In some embodiments, a green band between two intersections may be satisfied with one of Formulas (5) - (8) as follows:
Figure PCTCN2019129541-appb-000050
Figure PCTCN2019129541-appb-000051
Figure PCTCN2019129541-appb-000052
and
Figure PCTCN2019129541-appb-000053
wherein gs i
Figure PCTCN2019129541-appb-000054
refers to a start time of a green light phase of the inbound (outbound) traffic signal (also referred to as a first inbound (outbound) green start time) of intersection i of the plurality of intersections; gs j
Figure PCTCN2019129541-appb-000055
refers to a start time of a green light phase of the inbound (outbound) traffic signal (also referred to as a second inbound (outbound) green start time) of intersection j of the plurality of intersections; ge i
Figure PCTCN2019129541-appb-000056
refers to an end time of the green light phase of the inbound (outbound) traffic signal (also referred to as a first inbound (outbound) green end time) of intersection i; ge j
Figure PCTCN2019129541-appb-000057
refers to an end time of the green light phase of the inbound (outbound) traffic signal (also referred to as a second inbound (outbound) green end time) of intersection j; 
Figure PCTCN2019129541-appb-000058
refers to an offset of intersection i (j) ; L i, j (L j, i) refers to a driving distance from intersection i (j) to intersection j (i) ; v i, j (v j, i) refers to a free-flow driving speed from intersection i (j) to intersection j (i) ; τ j refers  to a queue clearance time for moving toward intersection j; 
Figure PCTCN2019129541-appb-000059
refers to a queue clearance time for moving toward intersection i; and n 1, n 2, n 3, and n 4 are positive integers, and correspond to loop integer variables of the traffic signals of intersections i and j.
In some embodiments, an acceptable range of the cycle length including a plurality of candidate cycle lengths (e.g., the number (count) of the candidate cycle lengths may be represented as L acc) may be set by the user or may be automatically determined by the processing engine 112 based on the intersection information. For the whole route including N intersections, the number (count) of candidate cycle length combinations in a universal set may be equal to
Figure PCTCN2019129541-appb-000060
 (the N th power of L acc) . The universal set may include all of the candidate cycle length combinations based on the acceptable cycle lengths. The candidate cycle length combination may include a candidate cycle length for each of the plurality of intersections. The processing engine 112 may use the genetic algorithm (e.g., the process 900) to determine the first combination based on the candidate cycle length combinations.
In 910, the processing engine 112 (e.g., the parameter determination module 420) may randomly determine a first generation of populations. In some embodiments, the candidate cycle length combination for the whole route may be determined as a population. For each population, each of the plurality of intersections may be determined as an individual. The candidate cycle length for each of the plurality of intersections in the population may be determined as the gene of each individual.
In some embodiments, the processing engine 112 may randomly determine the first generation of populations based on the acceptable range of cycle length. In some embodiments, the first generation of populations may include at least a part of the universal set.
In some embodiments, the processing engine 112 may use the first generation of populations as an initial condition to perform a first iteration process  including a plurality of iterations (e.g., operations 920-950 included in the d th (d=1, 2, 3, …) iteration of the first iteration process) to determine the first combination.
In 920, the processing engine 112 (e.g., the parameter determination module 420) may determine, for each population of the d th generation, a fitness value based on the first traffic model. In some embodiments, the processing engine 112 may determine the fitness value based on the candidate cycle lengths in the each population of the d th generation and the first objective function of the first traffic model. In some embodiments, the processing engine 112 may determine the fitness value based on the candidate cycle lengths in the each population of the d th generation and Formulas (1) and (5) - (8) .
In 930, the processing engine 112 (e.g., the parameter determination module 420) may reserve at least one population in the d th generation of populations based on the fitness values. In some embodiments, the processing engine 112 may determine a selection probability for each population of the d th generation based on the fitness value. The processing engine 112 may reserve at least one population in the d th generation of populations of which the selection probability is greater than a probability threshold. In some embodiments, the processing engine 112 may determine the selection probability based on Formula (9) below:
Figure PCTCN2019129541-appb-000061
wherein P p refers to the selection probability of population p in the d th generation; fitness p refers to the fitness value of population p; and fitness max and fitness min refers to the maximum value and the minimum value among the fitness values of the d th generation of populations, respectively. In some embodiments, the selection probability of all populations in the d th generation may be equal to 1 when fitness max-fitness min=0.
In 940, the processing engine 112 (e.g., the parameter determination module 420) may generate an (d+1)  th generation of populations by performing crossover and mutation to at least one population in the at least one reserved population. In some  embodiments, the processing engine 112 may generate at least one new population by performing crossover to at least one population in the at least one reserved population. Preferably, the processing engine 112 may perform crossover to 80%of the reserved populations. In some embodiments, the processing engine 112 may generate the (d+1)  th generation of populations by performing mutation to the at least one new population. Preferably, the processing engine 112 may perform mutation to the at least one new population with 1%mutation probability.
In 950, the processing engine 112 (e.g., the parameter determination module 420) may determine whether a first termination condition is satisfied. In response to a determination that the first termination condition is satisfied, the processing engine 112 may determine the first combination based on the (d+1)  th generation of populations (operation 960) . For example, the processing engine 112 may determine the fitness value for each population in the (d+1)  th generation. The processing engine 112 may determine the population in the (d+1)  th generation with the maximum fitness value as the first combination. In response to a determination that the first termination condition is not satisfied, the processing engine 112 may initiate a new iteration.
In some embodiments, the first termination condition may include that the number (count) of iterations that have been performed is larger than or equal to a first iteration threshold, and/or that the maximum fitness value of the generations determined in the last few (e.g., 5, 10, 20, etc. ) iterations tends to converge.
FIG. 10 illustrates an exemplary diagram indicating a relation between iteration times of the genetic algorithm of the process 900 and the maximum fitness value according to some embodiments of the present disclosure. As shown in FIG. 10, after about 100 iterations, the maximum fitness value tends to converge.
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.
FIG. 11 is a flowchart illustrating an exemplary process for determining a second combination based on a first traffic model and dynamic programming according to some embodiments of the present disclosure. In some embodiments, the process 1100 may be implemented in the traffic control system 100 illustrated in FIG. 1. For example, the process 1100 may be stored in a storage medium (e.g., the storage device 150, or the storage 220 of the processing engine 112) as a form of instructions, and can be invoked and/or executed by the server 110 (e.g., the processing engine 112, the processor 210 of the processing engine 112, or one or more modules in the processing engine 112 illustrated in FIG. 4) . The operations of the illustrated process 1100 presented below are intended to be illustrative. In some embodiments, the process 1100 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 1100 as illustrated in FIG. 11 and described below is not intended to be limiting.
In the dynamic programming of the process 1100, the issue of determining the second combination may be broken into multiple sub-issues that include optimizing offsets from the traffic signal of the first intersection to the traffic signal of k th intersection (k<N) along the inbound or outbound direction.
In some embodiments, the second combination may include an inbound offset combination and an outbound offset combination. The inbound offset combination may include an offset of the inbound traffic signal in each of the plurality of intersections. The outbound offset combination may include an offset of the outbound traffic signal in each of the plurality of intersections. For brevity, a process for determining the inbound offset combination may be illustrated in the process 1100 as an example. The processing engine 112 may determine the inbound offset combination by performing a process similar to the process 1100.
In 1110, the processing engine 112 (e.g., the parameter determination module 420) may determine a boundary state of a first intersection (e.g., along the inbound direction) of the plurality of intersections based on the first traffic model. In some embodiments, the boundary state of the first intersection may include a target offset of the inbound traffic signal of the first intersection.
In some embodiments, for each intersection from the second intersection to the last intersection of the plurality of intersections along the inbound direction, the processing engine 112 may perform operations 1120-1130 to determine a state of the each intersection based on the first traffic model, the first combination, a state of the each intersection’s last intersection, and a target offset for the each intersection. The state of the each intersection may include an optimal value of the first objective function (e.g., Formula (1) ) of the first traffic model from the first intersection to the each intersection.
In 1120, the processing engine 112 (e.g., the parameter determination module 420) may determine a state of the (t+1)  th (t=1, 2, 3, …) intersection of the plurality of intersections based on the first traffic model, the first combination, a state of the t th intersection of the plurality of intersections, and a target offset for the (t+1)  th intersection. In some embodiments, the state of the (t+1)  th intersection may include an optimal value of the first objective function (e.g., Formula (1) ) of the first traffic model from the first intersection to the (t+1)  th intersection. The target offset for the (t+1)  th intersection may correspond to the state of the (t+1)  th intersection.
In some embodiments, the processing engine 112 may determine the state of the (t+1)  th intersection based on Formula (10) below:
Figure PCTCN2019129541-appb-000062
wherein
Figure PCTCN2019129541-appb-000063
refers to the state of the (t+1)  th intersection corresponding to the target offset j of the inbound traffic signal of the (t+1)  th intersection; 
Figure PCTCN2019129541-appb-000064
refers to the state of the t th intersection corresponding to the target offset k of the inbound  traffic signal of the t th intersection; 
Figure PCTCN2019129541-appb-000065
refers to a value of the first objective function (e.g., Formula (1) ) of the first traffic model from the t th intersection to the (t+1)  th intersection while the offset of the inbound traffic signal of the t th intersection is k and the offset of the inbound traffic signal of the (t+1)  th intersection is j; and C t refers to the cycle length of the traffic signal of the t th intersection. In some embodiments, when t=1, 
Figure PCTCN2019129541-appb-000066
in Formula (10) may be omitted.
In 1130, the processing engine 112 (e.g., the parameter determination module 420) may determine whether the (t+1)  th intersection is the last intersection of the plurality of intersections. In response to a determination that the (t+1)  th intersection is the last intersection of the plurality of intersections, the processing engine 112 may determine the second combination based on the target offset for each of the plurality of intersections. In some embodiments, the processing engine 112 may determine the inbound offset combination based on the target offset for each of the plurality of intersections. In response to a determination that the (t+1)  th intersection is not the last intersection of the plurality of intersections, the processing engine 112 may determine the state of the next intersection (e.g., the (t+1)  th intersection) .
In some embodiments, the time complexity of the dynamic programming in the process 1100 may be
Figure PCTCN2019129541-appb-000067
while N refers to the number (count) of the plurality of intersections, and C max refers to the maximum cycle of the plurality of intersections.
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.
FIG. 12 is a flowchart illustrating an exemplary process for determining a second combination based on a second traffic model and dynamic programming  according to some embodiments of the present disclosure. In some embodiments, the process 1200 may be implemented in the traffic control system 100 illustrated in FIG. 1. For example, the process 1200 may be stored in a storage medium (e.g., the storage device 150, or the storage 220 of the processing engine 112) as a form of instructions, and can be invoked and/or executed by the server 110 (e.g., the processing engine 112, the processor 210 of the processing engine 112, or one or more modules in the processing engine 112 illustrated in FIG. 4) . The operations of the illustrated process 1200 presented below are intended to be illustrative. In some embodiments, the process 1200 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 1200 as illustrated in FIG. 12 and described below is not intended to be limiting.
In some embodiments, the key point of determining the second combination based on the vehicle arrival distribution may be to update the second combination and the vehicle arrival distribution simultaneously. However, the vehicle arrival distribution at each individual intersection is not independent. If the vehicle arrival distribution and the second combination are updated simultaneously for inbound and outbound directions, the time complexity may be exponential. To reduce the time complexity, in the process 1200, the vehicle arrival distribution and the second combination may be updated separately.
In 1210, the processing engine 112 (e.g., the parameter determination module 420) may obtain a first vehicle arrival distribution in the route. In some embodiments, the first vehicle arrival distribution may be obtained based on the trajectory data acquired from the user terminal 130 and/or the traffic data acquired from the sensors installed at the plurality of intersections.
In some embodiments, the processing engine 112 may use the first vehicle arrival distribution as an initial condition to perform a second iteration process including a plurality of iterations (e.g., operations 1220-1240 included in the q th (q=1,  2, 3, …) iteration of the second iteration process) to determine the second combination.
In 1220, the processing engine 112 (e.g., the parameter determination module 420) may determine a q th candidate combination including a candidate offset of each of the plurality of intersections based on the q th vehicle arrival distribution, the second traffic model, the first combination, and dynamic programming. In some embodiments, the processing engine 112 may determine the q th candidate combination based on the process 1100 in FIG. 11.
In 1230, the processing engine 112 (e.g., the parameter determination module 420) may generate a (q+1)  th vehicle arrival distribution based on the q th candidate combination. The vehicle arrival distribution may be updated according to the traffic light state determined based on the q th candidate combination. For example, when arriving at the green light phase of an intersection, vehicles may pass through the intersection directly, otherwise pass at the beginning of the green light phase) . Then the vehicle arrival distribution may extend to the downstream intersection with the free-flow speed to rebuild the downstream arrival distribution.
In 1240, the processing engine 112 (e.g., the parameter determination module 420) may determine whether a second termination condition is satisfied. In response to a determination that the second termination condition is satisfied, the processing engine 112 may determine the second combination based on the q th candidate combination (operation 1250) . For example, the processing engine 112 may determine the q th candidate combination as the second combination. In response to a determination that the second termination condition is not satisfied, the processing engine 112 may initiate a new iteration.
In some embodiments, the second termination condition may include that the number (count) of iterations that have been performed is larger than or equal to a second iteration threshold, and/or that the candidate combinations determined in the last few (e.g., 3, 4, 5, etc. ) iterations tends to converge.
In some embodiments, the time complexity of the process 1200 may be 
Figure PCTCN2019129541-appb-000068
while N refers to the number (count) of the plurality of intersections, I refers to the number (count) (e.g., usually less than 10) of the iterations of the second iteration process, and C max refers to the maximum cycle of the plurality of intersections.
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.
Examples
The traffic model provided in the present disclosure has been applied to optimize coordination of numerous arteries in multiple cities in China. For example, Heping Road, Jinan, Shandong, China, was chose to demonstrate performance of the first traffic model and the second traffic model provided in the present disclosure. The first traffic model and the second traffic model were tested for one week, and the average value of stop delay and stop ratio were determined as the model performance index. Test TOD is from 9: 00 a. m. to 4: 00 p. m., the offpeak period.
The performance comparison is shown in Table 1.
Table 1. comparison of the performance for difference models
Model Stop delay Change Stop ratio Change
Before optimization 13.08 0% 35.97% 0%
MAXBAND 10.85 17.05% 31.20% 13.26%
First traffic model 10.55 19.34% 28.42% 20.99%
Second traffic model 9.13 30.20% 25.31% 29.64%
As shown in Table 1, compared with the traffic before optimization, the first traffic model leads to a 19.34%reduction of stop delay and a 20.99%reduction of  stop ratio. The second traffic model leads to a 30.20%reduction of stop delay and a 29.64%reduction of stop ratio. Compared with the performance of the MAXBAND model, the first traffic model leads to additional 2.76%and 8.91%reduction, for stop delay and stop ratio correspondingly. The second traffic model leads to additional 15.85%and 18.88%reduction, for stop delay and stop ratio correspondingly. As shown in Table 1, the second traffic model gives the best performance for the test road.
FIG. 13A illustrates an exemplary time-space diagram of the test road before optimization according to some embodiments of the present disclosure. FIG. 13B illustrates an exemplary time-space diagram of the test road after optimization using the second traffic model according to some embodiments of the present disclosure. As shown in FIGs. 13A and 13B, a line represents an inbound or outbound vehicle trajectory in the test road. Darker bars (e.g., 1302) indicate red light phases and lighter bars (e.g., 1301) indicate green light phases. As shown in FIGs. 13A and 13B, after optimization using the second traffic model, vehicles stop less and the green band of the test road is more efficient.
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.
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.
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.
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) .
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.
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 (44)

  1. A system for controlling traffic signals, comprising:
    at least one storage device including a set of instructions; and
    at least one processor in communication with the at least one storage device and the imaging device, wherein when executing the set of instructions, the at least one processor is directed to cause the system to:
    obtain intersection information associated with a plurality of intersections of a route; and
    determine traffic parameters based on the intersection information and a traffic model, wherein:
    the traffic parameters are used to control traffic signals of the plurality of intersections; and
    the traffic model is configured to take into account at least one of:
    (a) a spillover situation associated with congestion at red light of each of the plurality of intersections,
    (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and
    (c) a vehicle arrival distribution in the route.
  2. The system of claim 1, wherein an optimization objective of the traffic model is a green bandwidth associated with the route.
  3. The system of claim 1 or 2, wherein the traffic model is configured to take into account an inbound direction and an outbound direction of the route.
  4. The system of any one of claims 1-3, wherein
    the traffic model is configured to take into account (a) and (b) ; and
    the traffic parameters include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and a second combination including an offset of the traffic signal of each of the plurality of intersections.
  5. The system of claim 4, wherein the traffic parameters are determined without requiring a common cycle length for the traffic signals of the plurality of intersections.
  6. The system of claim 4 or 5, wherein to determine the traffic parameters based on the intersection information and the traffic model, the at least one processor is further directed to cause the system to:
    determine the traffic parameters by solving a function deduced from the traffic model using a genetic algorithm and dynamic programming.
  7. The system of claim 6, wherein to determine the traffic parameters by solving the function deduced from the traffic model using the genetic algorithm and the dynamic programming, the at least one processor is further directed to cause the system to:
    determine the first combination based on the traffic model and the genetic algorithm; and
    determine the second combination based on the traffic model, the first combination, and the dynamic programming.
  8. The system of claim 7, wherein to determine the first combination based on the traffic model and the genetic algorithm, the at least one processor is further directed to cause the system to:
    randomly determine an initial generation of populations, each population including a combination of candidate cycle lengths of the plurality of intersections;
    perform a first iteration process including a plurality of iterations, each of the plurality of iterations including:
    for each population in a previous generation of populations, determining a fitness value based on the traffic model, the previous generation of populations being the initial generation of populations in a first iteration of the plurality of iterations or a new generation of populations generated in a previous iteration;
    reserving at least one population in the previous generation of populations based on the fitness values;
    generating a new generation of populations by performing crossover and mutation to at least one population in the at least one reserved population;
    determining whether a first termination condition is satisfied;
    in response to a determination that the first termination condition is satisfied, terminating the first iteration process; and
    in response to a determination that the first termination condition is not satisfied, initiating a new iteration; and
    determine the first combination based on the new generation of populations generated in the last iteration of the plurality of iterations of the first iteration process.
  9. The system of claim 7 or 8, wherein to determine the second combination based on the traffic model, the first combination, and the dynamic programming, the at least one processor is further directed to cause the system to:
    determine a boundary state associated with a first intersection of the plurality of intersections based on the traffic model;
    for each intersection from a second intersection to a last intersection of the plurality of intersections, determine a state of the each intersection based on the traffic model, the first combination, a state of the each intersection’s last intersection,  and a target offset for the each intersection, the state of the each intersection’s last intersection being the boundary state when the each intersection is the second intersection of the plurality of intersections, the state of the each intersection being an optimal value of the traffic model from the first intersection to the each intersection; and
    determine the second combination based on the target offset for each intersection from the second intersection to the last intersection of the plurality of intersections.
  10. The system of any one of claims 1-3, wherein
    the traffic model is configured to take into account all of (a) , (b) , and (c) ; and
    the traffic parameters include a second combination including an offset of the traffic signal of each of the plurality of intersections.
  11. The system of claim 10, wherein to determine the traffic parameters based on the intersection information and the traffic model, the at least one processor is further directed to cause the system to:
    obtain an initial vehicle arrival distribution in the route;
    perform a second iteration process including a plurality of iterations, each of the plurality of iterations including:
    determining a candidate combination including a candidate offset of the traffic signal of each of the plurality of intersections based on an updated vehicle arrival distribution, the traffic model, and dynamic programming, the updated vehicle arrival distribution being the initial vehicle arrival distribution in a first of the plurality of iterations or a vehicle arrival distribution generated in a previous iteration;
    generating a new vehicle arrival distribution based on the candidate combination;
    determining whether a second termination condition is satisfied;
    in response to a determination that the second termination condition is satisfied, terminating the second iteration process; and
    in response to a determination that the second termination condition is not satisfied, initiating a new iteration; and
    determine the second combination based on the candidate combination determined in the last iteration of the plurality of iterations of the second iteration process.
  12. A system for controlling traffic signals, comprising:
    at least one storage device including a set of instructions; and
    at least one processor in communication with the at least one storage device and the imaging device, wherein when executing the set of instructions, the at least one processor is directed to cause the system to:
    obtain a traffic model, wherein
    the traffic model relates to mix integer linear programming (MILP) ; and
    the traffic model is configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections; and
    determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming, traffic signals of the plurality of intersections are controlled based on the traffic parameters.
  13. The system of claim 12, wherein the traffic parameters include
    a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and
    a second combination including an offset of the traffic signal of each of the plurality of intersections.
  14. The system of claim 13, wherein to determine the traffic parameters based on the traffic model using the genetic algorithm and the dynamic programming, the at least one processor is further directed to cause the system to:
    determine the first combination based on the traffic model and the genetic algorithm; and
    determine the second combination based on the traffic model, the first combination, and the dynamic programming.
  15. A method for controlling traffic signals implemented on a machine having one or more storage devices and one or more processors, the method comprising:
    obtaining intersection information associated with a plurality of intersections of a route; and
    determining traffic parameters based on the intersection information and a traffic model, wherein:
    the traffic parameters are used to control traffic signals of the plurality of intersections; and
    the traffic model is configured to take into account at least one of:
    (a) a spillover situation associated with congestion at red light of each of the plurality of intersections,
    (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and
    (c) a vehicle arrival distribution in the route.
  16. The method of claim 15, wherein an optimization objective of the traffic model is a green bandwidth associated with the route.
  17. The method of claim 15 or 16, wherein the traffic model is configured to take into account an inbound direction and an outbound direction of the route.
  18. The method of any one of claims 15-17, wherein
    the traffic model is configured to take into account (a) and (b) ; and
    the traffic parameters include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and a second combination including an offset of the traffic signal of each of the plurality of intersections.
  19. The method of claim 18, wherein the traffic parameters are determined without requiring a common cycle length for the traffic signals of the plurality of intersections.
  20. The method of claim 18 or 19, wherein the determining the traffic parameters based on the intersection information and the traffic model includes:
    determining the traffic parameters by solving a function deduced from the traffic model using a genetic algorithm and dynamic programming.
  21. The method of claim 20, wherein the determining the traffic parameters by solving the function deduced from the traffic model using the genetic algorithm and the dynamic programming includes:
    determining the first combination based on the traffic model and the genetic algorithm; and
    determining the second combination based on the traffic model, the first combination, and the dynamic programming.
  22. The method of claim 21, wherein the determining the first combination based on the traffic model and the genetic algorithm includes:
    randomly determining an initial generation of populations, each population including a combination of candidate cycle lengths of the plurality of intersections;
    performing a first iteration process including a plurality of iterations, each of the plurality of iterations including:
    for each population in a previous generation of populations, determining a fitness value based on the traffic model, the previous generation of populations being the initial generation of populations in a first iteration of the plurality of iterations or a new generation of populations generated in a previous iteration;
    reserving at least one population in the previous generation of populations based on the fitness values;
    generating a new generation of populations by performing crossover and mutation to at least one population in the at least one reserved population;
    determining whether a first termination condition is satisfied;
    in response to a determination that the first termination condition is satisfied, terminating the first iteration process; and
    in response to a determination that the first termination condition is not satisfied, initiating a new iteration; and
    determining the first combination based on the new generation of populations generated in the last iteration of the plurality of iterations of the first iteration process.
  23. The method of claim 21 or 22, wherein the determining the second combination based on the traffic model, the first combination, and the dynamic programming includes:
    determining a boundary state associated with a first intersection of the plurality of intersections based on the traffic model;
    for each intersection from a second intersection to a last intersection of the plurality of intersections, determining a state of the each intersection based on the traffic model, the first combination, a state of the each intersection’s last intersection, and a target offset for the each intersection, the state of the each intersection’s last intersection being the boundary state when the each intersection is the second intersection of the plurality of intersections, the state of the each intersection being an optimal value of the traffic model from the first intersection to the each intersection; and
    determining the second combination based on the target offset for each intersection from the second intersection to the last intersection of the plurality of intersections.
  24. The method of any one of claims 15-17, wherein
    the traffic model is configured to take into account all of (a) , (b) , and (c) ; and
    the traffic parameters include a second combination including an offset of the traffic signal of each of the plurality of intersections.
  25. The method of claim 24, wherein the determining the traffic parameters based on the intersection information and the traffic model includes:
    obtaining an initial vehicle arrival distribution in the route;
    performing a second iteration process including a plurality of iterations, each of the plurality of iterations including:
    determining a candidate combination including a candidate offset of the traffic signal of each of the plurality of intersections based on an updated vehicle arrival distribution, the traffic model, and dynamic programming, the updated vehicle arrival distribution being the initial vehicle arrival distribution  in a first of the plurality of iterations or a vehicle arrival distribution generated in a previous iteration;
    generating a new vehicle arrival distribution based on the candidate combination;
    determining whether a second termination condition is satisfied;
    in response to a determination that the second termination condition is satisfied, terminating the second iteration process; and
    in response to a determination that the second termination condition is not satisfied, initiating a new iteration; and
    determining the second combination based on the candidate combination determined in the last iteration of the plurality of iterations of the second iteration process.
  26. A method for controlling traffic signals, implemented on a machine having one or more storage devices and one or more processors, the method comprising:
    obtaining a traffic model, wherein
    the traffic model relates to mix integer linear programming (MILP) ; and
    the traffic model is configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections; and
    determining traffic parameters based on the traffic model using a genetic algorithm and dynamic programming, traffic signals of the plurality of intersections are controlled based on the traffic parameters.
  27. The method of claim 26, wherein the traffic parameters include
    a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and
    a second combination including an offset of the traffic signal of each of the plurality of intersections.
  28. The method of claim 27, wherein the determining the traffic parameters based on the traffic model using the genetic algorithm and the dynamic programming includes:
    determining the first combination based on the traffic model and the genetic algorithm; and
    determining the second combination based on the traffic model, the first combination, and the dynamic programming.
  29. A system for controlling traffic signals, comprising:
    an information obtaining module configured to obtain intersection information associated with a plurality of intersections of a route; and
    a parameter determination module configured to determine traffic parameters based on the intersection information and a traffic model, wherein:
    the traffic parameters are used to control traffic signals of the plurality of intersections; and
    the traffic model is configured to take into account at least one of:
    (a) a spillover situation associated with congestion at red light of each of the plurality of intersections,
    (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and
    (c) a vehicle arrival distribution in the route.
  30. The system of claim 15, wherein an optimization objective of the traffic model is a green bandwidth associated with the route.
  31. The system of claim 29 or 30, wherein the traffic model is configured to take into account an inbound direction and an outbound direction of the route.
  32. The system of any one of claims 29-31, wherein
    the traffic model is configured to take into account (a) and (b) ; and
    the traffic parameters include a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and a second combination including an offset of the traffic signal of each of the plurality of intersections.
  33. The system of claim 32, wherein the traffic parameters are determined without requiring a common cycle length for the traffic signals of the plurality of intersections.
  34. The system of claim 32 or 33, wherein the determining the traffic parameters based on the intersection information and the traffic model includes:
    determining the traffic parameters by solving a function deduced from the traffic model using a genetic algorithm and dynamic programming.
  35. The system of claim 34, wherein the determining the traffic parameters by solving the function deduced from the traffic model using the genetic algorithm and the dynamic programming includes:
    determining the first combination based on the traffic model and the genetic algorithm; and
    determining the second combination based on the traffic model, the first combination, and the dynamic programming.
  36. The system of claim 35, wherein the determining the first combination based on the traffic model and the genetic algorithm includes:
    randomly determining an initial generation of populations, each population including a combination of candidate cycle lengths of the plurality of intersections;
    performing a first iteration process including a plurality of iterations, each of the plurality of iterations including:
    for each population in a previous generation of populations, determining a fitness value based on the traffic model, the previous generation of populations being the initial generation of populations in a first iteration of the plurality of iterations or a new generation of populations generated in a previous iteration;
    reserving at least one population in the previous generation of populations based on the fitness values;
    generating a new generation of populations by performing crossover and mutation to at least one population in the at least one reserved population;
    determining whether a first termination condition is satisfied;
    in response to a determination that the first termination condition is satisfied, terminating the first iteration process; and
    in response to a determination that the first termination condition is not satisfied, initiating a new iteration; and
    determining the first combination based on the new generation of populations generated in the last iteration of the plurality of iterations of the first iteration process.
  37. The system of claim 35 or 36, wherein the determining the second combination based on the traffic model, the first combination, and the dynamic programming includes:
    determining a boundary state associated with a first intersection of the plurality of intersections based on the traffic model;
    for each intersection from a second intersection to a last intersection of the plurality of intersections, determining a state of the each intersection based on the traffic model, the first combination, a state of the each intersection’s last intersection, and a target offset for the each intersection, the state of the each intersection’s last intersection being the boundary state when the each intersection is the second intersection of the plurality of intersections, the state of the each intersection being an optimal value of the traffic model from the first intersection to the each intersection; and
    determining the second combination based on the target offset for each intersection from the second intersection to the last intersection of the plurality of intersections.
  38. The system of any one of claims 29-31, wherein
    the traffic model is configured to take into account all of (a) , (b) , and (c) ; and
    the traffic parameters include a second combination including an offset of the traffic signal of each of the plurality of intersections.
  39. The system of claim 38, wherein the determining the traffic parameters based on the intersection information and the traffic model includes:
    obtaining an initial vehicle arrival distribution in the route;
    performing a second iteration process including a plurality of iterations, each of the plurality of iterations including:
    determining a candidate combination including a candidate offset of the traffic signal of each of the plurality of intersections based on an updated vehicle arrival distribution, the traffic model, and dynamic programming, the updated vehicle arrival distribution being the initial vehicle arrival distribution  in a first of the plurality of iterations or a vehicle arrival distribution generated in a previous iteration;
    generating a new vehicle arrival distribution based on the candidate combination;
    determining whether a second termination condition is satisfied;
    in response to a determination that the second termination condition is satisfied, terminating the second iteration process; and
    in response to a determination that the second termination condition is not satisfied, initiating a new iteration; and
    determining the second combination based on the candidate combination determined in the last iteration of the plurality of iterations of the second iteration process.
  40. A system for controlling traffic signals, comprising:
    an information obtaining module configured to obtain a traffic model, wherein
    the traffic model relates to mix integer linear programming (MILP) ; and
    the traffic model is configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections; and
    a parameter determination module configured to determine traffic parameters based on the traffic model using a genetic algorithm and dynamic programming, traffic signals of the plurality of intersections are controlled based on the traffic parameters.
  41. The system of claim 40, wherein the traffic parameters include
    a first combination including a cycle length of the traffic signal of each of the plurality of intersections, and
    a second combination including an offset of the traffic signal of each of the plurality of intersections.
  42. The system of claim 41, wherein the determining the traffic parameters based on the traffic model using the genetic algorithm and the dynamic programming includes:
    determining the first combination based on the traffic model and the genetic algorithm; and
    determining the second combination based on the traffic model, the first combination, and the dynamic programming.
  43. A non-transitory computer readable medium, comprising at least one set of instructions, wherein when executed by one or more processors of a computing device, the at least one set of instructions causes the computing device to perform a method, the method comprising:
    obtaining intersection information associated with a plurality of intersections of a route; and
    determining traffic parameters based on the intersection information and a traffic model, wherein:
    the traffic parameters are used to control traffic signals of the plurality of intersections; and
    the traffic model is configured to take into account at least one of:
    (a) a spillover situation associated with congestion at red light of each of the plurality of intersections,
    (b) an arterial green bandwidth of the whole route in combination with a link green bandwidth between two of the plurality of intersections, and
    (c) a vehicle arrival distribution in the route.
  44. A non-transitory computer readable medium, comprising at least one set of instructions, wherein when executed by one or more processors of a computing device, the at least one set of instructions causes the computing device to perform a method, the method comprising:
    obtaining a traffic model, wherein
    the traffic model relates to mix integer linear programming (MILP) ; and
    the traffic model is configured to take into account an arterial green bandwidth of a route including a plurality of intersections or a link green bandwidth between two of the plurality of intersections; and
    determining traffic parameters based on the traffic model using a genetic algorithm and dynamic programming, traffic signals of the plurality of intersections are controlled based on the traffic parameters.
PCT/CN2019/129541 2019-12-28 2019-12-28 Systems and methods for controlling traffic signals WO2021128365A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/129541 WO2021128365A1 (en) 2019-12-28 2019-12-28 Systems and methods for controlling traffic signals

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/129541 WO2021128365A1 (en) 2019-12-28 2019-12-28 Systems and methods for controlling traffic signals

Publications (1)

Publication Number Publication Date
WO2021128365A1 true WO2021128365A1 (en) 2021-07-01

Family

ID=76573580

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/129541 WO2021128365A1 (en) 2019-12-28 2019-12-28 Systems and methods for controlling traffic signals

Country Status (1)

Country Link
WO (1) WO2021128365A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113947925A (en) * 2021-10-20 2022-01-18 上海应用技术大学 Green wave evaluation method, device and equipment based on electronic police data
CN114280609A (en) * 2021-12-28 2022-04-05 上海恒岳智能交通科技有限公司 77GHz millimeter wave signal detection processing method and system
CN117253365A (en) * 2023-11-17 2023-12-19 上海伯镭智能科技有限公司 Automatic detection method and related device for vehicle traffic condition

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103927892A (en) * 2014-04-29 2014-07-16 山东比亚科技有限公司 Establishing method and working method for traffic overflowing coordinate control optimization model
WO2014157774A1 (en) * 2013-03-29 2014-10-02 한국해양과학기술원 Navigation aid simulator system
CN104809895A (en) * 2015-04-19 2015-07-29 北京工业大学 Adjacent intersection arterial road coordinate control model and optimization method thereof
CN105206070A (en) * 2015-08-14 2015-12-30 公安部交通管理科学研究所 Real-time road traffic signal coordination optimization control method and control system thereof
US20160027299A1 (en) * 2014-07-28 2016-01-28 Econolite Group, Inc. Self-configuring traffic signal controller
CN105702054A (en) * 2015-12-01 2016-06-22 中华电信股份有限公司 Method for maximizing multipath main road signal continuous bandwidth
CN105788306A (en) * 2016-04-20 2016-07-20 华南理工大学 Inlet individually passing type truck road green-wave coordination design method suitable for driving speed fluctuation
CN106448196A (en) * 2016-05-16 2017-02-22 江苏智通交通科技有限公司 Solution selection type trunk green wave configuration method and system
CN107591009A (en) * 2017-09-20 2018-01-16 广东振业优控科技股份有限公司 Based on the two-way green wave coordination control method for improving red light queue clearance constraints in MAXBAND models
CN107730885A (en) * 2017-09-21 2018-02-23 浙江大学 A kind of arterial street potential queuing spilling period determines method
WO2019028656A1 (en) * 2017-08-08 2019-02-14 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for traffic light timing
CN110444020A (en) * 2019-08-13 2019-11-12 软通动力信息技术有限公司 A kind of association crossing control method, device, system and storage medium

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014157774A1 (en) * 2013-03-29 2014-10-02 한국해양과학기술원 Navigation aid simulator system
CN103927892A (en) * 2014-04-29 2014-07-16 山东比亚科技有限公司 Establishing method and working method for traffic overflowing coordinate control optimization model
US20160027299A1 (en) * 2014-07-28 2016-01-28 Econolite Group, Inc. Self-configuring traffic signal controller
CN104809895A (en) * 2015-04-19 2015-07-29 北京工业大学 Adjacent intersection arterial road coordinate control model and optimization method thereof
CN105206070A (en) * 2015-08-14 2015-12-30 公安部交通管理科学研究所 Real-time road traffic signal coordination optimization control method and control system thereof
CN105702054A (en) * 2015-12-01 2016-06-22 中华电信股份有限公司 Method for maximizing multipath main road signal continuous bandwidth
CN105788306A (en) * 2016-04-20 2016-07-20 华南理工大学 Inlet individually passing type truck road green-wave coordination design method suitable for driving speed fluctuation
CN106448196A (en) * 2016-05-16 2017-02-22 江苏智通交通科技有限公司 Solution selection type trunk green wave configuration method and system
WO2019028656A1 (en) * 2017-08-08 2019-02-14 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for traffic light timing
CN107591009A (en) * 2017-09-20 2018-01-16 广东振业优控科技股份有限公司 Based on the two-way green wave coordination control method for improving red light queue clearance constraints in MAXBAND models
CN107730885A (en) * 2017-09-21 2018-02-23 浙江大学 A kind of arterial street potential queuing spilling period determines method
CN110444020A (en) * 2019-08-13 2019-11-12 软通动力信息技术有限公司 A kind of association crossing control method, device, system and storage medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113947925A (en) * 2021-10-20 2022-01-18 上海应用技术大学 Green wave evaluation method, device and equipment based on electronic police data
CN114280609A (en) * 2021-12-28 2022-04-05 上海恒岳智能交通科技有限公司 77GHz millimeter wave signal detection processing method and system
CN114280609B (en) * 2021-12-28 2023-10-13 上海恒岳智能交通科技有限公司 77GHz millimeter wave signal detection processing method and system
CN117253365A (en) * 2023-11-17 2023-12-19 上海伯镭智能科技有限公司 Automatic detection method and related device for vehicle traffic condition
CN117253365B (en) * 2023-11-17 2024-02-02 上海伯镭智能科技有限公司 Automatic detection method and related device for vehicle traffic condition

Similar Documents

Publication Publication Date Title
US11024163B2 (en) Systems and methods for monitoring traffic congestion
WO2021128365A1 (en) Systems and methods for controlling traffic signals
US10966051B2 (en) Systems and methods for performing location based actions
WO2018157777A1 (en) Systems and methods for recommending a pick-up location
EP3320370B1 (en) Systems and methods for determining a path of a moving device
AU2017411198B2 (en) Systems and methods for route planning
WO2020243937A1 (en) Systems and methods for map-matching
TWI713949B (en) Systems and methods for determining traffic conditions
US11676485B2 (en) Systems and methods for determining traffic information of a region
CN110998239B (en) System and method for determining a new path in a map
US20200141741A1 (en) Systems and methods for determining recommended information of a service request
US20200244744A1 (en) Systems and methods for determining an optimal transportation service type in an online to offline service
US20210088350A1 (en) Systems and methods for determining link topology relationships
US11004335B2 (en) Systems and methods for speed prediction
US20210088342A1 (en) Systems and methods for navigation services
CN112055867A (en) System and method for recommending personalized boarding location
CN113343128A (en) Method, device, equipment and storage medium for pushing information
WO2019228508A1 (en) Systems and methods for navigation based on intersection coding
WO2020237741A1 (en) Systems and methods for identifying closed road section
CN110888947B (en) Service request processing method and system
TW201933280A (en) Systems and methods for new road determination
WO2022087831A1 (en) Systems and methods for recommending points of interest
US20210021677A1 (en) Systems and methods for on-demand services
CN116750001A (en) Method and device for automatic driving

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19957085

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19957085

Country of ref document: EP

Kind code of ref document: A1