Dynamic vehicle parking allocation with user feedback
By receiving user feedback in a network equipped with sensors, creating a vehicle network and allocating parking points based on real-time information and user preferences, the problem of difficult to allocate vehicle parking points in real-time in the prior art is solved, and dynamic and user preference-optimized parking allocation is achieved.
Patent Information
- Application Number
- CN202211503428.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-11-29
- Filing Date
- 2022-11-28
- Publication Date
- 2025-04-11
- Estimated Expiration
- 2042-11-28
AI Technical Summary
The prior art is difficult to allocate vehicle parking points in real time in urban environments, especially when parking point availability is affected by real-time conditions.
By receiving user feedback in a network equipped with sensors, a vehicle network is created within a predefined threshold of an idle parking point and dynamically allocates idle parking points based on real-time information and user preferences.
It realizes dynamic allocation of parking points when a specific vehicle is approaching a parking point, ensures the best parking allocation for users, and uses existing vehicle sensors to detect idle parking points.
Smart Images

Figure CN116189469B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates generally to the field of computing, and more particularly to a system for dynamically allocating vehicle parking using user feedback in a sensor-equipped network. Background Art
[0002] Modern vehicles are becoming increasingly smarter than their predecessors. Many manufacturers have made these vehicles capable of connecting to the Internet (usually by utilizing cellular networks as well as satellites). In this way, a user can control the vehicle from anywhere in the world via an application on a mobile device or the World Wide Web. For example, a user can remotely start and / or unlock the vehicle by pressing a button. Such vehicles may also be equipped with GPS and sensors that can detect objects near the vehicle. For example, the vehicle can notify a user (e.g., a driver) that another vehicle is in the user's "blind spot." Summary of the invention
[0003] According to one embodiment, a method, computer system, and computer program product for dynamically allocating vehicle parking are provided. The embodiment may include receiving one or more preferences about parking from one or more users. The embodiment may also include, in response to determining that a detecting vehicle detects an idle parking spot, creating a network of vehicles within a predefined threshold of the idle parking spot. The embodiment may also include notifying each vehicle in the network of the idle parking spot. The embodiment may also include, in response to the notification, receiving one or more requests for the idle parking spot from one or more requesting vehicles. The embodiment may also include identifying real-time information associated with a road within the predefined threshold of the idle parking spot. The embodiment may also include allocating the idle parking spot to a specific requesting vehicle in the network of vehicles. The embodiment may also include displaying an indicator placed adjacent to the specific requesting vehicle to which the idle parking spot is allocated. BRIEF DESCRIPTION OF THE DRAWINGS
[0004] These and other objects, features and advantages of the present invention will become apparent from the following detailed description of exemplary embodiments of the present invention, which will be read in conjunction with the accompanying drawings. The various features of the accompanying drawings are not to scale, as the illustrations are intended to facilitate a clear understanding of the present invention by those skilled in the art in conjunction with the detailed description. In the drawings:
[0005] Figure 1 illustrates an exemplary networked computer environment in accordance with at least one embodiment;
[0006] Figure 2 A flowchart illustrating operations for dynamically allocating vehicle parking in a sensor-equipped network utilizing user feedback during a dynamic vehicle parking allocation process in accordance with at least one embodiment;
[0007] Figure 3 is a diagram illustrating a method according to at least one embodiment Figure 2 A diagram of the interactions between the solution components in a process;
[0008] Figure 4 is an exemplary diagram depicting a networked environment of a vehicle according to at least one embodiment;
[0009] Figure 5 According to at least one embodiment Figure 1 Functional block diagrams of the internal and external components of the computers and servers depicted in;
[0010] Figure 6 depicts a cloud computing environment according to an embodiment of the present invention; and
[0011] Figure 7 Abstract model layers according to an embodiment of the present invention are depicted. DETAILED DESCRIPTION
[0012] Detailed embodiments of the claimed structures and methods are disclosed herein; however, it should be understood that the disclosed embodiments are merely illustrative of the claimed structures and methods that may be embodied in different forms. However, the present invention may be embodied in many different forms and should not be construed as limited to the exemplary embodiments set forth herein. In the specification, details of well-known features and techniques may be omitted to avoid unnecessarily obscuring the presented embodiments.
[0013] It should be understood that the singular forms "a," "an," and "the" include plural referents unless the context clearly dictates otherwise. Thus, for example, reference to "a component surface" includes reference to one or more of such surfaces unless the context clearly dictates otherwise.
[0014] Embodiments of the present invention relate to the field of computing, and more particularly, to a system for dynamically allocating vehicle parking in a sensor-equipped network using user feedback. The exemplary embodiments described below provide a system, method, and program product for creating a network of vehicles within a predefined threshold of free parking spots, and correspondingly allocating free parking spots to specific vehicles based on real-time information and user preferences, etc. Thus, the present embodiments have the ability to improve GPS technology and mobile parking prediction applications by dynamically allocating parking spots to specific vehicles when the specific vehicle is located near the parking spot.
[0015] As mentioned above, modern vehicles are becoming more and more intelligent compared to previous vehicles. Many manufacturers enable these vehicles to be connected to the Internet (usually by utilizing cellular mobile networks and satellites). In this way, users can control vehicles from anywhere in the world via applications on mobile devices or the World Wide Web. For example, users can remotely start and / or unlock vehicles by pressing a button. Such vehicles can also be equipped with GPS and sensors that can detect objects near the vehicle. For example, the vehicle can notify the user (e.g., the driver) that another vehicle is in the user's "blind spot". In urban environments, it is often difficult to find parking spots and / or charging points (e.g., for electric vehicles) for vehicles. This problem is usually solved by mobile parking applications that estimate parking availability in a given area based on historical data. However, historical data is inflexible because the use of historical data cannot take into account real-time conditions that may affect parking availability, such as special events that make parking spots more difficult to find than usual. Therefore, there is an urgent need for a system that allocates parking spots to a particular vehicle in real time when the parking spot is close to the parking spot. Thus, embodiments of the present invention can provide advantages including, but not limited to, dynamically assigning a parking spot to a particular vehicle as it approaches a parking spot, ensuring optimal vehicle parking assignment with respect to user preferences, and utilizing existing vehicle sensors to detect vacant parking spots. The present invention does not require that all advantages need to be incorporated into every embodiment of the present invention.
[0016] According to at least one embodiment, when one or more users are riding in a vehicle, one or more preferences regarding parking may be received from the one or more users. In response to determining that the detecting vehicle detects an empty parking spot, a network of vehicles within a predefined threshold of the empty parking spot may be created so that each vehicle in the network of vehicles is notified of the empty parking spot. When one or more parking requests are received from one or more requesting vehicles in the network in response to the notification, real-time information associated with roads within the predefined threshold of the empty parking spot may be identified, so that the empty parking spot can be allocated to a specific requesting vehicle in the network of vehicles based on the real-time information and one or more preferences regarding parking. When allocating an empty parking spot to a specific requesting vehicle, an indicator placed adjacent to the specific requesting vehicle to which the empty parking spot is allocated may be displayed. According to at least one embodiment, additional feedback regarding one or more parking inconveniences may be received from one or more users. For example, an empty parking spot may be too small for a specific requesting vehicle.
[0017] The present invention may be a system, method and / or computer program product at any possible level of technical detail integration. The computer program product may include a computer-readable storage medium (or multiple media) having computer-readable program instructions thereon, which are used to cause a processor to perform various aspects of the present invention.
[0018] A computer-readable storage medium may be a tangible device capable of retaining and storing instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media includes the following: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device such as a punch card or a raised structure in a groove on which instructions are recorded, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium should not be interpreted as a temporary signal itself, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagated by a waveguide or other transmission medium (e.g., a light pulse by an optical fiber cable), or an electrical signal transmitted by a wire.
[0019] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to a corresponding computing / processing device, or downloaded to an external computer or external storage device via a network (e.g., the Internet, a local area network, a wide area network, and / or a wireless network). The network can include copper transmission cables, optical transmission fibers, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions to be stored in a computer-readable storage medium in the corresponding computing / processing device.
[0020] The computer-readable program instructions for performing the operation of the present invention can be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, configuration data for integrated circuits, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, and traditional process programming languages such as "C" programming languages or similar programming languages. The computer-readable program instructions can be executed completely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer and partially on a remote computer, or completely on a remote computer or server. In the latter case, the remote computer can 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 can be connected to an external computer (for example, using an Internet service provider through the Internet). In some embodiments, in order to perform various aspects of the present invention, the electronic circuit including, for example, a programmable logic circuit, a field programmable gate array (FPGA) or a programmable logic array (PLA) can execute the computer-readable program instructions by utilizing the state information of the computer-readable program instructions to personalize the electronic circuit.
[0021] Aspects of the present invention are described herein with reference to the flow chart and / or block diagram of the method, device (system) and computer program product according to embodiments of the present invention. It will be understood that each frame of the flow chart and / or block diagram and the combination of frames in the flow chart and / or block diagram can be implemented by computer-readable program instructions.
[0022] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device create a device for implementing the functions / actions specified in one or more boxes of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, which can guide the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable storage medium in which the instructions are stored includes an article of manufacture, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes of the flowchart and / or block diagram.
[0023] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, so that a series of operational steps are performed on the computer, other programmable apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable apparatus, or other device implement the functions / actions specified in one or more boxes of the flowchart and / or block diagram.
[0024] The flow chart and block diagram in the accompanying drawings show the architecture, function and operation of the possible implementation of the system, method and computer program product according to different embodiments of the present invention. In this regard, each box in the flow chart or block diagram can represent a module, segment or part of an instruction, which includes one or more executable instructions for realizing the specified logical function. In some alternative implementations, the function marked in the box may not occur in the order marked in the figure. For example, depending on the function involved, the two blocks shown in succession can actually be performed simultaneously or substantially simultaneously, or these blocks can sometimes be performed in reverse order. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be realized by a dedicated hardware-based system that performs a specified function or action or performs a combination of special hardware and computer instructions.
[0025] The following exemplary embodiments provide a system, method, and program product for creating a network of vehicles within a predefined threshold of free parking spots and accordingly assigning free parking spots to specific vehicles based on real-time information and user preferences.
[0026] See also Figure 1 , depicts an exemplary networked computer environment 100 according to at least one embodiment. The networked computer environment 100 may include a client computing device 102, a server 112, and an Internet of Things (IoT) device 118 interconnected via a communication network 114. According to at least one implementation, the networked computer environment 100 may include multiple client computing devices 102 and servers 112, only one of which is shown for simplicity of illustration.
[0027] The communication network 114 may include various types of communication networks, such as a wide area network (WAN), a local area network (LAN), a telecommunications network, a wireless network, a vehicle-to-vehicle (V2V) network, a public switched network, and / or a satellite network. The communication network 114 may include connections, such as wired, wireless communication links, or optical cables. It is understood that Figure 1 This only provides an illustration of one implementation and does not imply any limitations with regard to the environments in which different embodiments may be implemented. Many modifications may be made to the depicted environment based on design and implementation requirements.
[0028] According to one embodiment of the present invention, the client computing device 102 may include a processor 104 and a data storage device 106, which is capable of hosting and running a software program 108 and a dynamic parking allocation program 110A, and communicating with a server 112 and an IoT device 118 via a communication network 114. The client computing device 102 may be, for example, a mobile device, a phone, a personal digital assistant, a netbook, a laptop, a tablet computer, a desktop computer, or any type of computing device capable of running programs and accessing a network. As will be described with reference to Figure 5 As discussed, the client computing device 102 can include internal components 502a and external components 504a, respectively.
[0029] According to an embodiment of the present invention, the server computer 112 may be a laptop computer, a netbook computer, a personal computer (PC), a desktop computer, or any programmable electronic device or any programmable electronic device network capable of hosting and running the dynamic parking allocation program 110B and the database 116 and communicating with the client computing device 102 and the IoT device 118 via the communication network 114. Figure 5 As discussed, the server computer 112 may include internal components 502b and external components 504b, respectively. The server 112 may also operate in a cloud computing service model such as software as a service (SaaS), platform as a service (PaaS), or infrastructure as a service (IaaS). The server 112 may also be located in a cloud computing deployment model such as a private cloud, a community cloud, a public cloud, or a hybrid cloud.
[0030] In embodiments of the present invention where the communication network 114 is a V2V network, the dynamic parking allocation procedures 110A, 110B may be executed by vehicles within the V2V network itself, and no dedicated server, such as server 112, is required. Therefore, it will be appreciated that reference herein to server 112 is not intended to be limiting, and in embodiments of the present invention where the communication network 114 is a V2V network, the dynamic parking allocation procedures 110A, 110B may be executed by vehicles within the V2V network.
[0031] The IoT device 118 may include a vehicle, a plurality of sensors embedded in or external to the vehicle, such as cameras, light detection and ranging (Lidar), and / or any other sensors known in the art for detecting objects and distances to objects, which are capable of connecting to the communication network 114 and transmitting and receiving data with the client computing device 102 and the server 112.
[0032] According to the present embodiment, the dynamic parking allocation program 110A, 110B may be a program capable of performing the following operations: receiving one or more preferences regarding parking from one or more users, creating a network of vehicles within a predefined threshold of free parking spots, notifying each vehicle in the network of vehicles of the free parking spots, dynamically allocating the free parking spots to a particular vehicle when the vehicle is in close proximity to the free parking spots, ensuring optimal parking allocation of vehicles with respect to user preferences, and utilizing existing vehicle sensors to detect free parking spots. Figure 2 The dynamic parking allocation method is further explained in detail.
[0033] Reference now Figure 2 , depicts an operational flow chart for dynamically allocating vehicle parking in a sensor-equipped network using user feedback in a dynamic vehicle parking allocation process 200 according to at least one embodiment. At 202, the dynamic parking allocation program 110A, 110B receives one or more preferences regarding parking from one or more users. The one or more preferences may be received via a user interface (UI) on a display screen in a vehicle (e.g., an infotainment system in the vehicle). It is understood that in embodiments of the present invention, the user may be a human user or a non-human user. For example, the vehicle may be an autonomous vehicle that does not require input from a human user.
[0034] Examples of preferences include, but are not limited to, a maximum walking distance to a point of interest (POI), a preference for free or paid parking, a preference for covered or uncovered parking, the size of a parking spot, a preference for parking accessible to the disabled, a preference for street parking or off-street parking (e.g., a parking garage), and / or any other parking preferences desired by the user. According to at least one embodiment, one or more users may set additional preferences for parking spots with electric vehicle (EV) chargers for those vehicles with electric motors. One or more users may also specify the type and wattage of the power plug of the EV charger. Thus, based on the preferences of one or more users, a parking spot may be a parking spot with an EV charger or a parking spot without an EV charger. According to at least one other embodiment, one or more preferences may be customized by one or more users. For example, a user may prefer covered parking during severe weather conditions. In another example, a user may prefer a shorter maximum walking distance when it is cold outdoors or when there are delays due to traffic conditions. This real-time information about weather and temperature may be used to optimize the allocation of free parking spots, as described in more detail below with respect to step 212.
[0035] Then, at 204, the dynamic parking allocation program 110A, 110B determines whether the detection party vehicle detects an empty parking spot. As described above, the detection party vehicle can use multiple sensors to detect an empty parking spot. The multiple sensors can be embedded in the vehicle or outside the vehicle, and can include cameras, Lidar and / or any other sensors known in the art for detecting objects and object distances. The detection party vehicle can be a vehicle that is leaving a parking spot, or a vehicle that detects an empty parking spot when driving past an empty parking spot.
[0036] According to at least one embodiment, the dynamic parking allocation program 110A, 110B may also determine whether the free parking spot includes an EV charger when at least one of the one or more preferences indicates a need for an EV charger, as described above with respect to step 202 .
[0037] In response to determining that the detecting vehicle detects an empty parking spot (step 204, "yes" branch), the dynamic vehicle parking allocation process 200 proceeds to step 206 to create a network of vehicles within a predefined threshold of the empty parking spot. In response to determining that the detecting vehicle does not detect an empty parking spot (step 204, "no" branch), the dynamic vehicle parking allocation process 200 ends.
[0038] Then, at 206, the dynamic parking allocation program 110A, 110B creates a network of vehicles within a predefined threshold of free parking spots. The network of vehicles may be a vehicle-to-vehicle (V2V) communication network that is reconfigured when any vehicle outside the network enters the network and when any vehicle in the network leaves the network. For example, the network may be disbanded when there are no vehicles within a predefined threshold and restored when a vehicle enters the predefined threshold. The networked environment is Figure 4 is shown in and referenced below Figure 4 Described in more detail. The network can be created based on the topology of the roads within the network. For example, the predefined threshold in an urban environment where the roads are more closely arranged together in a grid pattern can be less than the predefined threshold in a suburban environment where the roads are more widely spaced. For example, the predefined threshold can be within one mile (i.e., 1.6 kilometers) from an empty parking spot. In another example, the predefined threshold can be within five miles (i.e., 8.05 kilometers) from an empty parking spot. It will be understood that the above examples are not intended to be limiting, and in embodiments of the present invention, the predefined threshold can be set to other distances.
[0039] Then, at 208, the dynamic parking allocation program 110A, 110B notifies each vehicle in the network of vehicles of the free parking spot. The notification may be sent by the detecting vehicle through the V2V communication network or via other peer-to-peer (P2P) communication techniques. Since the network is limited to a predefined threshold of free parking spots, vehicles outside the network (in Figure 4 is shown in and referenced below Figure 4 Description of further details) do not receive notifications.
[0040] According to at least one embodiment, the notification may be an audio notification that the vacant parking spot is available. In this embodiment, the audio notification may also include the specific location of the vacant parking spot. According to at least one other embodiment, the notification may be a text notification displayed on a display screen of the vehicle. Similarly, in this embodiment, the text notification may also include the specific location of the vacant parking spot. For example, the text notification or audio notification may state: "There is a vacant spot at the northwest corner of E. 81st Street and Lexington Avenue."
[0041] In response to the notification, the dynamic parking allocation program 110A, 110B receives one or more parking requests from one or more requesting vehicles in the network. Figure 4 The requesting vehicle is shown in FIG. 1 and is referenced below. Figure 4 The description of the requesting vehicle is described in more detail. According to at least one embodiment, the dynamic parking allocation program 110A, 110B can prompt one or more users to respond to the notification by asking one or more users whether they want to request an empty parking spot. According to at least one other embodiment, one or more users can submit these requests without being prompted to respond to the notification.
[0042] According to at least one embodiment, one or more users may submit a parking request via the UI. For example, a pop-up on the UI may have a "yes" button and a "no" button for whether the user wants to request an open parking spot. According to at least one other embodiment, the request may be an audio request. For example, the user may press a "talk button" in the vehicle and say "I would like to request parking at an open parking spot."
[0043] According to at least one other embodiment, when the vehicle is an autonomous vehicle, the autonomous vehicle can submit a parking request via the UI without input from a human user. For example, a navigation route programmed into the autonomous vehicle can guide the autonomous vehicle to a specific location, and the autonomous vehicle can submit a request when it is near an empty parking spot.
[0044] Subsequently, at 210, the dynamic parking allocation program 110A, 110B identifies real-time information associated with roads within a predefined threshold of an unoccupied parking spot. Examples of real-time information may include, but are not limited to, weather conditions (e.g., rain, snow, sleet, hail) within a predefined threshold of an unoccupied parking spot, outside temperatures within a predefined threshold, traffic conditions within a predefined threshold, and / or road closures within a predefined threshold. According to at least one embodiment, the real-time information may be identified based on one or more preferences of one or more users as described above with respect to step 202. For example, if a user sets a preference for a shorter maximum walking distance when it is cold outside or when there are delays due to traffic conditions, the dynamic parking allocation program 110A, 110B may emphasize these factors when allocating an unoccupied parking spot to a particular requesting vehicle, as described in more detail below with respect to step 212.
[0045] Then, at 212, the dynamic parking allocation program 110A, 110B allocates an empty parking spot to a specific requesting vehicle in the network of vehicles. The allocation is based on the real-time information described above with respect to step 210 and one or more preferences described above with respect to step 202. For example, if a user sets a preference for covered parking when it rains, a requesting vehicle transporting the user may not be allocated an uncovered empty parking spot. In another example, the user may set a maximum walking distance from a POI. In this example, a requesting vehicle transporting the user may not be allocated an empty parking spot that is farther than the maximum walking distance. As described above with respect to Figure 1 As described, the dynamic parking allocation procedure 110A, 110B can be executed by each vehicle in the V2V network. In this way, all vehicles in the V2V network can be consistent with the allocation and do not diverge from the allocation.
[0046] According to at least one embodiment, in the event that there are multiple requests for the same free parking spot, the free parking spot may be assigned to the requesting vehicle that is closest to the free parking spot at the time of the request. Alternatively, the free parking spot may be assigned to the requesting vehicle that has the highest priority for the free parking spot. For example, a requesting vehicle transporting an individual who needs a handicapped accessible parking spot may be given priority over other requesting vehicles in the network. According to at least one other embodiment, the free parking spots may be assigned on a first-come, first-served basis. For example, the requesting vehicle that first requested the free parking spot may be assigned to the free parking spot.
[0047] According to at least one other embodiment, the timestamp of the assignment may be stored in a database, such as database 116 (e.g., 4:30 p.m.). In this embodiment, the dynamic parking assignment program 110A, 110B may require a specific requesting vehicle assigned an empty parking spot to confirm successful parking within a specified time. For example, when a specific requesting vehicle assigned an empty parking spot does not confirm arrival at the empty parking spot within the specified time, the dynamic parking assignment program 110A, 110B may withdraw the assignment from the specific requesting vehicle and may reallocate the empty parking spot to one of the other requesting vehicles.
[0048] However, in the transition period between the allocated time and the actual parking in the free parking spot by the specific requesting vehicle, there is a chance that the free parking spot may no longer be free. This may be due to unreliable data from the detecting vehicle, or because another vehicle not participating in the network may have parked in the transition period before the specific requesting vehicle arrived. In the event that the free parking spot is occupied by another vehicle, the dynamic parking allocation program 110A, 110B returns to the initial state, in which the detecting vehicle is again tasked with finding a free parking spot.
[0049] Then, at 214, the dynamic parking allocation program 110A, 110B displays an indicator placed adjacent to the specific requesting vehicle that is assigned an empty parking spot. The indicator may be displayed on a display screen of the vehicle. Figure 4 As shown in the following Figure 4 The description of further details that the indicator placed adjacent to a particular requesting party vehicle can be a flag indicator displayed to all vehicles in the network of the vehicle. In this way, all vehicles in the network have the same information about the allocation and will not make the allocation divergent.
[0050] Then, at 216, the dynamic parking allocation program 110A, 110B receives additional feedback from one or more users regarding one or more parking inconveniences. The additional feedback may be received via the UI by text or audio. Examples of additional feedback include, but are not limited to, feedback that the free parking spot is too small, feedback that the free parking spot is occupied by a vehicle outside the network, and / or feedback that the free parking spot is blocked by a non-vehicle object (e.g., a cone or construction equipment). The additional feedback may be submitted manually by a human or automatically by a vehicle. The feedback may be used to determine the effectiveness of the allocation and to reconfigure the allocation parameters if necessary.
[0051] Reference now Figure 3 , showing a depiction according to at least one embodiment Figure 2 A diagram of the interactions between the solution components in a process. Figure 3In the embodiment, the on-board unit 302 includes a parking assistance system 304a, a road map 304b, and other systems 304c. The parking assistance system 304a may include parking spot detection and a distributed decision-making method for parking spot allocation. The parking assistance system 304a may communicate with a road map 304b (e.g., a map in a GPS system). The road map 304b may provide a topology of roads within a predefined threshold of free parking spots and allow routing to free parking spots. Other systems 304c may include parking requests from autonomous vehicles. According to at least one embodiment, a driver 306 (e.g., a human driver) may interact with the parking assistance system 304a of the on-board unit 302. Feedback may include parking requests and preferences from the driver 306 and / or other systems 304c. As described above with respect to Figure 2 As depicted, other vehicles 308 in the network of vehicles may have multiple onboard sensors 310 (e.g., cameras and / or Lidar) and short-range V2V communication devices 312. The onboard sensors 310 may be used for vacant parking spot detection, while the short-range V2V communication devices 312 allow direct communication between all vehicles in the network. Figure 3 As shown in FIG. 3 , onboard sensors 310 and short-range V2V communication devices 312 may communicate with a parking assist system 304 a of an onboard unit 302 .
[0052] Reference now Figure 4 , an exemplary diagram depicting a networked environment of a vehicle according to at least one embodiment is shown. Figure 4 In the example of FIG. 4 , a networked environment 402 may include at least one detecting vehicle 404 capable of detecting an empty parking spot 406, one or more member vehicles 408a, 408b, 408c (each of which may also serve as the detecting vehicle 404), and one or more requesting vehicles 410a, 410b. One or more other vehicles 412a, 412b, 412c may be located outside the networked environment 402 and not in communication with the vehicles 404, 408a-408c, 410a-410b in the networked environment 402. However, as described above with respect to Figure 2 As described, one or more other vehicles 412a, 412b, 412c may join the networked environment 402 based on a predefined threshold of whether the one or more other vehicles 412a, 412b, 412c enter an empty parking spot 406. The empty parking spot 406 may be assigned to a particular requesting vehicle 410b, as described above with respect to Figure 2In an embodiment of the present invention, a particular requesting vehicle 410b may be the “winner” among one or more requesting vehicles 410a, 410b requesting to park in an empty parking spot 406. A flag indicator 414 may be disposed adjacent to the particular requesting vehicle 410b and displayed to all vehicles 404, 408a-408c, 410a-410b in the networked environment 402.
[0053] Understandably, Figure 2-4 This merely provides an illustration of one implementation and does not imply any limitations on how different embodiments may be implemented.Many modifications may be made to the depicted environments based on design and implementation requirements.
[0054] Figure 5 According to an embodiment of the present invention Figure 1 102 and server 112. Figure 5 This is merely an illustration of one implementation and does not imply any limitations with regard to the environments in which different embodiments may be implemented. Many modifications may be made to the depicted environment based on design and implementation requirements.
[0055] Data processing systems 502, 504 represent any electronic device capable of executing machine-readable program instructions. Data processing systems 502, 504 may represent smart phones, computer systems, PDAs, or other electronic devices. Examples of computing systems, environments, and / or configurations that data processing systems 502, 504 may represent include, but are not limited to, personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, network PCs, small computer systems, and distributed cloud computing environments including any of the above systems or devices.
[0056] The client computing device 102 and the server 112 may include Figure 5. Each set of internal components 502 includes one or more processors 520, one or more computer-readable RAMs 522 and one or more computer-readable ROMs 524 on one or more buses 526, as well as one or more operating systems 528 and one or more computer-readable tangible storage devices 530. The one or more operating systems 528, software programs 108, and dynamic parking allocation program 110A in the client computing device 102 and the dynamic parking allocation program 110B in the server 112 are stored on one or more corresponding computer-readable tangible storage devices 530 for execution by one or more corresponding processors 520 via one or more corresponding RAMs 522 (which typically include cache memory). Figure 5 In the illustrated embodiment, each computer-readable tangible storage device 530 is a disk storage device of an internal hard drive. Alternatively, each computer-readable tangible storage device 530 is a semiconductor memory device such as ROM 524, EPROM, flash memory, or any other computer-readable tangible storage device capable of storing computer programs and digital information.
[0057] Each set of internal components 502a, 502b also includes a R / W drive or interface 532 for reading from and writing to one or more portable computer-readable tangible storage devices 538, such as CD-ROMs, DVDs, memory sticks, tapes, disks, optical disks, or semiconductor storage devices. Software programs, such as the dynamic parking allocation program 110A, 110B, may be stored on one or more of the respective portable computer-readable tangible storage devices 538, read via the respective R / W drive or interface 532, and loaded into the respective hard disk drive 530.
[0058] Each set of internal components 502a, 502b also includes a network adapter or interface 536, such as a TCP / IP adapter card, a wireless Wi-Fi interface card, a 3G or 4G wireless interface card, or other wired or wireless communication link. The software program 108 and the dynamic parking allocation program 110A in the client computing device 102 and the dynamic parking allocation program 110B in the server 112 can be downloaded from an external computer to the client computing device 102 and the server 112 via a network (e.g., the Internet, a local area network, or other wide area network) and a corresponding network adapter or interface 536. From the network adapter or interface 536, the software program 108 and the dynamic parking allocation program 110A in the client computing device 102 and the dynamic parking allocation program 110B in the server 112 are loaded into the corresponding hard disk drive 530. The network may include copper wires, optical fibers, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers.
[0059] Each set of external components 504a, 504b may include a computer display monitor 544, a keyboard 542, and a computer mouse 534. External components 504a, 504b may also include a touch screen, a virtual keyboard, a touch pad, a pointing device, and other human-computer interface devices. Each set of internal components 502a, 502b also includes a device driver 540 to connect to the computer display monitor 544, the keyboard 542, and the computer mouse 534. The device driver 540, the R / W driver or interface 532, and the network adapter or interface 536 include hardware and software (stored in the storage device 530 and / or the ROM 524).
[0060] It is understood in advance that although the present disclosure includes detailed descriptions about cloud computing, the implementation of the teachings recorded herein is not limited to a cloud computing environment. Instead, embodiments of the present invention can be implemented in conjunction with any other type of computing environment now known or later developed.
[0061] Cloud computing is a service delivery model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be quickly provisioned and released with minimal management effort or interaction with the service provider. The cloud model may include at least five characteristics, at least three service models, and at least four deployment models.
[0062] Features are as follows:
[0063] On-demand self-service: Cloud consumers can unilaterally and automatically provision computing capabilities, such as server time and network storage, as needed without requiring manual interaction with the service provider.
[0064] Wide Area Network Access: Capabilities are available over the network and accessed through standard mechanisms that facilitate use by heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs).
[0065] Resource pooling: A provider's computing resources are pooled to serve multiple consumers using a multi-tenant model, where different physical and virtual resources are dynamically allocated and reallocated based on demand. There is location independence in the sense that consumers typically do not control or know the exact location of the resources provided, but are able to specify the location at a higher level of abstraction (e.g., country, state, or data center).
[0066] Rapid elasticity: In some cases, the ability to scale out quickly and in quickly can be provisioned quickly and elastically. To the consumer, the capacity available for provisioning often appears to be unlimited and can be purchased in any quantity at any time.
[0067] Metered Services: Cloud systems automatically control and optimize resource usage by leveraging metering capabilities at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency to both providers and consumers of the utilized services.
[0068] The service model is as follows:
[0069] Software as a Service (SaaS): The capability provided to the consumer is to use the provider's applications running on the cloud infrastructure. The applications are accessible from a variety of client devices through a thin client interface such as a web browser (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure including the network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings.
[0070] Platform as a Service (PaaS): The capability provided to consumers is to deploy consumer-created or acquired applications onto cloud infrastructure, where the applications are created using programming languages and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including networks, servers, operating systems, or storage, but has control over the deployed applications and possible configuration of the application hosting environment.
[0071] Infrastructure as a Service (IaaS): The capabilities provided to consumers are processing, storage, networking, and other basic computing resources on which consumers can deploy and run arbitrary software, which may include operating systems and applications. Consumers do not manage or control the underlying cloud infrastructure, but have control over the operating system, storage, deployed applications, and possibly limited control over selected networking components (e.g., host firewalls).
[0072] The deployment model is as follows:
[0073] Private Cloud: The cloud infrastructure is operated only for the organization. It can be managed by the organization or a third party and can exist inside or outside the building.
[0074] Community cloud: The cloud infrastructure is shared by several organizations and supports a specific community with shared concerns (e.g., mission, security requirements, policies, and compliance considerations). It can be managed by the organization or a third party and can exist on-premises or off-premises.
[0075] Public cloud: Cloud infrastructure is available to the general public or large industrial groups and is owned by an organization that sells cloud services.
[0076] Hybrid cloud: A cloud infrastructure is a combination of two or more clouds (private, community or public) that remain a unique entity but are bound together by standardized or proprietary technologies that enable data and application portability (e.g., cloud bursting for load balancing between clouds).
[0077] The cloud computing environment is service-oriented, with a focus on statelessness, low coupling, modularity, and semantic interoperability. At the core of cloud computing is an infrastructure consisting of a network of interconnected nodes.
[0078] Reference now Figure 6 , depicts an illustrative cloud computing environment 60. As shown, the cloud computing environment 60 includes one or more cloud computing nodes 100, and local computing devices used by cloud consumers (such as, for example, personal digital assistants (PDAs) or cellular phones 64A, desktop computers 64B, laptop computers 64C, and / or automotive computer systems 64N) can communicate with the cloud computing nodes 100. The nodes 100 can communicate with each other. They can be physically or virtually grouped (not shown) in one or more networks, such as private clouds, community clouds, public clouds, or hybrid clouds, or combinations thereof, as described above. This allows the cloud computing environment 60 to provide infrastructure as a service, platform as a service, and / or software as a service, and cloud consumers do not need to maintain resources on local computing devices for these services. It is to be understood that Figure 6 The types of computing devices 64A-N shown in are intended for illustration only, and computing node 100 and cloud computing environment 60 may communicate with any type of computerized device over any type of network and / or network addressable connection (eg, using a web browser).
[0079] Reference now Figure 7 , shows a set of functional abstraction layers 700 provided by the cloud computing environment 60. It should be understood in advance that Figure 7 The components, layers, and functions shown in are intended to be illustrative only, and embodiments of the present invention are not limited thereto. As described, the following layers and corresponding functions are provided:
[0080] The hardware and software layer 6000 includes hardware and software components. Examples of hardware components include: mainframe 6100; server 6200 based on RISC (Reduced Instruction Set Computer) architecture; server 6300; blade server 6400; storage device 6500; and network and networking components 6600. In some embodiments, software components include network application server software 6700 and database software 6800.
[0081] Virtualization layer 7000 provides an abstraction layer from which the following examples of virtual entities can be provided: virtual servers 7100; virtual storage 7200; virtual networks 7300, including virtual private networks; virtual applications and operating systems 7400; and virtual clients 7500.
[0082] In one example, the management layer 8000 may provide the functionality described below. Resource provisioning 8100 provides dynamic procurement of computing resources and other resources for performing tasks within a cloud computing environment. Metering and pricing 8200 provides cost tracking when resources are used in a cloud computing environment, and bills or invoices for the consumption of these resources. In one example, these resources may include application software licenses. Security provides authentication for cloud consumers and tasks, as well as protection for data and other resources. The user portal 8300 provides access to the cloud computing environment for consumers and system administrators. Service level management 8400 provides cloud computing resource allocation and management so that the required service levels are met. Service level agreement (SLA) planning and fulfillment 8500 provides pre-scheduling and procurement of cloud computing resources in anticipation of future demand based on the SLA.
[0083] Workload layer 9000 provides examples of functionality that can take advantage of a cloud computing environment. Examples of workloads and functionality that can be provided from this layer include: mapping and navigation 9100; software development and lifecycle management 9200; virtual classroom instructional provision 9300; data analytics processing 9400; transaction processing 9500; and dynamic vehicle parking allocation with user feedback 9600. Dynamic vehicle parking allocation with user feedback 9600 can involve creating a network of vehicles within a predefined threshold of free parking spots so that free parking spots are allocated to specific vehicles based on real-time information and user preferences.
[0084] The description of various embodiments of the present invention has been presented for the purpose of illustration, but is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the described embodiments. The terms used herein are selected to best explain the principles of the embodiments, practical applications or technical improvements over technologies found in the marketplace, or to enable those of ordinary skill in the art to understand the embodiments disclosed herein.
Claims
1. A computer-based method for dynamically allocating vehicle parking, the method comprising: receiving one or more preferences regarding parking from one or more users; Determining whether the detecting party vehicle detects an empty parking spot; In response to determining that the detecting vehicle detects the free parking spot, creating a network of vehicles within a predefined threshold of the free parking spot, wherein the network is a vehicle-to-vehicle (V2V) communication network that is reconfigured when any vehicle outside the network enters the network and when any vehicle in the network leaves the network, wherein the predefined threshold is determined based on a topology of roads within the network; notifying each vehicle in the network of vehicles of the free parking spot; receiving one or more parking requests from one or more requesting vehicles in the network in response to the notification; identifying real-time information associated with a road within the predefined threshold of the free parking spot; allocating the vacant parking spot to a particular requestor vehicle in the network of vehicles based on the real-time information and the one or more preferences regarding parking, wherein in response to determining that at least one other vehicle outside the network is already occupying the vacant parking spot, causing the detecting vehicle to seek an alternative vacant parking spot; and An indicator is displayed that is placed adjacent to the specific requesting vehicle to which the vacant parking spot is assigned.
2. The computer-based method of claim 1 , further comprising: Additional feedback is received from the one or more users regarding the one or more parking inconveniences.
3. The computer-based method of claim 1, wherein: The predefined threshold is within one mile of the free parking spot.
4. The computer-based method of claim 1, wherein: The indicator placed adjacent to the particular requesting vehicle is a flag indicator that is displayed to all vehicles in the network of vehicles.
5. The computer-based method of claim 1, wherein: Determining whether the detecting vehicle detects the idle parking spot further includes: When at least one of the one or more preferences indicates that an electric vehicle (EV) charger is needed, it is determined whether the free parking spot includes the EV charger.
6. The computer-based method of claim 2, wherein: The additional feedback is selected from the group consisting of: feedback that the free parking spot is too small, feedback that the free parking spot is occupied by a vehicle outside the network, and feedback that the free parking spot is blocked by a non-vehicle object.
7. A computer system, comprising: One or more processors, one or more computer-readable memories, one or more computer-readable tangible storage media, and program instructions stored on at least one of the one or more computer-readable tangible storage media for execution by at least one of the one or more processors via at least one of the one or more computer-readable memories, wherein the computer system is capable of performing the steps of the method according to any one of claims 1 to 6.
8. A computer program product, the computer program product comprising: Program instructions which can be executed by a processor and can execute the steps of the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Dynamic parking navigation system used at inner part of parking lot
CN101789188A
Free parking space broadcasting system and method, vehicle and storage medium
CN110660236A
Intelligent parking method for automatic driving vehicle and intelligent control equipment
CN111696382A
Cooperative parking space search by a vehicular micro cloud
CN112102647A