System and method for distributed utility service execution
The multipurpose robot system addresses the challenge of short-distance delivery by providing autonomous or semi-autonomous vehicles that navigate urban environments, communicate with a fleet network, and adapt to obstacles, ensuring efficient and safe delivery of goods.
Patent Information
- Application Number
- JP2024180971
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2018-06-07
- Filing Date
- 2024-10-16
- Publication Date
- 2025-01-22
AI Technical Summary
Existing systems lack the ability to efficiently deliver goods over short distances with flexibility for both autonomous and semi-autonomous operations, particularly in urban environments, and require a system that can accommodate various delivery needs economically.
A multipurpose robot system that includes autonomous or semi-autonomous vehicles capable of navigating urban environments, communicating with a fleet network, and utilizing sensors to navigate obstacles, climb curbs and stairs, and adapt routes dynamically, while integrating with existing tracking systems and supporting various delivery items.
The system enables efficient, flexible, and safe delivery of goods over short distances, adapting to dynamic obstacles and environments, and supports various delivery items, including pharmaceuticals and food, while maintaining safety and economic efficiency.
Smart Images

Figure 2025010580000001_ABST
Abstract
Description
[Technical field]
[0001] The present teachings generally relate to multi-purpose services. For example, the present teachings may relate to assisted delivery of goods originating from distributed facilities to customers located near a distribution facility. What is needed is a system that can accommodate trips of various lengths and solve the problem of short distance assistance to customers. What is further needed is a system that can accommodate semi-autonomous and autonomous operation and can economically deliver multi-purpose services. Summary of the Invention [Means for solving the problem]
[0002] The multi-purpose system of the present teachings solves the problems set forth herein, as well as other problems, by one or a combination of the features set forth herein.
[0003] The system of the present teachings can be part of a fleet network of similar systems. The fleet network can also include vehicles such as trucks, planes, autonomous vehicles, and business facilities. All members of the fleet network can seamlessly communicate and share multi-purpose requirements, including, for example, but not limited to, navigation data, dynamic objects, alternative routes, and multi-purpose properties, customer locations, and destinations. The system of the present teachings can interface with existing tracking systems so that the fleet is seamlessly connected.
[0004] The multi-purpose robot of the present teachings can operate in an autonomous or semi-autonomous mode. The autonomous multi-purpose robot can interface with a network to control its movement without the assistance of an operator. The semi-autonomous multi-purpose robot can include technology that can receive and process input from an operator of the semi-autonomous multi-purpose robot. The input can, for example, but not limited to, override the autonomous control of the multi-purpose robot or can be taken into account or ignored when controlling the multi-purpose robot. The multi-purpose robot can include a set of sensors appropriate for localization of the multi-purpose robot. For example, when the multi-purpose robot is deployed in an environment that includes many other members of a platoon network, the multi-purpose robot can include a first number of sensors. In some configurations, for example, in an environment that includes a relatively small number of members of a platoon network, the multi-purpose robot can include a second number of sensors. The sensors can operate in conjunction with sensors associated with other members of the platoon network. In some configurations, the multi-purpose robot can include physical storage space sufficient to accommodate delivery items from a typical delivery origin, such as medicines, food, meals, and documents. The multipurpose robot can operate on city sidewalks and near and within buildings, among other locations. The multipurpose robot can include the ability to determine the current location and status of the multipurpose robot (localization), for example, but not limited to, using a base, sensors, external application data, operator input, beacons, and the physical orientation of the multipurpose robot. The multipurpose robot can plan a route to reach a desired destination, detect obstacles along the route, and dynamically determine specific actions for the multipurpose robot to take based on the route, current location, and obstacles. Obstacles can include, but are not limited to, dynamic (mobile) obstacles, such as, for example, but not limited to, pedestrians, vehicles, animals, and static obstacles, such as, for example, but not limited to, trash cans, sidewalks, trees, buildings, and potholes.The multi-purpose robot can accommodate map matching, which includes visually locating obstacles and matching them to other data, such as, for example, satellite data. The multi-purpose robot can determine preferred routes and routes to be avoided. In some configurations, the multi-purpose robot can climb curbs. In some configurations, the multi-purpose robot can climb stairs. The multi-purpose robot can achieve stabilized motion while on four wheels, including while climbing stairs. The multi-purpose robot can maintain a preselected distance, which may vary along the route, from obstacles, such as, for example, but not limited to, buildings. The multi-purpose robot of the present teachings can be driven by an operator seated on a seating feature of the multi-purpose robot. In some configurations, the multi-purpose robot can take the form of a wheelchair and thus can legally traverse sidewalks in all jurisdictions. The multi-purpose robot can accommodate operators with disabilities and can include carrying capacity for, for example, but not limited to, pizza and medicine. In some configurations, the multipurpose robot can comply with the rules of the road to maintain the safety of the multipurpose robot, the operator of the multipurpose robot (when present), and people and obstacles encountered by the multipurpose robot. The rules can include, for example, but are not limited to, what to do when encountering an obstacle and what to do when crossing a road. For example, the rules can include prohibitions on climbing over people or objects and proceeding into unsafe locations. The rules can also include prohibitions on stopping in unsafe locations, such as in the middle of an intersection. In general, safety protocols can be established and learned by the multipurpose robot of the present teachings.
[0005] A multipurpose robot of the present teachings can serve many purposes. A multipurpose robot of the present teachings can be called to assist an individual in carrying a heavy object, for example, to a bus stop. In some configurations, a multipurpose robot of the present teachings can be called to escort an individual from one location to another, watching for threats and occurrences of anomalies. In some configurations, a multipurpose robot of the present teachings can be called by a mobile device to a location, which may change between the call and the meeting of the multipurpose robot and the mobile device. A multipurpose vehicle can transport an item from one location to another, for example, to the residence of a person who has ordered a medication from a pharmacy. A multipurpose robot can communicate with pedestrians and vehicles, for example, by gestures, and provide cognitive feedback.
[0006] In some configurations, the multipurpose robot of the present teachings can travel at least 15 miles at 16 miles per hour on a single battery charge. The multipurpose robot of the present teachings can use GPS, road signs, stereo cameras, cell phone repeaters, smart beacons with steerable RF beams that can be directed to the multipurpose robot along a desired route, IMU data between beacons, and other beacon data to help the multipurpose robot recognize and traverse a desired route. In some configurations, at least one autonomous multipurpose robot of the present teachings can be coupled, for example, electronically, with at least one semi-autonomous multipurpose robot. The batteries can include quick-swap / fast-charge batteries. In some configurations, the batteries can be protected from theft. The batteries can be, for example, locked, or they can include an identification number that is required to activate the batteries.
[0007] The multipurpose robot of the present teachings can accommodate the number and type of sensors necessary for the functionality of the multipurpose robot. For example, when the multipurpose robot operates in an urban area, it can expect to receive real-time data related to its travel path from other members of the fleet network, such as, for example, but not limited to, beacons and bases. Thus, when the multipurpose robot operates in an urban area, it can include a sensor package appropriate for that environment. The same multipurpose robot can include a sensor package appropriate for that environment and possibly different from the urban area sensor package when operating in an area that includes fewer fleet members. Sensors can be integrated with the multipurpose robot of the present teachings. The sensors can access and / or collect street / building / curb data, and can include, for example, but not limited to, visual sensors, LIDAR, radar, ultrasonic sensors, and audio sensors, as well as data from GPS, Wi-Fi, and radio towers, commercial beacons, and painted curbs. The visual sensors can include, for example, stereoscopic visual sensors, which can enable object classification and stoplight classification. In some configurations, the visual sensor can detect curbs. Curb detection can be simplified by painting the curbs with a substance that may include, but is not limited to, reflective materials and colors. The curbs can also be painted with a conductive material that may trigger detection by an appropriate sensor mounted on a fleet member such as a multipurpose robot. LIDAR can enable the creation of a point cloud representation of the multipurpose robot's environment and can be used for obstacle avoidance, object classification, and mapping / localization. The map can contain static objects within the environment. Localization provides information about the location of static objects, which can be useful in recognizing dynamic objects. Audio and / or ultrasonic sensors can be used to detect the presence of, for example, but not limited to, vehicles, pedestrians, crosswalk signals, and animals, enabling collision avoidance and semi-autonomous driving. Ultrasonic sensors can enable calculation of the distance between the multipurpose robot and the nearest object.In some configurations, the multi-purpose robot can accommodate repositioning of sensors on the multi-purpose robot, for example, sensors can be positioned to accommodate variable placement of storage containers on the multi-purpose robot.
[0008] In some configurations, vehicles such as, for example, but not limited to, trucks and autonomous vehicles can transport the multi-purpose robots of the present teachings near their starting and destination locations, retrieve the multi-purpose robots, and move them to, for example, storage, charging, and service areas. With respect to trucks, in some configurations, when the multi-purpose robot may enter the truck, its batteries can be removed and replaced with fully charged batteries so that the multi-purpose robot can continue its service. The truck can include the capability to swap batteries and charge them. In some configurations, empty storage compartments can also be loaded onto the delivery truck, and the multi-purpose robot can be sent out of the truck to perform further deliveries. The multi-purpose robot and truck can wirelessly locate each other. A dispatching mechanism can link the truck with the service and batteries and the multi-purpose robots that need them. The truck includes at least one ramp to pick up and drop off the multi-purpose robots of the present teachings.
[0009] In some configurations, the movement of the truck and multi-purpose robot of the present teachings can be coordinated to minimize one or more of service costs, service times, and occurrences of stranded multi-purpose robots. Service costs may include fuel for the truck, battery costs for the multi-purpose robot, and maintenance / replacement costs for the truck and multi-purpose robot. The truck can include loading and unloading ramps that can accommodate continuous retrieval and disembarking of the multi-purpose robot. The truck can be parked at a convenient location, and the multi-purpose robot of the present teachings can perform service in conjunction with the truck. In some configurations, the truck and multi-purpose robot can be dynamically routed to meet at a location, and the location can be selected based at least on, for example, but not limited to, the amount of time it would take for a fleet member to reach the location, the availability of parking at the location, and routing efficiency. In some configurations, the multi-purpose robot of the present teachings can be moved from location to location depending on where they are most needed, for example, by the truck. A daily schedule can control where the multi-purpose robot of the present teachings is transported. For example, a truck can pick up the multi-purpose robot of the present teachings when it completes its service and / or when its battery needs to be charged and / or when it requires inspection. The multi-purpose robot can automatically stay at its final service location until a truck arrives and picks it up. A truck can be used to transport the multi-purpose robot of the present teachings from a station, such as a store, where the goods and services are purchased, to, for example, a nursing home where the goods and services are to be delivered. The multi-purpose robot of the present teachings can be dropped off, for example, at the nursing home, at which point the multi-purpose robot can deliver the goods and services. In some configurations, a first robot of the multi-purpose robot of the present teachings can deliver parcels to a truck, and the parcels can be transferred from the first robot of the multi-purpose robot to the truck.The parcel can be picked up by a second robot of the multipurpose robot of the present teachings, which is destined for a delivery destination of the parcel. The multipurpose robot of the present teachings can be deployed from a mobile truck or other mobile vehicle.
[0010] In some configurations, an autonomous vehicle can be equipped with control mechanisms and hardware that can house a multi-purpose robot of the present teachings. An autonomous vehicle can be more universal and adaptable in urban settings than a truck. For example, a multi-purpose robot of the present teachings can receive goods to be delivered, call a nearby autonomous vehicle, travel to meet the vehicle, enter the vehicle, and become docked within the vehicle. The battery of the multi-purpose robot of the present teachings can be charged during the delivery trip by the autonomous vehicle. As part of a fleet, the autonomous vehicle can access service information regarding the multi-purpose robot from which the call originated, and can navigate the multi-purpose robot of the present teachings to a service destination.
[0011] In some configurations, at least one semi-autonomous multipurpose robot can be associated with at least one autonomous multipurpose robot. The semi-autonomous multipurpose robot and the autonomous multipurpose robot can wirelessly communicate with each other and maintain synchronous behavior when desired. In some configurations, a group of multipurpose robots can form a secure ad-hoc network, whose participation can change as the autonomous multipurpose robots enter and leave associations with the semi-autonomous multipurpose robots. The ad-hoc network can communicate with a fleet network. In some configurations, the multipurpose robots can communicate through standard electronic means, such as by Wi-Fi, text, email, and phone. In some configurations, the multipurpose robots can share characteristics of the route the group will travel on by each individually measuring wheel rotation and inertia values and sharing that data. A group of multipurpose robots of the present teachings can be arranged to meet up on a truck. Arrangements can be made, for example, by placing a cell phone call to a dispatcher. A dispatcher, which may be automatic or semi-automatic, can locate the nearest truck of the group of multi-purpose robots of the present teachings and route the truck to the location of the group. In some configurations, a drop request can be generated by one or more multi-purpose robots of the group and transmitted electronically to a truck that comes within Wi-Fi and / or ad-hoc network range of the group of multi-purpose robots. In some configurations, the group of multi-purpose robots can be in persistent electronic communication with the fleet of trucks, can monitor their whereabouts, and can call the nearest truck and / or a truck with the appropriate specifications, such as size and loading / unloading ramps, for example. In some configurations, calling one or more of the multi-purpose robots of the group of the present teachings can automatically involve calling a multi-purpose robot with the correct size storage compartment for the parcel and the multi-purpose robot that is geographically closest to the collection point for the parcel.
[0012] In some configurations, the multi-purpose robot can include storage locations for items to be delivered and can track the size of the storage containers on each multi-purpose robot as well as the size of the contents of the storage container. The multi-purpose robot can receive the size of the package and determine if the package can fit within any available storage locations in the fleet of multi-purpose robots of the present teachings. The storage locations can be compartmentalized for security and safety of the delivered goods contents. Each compartment can be secured separately and the size of the compartment can vary according to the size of the parcel. Each compartment can include a sensor that can, for example, read the address on the parcel and ensure that the parcel is the correct size for the storage container and the multi-purpose robot. For example, a pharmacy may require several small compartments to store prescription orders, while a restaurant may require a pizza-sized compartment. In some configurations, the multi-purpose robot can include an operator seat and the storage compartments can be located, for example, behind, above, beside, in front of, and / or below the operator. The storage containers can be sized according to the current parcel load. For example, the storage container can include interlockable features that can allow for an internal size of the storage container to be increased or decreased. The storage container can also include exterior features that can allow for flexible mounting of the storage container onto a chassis of a multipurpose robot of the present teachings.
[0013] In some configurations, the multipurpose robot may include a storage compartment and may advantageously accommodate long-term storage, e.g., overnight storage, which may be provided when the multipurpose robot is secured in an enclosure proximate to a charging station. The storage compartment may actively or passively self-identify and may include fraud and content status information. The storage compartment may automatically interface with a system controller and provide information, such as, but not limited to, fraud information and content status information. In some configurations, the storage compartment may include information that may be used when commanding the multipurpose robot by the controller. In some configurations, when the contents in the storage compartment are tagged with a destination, the storage compartment may sense where the contents are to be delivered and may instruct the controller to drive the multipurpose robot to the destination. In some configurations, the storage compartment may transmit the destination information to other members of the delivery vehicle fleet. In some configurations, the contents in the storage compartment may protrude from the storage compartment. The sensor can detect the orientation of the storage compartment and can maintain the storage compartment at a preselected angle relative to the ground surface.
[0014] In some configurations, the storage compartment can include temperature / humidity control that can accommodate long-term storage of goods for delivery, such as, but not limited to, overnight storage. In some configurations, storage of food and medicines, for example, can be accommodated by temperature and / or humidity control within the storage compartment of the present teachings. In some configurations, the storage compartment can include insulation and ice packs, dry ice, or other commercially available ice packs, such as Model S-12762 available from ULINE® (Pleasant Prairie, WI). In some configurations, the storage compartment can include an electrically powered refrigerator and / or heater. In some configurations, the electrically powered heater or cooler may be powered by the AC mains. In some configurations, power can be provided by the multipurpose robot's batteries.
[0015] The storage compartments can include externally and internally mounted sensors. The storage compartment sensors can detect when they are touched and moved and can provide that information to a controller running within the multipurpose robot. In some configurations, the storage compartment sensors can monitor environmental factors such as, for example, but not limited to, temperature and humidity and shock and vibration loads. In some configurations, the storage compartment sensors can detect the size and weight of the package and can read information embedded in or on the package. The information can be embedded, for example, in an RFID tag or encoded in a barcode or QR code. The multipurpose robot can compare the information embedded in or on the package to a manifest associated with the delivery and can issue an alert and / or alarm if the information does not match the manifest.
[0016] In some configurations, one or more of the storage compartments can be mounted above an operator of the multipurpose robot of the present teachings. In some configurations, the storage compartment above the operator can be mounted on a telescopic device and raised and lowered to allow convenient access to the contents of the storage compartment while at the same time allowing convenient entry and exit of the operator onto the multipurpose robot of the present teachings. The telescopic device can include articulation. The storage compartments can be mounted on positioning rails and can be positioned, for example, front to back, up to down, and left to right. The storage compartments can be automatically maintained in a particular orientation by a controller.
[0017] In some configurations, the storage containers can be positioned in various orientations and in various locations relative to each other and the chassis of the multipurpose robot. The storage compartment can house a weather barrier to protect the operator of the multipurpose robot from inclement weather. In some configurations, curtains attached to the elevated storage container can protect the operator and possibly the storage container from inclement weather. Portions of the storage container can be articulated to accommodate storage and removal of items and to accommodate fixed placement of the storage container. In some configurations, the multipurpose robot can include active control of the storage container, for example, to maintain a specific orientation of the storage container. Active control of the orientation of the contents within the storage container is enabled when the contents of the storage container must remain in a specific orientation to prevent destruction of the contents. In some configurations, each side of the contents of the storage container can be identified to allow proper orientation of the contents.
[0018] In some configurations, sensors may be mounted at various locations on / in the storage container to notify the multi-purpose robot, for example, when the storage container may undergo an undesired collision. In some configurations, the storage container and / or the manifest may inform the multi-purpose robot to adjust its acceleration according to a preselected threshold. Based on data collected from the wheel counters and IMU of the multi-purpose robot, which may determine the current acceleration rate of the multi-purpose robot, the multi-purpose robot may limit commands to the drive wheels and / or brakes to adjust its acceleration according to a preselected threshold.
[0019] In some configurations, one of the storage containers can be mounted behind the operator and can be at a height greater than or equal to about 2 feet. The storage container can include a snap-on feature that can allow for installation of the storage container on the chassis in various configurations. The storage container can receive and process information from an electronic application, for example, an open / close command from a wireless device. In some configurations, once a parcel is loaded into the storage container, the multi-purpose robot can identify the individual who loaded the parcel, for example, by taking a picture, and associate the identification with the parcel. In some configurations, the storage container of the present teachings can be 30-40 inches by 2 feet. In some configurations, the multi-purpose robot can automatically poll the parcel it is carrying, automatically call any needed assistance, and deliver the parcel in a timely manner. The storage container mounted can be interchangeable with a storage container of a suitable size for a particular delivery and can be affixed to the multi-purpose robot.
[0020] A multi-purpose robot of the present teachings can be docked proximate to a location where package delivery may occur. In some configurations, the docking station can include an opening in a building where the packages are located. Packages can be deposited in a station in the building and near the opening and can be automatically sorted. The sorted packages can be automatically loaded onto a multi-purpose robot of the present teachings through one of the openings. Sensors and / or transponders can detect the contents of the package.
[0021] The multi-purpose robot of the present teachings can include technology to collect payment for the service and retain a payment record. The multi-purpose robot can notify the service target that the service is completed, for example, by a cell phone notification or text. The service target can move toward the multi-purpose robot to avoid difficult terrain, such as stairs. In some configurations in which the service provided is a delivery service, the storage compartment can include built-in RFID circuitry that can be destroyed when the delivery storage location is opened. An RFID scanner can be used to reveal that the storage container has been opened. To maintain privacy, the contents of the storage container can be moved to a secure location before opening. The multi-purpose robot can receive information about the service target, such as, for example, biometric information, to identify that the service is being delivered to the correct target. For example, the multi-purpose robot can secure the storage container until the target is recognized, for example, by facial recognition technology. The multi-purpose robot can receive personal information, such as credit card and cell phone information, to unlock the storage container, for example. In some configurations, the multipurpose robot can include biometric sensors, such as facial and / or fingerprint sensors, that can detect, for example, whether the contents of the storage container are associated with the person attempting to collect the contents. In some configurations, the multipurpose robot can combine the correct location information with the punching of a correct code or other form of identification to unlock the storage container.
[0022] The multi-purpose robot of the present teachings can detect fraud and therefore unsafe and dangerous conditions with respect to the multi-purpose robot. In some configurations, the multi-purpose robot can detect changes in the center of mass, which may indicate fraud. Adding or subtracting weight to or from the multi-purpose robot can change the center of mass. The multi-purpose robot can include an IMU and can measure the location of the center of mass based on the vehicle's response to changes in acceleration and lean angle of the multi-purpose robot. A change in mass can indicate that the multi-purpose robot may be compromised. In some configurations in which a load is being transported, the multi-purpose robot can detect a load that does not contain sufficient identification to link the load with the delivery target. For example, the multi-purpose robot can detect an unauthorized load because the authorization code for the load does not match the expected code, or the RFID code is incorrect or missing, or there is a mismatch between the load's actual weight and the weight listed on the manifest. The multi-purpose robot can generate an alert, the type of which can depend on the possible causes of the suspected fraud. Some alerts can be directed to state authorities, while others can be directed to electronic records that can be accessed by the multipurpose robots of the present teachings, trucks, smart beacons, and other possible participants in the services provided, potentially through the fleet network. Following an error condition, the multipurpose robot can automatically or semi-automatically steer the multipurpose robot to a safe location, such as a charging station. In some configurations, the contents of the storage container can be secured.
[0023] The beacon can communicate with the multipurpose robot, and the status of the multipurpose robot and its current activity can be provided to the beacon and therefore the fleet network. In some configurations where the multipurpose robot delivers goods, the beacon can communicate with the contents of a storage container, and a list and status of the contents of the storage container can be made available to other members of the delivery fleet through the fleet network. All members of the fleet can be known by each other. If the multipurpose robot of the present teachings detects that it has been compromised, it can initiate a safety procedure, where its secure electronic information can be backed up and destroyed, and the contents of its storage container can be securely locked.
[0024] To facilitate mapping of a route traveled by the multipurpose robot between a start point and an end point, whether the start point is a fixed location, such as a pickup station associated with a brick-and-mortar origin, or whether the start point is a moving location, such as a truck or pedestrian, the multipurpose robot can start from a static map. In some configurations, the static map can be derived from an open source map. In some configurations, the fleet system can include at least one server that can manage static map activity. In some configurations, the multipurpose robot can maintain a local version of the static map from which it can operate during updates from the version maintained by the server. In some configurations, the multipurpose robot can augment the static map with indications of congested areas based on information, such as, but not limited to, other fleet vehicles, cell phone applications, obstacles such as trees and trash cans, pedestrians, heat map data, and Wi-Fi signals. The static map can be used in conjunction with the multipurpose robot sensor data and fleet data to infer the location of dynamic objects. The multipurpose robot can collect navigation data and avoid congested areas while en route to the target. The multipurpose robot can, for example, detect bases and beacons disposed at various locations along the route, such as, but not limited to, road corners and road signs at road corners. The bases and beacons are members of the fleet network and therefore can share data with, and potentially receive information from, the fleet network. The bases and beacons can be disposed and maintained by any entity, including, but not limited to, the source entity of the item, the company managing the delivery, and the city in which the delivery is occurring. The multipurpose robot can receive information from bases and beacons disposed at road intersections and, in some configurations, can transmit information to bases and beacons configured to receive the information.The multipurpose robot can also sense safety features such as traffic lights and walk / no walk indicators, which may generate audio, visual alerts, other types / frequency of signals, and / or alert generation methods all together. The multipurpose robot can process traffic light data and comply with pre-established road rules that have been learned. For example, the multipurpose robot can be taught to stop when a traffic light is red. Vehicles at intersections can be detected. Route issues such as closures can also be detected. The multipurpose robot can update the fleet network database with information such as, but not limited to, traffic light information, which may enhance the mapping of available multipurpose robots and fleet networks. In some configurations, the multipurpose robot can utilize information collected by body cameras worn by operators of members of the fleet network.
[0025] The semi-autonomous multipurpose robot of the present teachings can receive input from an operator during each journey and can use the input to record the location of obstacles, such as, but not limited to, stairs, crosswalks, doors, ramps, escalators, and elevators. From these data and real-time and / or semi-real-time data, maps and dynamic navigation routes can be created and updated. The autonomous multipurpose robot can use the maps for current and future deliveries. For each step in the dynamic navigation route, the multipurpose robot of the present teachings can determine the obstacles in the navigation route, the amount of time required to complete the desired movement that the multipurpose robot will need to perform to follow the navigation path, the space that will be occupied by static and dynamic obstacles in the path at that time, and the space required to complete the desired movement. With respect to obstacles, the multipurpose robot can determine whether an obstacle is present in the path, the size of the obstacle, whether the obstacle is moving, and the speed and direction the obstacle is moving and accelerating. The dynamic navigation route can be updated during navigation. A path with the fewest obstacles can be selected, and dynamic route modifications can be made if the selected route becomes suboptimal while the multipurpose robot is in transition. For example, if a group of pedestrians moves to a location within the selected route, the route can be modified to avoid the group of pedestrians. Similarly, if repairs are initiated on a sidewalk, for example, the route can be modified to avoid the construction zone. Stereo cameras and point cloud data can be used to locate and avoid obstacles. Distances from various obstacles can be determined by real-time sensing techniques such as, for example, but not limited to, planar LIDAR, ultrasonic sensor arrays, radar stereo imaging, monocular imaging, and VELODYNE LIDAR®.In some configurations, the processing of sensor data by the multipurpose robot can enable the multipurpose robot to determine, for example, whether it is within a tolerance envelope in a planned path and whether obstacles in a navigation path behave as predicted in a dynamic navigation path. The multipurpose robot can adapt to journeys of various lengths and solve problems of short-distance delivery of services.
[0026] The information can be derived, for example, from commercially available navigation tools that provide online mapping of pedestrians. For example, but not limited to, commercially available navigation tools such as GOOGLE® Maps, BING® Maps, and MAQUEST® Maps can provide pedestrian map data that can be combined with obstacle data to generate a clear path from origin to destination as the multipurpose robot proceeds from one location to another. Crowd-sourced data can augment both the navigation and obstacle data. Operators proceeding in the vicinity of product origins and target service areas can be invited to wear cameras and upload data to the multipurpose robot and / or upload applications that can track, for example, but not limited to, movement speed, congestion, and / or user annotations. Operators can perform the job of smart sensors, providing, for example, but not limited to, situational awareness and preferred speed to the multipurpose robot. In some configurations, the operator-operated system of the present teachings can generate training data for interaction with people, including, but not limited to, acceptable approach distances, following distances, and passing distances. For example, but not limited to, cell phone type data, such as obstacles and their speeds and local conditions, can be made available to the fleet's database, enabling detailed and accurate navigation maps. The multipurpose robot can include technology that can determine areas in which the GPS signal is below a desired threshold, so that other technologies can be used to maintain communication. Sidewalks can be painted with various substances, such as, for example, but not limited to, luminescent substances, that can be detected by sensors on the multipurpose robot. The multipurpose robot can use data gathered from sensing the substances to create and augment navigation maps.
[0027] Wheel rotation and inertial measurement data can be combined when creating a map to determine dead reckoning locations. Sensor data, such as data from visual sensors, can be used to determine dead reckoning locations. A multipurpose robot of the present teachings can receive information about its route from information collected by the truck, and members of the fleet can be used to create / refine pedestrian maps. The truck can include a portable multipurpose robot, and the truck operator can collect additional data and map pedestrian delivery through the use of body cameras and localization sensors. Visual, audible, and thermal sensing mechanisms can be used on the truck in conjunction with the operator's movements. The multipurpose robot can utilize optimized and / or preferred route information collected by the truck and operator. The multipurpose robot can include pedestrian routes on a desired navigation map.
[0028] In some configurations, the multi-purpose robot can independently learn navigation paths and share navigation information with other members of the fleet network. In some configurations, an operator can select at least one optimal navigation route. The multi-purpose robot can also include a camera that can be used to augment the navigation map. For example, but not limited to, areas that may be located inside buildings, such as doors, stairs, and elevators, as well as routes that are restricted to pedestrians, may be candidates for body camera data collection. On subsequent routes to the same location, the doors, stairs, and elevators may be navigable by the multi-purpose robot, which may, for example, bypass pedestrian-only routes. The multi-purpose robot can follow a planned route. The multi-purpose robot can receive commands from an operator and / or be self-commanded based on a desired route. Steering and location assistance can be provided by navigation tools combined with obstacle avoidance tools. The multi-purpose robot can accommodate ADA access regulations, including, but not limited to, spatial requirements for the egress and ingress requirements of the multi-purpose robot.
[0029] In some configurations, the dynamic navigation path can be updated by the multi-purpose robot as it determines whether an obstacle can be breached and / or avoided. For example, the multi-purpose robot can determine whether an obstacle, such as a curb, rock, or pothole, can be driven over or around it. The multi-purpose robot can determine whether an obstacle can be expected to move off the navigation path and whether there is a way the multi-purpose robot can make progress along the planned navigation path. In some configurations, the multi-purpose robot of the present teachings can accommodate intersecting roads with or without traffic signals, curbs, dynamic obstacles, and complete path obstacles. The multi-purpose robot can include routing techniques that can avoid congested areas based on, for example, but not limited to, current congestion information from other multi-purpose robots of the present teachings, crowd-sourced congestion information, and historical congestion information from other multi-purpose robots and trucks of the present teachings. Historical congestion information can include, but is not limited to include, days and times of congestion from past crossings in the same area by the multipurpose robot of the present teachings, as well as congestion data and times from delivery truck speeds. Dynamic navigation routes can be created based on current route data and maps. The multipurpose robot can include training techniques in which data from an operator traveling a route can inform the multipurpose robot of the present teachings how to interact with moving obstacles and how to behave in an environment with moving obstacles. In some configurations, data from a fleet driver traveling a route can be used as training data for machine learning on how to interact with moving people or in the environment of moving people. In some configurations, heat maps of pedestrian traffic can be used to update pedestrian density data. In some configurations, route planning can take into account desired transition times, estimated transition times, the amount of space that obstacles occupy on the planned route, and the amount of space required by the multipurpose robot.The multipurpose robot can determine its status with respect to a planned route and can track the movements of obstacles within the planned route.
[0030] Each form of sensor data can provide a unique view of its surroundings, and fusing various types of sensor data can help to specifically identify obstacles, including dynamic objects. Using these data, the dynamic objects can be classified by methods including, but not limited to, semantic segmentation. Once identified, predicting the future location of the dynamic objects can be accomplished by semantic scene segmentation, which can color code the scene based on the object type. The future location of the dynamic objects can also be predicted by creating a behavior model of the dynamic objects, which can be processed by the multipurpose robot of the present teachings. Neural networks, Kalman filters, and other machine learning techniques can also be used to train the multipurpose robot of the present teachings to understand and react to its surroundings. When the multipurpose robot encounters an obstacle, such as a pedestrian, with which it may interact, the multipurpose robot can be trained to, for example, stop before encountering the pedestrian, greet the pedestrian, and avoid hitting the pedestrian. In some configurations, planar LIDAR, visual sensors, and ultrasonic sensors can be used to detect pedestrians. A critical distance around a pedestrian can be defined based on the distance required to stop, for example, based on sensor delays and social norms. A socially acceptable interaction between a multipurpose robot and a human may be defined by data from a user-driven system that interacts with the human. In some configurations, data collected by the user-driven system can be used to train a neural network in an autonomous system that can control the multipurpose robot's interaction with the human. In some configurations, to avoid obstacles such as humans and vehicles when crossing a road, radar and / or LIDAR can be combined with a stereo camera for long-range visibility and to reliably identify obstacles and create a crossing strategy. In some configurations, the multipurpose robot of the present teachings can wirelessly communicate with available electronic sources such as elevators and pedestrian crosswalks. Smart beacons can be used for this purpose.When an obstacle, such as a construction zone, is encountered, a multipurpose robot of the present teachings can purposefully navigate the work zone, informing other fleet members of the extent of the obstacle and allowing the other fleet members an opportunity to avoid the obstacle. Neural networks running within the multipurpose robot can train the multipurpose robot to recognize intersection signals and, for example, to cross when it is safe.
[0031] The multipurpose robot can receive information from smart beacons strategically placed along its travel path. In some configurations, the information from the smart beacons can be encrypted and / or the information exchanged between the multipurpose robot of the present teachings and the smart beacons can be encrypted to protect the multipurpose robot from malicious hacking. In some configurations, the smart beacons can include cameras, radar, and / or LIDAR that can be used to map the local area. In some configurations, the smart beacons can vary in complexity and specificity. For example, smart beacons that can manage network communications can be placed in areas where network members are likely to need communication services. Smart beacons that include mapping cameras can be placed in locations where mapping is required and can be moved from location to location depending on the current need. In some configurations, the smart beacons can include data transfer hotspot capabilities or other networking capabilities to enable the fleet network of the present teachings to communicate to fleet members. In some configurations, the smart beacons can be aware of the travel path and know the next navigation steps required for the multipurpose robot to reach its desired destination. The smart beacon can receive at least a portion of the path and / or destination of the multipurpose robot from the server. The smart beacon can identify the multipurpose robot of the present teachings, possibly through secure wireless exchange of identification information, possibly through visual and / or audible identification techniques, or by other means. The secure exchange of messages can include, for example, encryption and other forms of protection against man-in-the-middle threats, third party application threats, and malicious / erroneous application threats, such as in-flight message modification, eavesdropping, and denial of service. The multipurpose robot can receive navigation information from the smart beacon, including auto-tracking, triangulation, and pointing signals.The multi-purpose robot can receive current mapping information from the smart beacon, including, but not limited to, congestion areas and route closures, and the multi-purpose robot can transmit the information it collects to the smart beacon. The multi-purpose robot can make the beacon information available to other multi-purpose robot fleet members from time to time, for example, but not limited to, during package delivery and / or pickup. The multi-purpose robot can receive information from the smart beacon that can be used to correct the IMU dead reckoning and wheel turn navigation of the multi-purpose robot. In some configurations, the multi-purpose robot can navigate entirely through information received from the smart beacon. For example, in a congestion area, it is possible that some of the sensors located on the multi-purpose robot of the present teachings may be blocked. Sensors on the smart beacon, for example, LIDAR sensors, can provide navigation information to the multi-purpose robot of the present teachings that the multi-purpose robot itself cannot obtain with its on-board sensors. Sensors located on either the multipurpose robot, truck, and / or smart beacon of the present teachings can provide current congestion information from cameras and / or thermal imaging to form a heat map. The multipurpose robot can receive commands from a steerable RF or laser beacon, which can be controlled by another member of the fleet, a central control location, or the multipurpose robot itself. In some configurations, the multipurpose robot can be configured with a minimum number of sensors if the data is planned to be collected by other fleet members. The multipurpose robot can receive these sensor data, e.g., heat maps, and recognize the location of obstacles, possibly groups of dynamic obstacles, in a potential travel route. In areas without beacons of various types, an exploration multipurpose robot with a partial or full complement of sensors can read out the navigation and congestion data and make the data accessible to the multipurpose robot of the present teachings as it travels the explored route to deliver goods and services.The location system can provide its sensor data and analysis to a central service, a cloud-based storage area, smart beacons, and / or another location system, the multipurpose robot, and / or other members of the fleet, for example, trucks or vehicles. Beacons can be used to facilitate data communication between fleet members and can be used to improve location accuracy. In some configurations, beacons can include wireless access points that generate signals, such as Wi-Fi and RF signals, that can be used to help navigate the multipurpose robot in areas where global positioning techniques are inadequate. The present invention provides, for example, the following: (Item 1) 1. A method for executing a service over a general-purpose network along a dynamically created path from at least one starting point to at least one execution point, the method comprising: (a) automatically receiving, by at least one multi-purpose vehicle, at least one proposed route between the at least one starting point and the at least one multi-purpose execution point from the multi-purpose network including a plurality of system collectors, the at least one proposed route being limited to at least one of a set of preselected types of routes, the plurality of system collectors including the at least one multi-purpose vehicle; (b) accessing, by the at least one utility vehicle, historical data associated with the at least one proposed route, at least a portion of the historical data being collected by at least one of the plurality of system collectors; and (c) receiving, by the at least one utility vehicle, real-time data about the proposed route, the real-time data being collected by at least one of the plurality of system collectors; and (d) receiving, by the at least one utility vehicle, the proposed route updated by the utility network, the update being based on the historical data and the collected real-time data; and (e) navigating the updated proposed route with the at least one utility vehicle; and (f) repeating (c) through (e) until the at least one utility vehicle reaches the at least one utility execution point; and A method comprising: (Item 2) (f) authenticating, by the at least one multi-purpose vehicle, the updated proposed route and annotating the updated proposed route as the at least one multi-purpose vehicle navigates the updated proposed route; (g) providing, by the at least one multi-purpose vehicle, the authenticated, annotated, updated proposed path to the multi-purpose network; and The method of claim 1, further comprising: (Item 3) 2. The method of claim 1, further comprising accessing, by the at least one utility vehicle, historical data and the real-time data from a communication network, the communication network including the plurality of system collectors, the plurality of system collectors sharing data through the communication network. (Item 4) The authenticating and annotating step comprises: receiving, by the at least one utility vehicle, visually collected information from a driver of the at least one utility vehicle; The method according to item 1, comprising: (Item 5) 2. The method of claim 1, wherein the historical data includes data from multiple sources. (Item 6) 2. The method of claim 1, wherein the general-purpose network comprises a server. (Item 7) 7. The method of claim 6, wherein the historical data and the updated suggested routes are maintained by the server. (Item 8) A multi-purpose execution system for delivering goods from at least one starting point to at least one multi-purpose execution point, the multi-purpose execution system comprising: a plurality of system collectors, the system collectors forming a communication network, the system collectors accessing historical data associated with a proposed route between the at least one starting point and the at least one multi-purpose execution point, the plurality of system collectors including at least one multi-purpose vehicle, the at least one multi-purpose vehicle including at least one sensor and at least one storage container, the at least one storage container storing the goods, the historical data including vehicle data previously collected along the proposed route, the plurality of system collectors collecting real-time data about the proposed route before the at least one multi-purpose vehicle navigates the proposed route and while the at least one multi-purpose vehicle navigates the proposed route, and at least one of the plurality of system collectors updating the proposed route based at least on the vehicle data, the historical data, and the real-time data; a processor that continuously updates the updated proposed route as the at least one utility vehicle navigates the updated proposed route from the at least one starting point to the at least one utility execution point based at least on the historical data, the real-time data, and the at least one sensor; A multi-purpose execution system comprising: (Item 9) 9. The multi-purpose execution system of claim 8, wherein the processor executes within the at least one multi-purpose vehicle. (Item 10) 9. The multi-purpose execution system of claim 8, wherein the processor is executed within a server. (Item 11) 9. The multi-purpose execution system of claim 8, wherein the plurality of system collectors comprises at least one autonomous vehicle. (Item 12) 9. The multi-purpose execution system of claim 8, wherein the plurality of system collectors comprises at least one semi-autonomous vehicle. (Item 13) 9. The multipurpose execution system of claim 8, wherein the plurality of system collectors comprises at least one beacon positioned along the updated proposed route, the at least one beacon transmitting and receiving data via the communication network. (Item 14) 9. The multi-purpose execution system of item 8, wherein the plurality of system collectors comprises at least one beacon positioned along the updated proposed route, the at least one beacon providing base point information to the multi-purpose execution system. (Item 15) 9. The multi-purpose execution system of claim 8, wherein the plurality of system collectors comprises at least one vehicle operating on a city sidewalk. (Item 16) 9. The multi-purpose execution system of claim 8, wherein the plurality of system collectors comprises at least one vehicle operating on local roads. (Item 17) 9. The multi-purpose execution system of claim 8, wherein the at least one multi-purpose vehicle is equipped with at least one location determination subsystem that detects a current location and status of the at least one multi-purpose vehicle based at least on the historical data and the real-time data. (Item 18) 9. The multi-purpose execution system of claim 8, wherein the at least one multi-purpose vehicle is equipped with at least one location determination subsystem that detects a current location and status of the at least one multi-purpose vehicle based at least on the historical data. (Item 19) 9. The multipurpose execution system of claim 8, wherein the plurality of system collectors comprises at least one wireless access point. (Item 20) 9. The multi-purpose execution system of claim 8, wherein the at least one multi-purpose vehicle is equipped with an obstacle subsystem that locates at least one obstacle in the updated proposed path, and the obstacle subsystem updates the updated proposed path when the at least one obstacle is discovered. (Item 21) 21. The multi-purpose execution system of claim 20, wherein the at least one multi-purpose vehicle comprises a preferred route subsystem that determines at least one preferred path between the at least one starting point and the at least one multi-purpose execution point based at least on the historical data and the real-time data, and the preferred route subsystem determines at least one avoidable path between the at least one starting point and the at least one multi-purpose execution point based at least on a number of the at least one obstacle in the updated proposed path. (Item 22) 9. The multi-purpose execution system of claim 8, wherein the at least one multi-purpose vehicle comprises a road obstacle climbing subsystem that detects at least one road obstacle, the road obstacle climbing subsystem commands the at least one multi-purpose vehicle to traverse the at least one road obstacle, and the road obstacle climbing subsystem commands the at least one multi-purpose vehicle to maintain balance and stability while traversing the at least one road obstacle. (Item 23) 23. The multi-purpose execution system according to item 22, wherein the road obstacle includes a curb. (Item 24) 23. The multi-purpose execution system according to item 22, wherein the road obstacle includes a step. (Item 25) 9. The multi-purpose execution system of claim 8, wherein the at least one multi-purpose vehicle comprises a stair climbing subsystem that detects at least one stair, the stair climbing subsystem commands the at least one multi-purpose vehicle to move relative to and traverse the at least one stair, and the stair climbing subsystem commands the at least one multi-purpose vehicle to achieve stabilized operation while traversing the at least one stair. (Item 26) 9. The multi-purpose executive system of claim 8, wherein the at least one multi-purpose vehicle comprises a seating feature to accommodate an operator of the at least one multi-purpose vehicle. (Item 27) 9. The multi-purpose executive system of claim 8, wherein the at least one multi-purpose vehicle comprises a wheelchair. (Item 28) 9. The multi-purpose execution system of item 8, wherein the processor includes a rule compliance subsystem that accesses navigation rule information from at least one of the historical data, the real-time data, and the at least one sensor, the rule compliance subsystem commands the at least one multi-purpose vehicle to navigate according to at least the navigation rule information, and the system collector learns the navigation rule information as the system collector operates and interacts with the updated proposed navigation route. (Item 29) 30. The multi-purpose execution system of claim 28, wherein the processor includes a training subsystem that creates and accesses data associated with interactions between the at least one multi-purpose vehicle and the at least one obstacle. (Item 30) 29. The multi-purpose execution system of claim 28, wherein the training subsystem comprises a neural network. (Item 31) 9. The multi-purpose execution system of claim 8, wherein the at least one multi-purpose vehicle comprises a grouping subsystem that commands at least one second vehicle of the at least one multi-purpose vehicle to follow a first vehicle of the at least one multi-purpose vehicle, the grouping subsystem maintaining a coupling between the first multi-purpose vehicle and the at least one second multi-purpose vehicle. (Item 32) 32. The multi-purpose execution system of claim 31, wherein the coupling comprises an electronic coupling. (Item 33) 9. The multi-purpose running system of claim 8, wherein the at least one multi-purpose vehicle comprises at least one battery, the battery including a fast-charging feature, the fast-charging feature accommodating a minimal amount of non-operating time of the at least one multi-purpose vehicle. (Item 34) 9. The multi-purpose operating system of claim 8, wherein the at least one multi-purpose vehicle comprises at least one battery, the battery including a quick-change feature, the quick-change feature accommodating a minimal amount of non-operational time of the at least one multi-purpose vehicle. (Item 35) Item 34. The multi-purpose running system of item 33, wherein the at least one battery is provided with a locking feature to lock the at least one battery to the at least one utility vehicle, the locking feature including a security feature to enable removal of the at least one battery. (Item 36) a sensor subsystem for processing data from the at least one sensor, the at least one sensor comprising: at least one thermal sensor for detecting a living organism; at least one camera for sensing moving objects; at least one laser sensor providing a point cloud representation of an object, the laser sensor sensing a distance to an obstacle; at least one ultrasonic sensor for sensing a distance to the obstacle; at least one radar sensor for sensing the speed of the obstacle and the weather and traffic volume proximate to the at least one utility vehicle; a sensor subsystem including: a sensor fusion subsystem that fuses data from a plurality of the at least one sensor, the sensor fusion subsystem classifying the at least one obstacle; a behavior model subsystem for predicting a future position of the at least one obstacle; 9. The multi-purpose execution system of item 8, further comprising: (Item 37) a sensor subsystem for processing data from the at least one sensor, the at least one sensor comprising: at least one thermal sensor for sensing a dynamic object; at least one camera for sensing moving objects; at least one laser sensor providing a point cloud representation of an object, the laser sensor sensing a distance to an obstacle; at least one ultrasonic sensor for sensing a distance to the obstacle; at least one radar sensor transmitting the speed of the obstacle and the weather and traffic volume proximate to the at least one utility vehicle; a sensor subsystem including at least two of: a sensor fusion subsystem that fuses data from a plurality of the at least one sensor, the sensor fusion subsystem classifying the at least one obstacle; a behavior model subsystem for predicting a future position of the at least one obstacle; 9. The multi-purpose execution system of item 8, further comprising: (Item 38) The multi-purpose execution system described in item 8, wherein the multiple system collectors include at least one delivery truck that transports the goods to the at least one multi-purpose vehicle, and the at least one delivery truck transports the at least one multi-purpose vehicle to at least one delivery location. (Item 39) Item 39. The multi-purpose running system of item 38, wherein the at least one delivery truck enables exchange of at least one used battery with at least one charged battery in the at least one multi-purpose vehicle. (Item 40) Item 39. The multi-purpose execution system of item 38, wherein the at least one delivery truck includes at least one battery charging feature. (Item 41) Item 39. The multi-purpose execution system of item 38, wherein the at least one delivery truck is equipped with at least one lifting mechanism to enable loading and unloading of the at least one multi-purpose vehicle. (Item 42) The at least one delivery truck comprises: at least one loading lift feature to allow loading of said at least one utility vehicle; at least one unloading lift feature to enable unloading of said at least one utility vehicle; Equipped with Item 39. The multi-purpose execution system of item 38, wherein the delivery truck is capable of moving during the loading and unloading. (Item 43) 9. The multipurpose execution system of item 8, wherein the plurality of system collectors comprises at least one beacon that senses at least one obstacle, the at least one beacon enables communication between the plurality of system collectors, and the at least one beacon protects data exchanged between the at least one beacon and the plurality of system collectors from fraud. (Item 44) 9. The multi-purpose execution system of claim 8, wherein the plurality of system collectors comprises at least one air vehicle that transports the goods to the at least one delivery truck. (Item 45) 22. The multi-purpose execution system of item 21, further comprising a dispatch mechanism that couples the at least one delivery truck with the at least one multi-purpose vehicle, the dispatch mechanism tracking battery life within the at least one multi-purpose vehicle, and the dispatch mechanism enabling the at least one multi-purpose vehicle to respond to calls. (Item 46) 1. A method of using a network of system collectors, the network of system collectors including at least one utility vehicle, each of the network of system collectors including at least one processor, the network of system collectors for moving goods from a commercial establishment to a consumer location, the method comprising: (a) receiving, by at least one receiving processor of the at least one processor, a request from the commercial establishment to deliver the item to the consumer location from a location associated with the commercial establishment; (b) determining, by the at least one receiving processor, a selection criterion for selecting at least one optimal utility vehicle of the at least one utility vehicle based at least on a status of the at least one utility vehicle; and (c) directing, by the at least one receiving processor, at least one delivery processor associated with the at least one optimal utility vehicle to command the at least one optimal utility vehicle to travel to the commercial establishment to receive the goods; (d) associating, by the at least one delivery processor, at least one security means with the goods when the goods are stored within the at least one optimal utility vehicle, the at least one security means requiring security information to release the goods; (e) determining, by the at least one delivery processor, a suggested route between the commercial establishment and the consumer location based at least on historical information received from the network of system collectors; (f) updating the proposed route based at least on information received in real time from the network of system collectors by the at least one dispatch processor; (g) commanding, by the at least one dispatch processor, the at least one optimal utility vehicle to proceed along the updated proposed route; (h) repeating (f) and (g) until the at least one optimal utility vehicle reaches the consumer location; and (i) verifying, by said at least one delivery processor, said security information; (j) releasing, by the at least one delivery processor, the merchandise at the consumer location if the security information matches; A method comprising: (Item 47) 47. The method of claim 46, wherein the status includes a location of the utility vehicle. (Item 48) 1. A multipurpose execution system for moving goods from at least one first location to at least one second location, comprising: a network of system collectors including at least one multi-purpose vehicle; At least one processor associated with each of the system collectors, the at least one processor including at least one receiving processor and at least one delivery processor, the at least one receiving processor: receiving at least one request from the at least one first location and delivering the item to the at least one second location; selecting at least one optimal utility vehicle of the at least one utility vehicle based at least on a status of the at least one utility vehicle; instructing at least one delivery processor associated with the at least one optimal utility vehicle to command the at least one optimal utility vehicle to travel to the at least one first location to receive the item, the at least one delivery processor comprising: associating the goods with at least one security means when the goods are stored in the at least one optimal utility vehicle, the at least one security means requiring security information to release the goods; determining a proposed route between the at least one first location and the at least one second location based at least in part on historical information received from the network of system collectors; commanding the at least one optimal utility vehicle to proceed along the proposed route until the at least one optimal utility vehicle reaches the at least one second location; verifying the received security information; Releasing said merchandise at said consumer location; To carry out At least one processor running A system comprising: (Item 49) The at least one delivery processor comprises: (a) updating the proposed route based at least on information received in real time from the network of system collectors; (b) commanding the at least one optimal utility vehicle to proceed along the updated proposed route; and (c) repeating (a) and (b) until the at least one optimal utility vehicle reaches the at least one second location; and Item 49. The system according to item 48, comprising: (Item 50) Item 49. The system of item 48, wherein a truck transports the utility vehicle to the at least one first location and then to a location proximate to the at least one second location. (Item 51) Item 49. The system of item 48, wherein the utility vehicle is equipped with a light package including directional gesture lights and vehicle visibility lights. (Item 52) 1. An autonomous multipurpose vehicle, comprising: Multi-purpose vehicle movement direction information; Multi-purpose vehicle travel speed information; Multi-purpose vehicle surrounding area and Gesture Light including A gesture device; at least one sensor accessible by the autonomous multipurpose vehicle, the at least one sensor collecting sensor data; An autonomous multipurpose vehicle comprising: (Item 53) Item 53. The multi-purpose vehicle of item 52, wherein the gesture device comprises at least one anthropomorphic feature. (Item 54) Item 54. The multi-purpose vehicle of item 53, wherein the at least one anthropomorphic feature enables face-to-face encounters with pedestrians based on the sensor data. (Item 55) Item 53. The multi-purpose vehicle of item 52, wherein the at least one sensor comprises a local sensor integrated with the multi-purpose vehicle. (Item 56) Item 53. The multi-purpose vehicle of item 52, wherein the at least one sensor comprises a remote sensor not integrated with the multi-purpose vehicle. (Item 57) 1. A method for delivering goods from at least one first location to at least one second location, comprising: (a) coupling, by at least one of a plurality of multi-purpose vehicles, the at least one of the plurality of multi-purpose vehicles with other vehicles of the plurality of multi-purpose vehicles over a communications network; (b) receiving, by at least one of a plurality of utility vehicles, the item from the at least one first location into at least one of the plurality of utility vehicles; (c) determining, by at least one of a plurality of utility vehicles, a proposed route between the at least one first location and the at least one second location; (d) enabling, by at least one of a plurality of multi-purpose vehicles, at least one of the plurality of multi-purpose vehicles to follow the other of the plurality of multi-purpose vehicles along the proposed route until the at least one of the multi-purpose vehicles reaches the at least one second location; (h) enabling, by at least one of a plurality of utility vehicles, said other vehicles of said plurality of utility vehicles to deliver said goods to said second location; A method comprising: (Item 58) (e) updating, by at least one of the plurality of utility vehicles, the proposed route based at least on information received in real time from the at least one utility vehicle and the at least one other utility vehicle; (f) enabling, by at least one of a plurality of utility vehicles, the at least one utility vehicle to travel along the updated proposed route; and (g) repeating (e) and (f) until the at least one utility vehicle reaches the at least one second location; and 58. The method of claim 57, further comprising: (Item 59) 58. The method of claim 57, wherein the binding comprises a physical binding. (Item 60) 58. The method of claim 57, wherein the bond comprises an electronic bond. (Item 61) 58. The method of claim 57, wherein the coupling includes physical and electronic coupling. (Item 62) 58. The method of claim 57, wherein the plurality of multi-purpose vehicles comprises at least one semi-autonomous multi-purpose vehicle. (Item 63) 58. The method of claim 57, wherein the plurality of multi-purpose vehicles comprises at least one autonomous multi-purpose vehicle. (Item 64) Item 64. The method of item 63, wherein the at least one autonomous multipurpose vehicle is capable of following a route different from the proposed route. (Item 65) 58. The method of claim 57, further comprising transmitting the update information to a network of the plurality of utility vehicles. (Item 66) 58. The method of claim 57, further comprising summoning one of the plurality of multi-purpose vehicles, wherein the summoned vehicle of the plurality of multi-purpose vehicles is closest to the at least one first location, and the summoned vehicle of the plurality of multi-purpose vehicles is in operation. (Item 67) Item 63. The method of item 62, wherein the at least one semi-autonomous vehicle comprises storage locations above, behind, below, or to the sides of the at least one semi-autonomous vehicle, the storage locations having different sizes. (Item 68) 58. The method of claim 57, further comprising summoning one of the plurality of utility vehicles having a storage container large enough to accommodate the item. (Item 69) 70. The method of claim 68, further comprising using the storage container for overnight storage at a charging station. (Item 70) 58. The method of claim 57, further comprising accepting electronic payment for the item. (Item 71) Item 69. The method of item 68, further comprising unlocking the storage container using a combination of the code and the location of the storage container. (Item 72) 58. The method of claim 57, further comprising detecting fraud by a change in the center of gravity of one of the plurality of utility vehicles. (Item 73) 58. The method of claim 57, further comprising generating an alert if fraudulent activity is detected in one of the plurality of utility vehicles. (Item 74) 74. The method of claim 73, further comprising storing the alert in a storage device common to the plurality of networked utility vehicles. (Item 75) 58. The method of claim 57, further comprising automatically steering one of the plurality of utility vehicles towards a safe location if tampering with one of the plurality of utility vehicles is detected. (Item 76) Item 58. The method of item 57, further comprising initiating a safety procedure when one of the plurality of utility vehicles detects tampering. (Item 77) 70. The method of claim 68, wherein the storage container comprises a preselected size. (Item 78) 1. A storage container for storing goods to be delivered from a commercial establishment to a consumer location, said storage container comprising: at least one compartment for holding the goods, the goods being secured within the at least one compartment, the goods being destined for a plurality of unrelated consumers, and the at least one compartment being modifiable in size; at least one processor managing the at least one compartment, the at least one processor transmitting information about the item to a multi-purpose vehicle network associated with the storage container; At least one feature that enables loading of the storage container in response to a multi-purpose vehicle associated with the multi-purpose vehicle network, the at least one feature adjusting an orientation of the storage container; at least one environmental barrier associated with the storage container; at least one sensor for detecting tampering with the at least one compartment, the at least one sensor receiving lock / unlock information; at least one storage device that records information about the goods; an RFID circuit configuration, the RFID circuit configuration being disabled when the storage container is opened; Equipped with A storage container that allows for the transport of fragile goods, the storage container allowing for restricted access until opening at a consumer location. (Item 79) 1. A method for executing a proposed route for delivering goods from at least one first location to at least one second location by at least one member of a multipurpose execution system, comprising: accessing, by said at least one member, a map including at least one static obstacle; updating, by the at least one component, the map with the proposed route to form a route map; updating, by the at least one member, the proposed route based at least on the at least one static obstacle; and and continually collecting, by the at least one component, real-time data associated with the updated proposed route as the multi-purpose execution system navigates the updated proposed route. continually updating, by the at least one component, the proposed route based at least on the real-time data; and when there are changes, by the at least one component, continually updating the route map with the real-time data and the updated proposed route as the multi-purpose execution system navigates the updated proposed route; inferring, by the at least one member, at least one characteristic of at least one dynamic object based at least on the updated route map; providing, by the at least one component, the updated route map and the estimated at least one characteristic to the multi-purpose execution system; A method comprising: (Item 80) 80. The method of claim 79, further comprising continually updating the route map with base point data. (Item 81) 80. The method of claim 79, further comprising continually updating the route map with traffic light and pedestrian information. (Item 82) 80. The method of claim 79, further comprising continually updating the updated proposed route based at least on at least one road rule associated with the updated proposed route. (Item 83) 80. The method of claim 79, further comprising continually updating the route map with information provided by an operator within the multi-purpose execution system. (Item 84) 80. The method of claim 79, further comprising continually calculating the amount of time and space required to navigate the updated proposed route. (Item 85) 80. The method of claim 79, wherein the map comprises at least one commercially available map. (Item 86) 80. The method of claim 79, further comprising persistently updating the updated route map with crowd-sourced information. (Item 87) 80. The method of claim 79, further comprising continually updating the updated route map with information derived from the surface coating. (Item 88) 80. The method of claim 79, further comprising locating the at least one member on the updated route map by processing data from wheel rotations and inertial measurement data of the at least one member. (Item 89) 80. The method of claim 79, wherein the multi-purpose execution system comprises a plurality of the at least one member. (Item 90) 81. The method of claim 80, further comprising locating the at least one member based at least on the fiducial data. (Item 91) Item 81. The method of item 80, wherein the fiducial data includes a fiducial marker location. (Item 92) 1. A method for delivering at least one package by a multi-purpose execution system, the multi-purpose execution system interacting with a route planning subsystem, at least one sensor, and a physical storage location, the method comprising: receiving, by the multipurpose execution system, at least one of a map and a destination address from the route planning subsystem; receiving, by the general-purpose execution system, sensor data from the at least one sensor; dynamically cross-checking said at least one map with said sensor data by said multi-purpose execution system; dynamically creating, by the multi-purpose execution system, a route for the multi-purpose execution system to follow, the route being based at least on the dynamically cross-checked at least one map and the destination address; dynamically cross-checking, by the multi-purpose execution system, the path based at least on the dynamically created path and the dynamically cross-checked at least one map; moving the multi-purpose execution system until the multi-purpose execution system reaches the destination address, the moving being based at least on the dynamically cross-checked route; enabling delivery of at least one package from said physical storage location by said multi-purpose execution system; A method comprising: (Item 93) Item 93. The method of item 92, further comprising locating the multi-purpose execution system by the multi-purpose execution system. (Item 94) detecting at least one object with the multi-purpose execution system; recognizing, by the multi-purpose execution system, at least one classification of the at least one object; estimating, by the multi-purpose execution system, at least one parameter associated with the at least one object; Item 93. The method of item 92, further comprising: (Item 95) 95. The method of claim 94, further comprising predicting, by the multi-purpose execution system, a future location of at least one of the unstable objects if the at least one object is unstable. (Item 96) Item 93. The method of item 92, wherein the at least one sensor comprises at least one short-range sensor. (Item 97) receiving near-field data from the at least one near-field sensor into the general-purpose execution system; shutting down the multi-purpose execution system based at least on the received near-field data; and Item 97. The method of item 96, further comprising: (Item 98) receiving, by the multipurpose execution system, user data; updating, by the multipurpose execution system, the at least one map based at least on the user data; Item 93. The method of item 92, further comprising: (Item 99) Enabling delivery of the at least one package includes: receiving, by the multi-purpose execution system, information associated with accessing the at least one package; if the information is associated with the at least one package, delivering, by the multipurpose execution system, the at least one package; Item 93. The method according to item 92, comprising: (Item 100) 1. A delivery system for delivering at least one package, the delivery system interacting with a route planning subsystem, at least one sensor, and a physical storage location, the system comprising: a perception subsystem that receives at least one of a map and a destination address from the route planning subsystem; a sensor interface for receiving sensor data from the at least one sensor; a map crosscheck subsystem for dynamically crosschecking said at least one map with said sensor data; a route planning subsystem that dynamically creates a route for the delivery system to follow, the route being based at least on the dynamically cross-checked at least one map and the destination address; a path checking subsystem that dynamically cross-checks the path based at least on the dynamically created path and the dynamically cross-checked at least one map; a route following subsystem that moves the delivery system until the delivery system reaches the destination address, the movement being based at least on the dynamically cross-checked route; a package subsystem that enables delivery of at least one package from the physical storage location; A delivery system comprising: (Item 101) Item 101. The delivery system of item 100, wherein the sensory subsystem further comprises a localization process for localizing the delivery system. (Item 102) The perception subsystem includes: a detection process for detecting at least one object; a recognition process for recognizing at least one classification of said at least one object; an estimation process for estimating at least one parameter associated with said at least one object; 101. The delivery system of claim 100, comprising: (Item 103) 101. The delivery system of claim 100, wherein the perception subsystem comprises a propagation subsystem that predicts at least one future location of the unstable object when the at least one object is unstable. (Item 104) Item 101. The delivery system of item 100, wherein the at least one sensor comprises at least one short-range sensor. (Item 105) Item 105. The delivery system of item 104, further comprising a safety subsystem that receives near-range data from the at least one near-range sensor, the safety subsystem stopping the delivery system based at least on the received near-range data. (Item 106) Item 101. The delivery system of item 100, further comprising a communication interface for receiving user data, the communication interface managing updates of the at least one map based at least on the user data. (Item 107) Item 101. The delivery system of item 100, wherein the luggage subsystem includes a luggage interface subsystem that receives information regarding access to the at least one luggage, and the luggage interface subsystem delivers the at least one luggage if the information is appropriately associated with the at least one luggage. (Item 108) 1. A method for operating a system from at least one first point to at least one second point within at least one delivery area, comprising: identifying, by the system, at least one map associated with the at least one delivery area; locating the system based at least on data collected by at least one sensor associated with the at least one delivery area; detecting, by the system, at least one object within the at least one delivery area; classifying, by the system, the at least one object; and rejecting, by the system, at least one of the at least one object based on an rejection criterion; and updating, by the system, the at least one map; and detecting, by the system, at least one driving surface within the at least one delivery area; classifying, by the system, the at least one driving surface; and generating, by the system, a route based at least on the updated at least one map and the at least one driving surface classification; Locating the system; and following said at least one path by said system; A method comprising: (Item 109) Classifying the at least one driving surface comprises: dividing the at least one driving surface into a plurality of road segments by the system; forming, by the system, at least one road network of the plurality of road segments end-to-end integrated at a plurality of connected nodes; assigning, by the system, a cost to each of the plurality of road segments; assigning, by the system, a classification to the at least one driving surface based at least on the cost; and Item 109. The method according to item 108, comprising: (Item 110) Locating the system includes: Locating a current position of the system on the route map; orienting the system based at least on the sensor data; and estimating a motion of the system based at least on the sensor data; and refining the motion estimate based at least on the sensor data; and adjusting the current position based at least on the refined motion estimate and the sensor data; and Item 109. The method according to item 108, comprising: (Item 111) Item 111. The method of item 110, comprising orienting the system based at least on a preselected number of degrees of freedom of orientation data by the system. (Item 112) estimating the motion includes: receiving, by the system, visual data at a first update rate and a first fidelity; adjusting the current position at a second frequency based at least on the visual data previously received by the system; and Item 111. The method according to item 110, comprising: (Item 113) Adjusting the current position includes: receiving, by the system, LIDAR data at a third frequency; detecting surfaces and lines from the LIDAR data by the system; triangulating, by said system, from said detected surfaces and lines; adjusting, by the system, the current position based at least on the triangulated surfaces and lines; Item 111. The method according to item 110, comprising: (Item 114) Detecting at least one object includes accessing, by the system, RGB data and depth information from the sensor data; generating, by the system, at least one 2D bounding box around at least one of the at least one object based at least on the RGB data and the depth information; Item 109. The method according to item 108, comprising: (Item 115) Classifying the at least one object includes: extracting, by the system, features from the at least one object; classifying, by the system, the at least one object based at least in part on a convolutional neural network; expanding, by the system, the at least one 2D bounding box into at least one frustum and at least one 3D bounding box; detecting, by the system, limits of the at least one 3D bounding box from point cloud depth data; extracting, by the system, at least one point associated with the at least one object from the at least one 3D bounding box; augmenting, by the system, the at least one 3D bounding box associated with the at least one extracted point based on the at least one 2D bounding box; estimating a movement rate of the at least one object based at least on the movement of the at least one 3D bounding box and the radar data; producing a dynamic scene map based at least on the updated at least one map, the movement rate, and the classified at least one object; Item 115. The method according to item 114, comprising: (Item 116) Item 109. The method of item 108, wherein forming the route map includes deep reinforcement learning using an induced policy search deep neural network. (Item 117) forming the route map determining, by the system, at least one static property of each of the plurality of road segments; determining, by the system, a dynamic cost of traversing each of the plurality of road segments; continually updating, by the system, the dynamic costs based at least on a graph topology; updating, by the system, at least one metric associated with the dynamic cost; forming, by the system, the route map based at least on the updated at least one metric and the updated dynamic cost; Item 109. The method according to item 109, comprising: (Item 118) Item 109. The method of item 108, wherein the sensor data includes at least one of traffic density, pedestrian crossing requirements, traffic signs, sidewalk locations, sidewalk conditions, and non-sidewalk drivable areas. [Brief description of the drawings]
[0032] The present teachings may be more readily understood by reference to the following description taken in conjunction with the accompanying drawings.
[0033] [Figure 1] FIG. 1 is a diagrammatic representation of a vehicle platoon network of the present teachings.
[0034] [Diagram 2] FIG. 2 is a schematic block diagram of a system of the present teachings.
[0035] [Diagram 3] FIG. 3 is a flow chart of the robot path processing method of the present teachings.
[0036] [Figure 4] FIG. 4 is a pictorial representation of a truck and an autonomous vehicle of the present teachings.
[0037] [Diagram 5]FIG. 5 is a schematic block diagram of a second configuration of the system of the present teachings.
[0038] [Figure 6] FIG. 6 is a schematic block diagram of a sensor system of the present teachings.
[0039] [Figure 7] FIG. 7 is a schematic block diagram of vehicle fleet network communications of the present teachings.
[0040] [Figure 8] FIG. 8 is a schematic block diagram of a third configuration of the system of the present teachings.
[0041] [Figure 9] FIG. 9 is a schematic block diagram of a vehicle system architecture including a location subsystem.
[0042] [Figure 10] FIG. 10 is a schematic block diagram of a vehicle system architecture including an obstacle subsystem.
[0043] [Figure 11] FIG. 11 is a schematic block diagram of a vehicle system architecture including training and compliance subsystems.
[0044] [Figure 12] FIG. 12 is a schematic block diagram of a vehicle system architecture including a preferred route subsystem.
[0045] [Figure 13] FIG. 13 is a schematic block diagram of a vehicle system architecture including a road obstacle climbing subsystem.
[0046] [Figure 14] FIG. 14 is a schematic block diagram of a vehicle system architecture including a stair climbing subsystem.
[0047] [Figure 15A] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15B] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15C] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15D] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15E] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15F] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15G] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15H] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15I] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15J] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings. [Figure 15K] 15A-15K are pictorial representations of a stair-climbing autonomous vehicle of the present teachings.
[0048] [Figure 16] FIG. 16 is a schematic block diagram of a vehicle system configuration including a grouping subsystem.
[0049] [Figure 17] FIG. 17 is a schematic block diagram of a fourth configuration of the system of the present teachings.
[0050] [Figure 18A] FIG. 18A is a schematic block diagram of the infrastructure of the system of the present teachings.
[0051] [Figure 18B]FIG. 18B is a schematic block diagram of the robot path processing of the system of the present teachings.
[0052] [Figure 19] FIG. 19 is a pictorial representation of the perceptual processing of the present teachings.
[0053] [Figure 20] 20-22 are pictorial representations of the object detection and classification of the present teachings. [Figure 21] 20-22 are pictorial representations of the object detection and classification of the present teachings. [Figure 22] 20-22 are pictorial representations of the object detection and classification of the present teachings.
[0054] [Diagram 23] FIG. 23 is a graphical representation of the object parameter estimation of the present teachings.
[0055] [Figure 24] FIG. 24 is a pictorial representation of the path planning process of the present teachings.
[0056] [Diagram 25] FIG. 25 is a pictorial representation of the path following process of the present teachings.
[0057] [Figure 26] FIG. 26 is a schematic block diagram of robot path processing with map updates.
[0058] [Figure 27] FIG. 27 is a flow chart of a method for managing control of a vehicle of the present teachings.
[0059] [Figure 28] FIG. 28 is a schematic block diagram of multi-robot path planning of the present teachings.
[0060] [Figure 29] FIG. 29 is a pictorial representation of a subset of the steps involved in robot path processing.
[0061] [Diagram 30] FIG. 30 is a pictorial representation of the static route map structure of the present teachings.
[0062] [Diagram 31] FIG. 31 is a flow chart of a method of map management of the present teachings.
[0063] [Diagram 32] 32A-32B are schematic block diagrams of the fleet management components of the present teachings. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0064] The multi-purpose system of the present teachings is discussed in detail herein with respect to commercial service, however, various types of applications may benefit from the features of the present teachings.
[0065] 1 and 2, the system 100 for moving a multi-purpose robot from at least one starting point to at least one multi-purpose execution point 128 can include, but is not limited to include, a system collector 119 that can form a communication network. The system collector 119 (FIG. 2) can access historical data 137 (FIG. 2) associated with a proposed path between the at least one starting point and the at least one ending point 128. The system collector 119 can include a multi-purpose vehicle 113 (FIG. 2). The at least one multi-purpose vehicle 113 (FIG. 2) can include, but is not limited to include, an autonomous multi-purpose vehicle 119A (FIG. 1) and a semi-autonomous multi-purpose vehicle 119B (FIG. 1). In some configurations, the at least one multi-purpose vehicle 113 (FIG. 2) can include at least one sensor 118 and at least one storage container 101. In some configurations, the at least one storage container 101 can store goods to be delivered. The historical data 137 (FIG. 2) can include vehicle data 129 (FIG. 2) previously collected along the proposed route, which can be delivered to the driving subsystem 111. The driving subsystem 111 can provide driving commands to the utility vehicle 113 processor. The system collector 119 (FIG. 2) can collect real-time data 127 (FIG. 2) about the proposed route before and while the at least one utility vehicle 113 (FIG. 2) navigates the proposed route. The system collector 119 (FIG. 2) can update the proposed route based on at least the vehicle data 129 (FIG. 2), the historical data 137 (FIG. 2), and the real-time data 127 (FIG. 2). The system 100 may include at least one processor that may be executed within a utility vehicle 113 ( FIG. 2 ) and / or within a server, such as a fleet manager 601 ( FIG. 1 ), that communicates with a system collector 119 ( FIG. 2 ), which includes the utility vehicle 113 ( FIG. 2 ), for example, through a communications network 115 ( FIG. 2 ).The processor can continuously update the updated proposed path based at least on the historical data 137 (FIG. 2), the real-time data 127 (FIG. 2), and the at least one sensor 118 while the multi-purpose vehicle 113 (FIG. 2) navigates the updated proposed path from the at least one starting point to the at least one multi-purpose execution point 128. In some configurations, the system collector 119 (FIG. 2) can optionally include an air vehicle 2000 (FIG. 1) that can transport goods, for example, to a truck 2001 (FIG. 1). In some configurations, the autonomous vehicle 2001A can be included in a fleet network.
[0066] Referring now to FIG. 2, a group of multi-purpose vehicles 113 may travel together for a number of reasons. In some configurations, one member of the group may "learn" a delivery route and "teach" the route to other members. In some configurations, multiple multi-purpose vehicles 113 may be required to deliver goods and / or perform services that are too numerous for a single multi-purpose vehicle 113 to accomplish. In some configurations, a method for delivering goods from at least one first location to at least one second location may include, but is not limited to include, coupling at least one of the multiple multi-purpose vehicles with another vehicle of the multiple multi-purpose vehicles through a communications network, by at least one of the multiple multi-purpose vehicles. The method may include receiving goods from the at least one first location into at least one of the multiple multi-purpose vehicles 113, by at least one of the multiple multi-purpose vehicles 113. The method may include the steps of determining, by at least one of the plurality of multi-purpose vehicles 113, a proposed route between at least one first location and at least one second location; enabling, by at least one of the plurality of multi-purpose vehicles 113, to follow other vehicles of the plurality of multi-purpose vehicles 113 along the proposed route; and enabling, by at least one of the plurality of multi-purpose vehicles 113, the other vehicles of the plurality of multi-purpose vehicles 113 to deliver goods to the second location. The method may optionally include the steps of: (a) updating, by at least one of the plurality of multi-purpose vehicles 113 (FIG. 2), a proposed route based at least on information received in real time from the one at least one multi-purpose vehicle 113 and the other at least one multi-purpose vehicle 113; (b) enabling, by the at least one of the plurality of multi-purpose vehicles 113, the one at least one multi-purpose vehicle 113 to proceed along the updated proposed route; and (c) repeating (a) and (b) until the one at least one multi-purpose vehicle 113 reaches the at least one second location.The coupling may optionally include a physical and / or electronic coupling.
[0067] Continuing with reference to FIG. 2, the group of multi-purpose vehicles 113 can include at least one semi-autonomous multi-purpose vehicle 119B (FIG. 1) and / or at least one autonomous multi-purpose vehicle 119A (FIG. 1). At least one of the multi-purpose vehicles 113 can optionally follow a different route than the rest of the group. At least one stray multi-purpose vehicle 113 can, for example, serve a different location than the rest of the group, or can be suffering from mechanical or electronic problems, can call for assistance, or can be called by a customer needing assistance with a package or safe escort. Any member of the group can optionally update the fleet network with route and status information, for example, through the communications network 115 (FIG. 1). In some configurations, when a customer at a first location needs assistance, the customer can call a neighboring one of the multi-purpose vehicles 113, for example, through the fleet manager 621 (FIG. 1) or, for example, through direct communication with the multi-purpose vehicle 113. The multipurpose vehicle 113 can be optionally directed to mobile or fixed destinations, or destinations that were fixed but became mobile, such as parked vehicles that have started and moved, and pedestrians walking. In some configurations, one member of the group can "learn" a travel path and "teach" the path to the other members. In some configurations, the semi-autonomous multipurpose vehicle 119B (FIG. 1) can create an electronic record of the path traversed based on the sensor data 118. The autonomous vehicle 119A (FIG. 1) can follow the path traversed by steering according to the electronic record. In some configurations, the multipurpose vehicle 113 can transport goods. In some configurations, the system 100 can include an optional physical storage location 101 and an optional physical storage location subsystem 103 that can provide optional physical storage location control commands 131 to the optional physical storage location 101. The optional physical storage location 101 can include at least one processor that can, for example, receive and respond to commands.The optional physical storage location subsystem can receive / send optional physical storage location status 133 from / to the delivery route subsystem 117, which can track the status of goods contained within the optional physical storage location 101.
[0068] 3, a method 150 of the present teachings for establishing a route for moving a multi-purpose vehicle 113 (FIG. 2) from at least one starting point to at least one destination 128 (FIG. 2) can include, but is not limited to include, (a) a step 151 of automatically determining, by a fleet network 606 (FIG. 1), including a system collector 119 (FIG. 2), at least one proposed route between the at least one starting point and the at least one destination 128 (FIG. 2). The proposed route can be selected from a set of preselected types of routes. In some configurations, the proposed route can include a pedestrian route 602 (FIG. 1) including a street intersection 604 (FIG. 1). The system collector 119 (FIG. 2) can include the multi-purpose vehicle 113 (FIG. 2). The method 150 can include (b) a step 153 of accessing, by the multi-purpose vehicle 113 (FIG. 2), historical data 137 (FIG. 2) associated with the proposed route. At least a portion of the historical data 137 (FIG. 2) can be collected by at least one of the system collectors 119 (FIG. 2). The method 150 can include (c) collecting 155, by at least one of the system collectors 119 (FIG. 2), real-time data 127 (FIG. 2) about the proposed route, and (d) updating 157, by the fleet network 606 (FIG. 1), the proposed route based on the historical data 137 (FIG. 2) from the historical data subsystem 109 (FIG. 2) and the real-time data 127 (FIG. 2) collected from the real-time data subsystem 125 (FIG. 2). The method 150 can include (e) navigating 159, by the utility vehicle 113 (FIG. 2), the updated proposed route, and (f) repeating 161 (c)-(e) until the utility vehicle 113 (FIG. 2) reaches at least one destination 128 (FIG. 2).Method 150 may optionally include authenticating and annotating the updated proposed route by multi-purpose vehicle 113 (FIG. 2) as multi-purpose vehicle 113 (FIG. 2) navigates the updated proposed route, and providing the authenticated, annotated, updated proposed route by multi-purpose vehicle 113 (FIG. 2) to fleet network 606 (FIG. 1). Method 150 may optionally include forming a communications network 115 (FIG. 2) including a system collector 119 (FIG. 2), and sharing, by system collector 119 (FIG. 2), historical data 137 (FIG. 2) and real-time data 127 (FIG. 2) over communications network 115 (FIG. 2). Authenticating and annotating may include receiving, by multi-purpose vehicle 113 (FIG. 2), visually collected information from a driver of multi-purpose vehicle 113 (FIG. 2). The historical data 137 (FIG. 2) may include, but is not limited to include, data from multiple sources. The fleet network 606 (FIG. 1) may include, but is not limited to include, at least one server. The method 150 may include maintaining, by the at least one server, the historical data 137 (FIG. 2) and updated proposed routes.
[0069] 4, the system collector 119 (FIG. 2) can include, for example, a truck 2001 that can transport goods to the multi-purpose vehicle 113 and transport the multi-purpose vehicle 113 to the vicinity of the delivery location 128 (FIG. 1). The truck 2001 can allow for the exchange of a used battery 1163 (FIG. 5) with a charged battery 1163 (FIG. 5) in the multi-purpose vehicle 113. The truck 2001 can include a battery charging feature that can charge the used battery 1163 (FIG. 5). The truck 2001 can include a lifting mechanism that can allow for loading and unloading of the multi-purpose vehicle 113. The truck 2001 can optionally include, for example, but not limited to, an in-loading lifting feature 2003 and an out-loading lifting feature 2005 / 2007, such as a ramp, that can allow for loading and unloading of the multi-purpose vehicle 113 to / from the truck 2001. In some configurations, the truck 2001 can move while the utility vehicle 113 enters and exits the truck 2001. In some configurations, the utility vehicle 113 can receive packages from the truck 2001 and can place packages, such as, but not limited to, undeliverable packages, into the truck 2001.
[0070] 5 and 6, in some configurations, a multi-purpose execution system 200 (FIG. 5) for moving a multi-purpose vehicle from at least one first location to at least one second location can include, but is not limited to include, a network of system collectors 119 (FIG. 5) including at least one multi-purpose vehicle 113 (FIG. 5). The multi-purpose execution system 200 (FIG. 5) can include at least one processor A 114A. The multi-purpose vehicle 113 (FIG. 5) can optionally include a sensor subsystem 105 (FIG. 5) that can process data from a sensor 118 (FIG. 5). The sensor 118 (FIG. 5) can include, but is not limited to include, an infrared (IR) sensor 201 (FIG. 6) that can sense pedestrians, a camera 203 (FIG. 6) that can sense object depth, and a laser 205 (FIG. 6) that can provide a point cloud representation and distance measurement of the object, for example. The sensors 118 (FIG. 5) may include an ultrasonic sensor 207 (FIG. 6) that may sense distance to an object, a radar 209 (FIG. 6) that may sense speed of an object in proximity to the utility vehicle 113 (FIG. 5) as well as weather and traffic, and a LIDAR 211 (FIG. 6) that may provide point cloud data, for example, but not limited to, the sensor subsystem 105 (FIG. 5). The sensor subsystem 105 (FIG. 5) may optionally include a sensor fusion subsystem 108 (FIG. 6) that may integrate data from multiple sensors 118 (FIG. 5). The sensor fusion subsystem 108 (FIG. 6) may classify obstacles encountered by the utility vehicle 113 (FIG. 6) and may verify observations from unreliable sensors. The sensor subsystem 105 (FIG. 5) may optionally include a behavior model subsystem 106 (FIG. 6) that may predict future positions of obstacles. The sensor subsystem 105 may optionally expect sensor data 135 to arrive from at least two of the sensors 118 (FIG. 5). The utility vehicle 113 (FIG. 5) can optionally include at least one battery 1163 (FIG. 5). The battery 1163 (FIG. 5) can optionally include fast charging and fast swapping features, both of which can reduce non-operational time of the utility vehicle 113 (FIG. 5).The battery 1163 (FIG. 5) can optionally include a locking feature that can lock the battery 1163 (FIG. 5) to the utility vehicle 113 (FIG. 5). The locking feature can include a security feature that can allow for removal of the battery 1163 (FIG. 5).
[0071] 1 and 7, the multi-purpose vehicle 113 (FIG. 2) can optionally include at least one autonomous vehicle 119A and / or at least one semi-autonomous vehicle 119B. The autonomous vehicle 119A of the present teachings can include a vehicle that can navigate with little or no human intervention. The semi-autonomous vehicle 119B of the present teachings can collect information from an operator while traversing a terrain, either autonomously or under human control or under shared control between a human and an autonomous processor. The autonomous vehicle 119A and the semi-autonomous vehicle 119B can operate on, for example, but not limited to, sidewalks 602 (FIG. 1) and other pedestrian paths, which can include, for example, but not limited to, crosswalks 604 (FIG. 1), curbs 612 (FIG. 1), stairs 614 (FIG. 1), and elevators. The system collector 119 (FIG. 2) can optionally include at least one beacon 119C positioned along the updated proposed path. The system collector 119 (FIG. 2) may optionally include a beacon 119C positioned along the updated proposed route. The beacon 119C may sense, for example, but not limited to, obstacles, weather, and base points and provide that data to other system collectors 119 (FIG. 2), one or more of which may include the utility vehicle 113 (FIG. 2). The beacon 119C may enable communication to the system collector 119 (FIG. 2) and may enable data protection during the exchange of data between the beacon 119C and the other system collectors 119 (FIG. 2). The beacon 119C, along with all other system collectors 119 (FIG. 2), may receive and transmit data via the communication network 115 (FIG. 2) and provide those data to, among other recipients, the utility vehicle 113 (FIG. 2). Members of communications network 115 (FIG. 2) may optionally receive GPS navigation information 145 (FIG. 7) and information from wireless devices, for example and without limitation, using wireless access points (WAPs) 147 (FIG. 7).At least one WAP 147 (FIG. 7) can optionally enable fleet communications when communications network 115 (FIG. 2) is insufficient and location information when GPS 145 (FIG. 7) is insufficient.
[0072] 8, the multi-purpose vehicle 113 may optionally include a seating feature 157 that may accommodate an operator. The operator may control the multi-purpose vehicle 113 or may partially control the multi-purpose vehicle 113. In some configurations, the semi-autonomous multi-purpose vehicle 119B (FIG. 1) may include a seating feature 157. In some configurations, the semi-autonomous multi-purpose vehicle 119B (FIG. 1) may include a wheelchair. In some configurations, the semi-autonomous multi-purpose vehicle 119B (FIG. 1) may be controlled remotely without the seating feature 157 and the operator.
[0073] Referring now to FIG. 9, the multi-purpose vehicle 113 (FIG. 2) may optionally include at least one localization subsystem 141 that may locate the multi-purpose vehicle 113 (FIG. 2) based on at least historical data 137, and / or real-time data 127 and / or local data 143, where localization may include, but is not limited to, determining a current location and orientation of the multi-purpose vehicle 113 (FIG. 2).
[0074] 10 and 11, the utility vehicle 113 (FIG. 2) may optionally include an obstacle subsystem 146 that may locate at least one obstacle in an updated proposed path. The obstacle subsystem 146 may update the updated proposed path as obstacle data 144 is discovered. The obstacle subsystem 146 may rely on a training subsystem 1159 (FIG. 11) to provide obstacle recognition. The training subsystem 1159 (FIG. 11) may provide continuous learning of situations encountered by members of the fleet and provide those data to the obstacle subsystem 146 to improve route planning and execution. The obstacle subsystem 146 may be pre-trained. The training subsystem 1159 (FIG. 11) may include and / or be based on neural network techniques, for example. The training subsystem 1159 (FIG. 11) may operate remotely from the processor A 114A. The utility vehicle 113 (FIG. 2) may optionally include a rule compliance subsystem 1157 (FIG. 11) that may access navigation rule information from at least one of the historical data 137, the real-time data 127, and the sensor data 135. The rule compliance subsystem 1157 (FIG. 11) may command the utility vehicle 113 (FIG. 2) to navigate according to at least the navigation rule information.
[0075] 12, the multi-purpose vehicle 113 (FIG. 2) may optionally include a preferred route subsystem 147 that may determine at least one preferred route 149 between at least one starting point and at least one destination 128 (FIG. 1). The multi-purpose vehicle 113 (FIG. 2) may select the at least one preferred route 149 based at least on the historical data 137 and the real-time data 127. The preferred route subsystem 147 may optionally determine at least one route between the at least one starting point and the at least one destination 128 (FIG. 1) that the multi-purpose vehicle 113 (FIG. 2) should avoid based at least on a number of obstacles in an updated proposed route.
[0076] 13, the utility vehicle 113 (FIG. 2) can optionally include a road obstacle climbing subsystem 1149 that can detect road obstacles. The road obstacle climbing subsystem 1149 can send road obstacle data 1151 to the delivery path subsystem 117 and command the utility vehicle 113 (FIG. 2) to overcome the road obstacle and maintain balance and stability while traversing the road obstacle. The road obstacles can optionally include curbs 612 (FIG. 1) and steps 614 (FIG. 1).
[0077] 14, the multi-purpose vehicle 113 (FIG. 2) may optionally include a stair climbing subsystem 1153 that may detect stairs 614 (FIG. 1), transmit stair data 1155 to the delivery route subsystem 117, command the multi-purpose vehicle 113 (FIG. 2) to confront and traverse the stairs 614 (FIG. 1), and command the multi-purpose vehicle 113 (FIG. 2) to achieve stabilized operation while traversing the stairs 614 (FIG. 1).
[0078] 15A-15K, balanced and safe autonomous stair climbing can be accomplished with the vehicle wheels clustered together to provide coordinated ascent and descent in combination with support arms that deploy as the vehicle wheels encounter the stair. Stair climbing can begin with autonomous movement of the autonomous vehicle 1500A from the floor 618A toward the stair 614 (FIG. 15A). As the autonomous vehicle 1500A approaches the stair 614, the support arm 1505 is in a stowed position with the arm wheel 1501A adjacent the vehicle storage location 101 and the segment 1501 folded toward the arm 1504. As the autonomous vehicle 1500A encounters the riser 618 (FIG. 15B), the front wheel 2815 senses contact from a sensor (not shown) and the sensor data can be provided to a base (not shown). The base can initiate active rotation at the pivot point 1506 of the arm 1504 by at least one servo (not shown) based sensor data. Such active rotation can allow the segment 1501 to move toward a ground surface, for example, but not limited to, under gravity. Stabilizing wheels 1503, operably coupled with the segment 1501, which can be optionally powered, can land on the ground surface and extend the support arm 1505 to provide support to the autonomous vehicle 1500A. The stabilizing wheels 1503 can optionally be replaced by a non-skid like feature. The base can issue commands to the cluster motors (not shown) to rotate the cluster and thus move the rear wheels 2817 onto the staircase surface 628 (FIG. 15C). As the utility vehicle 1500A climbs the stairs 614, the support arm 1505 maintains balance and stability of the autonomous vehicle 1500A as the arm-wheel cluster 1501A rotates on the axle 1508. When the rear wheel 2817 encounters the riser 616 (FIG. 15C), the cluster can rotate the front wheel 2815 and reach the stair face 632 (FIG. 15D) while the support arm 1505 rolls the wheel cluster 1501A towards the stairs 614, providing balance and support to the autonomous vehicle 1500A.When the front wheel 2815 encounters riser 622 (FIG. 15D), the cluster can rotate the rear wheel 2817 and reach the stair face 624 (FIG. 15E), while as the support arm 1505 rolls on the stair face 628 (FIG. 15E), the wheel cluster 1501A reaches riser 616, providing balance and support to the autonomous vehicle 1500A. When the rear wheel 2817 reaches the stair face 624 (FIG. 15F), the cluster can rotate the front wheel 2815 and reach the stair face 624 (FIG. 15F), while as the support arm 1505 rolls on the stair face 634 (FIG. 15F), the wheel cluster 1501A reaches riser 622, providing balance and support to the autonomous vehicle 1500A. If no further risers are encountered, the wheel cluster 1501A reaches the riser 626 and the stair face 624 (FIG. 15G) as the cluster may rotate the front wheel 2815 and rest on the stair face 624 (FIG. 15G) and the servo rotates the pivot point 1506 (FIG. 15H) and raises the support arm 1505 in preparation for either forward motion or descending the stair 614 (FIG. 15G). To descend the stair 614, the support arm 1505 reaches towards the stair 614 and stabilizes the downward stroke as the cluster may rotate the front wheel 2815 above the rear wheel 2817. The wheels 2815 / 2817 may alternately travel down the stair 614 as described for climbing upward (FIG. 15I) while the arm wheel 1501A rolls down the stair 614 from stair face to stair face. Eventually, the support wheels 1501A (FIG. 15J) contact the ground surface before the final rotation of the cluster. The rear wheels 2817 (or front wheels 2815, depending on the number of risers present in the staircase 614) are rotated (FIG. 15J) to the ground surface adjacent the riser 618 and counterbalanced by the support arms 1505. One more rotation by the cluster places the front wheels 2815, rear wheels 2817, and the support wheels 1501A (FIG. 15K) all on the ground surface. In some configurations, the support wheels 1501A can be pressure activated. In some configurations, the pivot point 1506 (FIG. 15A) and optionally the wheels 1501A (FIG. 15A) can be actuated by a motor in the base 531 (FIG. 14).The motor can be connected to the pivot point 1506 (FIG. 15A) and optionally the wheels 1501A (FIG. 15A) by wires, which can run through a structure, such as a tube, that supports 1501A (FIG. 15A). In some configurations, one or more of the support wheels 1501A can be omitted from the support arm 1505.
[0079] 16, the multi-purpose vehicles 113 (FIG. 2) may optionally include a grouping subsystem 161 that may command one multi-purpose vehicle 113 (FIG. 2) to follow another multi-purpose vehicle 113 (FIG. 2). The grouping subsystem 161 may maintain a coupling between the multi-purpose vehicles 113 (FIG. 2). In some configurations, the grouping subsystem 161 may enable an electronic coupling between the multi-purpose vehicles 113 (FIG. 2). In some configurations, the coupling may include a physical coupling. In some configurations, the grouping subsystem 161 may group several of the multi-purpose vehicles 113 (FIG. 2) together and may enable one or more of the multi-purpose vehicles 113 (FIG. 2) to collect navigation route data and provide the data to a multi-purpose network. In some configurations, the grouping subsystem 161 can enable a group of multi-purpose vehicles (FIG. 2) to travel together until one or more of the multi-purpose vehicles 113 (FIG. 2) reaches a destination and moves out of the group to perform a service.
[0080] 17, a system 500 for moving a multi-purpose vehicle 113 from at least one first location to at least one second location, which is another configuration of the system 100 (FIG. 2), can include, but is not limited to include, at least one processor, including, but not limited to, processor 1 512 and processor 2 513. Processor 1 512 is also referred to herein as a receiving processor 512. Processor 2 513 is also referred to herein as a performing processor 513. The receiving processor 512 can receive at least one request from the at least one first location and perform the service at the at least one second location. The receiving processor 512 can select at least one optimal multi-purpose vehicle from the multi-purpose vehicles 113 (FIG. 4), and the selection can be based at least on the status of the at least one multi-purpose vehicle 113 (FIG. 4). The receiving processor 512 can instruct the executing processor 513 associated with the at least one optimal utility vehicle to command the optimal utility vehicle to go to the at least one first location to receive the goods. The executing processor 513 can associate the goods with at least one security measure when the goods are stored in the at least one optimal utility vehicle. The at least one security measure can require security information before the service is performed. The executing processor 513 can determine a proposed route between the at least one first location and the at least one second location based at least on the historical information 137 received from the network and map database 505 of the system collector 119 (FIG. 4). The executing processor 513 can enable the at least one optimal utility vehicle to proceed along the proposed route until the at least one optimal utility vehicle reaches the at least one second location. The executing processor 513 can verify the security information and release the goods at the location of the utility vehicle 113 (FIG. 2).The executing processor 513 can optionally (a) update the proposed route based on at least information received in real time from the network of system collectors 119 (FIG. 2), (b) allow at least one optimal multi-purpose vehicle to proceed along the updated proposed route, and (c) repeat (a) and (b) until at least one optimal multi-purpose vehicle reaches at least one second location. The truck 2001 (FIG. 4) can optionally transport the multi-purpose vehicle 113 (FIG. 4) to the vicinity of at least one first location and then at least one second location. The system 500 can include a dispatch mechanism 501 that can coordinate activities between members of the network. In some configurations, the dispatch mechanism 501 can couple the truck 2001 (FIG. 4) with the multi-purpose vehicle 113 (FIG. 4). In some configurations, the dispatch mechanism 501 can track battery life in the multi-purpose vehicle 113 (FIG. 4). In some configurations, the dispatch mechanism 501 can enable the utility vehicle 113 (FIG. 4) to respond to calls. The dispatch mechanism 501 can enable the utility vehicle 113 (FIG. 4) to respond to calls by receiving calls from the system collector 119 (FIG. 2) and transmitting the calls to the utility vehicle 113 (FIG. 4). The processor 2 513 can communicate movement control commands 529, which may include route data 549, to the infrastructure 531 through the CAN bus 527. The infrastructure 2 531 can communicate user updates 553 to the processor 2 513 through the communication interface 551. In some configurations, packages can be delivered from one location to another using the utility vehicle 113 (FIG. 4). The optional package subsystem 545 can interface with the physical storage location 541 through the package interface 539 to receive and unload contents of the optional physical storage location 541. Optional physical storage location 541 can provide and receive package information 543 regarding the status of the contents of optional physical storage location 541 .
[0081] 18A, another configuration of the system 100 (FIG. 2), a system 600 for moving a multi-purpose vehicle 113 from at least one first location to at least one second location, can include, but is not limited to include, at least one layer. In some configurations, the at least one layer can include an autonomous layer 701, a supervisory autonomous layer 703, and a human autonomous layer 705. The autonomous layer 701 can enable autonomous control of the multi-purpose vehicle 113, whether the multi-purpose vehicle 113 is manned or unmanned. In some configurations, the multi-purpose vehicle 113 can send, for example, a video signal to the fleet manager 601, which can respond with a command to the multi-purpose vehicle, which can travel on a message bus to the infrastructure 531. In some configurations, the command can be made to mimic a joystick command. The multi-purpose vehicle 113 can measure the latency of the connection between the multi-purpose vehicle 113 and the fleet manager 601, and can adjust the speed of the multi-purpose vehicle 113 accordingly. If the latency exceeds a preselected threshold, the multi-purpose vehicle 113 may be placed in a semi-autonomous mode. The supervisory autonomous layer 703 may enable remote control of the multi-purpose vehicle 113. Remote control of the multi-purpose vehicle 113 may occur as a result of, for example, but not limited to, unexpected events, preselected sensor and processor configurations, and delivery optimization concerns. The human autonomous layer 705 may enable remote event management that requires some form of human intervention. The connections between the elements of the system 600 indicate functionality groupings, such as, for example, but not limited to, the following: [Table 1]
[0082] Continuing with reference to FIG. 18A, in some configurations, the autonomous layer 701 can include, but is not limited to include, the multi-purpose vehicle 113, the sensors 118, the base 531, and the user interface and storage 615. The multi-purpose vehicle 113 can create a route based on the sensor data and the proposed route and provide commands to various parts of the multi-purpose vehicle 113 that enable the autonomous behavior of the multi-purpose vehicle 113. The multi-purpose vehicle 113 can follow the created route to a destination, securely perform services, and securely accept payments for services. The multi-purpose vehicle 113 can respond to the sensor data by ensuring the safety of pedestrians and other obstacles in and near the created route. For example, if the sensors 118 detect an obstacle, the multi-purpose vehicle 113 can automatically stop and / or change course. The multi-purpose vehicle 113 can communicate with sensors 118, user interface / storage 615, motors, signals, and infrastructure 531, all of which may be integral parts of the multi-purpose vehicle 113. The multi-purpose vehicle 113 can communicate with remote members of the fleet network through a vehicle network interface 623 and a communication network 115. The multi-purpose vehicle 113 can include a robotic path processing 621 that can receive a proposed route from the infrastructure 6128 through a communication route and create a travel path based on the proposed route and data received through a sensor interface 547 from the sensors 118. The sensors 118 can include, but are not limited to include, short-range robust sensors and long-range sensors that can enable emergency stop detection by an emergency stop subsystem 525 that can instruct a motor controller 629 to stop the multi-purpose vehicle 113 through a safety subsystem 537 (FIG. 17).The near-field sensor may include features such as, for example, but not limited to, (a) detecting obstacles while traveling at some preselected maximum speed; (b) identifying obstacle envelope locations within a preselected distance; (c) detecting small obstacles on the driving surface and holes therein within at least a preselected standoff distance, a preselected width, and a preselected width; (d) detecting large obstacles on the driving surface and holes therein within at least a preselected standoff distance, a preselected depth, a preselected distance perpendicular to the direction of travel, and a preselected length; (e) detecting obstacles within at least a preselected standoff distance when the obstacle is at a preselected height / depth, width (measured perpendicular to the direction of travel of the multi-purpose vehicle 113), and length (measured parallel to the direction of travel of the multi-purpose vehicle 113); and (f) detecting obstacles at or above a preselected standoff distance under environmental conditions such as, for example, but not limited to, indoors, outdoors, in direct sunlight, at night without external lighting, in rain, snow, and during times of reduced visibility due to fog, smog, and dust. The long-range sensor may include features such as, for example, but not limited to, (a) detecting an obstacle when the utility vehicle 113 is traveling at a preselected maximum speed; (b) locating an obstacle while moving at a maximum preselected speed within a preselected distance; (c) estimating the speed of an obstacle while moving at a preselected maximum speed within a preselected tolerance; (d) estimating the direction of an obstacle while moving faster than the preselected maximum speed within a preselected tolerance and a preselected speed within a preselected tolerance; (e) identifying an obstacle while moving faster than a preselected speed; (f) detecting obstacles under preselected environmental conditions, such as, for example, indoors, outdoors, in direct sunlight, and at night with no external lighting; and (g) estimating sensing range under compromised environmental conditions with a preselected accuracy (environmental conditions may include, but are not limited to include, a preselected maximum amount of precipitation, a preselected maximum amount of snowfall, reduced visibility due to preselected conditions for more than a preselected distance).Long-range sensors can detect large obstacles such as, for example, but not limited to, cars, motorcycles, bicycles, fast moving animals, and pedestrians. The robot path processing 621 can access the robot map database 619, which may include local storage for the fleet map database 609, and use those data to create a new proposed route if the robot path processing 621 determines that the proposed route is suboptimal. The robot path processing 621 can control the direction based on the created travel path through the master controller 627 and the speed of the multi-purpose vehicle 113 through the motor controller 629, and can control signaling through the signal controller 631 that may indicate the travel path and speed of the multi-purpose vehicle 113 to nearby pedestrians. The remote control 625 can augment the sensor data with data received from the infrastructure 6128. The multi-purpose vehicle 113 can receive requests to perform a service from the UI 615 through the UI interface 617.
[0083] Referring now to FIG. 18B, the robot path processing 621 can dynamically plan a path for the utility vehicle 113 (FIG. 18A) using sensor information and map data. The goal of the robot path processing 621 is to create a path that is substantially free of obstacles for the utility vehicle 113 (FIG. 18A). The map data can include drivable surfaces, where the surface may meet certain criteria, such as, for example, but not limited to, being within a preselected number of horizontal degrees, being within at least a preselected width and length, being reachable by driving over a curb, being no higher than a preselected height, and being reachable by traversing a staircase. The driving surfaces can be categorized by type. The types can include, but are not limited to include, road lanes on roadways, concrete / asphalt sidewalks, dirt / grass sidewalks, bike lanes, road intersections, staircase step faces, hallways, and interiors. The map data can include the location, orientation, and height of the curb. The map data can include the location, orientation, and intent of traffic signs and signals along the drivable surface. The map data may include relationships between traffic signs and signals and drivable surfaces. The map data may include any required activation mechanisms for traffic signals. The map data may include the location, orientation, and activation mechanisms for gates, doors, and other pedestrian traffic barriers, as well as the location, orientation, and number of steps in a staircase. The map data may include the location, orientation, and activation mechanisms for elevators. The map data may include location features for drivable surfaces and may include LIDAR and image data to facilitate location of the utility vehicle 113 (FIG. 18A). The map data may include associations between street addresses and entrances to a lot. The map data may include, but is not limited to, an elevation expressed as a floor above ground level and height, for example, in meters.
[0084] Continuing with reference to FIG. 18B, the robot path processing 621 can begin with a proposed route that may be determined locally or provided by, for example, but not limited to, the route plan 503 (FIG. 18A) between the start location and the destination. The robot path processing 621 can include, but is not limited to include, a perception subsystem 536, a path planning subsystem 517, and a path following subsystem 523. The perception subsystem 536 can include, but is not limited to include, processes such as a localization process 653 that may determine the location and orientation of the utility vehicle 113 (FIG. 18A). The perception subsystem 536 can include at least an object detection process 655 that may detect objects and obstacles based on sensor data, and an object identification process 657 that may identify detected objects and obstacles based at least on a system trained to identify objects. The perception subsystem 536 may include an object parameter estimator process 659 that may estimate parameters that may be associated with an identified object, such as, but not limited to, measurements of size, shape, speed, and acceleration, based at least on a system trained to associate measurements with the identified object. The perception subsystem 536 may include an object modeling process 661 that may create a model of how an object or obstacle would behave based at least on the object identification and object parameter estimations, based at least on the training system data, propagate the object or obstacle behavior into the future, and determine possible interactions, if applicable, between the object or obstacle and the multi-purpose vehicle 113 (FIG. 18A). The perception subsystem 536 may include a dynamic map crosscheck 521 that may perform an estimation of the free space available for the multi-purpose vehicle 113 (FIG. 18A) to navigate, and use that estimation to crosscheck the route map created by the route planner 503 (FIG. 18A). The estimation is based at least on data derived from, for example, but not limited to, image segmentation or point cloud segmentation. Free space is the drivable space free of obstacles around the utility vehicle 113 (FIG. 18A).The map crosscheck 521 can access data along the proposed route from the robot map database 619 and check the planned travel path against map updates and also sensor data. The robot map database 619 can receive updates from the fleet map database 609 through a communication route. The fleet map database 609 can be updated under conditions such as, but not limited to, when an obstacle is detected for a preselected period of time. The combination of the perception subsystem 536 and the map crosscheck process 521 can produce a travel path, i.e., a checked map 515, for the utility vehicle 113 (FIG. 18A) that can be provided to the path planning subsystem 517. The path planning subsystem 517 can include, but is not limited to include, a path planning control process 667 and a path crosscheck process 519. The path planning control process 667 can convert the travel path into commands that can be understood by the master controller 627. The commands can direct the utility vehicle 113 (FIG. 18A) to a starting location and then to a destination where the service is performed. The path cross-check process 519 can update the travel path based on the sensor data, if necessary. The path planning subsystem 517 can provide an updated (if necessary) travel path to the path following process 523. The path following process 523 can provide commands to the master controller 627. The master controller 627 can use the commands to control the utility vehicle 113 (FIG. 18A) and signaling that can alert pedestrians to the movement of the utility vehicle 113 (FIG. 18A). The close-range robust sensor 116 can enable the master controller 627 to stop the utility vehicle 113 (FIG. 18A).
[0085] Referring now to FIG. 19, the perception subsystem 536 (FIG. 18B) can include a localization process 653 that can locate the multi-purpose vehicle 113 (FIG. 1) on a map 751 (FIG. 30) and determine the orientation of the multi-purpose vehicle 113 (FIG. 1). The sensor 118 (FIG. 18B) can include a camera that can provide visual odometry 801 at high frequency and low fidelity. The camera can estimate the motion of the object 757 (FIG. 29) and recognize previously seen corners. The camera can update data about the multi-purpose vehicle 113 (FIG. 1) according to the corners at high frequency. The sensor 118 (FIG. 18B) can include a LIDAR device that can provide LIDAR odometry 803 at low frequency. The LIDAR data can refine the motion estimate and remove distortion from the point cloud. The LIDAR data can be used to recognize and triangulate from previously seen surfaces and lines, and update data about the utility vehicle 113 (FIG. 1) according to the surfaces and lines.
[0086] 20 and 21, the perception subsystem 536 (FIG. 18B) and the map management pipeline process 611 (FIG. 18A) may include an object detection process 655 and an object detection / classification process 655I (FIG. 26) that may access image information 805 (FIG. 20) and / or depth information 807 (FIG. 20) and classify objects. In some configurations, images may be examined to find / classify objects, the objects may be correlated with depth data, and bounding boxes may be drawn around objects in the depth data with classification. In some configurations, the depth data may be examined for objects, image regions of interest may be created to classify objects, and bounding boxes may be drawn around objects in the depth data with classification. In some configurations, region-based convolutional neural networks may be used for visual object detection. In some configurations, stereo matching with stixel representations may be used to segment a scene into static background / infrastructure and moving objects. The object detection process 655 (FIG. 18B) and the object detection / classification process 655I (FIG. 26) can use conventional convolutional neural networks to generate 2D bounding boxes 809 (FIG. 20) around classified objects. For example, the vehicle 2D bounding box 811B (FIG. 21) can surround the vehicle 811C in the image 811. The pedestrian 2D bounding box 811A (FIG. 21) can surround the pedestrian 811D in the image 811. The object detection process 655 (FIG. 18B) and the object detection / classification process 655I (FIG. 26) can lift the 2D bounding boxes into a frustum and create 3D bounding boxes. For example, the vehicle 3D bounding box 813B (FIG. 21) can include the vehicle 811C (FIG. 21) and the pedestrian 3D bounding box 813A (FIG. 21) can include the pedestrian 811D (FIG. 21). The front and back faces of the 3D bounding box can be detected from a database of point cloud depth data.The raw point cloud data can also be used to provide data to a feature learning network, which can partition the space into voxels, convert the points within each voxel into a vector representation, and characterize the shape information.
[0087] Referring now to FIG. 22, an object detection process 655 (FIG. 18B) and an object detection / classification process 655I (FIG. 26) can extract points from the bounding box associated with an object identified in the bounding box. The associated 2D object classification can be used with the extracted points to refine the 3D bounding box, i.e., modify the 3D bounding box to more closely follow the contour of the object in the 3D bounding box. For example, a vehicle 811C (FIG. 21) in a vehicle 3D bounding box 813B can be represented by a vehicle point 815B, and a pedestrian 811D (FIG. 21) in a pedestrian 3D bounding box 813A can be represented by a pedestrian point 815A. An object parameter estimation process 659 (FIG. 18B) can track the bounding box in subsequent frames and combine these data with sensor data, such as, for example, but not limited to, radar data, to estimate parameters associated with the object. The parameters can include, but are not limited to include, speed and acceleration. For example, when a pedestrian 811D (FIG. 21) is moving, pedestrian point 815A, which is bounded by pedestrian 3D bounding box 813A, can be moved to updated pedestrian 3D bounding box 817A and associated with updated pedestrian point 817B.
[0088] Referring now to FIG. 23, an object parameter estimation process 659 can combine the updated bounding box and point data with the 2D classification information to produce a dynamic map scene. An object model / propagation process 661 can predict the movement of objects in the dynamic map scene according to models associated with the classified objects. For example, pedestrians and moving vehicles may generally follow movement patterns that may allow prediction of future locations of these objects. For example, a pedestrian 811D starting movement from a pedestrian start location 825 may move at a certain speed and in a certain direction, which may be estimated based on sensor data and used by the object model / propagation process 661 and the pedestrian model to predict the location of the pedestrian 811D at the location 829. A measure of uncertainty may be factored into the location prediction based on any number of possible reasons why the pedestrian would not follow the standard model. The pedestrian 811D may end up at the end location 829 or anywhere within the uncertainty area 821. The multi-purpose vehicle 113 may begin travel from a start location 827 and may travel to an end location 823 in an amount of time that may be predicted by a model of the multi-purpose vehicle 113 performed by the object model / propagation process 661. The object model / propagation process 661 (FIG. 18B) may estimate whether the multi-purpose vehicle 113 will encounter an obstacle based on the predicted start and end locations of the multi-purpose vehicle 113 and any obstacles that may be reached in its path. The proposed route may be modified in response to the expected obstacles.
[0089] 24, the path planning subsystem 517 can include, but is not limited to, a path planning control process 667, which can include a guided policy search that can use differential dynamic programming to generate guided samples and aid the policy search by searching for high reward regions. In some configurations, features 824, such as, but not limited to, accelerate, decelerate, turn left, and turn right, and labels 826, such as, for example, states and actions, can be used to create a model for path planning. Relationships between feature values 828 can be used to create the model. In some configurations, when the features include actions, the feature values 828 can be based on at least the reward for performing the action, the learning rate of the neural network, and the best reward obtainable from the state the action places the actor in. For example, as pedestrian 811D and multi-purpose vehicle 113 are moving, the model executed by path planning control process 667 can determine whether / when the path of pedestrian 811D intersects with the path of multi-purpose vehicle 113 by using the model to predict the movement of both pedestrian 811D and multi-purpose vehicle 113.
[0090] 25, confidence value 832 may indicate the likelihood that the model prediction will accurately predict path convergence between obstacles. Confidence value 832 may be determined as the model is developed by running the model under test conditions. According to the model run by the path planning process 667, the likelihood of path convergence is highest in region 832, lowest in region 836, and moderate in region 834.
[0091] Still continuing to refer to FIG. 18A , when the supervisory autonomous layer 703 is activated, the remote control interface 603 can automatically control the utility vehicle 113. The remote control interface 603 can receive data from a system collector 119, such as, for example, but not limited to, a beacon 119C ( FIG. 1 ), which can supplement and / or replace data that can be received locally by a sensor 118 associated with the utility vehicle 113. The beacon 119C ( FIG. 1 ) can include, for example, an overhead sensor, whose data can be used to automatically update a delivery route being performed by the utility vehicle 113. In some configurations, the supervisory autonomous layer 703 can include, but is not limited to include, the autonomous layer 701, the remote control interface 603, the fleet network interface 613, the route planner 503, the fleet map database 609, and the map management pipeline 611. The route planner 503 can access the fleet map database 609 and prepare a proposed route between the product location and the product destination. The route planner 503 can provide the proposed route to the multi-purpose vehicle 113 through the fleet network interface 613, the communication network 115, and the vehicle network interface 623 (also referred to herein as a communication route). The remote control interface 603 can automatically control the direction and speed of the multi-purpose vehicle 113 as the multi-purpose vehicle 113 proceeds along the updated delivery route based at least in part on data from the system collector 119. The supervisory autonomy layer 703 can take over control, for example, but not by way of limitation, when the multi-purpose vehicle 113 recognizes that the sensor 118 may have failed or return no data. When failed or no sensor data becomes available to the multi-purpose vehicle 113 to continually update its proceeding route, the multi-purpose vehicle 113 may request assistance from the remote control interface 603.
[0092] Referring now primarily to FIG. 26, the map management pipeline process 611 can provide maps to the route planning process 503 (FIG. 18A), which can be provided to the utility vehicle 113 through the communication route. To provide the maps, the map management pipeline process 611 can access current map data 751 (FIG. 29), locate the data, detect and classify objects and surfaces, filter out undesirable objects, and update the current map data. The map management pipeline process 611 can include, but is not limited to include, a data collection process 652, a route location process 653I, an object detection / classification process 655I, a surface detection / classification process 658, an object exclusion process 656, and a map update process 662. The data collection process 652 can receive sensor data 753 (FIG. 29) from the system collector 119C and provide the data to the location process 653I. The location process 653I can receive sensor data 753 (FIG. 29) and current map data 751 (FIG. 29) from the robot map database 619A. The robot map database 619A can include map data as described herein, but is not limited to include same. Other data that can be optionally included are pedestrian traffic density, pedestrian crossing requirements, traffic signs, sidewalk locations, sidewalk conditions, and non-sidewalk drivable areas. The current map data 751 (FIG. 29) can include information about the route between the starting location and the destination. The location process 653 can create located data 755 (FIG. 29) from the current map data 751 (FIG. 29) and the sensor data 753 (FIG. 29). An object detection process 655I can detect and classify located objects in the current map data 751 (FIG. 29) and sensor data 753 (FIG. 29), and an object exclusion process 656 can exclude objects that meet preselected criteria from the located data 755 (FIG. 29). A surface detection process 658 can detect and classify located surfaces in the current map data and system collector data.The surface detection process 658 can detect solid surfaces such as, for example, but not limited to, brick walls, building corners, and security fences. The surface detection process 658 can locate approximately horizontal surfaces, for example, but not limited to, surfaces that rise a preselected number of degrees or less from horizontal. The surface detection process 658 can create polygons in the point cloud data associated with the delivery area and match the polygons to images that are time-matched with the point cloud data. The polygons can be projected onto the images and the images within the polygons can be identified. Once identified, the images can be used to teach the surface detection process 548 to automatically identify the images. The object exclusion process 656 and the surface detection process 658 can provide detected and classified objects 757 (FIG. 29) and surfaces, for example, but not limited to, driving surfaces 759 (FIG. 29), to the map update process 662, which can update the current map data 751 (FIG. 29) and provide the updated current map data to the robot map database 619A.
[0093] Referring again to FIG. 18A, the supervisory autonomous layer 703 can include a remote control interface 603 that can provide control of the multi-purpose vehicle 113 under at least one preselected condition. The remote control interface 603 can receive sensor data and plan a path for the multi-purpose vehicle 113 in real time. The remote control interface 603 can include, but is not limited to include, real time multi-robot path planning 503A (FIG. 28), object identification and tracking 655A (FIG. 28), robot tracking 603C (FIG. 28), a data receiver from the multi-purpose vehicle 113, and a data receiver for the sensor data. The remote control interface 603 can be executed, for example, but not limited to, within a beacon 120C (FIG. 1) or any system collector 119C (FIG. 2) near the multi-purpose vehicle 113. The real time multi-robot path planning 503A (FIG. 28) can receive data from any source in the vicinity of the remote control interface 603 and the multi-purpose vehicle 113. In some configurations, the real-time multi-robot path planning 503A (FIG. 28) can receive sensor data from a traffic light interface 7122 (FIG. 28). The traffic light interface 7122 (FIG. 28) can receive sensor data from sensors mounted on traffic lights and other stationary features. In some configurations, the real-time multi-robot path planning 503A (FIG. 28) can receive sensor data from an object identification and tracking process 655A (FIG. 28). In some configurations, the object identification and tracking process 655A (FIG. 28) can receive and process LIDAR 7124 (FIG. 28) and camera 7126 (FIG. 28) data. In some configurations, the real-time multi-robot path planning 503A (FIG. 28) can receive telemetry data 603A (FIG. 28) from a vehicle tracking process 603C (FIG. 28). The vehicle tracking process 603C (FIG. 28) can process the telemetry data 603A (FIG. 28) from the utility vehicle 113 and provide the processed data to the real-time multi-robot path planning 503A (FIG. 28).The real-time multi-robot path planning 503A (FIG. 28) can use the received data to prepare an obstacle-free path for the multi-purpose vehicle 113 according to traditional path planning methods. The real-time multi-robot path planning 503A (FIG. 28) can provide the path to vehicle commands 603B (FIG. 28), which can generate movement commands for the multi-purpose vehicle 113. The location telemetry stream 653A (FIG. 28) can help the multi-purpose vehicle 113 correctly process the movement commands by informing the multi-purpose vehicle 113 of its current location.
[0094] 18A , in some configurations, the fleet manager 601 can manage the dispatcher 501 by ensuring that the multi-purpose vehicles 113 are efficiently allocated and can monitor deployment. The fleet manager 601 can receive requests for delivery and determine available multi-purpose vehicles 113 and / or multi-purpose vehicles 113 that can most efficiently perform the requested delivery. The fleet manager 601 can instruct the dispatcher 501 to begin the process of providing a multi-purpose vehicle 113 for the requested delivery. The dispatcher 501 can provide the route plan 503 with the location of the goods and the destination to which the goods are to be delivered.
[0095] Now, referring primarily to Figures 27 and 28, the supervisory autonomous layer 703 (Figure 18A) can automatically rescue the multi-purpose vehicle 113 (Figure 28) under some circumstances. In other circumstances, the multi-purpose vehicle 113 (Figure 28) can encounter situations that may require a non-automated response. The human autonomous layer 705 (Figure 18A) can provide such support. One way to determine which layer to hand over control of the multi-purpose vehicle 113 (Figure 28) to is to determine whether the sensors that provide route-related information to the multi-purpose vehicle 113 (Figure 28) provide accurate data. The location process 653 (Figure 18B) can include a handover sequence, which can include the method 700 (Figure 27). The method 700 (Figure 27) can manage the transfer of control of the multi-purpose vehicle 113 (Figure 28) when assistance is required. Method 700 (FIG. 27) may include, but is not limited to include, step 702 (FIG. 27) of calculating, by localization process 653 (FIG. 18B), a confidence interval within a sensor, such as, but not limited to, sensor 118 (FIG. 18B), whose data is used by localization process 653 (FIG. 18B), which may provide local perception. The confidence interval is calculated based at least on whether the signal-to-noise ratio within the sensor data is low, e.g., whether the image contrast is within a preselected range. If, at 704 (FIG. 27), the confidence interval is greater than or equal to a preselected percentage, method 700 (FIG. 27) may include step 707 (FIG. 27) of transferring control by localization process 653 (FIG. 18B) to object detection process 655 (FIG. 18B). After completion of execution of the perception process 536 (FIG. 18B) and the path planning process 517 (FIG. 18B), the method 700 (FIG. 27) may include step 719 (FIG. 27) of following the planned path by a path following process 523 (FIG. 18B). If the confidence interval is less than a preselected percentage at 704 (FIG. 27), the method 700 (FIG. 27) may include step 706 (FIG. 27) of locating at least one of the system collectors 119 (FIG. 2) that may meet the preselected threshold criteria or single threshold criteria by a location process 653 (FIG. 18B).The threshold criteria may include, but are not limited to, a geographic location for the utility vehicle 113 (FIG. 28), the height of the system collector 119 (FIG. 2), the processing capacity of the system collector 119 (FIG. 2), and the status of the system collector 119 (FIG. 2). If the utility vehicle 113 (FIG. 28) and the located system collector 119 (FIG. 2) can communicate electronically at 709 (FIG. 27), the method 700 (FIG. 27) may include a step 711 (FIG. 27) of requesting route planning instructions from the located system collector 119 (FIG. 2) by the location process 653 (FIG. 18B). If the located system collector 119 (FIG. 2) can prepare a planned route for the utility vehicle 113 (FIG. 28) at 713 (FIG. 27), the method 700 (FIG. 27) can include step 715 (FIG. 27) of receiving the planned route by a route following process 523 (FIG. 18B), and step 719 (FIG. 27) of following the planned route by the route following process 523 (FIG. 18B). If, at 713 (FIG. 27), the located system collector 119 (FIG. 2) is unable to prepare a planned route for the multi-purpose vehicle 113 (FIG. 28), or if, at 709 (FIG. 27), the multi-purpose vehicle 113 (FIG. 28) and the located system collector 119 (FIG. 2) are unable to communicate electronically, the method 700 (FIG. 27) may include step 717 (FIG. 27) of requesting assistance from the infrastructure 6128 (FIG. 18A) by the location system 653 (FIG. 18B).
[0096] 29 and 30, the route planning process 503 (FIG. 30) can create a route map that can be used to create a path for the utility vehicle 113 (FIG. 2). The route planning process 503 (FIG. 30) can form a series of connected nodes 781 (FIG. 30) based on the map 751 (FIG. 29), the start location 783 (FIG. 30), and the destination location 785 (FIG. 30). The route planning process 503 (FIG. 30) can assign a cost 787 (FIG. 30) to each segment in each of the nodes 781 (FIG. 30). The assigned cost 787 (FIG. 30) can be based on a conventional route planning algorithm that considers at least the detected and classified objects 757 (FIG. 29), the identified driving surfaces 759 (FIG. 29), and the located sensor data 755 (FIG. 29), as well as the distance between the nodes 781 (FIG. 30), the road surface, and the complexity of the traveled route. The route planning process 503 (Figure 30) can traverse a graph 793 (Figure 30) of costs 787 (Figure 30) and create a least-cost route 791 (Figure 30), which can be overlaid on a route map 789 (Figure 30), where a subset of the map 751 (Figure 30) corresponds to the geographic location of the least-cost route 791 (Figure 30).
[0097] 31, a method 650 for providing a map to a route planning process 503 (FIG. 18A) may include, but is not limited to include, steps of identifying 651 at least one map associated with a delivery area, the map including a route between a starting location and a destination. The method 650 may include locating 653 data associated with the map and data collected by at least one sensor associated with the delivery area. The method 650 may include 655 detecting at least one located object in the at least one delivery area, 657 classifying the at least one located object, and, optionally, 659 excluding at least one of the located objects based on at least an exclusion criterion. The method 650 may include 661 detecting at least one located surface in the at least one delivery area, and 663 classifying the at least one located object. The method 650 may include updating 665 a map with the located objects and surfaces and planning 667 a utility vehicle route based on at least the updated map.
[0098] Referring now to FIG. 32A, the human autonomous layer 705 can include, but is not limited to include, the autonomous layer 701 (FIG. 18A) and the infrastructure 6128 (FIG. 18A). The infrastructure 6128 can include, but is not limited to include, the fleet manager 601, which can ensure communication and coordination between fleet members, among which the multi-purpose vehicle 113 is. The fleet manager 601 can execute any suitably configured processor, for example, in electronic communication with the fleet members. The multi-purpose vehicle 113 can send an alert to the fleet manager 601, which can trigger the alert according to pre-selected criteria. In some configurations, the fleet manager 601 can provide a first set of responses to alerts generated by the multi-purpose vehicle 113 within a pre-selected geography for a fleet asset, for example, truck 2001. The fleet manager 601 can provide a second set of responses, which can be the same or different from the first set of responses, depending on the capabilities of the fleet assets. The fleet manager 601 can provide a third set of responses if the multi-purpose vehicle 113 reports a breakdown. For example, as part of the third set of responses, the fleet manager 601 can locate a fleet asset that is closest to the multi-purpose vehicle 113 and that includes appropriate repair capabilities for the breakdown. The fleet manager 601 can provide a fourth set of responses if the multi-purpose vehicle 113 needs to be delivered to an unreachable location, e.g., a location that includes unnavigable terrain. For example, as part of the fourth set of responses, the fleet manager 601 can request assistance from a human asset that is trained to assist the multi-purpose vehicle 113. The fleet manager 601 can include response sets for any number of use cases.
[0099] Referring now to FIG. 32B, the fleet manager 601 can manage security screening of any entity that may have access to the utility vehicle 113. The fleet manager 601 can include, but is not limited to include, authentication and role-based access control. For entities known to the fleet manager 601, credentials can be proven by something the entity has or something the entity knows. For example, when the utility vehicle 113 needs assistance, the remote operator 2002 can authenticate to take control of the utility vehicle 113. In some configurations, a local employee known to the fleet manager 601, with specific capabilities, can take control of the utility vehicle 113 and authenticate to the fleet manager 601 to perform the task. In some configurations, the entity can have a portable device that can be used as a credential, for example. In some configurations, characteristics of the entity known to the fleet manager 601 can be used for security purposes, for example, the entity's employment shift and employment location. The fleet manager 601 can manage authentication by the remote entity or the local entity. Authentication can be accomplished, for example, by typing a password into the portable device once preselected criteria are met. The fleet manager 601 can identify the utility vehicle 113, for example, but not by way of limitation, through an encryption key managed by the fleet manager 601. The fleet manager 601 can combine the provable identity of the utility vehicle 113 with the provable identity of the worker 2003, check the access control of the worker 2003, and signal the utility vehicle 113 to allow the worker 2003 access to the utility vehicle 113. Access can include physical or remote access. If the utility vehicle 113 is unable to communicate with the fleet manager 601, the fleet manager 601 can deploy an assistant to rescue the utility vehicle 113.
[0100] Although the present teachings have been described in terms of specific configurations, it should be understood that they are not limited to these disclosed configurations. Numerous modifications and other configurations will occur to those skilled in the art to which this application pertains, which are intended to be and are covered by both this disclosure and the appended claims. It is intended that the scope of the present teachings should be determined by proper interpretation and construction of the appended claims and their legal equivalents, as understood by those skilled in the art relying on the present disclosure in this specification and the accompanying drawings.
Claims
[Claim 1] An apparatus, system or method.
Citation Information
Patent Citations
Robot obstacle avoidance behavior learning and target searching method based on deep belief network
CN107818333A
Person identification method, device therefor, recording medium recording person identification program, and robot system
JP2000222576A
Guide robot
JP2003340764A
Robot control system and robot control method
JP2014168824A
Method and system for determining driving by predicting vehicular traffic action of autonomous travel vehicle
JP2018083610A