Linear Convoying
Maintained by: mikerb@mit.edu Get PDF
src: project-pavlab/memos/memo_swarm_convoying
1 Linear Convoying
1.1 The Convoy Behavior
1.2 Capturing a Marker
1.3 Speed of the Convoying Vehicle - The Speed Policy
1.4 Convoying Field Experiments
1 Linear Convoying
The linear convoying mission, as discussed previously in Section ??? has roughly two phases. In the first phase discussed previously, the vehicles hold a series of auctions to determine their ordering. In the second phase, discussed here, the vehicles hold their convoy while maintaining the linear formation and keeping a prescribed range between vessels. A related mission objective is to support convoy re-ordering, which we are only beginning to develop in this project.
1.1 The Convoy Behavior [top]
The Convoy behavior will drive a vehicle to follow another specified vehicle by following virtual markers dropped by the lead vehicle. The vehicle following the lead vehicle is referred to as the convoying vehicle. As the lead vehicle transits, the convoying vehicle will make note of the lead vehicle's position and periodically note as markers, the position of the lead vehicle. The convoying vehicle will continuously transit to the rear-most marker, the aft marker. Upon reaching the aft marker, it will proceed to the next rear-most marker, and so on. The particulars of the behavior are highly customizable through configuration parameters, such as inter_mark_range, the distance between markers. They will be highlighted as such, with their meaning and default values discussed.
A marker is comprised of the observed X-Y or Lat/Lon position of the lead vehicle at some previous point in time. The lead vehicle typically does not communicate marker information explicitly to the convoying vehicle. Rather the convoying vehicle notes and stores this information from incoming node reports of the lead vehicle. Incoming node reports may be derived via AIS, direct communications, or through sensors on the convoying vehicle. The source of the lead vehicle position information is irrelevant to this behavior.
Figure 1.1: Convoy Markers: The convoying vehicle heads toward the rear-most marker behind the lead vehicle. As the convoying vehicle reaches each marker, the reached marker is dropped, and then proceeds to the next rear-most marker as shown on the left. In a lagging situation, shown on the right, the convoying vehicle is still heading toward the aft marker, but the convoying vehicle's path, while it is lagging, may not closely follow the lead vehicle's path.
The marker tail is the set of all markers. The marker tail length is the sum of line segments between markers plus the range from the lead vehicle to the lead marker, which is the most recently added marker just aft of the lead vehicle. The aft marker is the oldest marker in the marker tail and presumably the marker that the convoy behavior is driving toward. The range between markers is set with the configuration parameter inter_mark_range.
A new lead marker is added as the lead vehicle moves, whenever the range between the lead vehicle and the current lead marker becomes greater than the inter_mark_range. The aft marker is removed from the rear of the tail if the tail length becomes longer than tail_length_max. By this policy, the tail length should always be less than or equal to tail_length_max. The aft marker may also be removed when or if the convoying vehicle captures the marker.
1.2 Capturing a Marker [top]
As the convoying vehicle approaches its next marker, conditions are examined to determine when it has reached, or captured, the marker. The simplest criteria is when the vehicle has reduced its range to the marker to be less than the capture_radius, a configuration parameter with default value of 5 meters. This is shown on the left in Figure 1.2. Occasionally the convoying vehicle may miss the marker, perhaps due to external environmental forces, or other mission considerations that pull the vehicle off a direct path to the marker. If the capture_radius were the only criteria for capturing a marker, the convoying vehicle may be forced to loop back to try again. If the capture_radius is too large, then the vehicle would be free, perhaps too early, to begin heading toward the next marker. If the lead vehicle is on a highly nonlinear path, a very large capture_radius may result in the convoying vehicle deviating too much from the lead vehicle's path.
Figure 1.2: Capturing a Marker: The capture_radius determines when a convoying vehicle reaches a marker (left). If the convoying vehicle gets within the slip_radius range of the marker, the marker will be considered reached when or if the range to the marker begins to increase (right).
The slip_radius configuration parameter specifies a larger range to the marker than the capture radius. Once the convoy vehicle enters within range of the slip_radius, the marker will be considered captured if the angle between ownship, the marker and next marker, is less than 90 degrees. The default value for the slip_radius is 20 meters. The slip_radius range, as a rule of thumb, is chosen to be 2-4 times bigger than the capture_radius.
When a marker is captured, the Convoy behavior removes the marker from its internal marker tail. Markers are removed from the tail when either they are captured by the convoying vehicle, or when the marker tail length exceeds the maximal length set by the tail_length_max parameter.
1.3 Speed of the Convoying Vehicle - The Speed Policy [top]
The convoy behavior uses a speed policy to determine which speed, the set speed, , that will best position the vehicle to the ideal convoy range to the lead vehicle. The policy consists of the following six parameters:
Each parameter is either user-configurable in the mission planning phase or modifiable during the course of the mission. The parameters are shown in Figure 1.3 with both their long and short names indicated. The policy is applied also using (a) the current convoy range, , (b) the speed of the lead vehicle, vcn, and (c) the direct range between vehicles. The latter is only used as a measure for triggering a safety full-stop. The set speed will either match, overshoot, or undershoot the lead vehicle speed depending on whether the current convoy range is ideal, too far, or too close respectively.
Figure 1.3: The Convoy Speed Policy: The set speed of the convoy behavior is determined by the speed policy, which depends on (a) the speed of the lead vehicle, (b) the current convoy range. The speed policy is configured by the user and may be dynamically adjusted during a mission. There are six correction modes identified, based on the relationship between the current convoy range and the ideal convoy range.
When the current convoy range is not ideal, the degree of the correction in the set speed is linearly proportional to the difference between the convoy range and ideal convoy range. Note that around the ideal convoy range there is a tolerance, within which the set speed will simply be the lead vehicle speed. The lag_speed_delta configuration parameter shown on the right in Figure 1.3 affects how much the behavior is able to request a higher set speed than the lead vehicle when needing to close range to the lead vehicle.
The relationship between the current convoy range and the ideal convoy range determines which of six correction modes apply at the moment. They are shown in Figure 1.3, and defined below:
Correction Mode | Condition | Set Speed | |
1 | full stop | 0 (all-stop) | |
2 | close | ||
3 | ideal close | vcn | |
4 | ideal far | vcn | |
5 | far | ||
6 | full lag |
The speed policy will determine the set-speed, , and the correction mode will also determine the shape of the off-peak areas of the objective function used by the Convoy behavior.
1.4 Convoying Field Experiments [top]
In August of 2021, the Convoy behavior was tested on the Charles River on the MIT campus at the marine autonomy lab. Four small unmanned surface vehicles (USVs), the Heron USVs, from Clearpath Robotics, were used, shown in Figure 1.4.
Figure 1.4: Convoying Field Experiments: Left: four Clearpath Heron USVs. Right: A four-vehicle convoy with four vehicles in a trial on the Charles River in Cambridge, MA. The convoy markers for each vehicle are shown and color-coded. The green vehicle is following the green markers and so on. The lead vehicle is following a series of waypoints. The lead vehicle’s previous waypoint is roughly at the elbow of the orange markers.
Each vehicle is equipped with a GPS and WiFi connection. Position information, similar to an AIS message, is shared regularly between vehicles. Unlike larger surface vehicles which use radar, camera or LIDAR systems to localize nearby vessels, in our setup, fairly precise information about ownship and contact position is refreshed frequently, 2-4 times per second. Each vehicle is initially deployed to a muster region as described in Section ???. After each vehicle arrives in the muster region, the vehicles begin a decentralized auction to determine convoy ordering, as described in Section ???. The vehicle then proceed using the Convoy behavior described in this section, arriving at a destination muster region, once again transitioning to the muster behavior for the end-of-mission stage.
During the winter of 2021, further development was conducted to define and measure performance metrics for mustering and convoying. These metrics will be applied to a more comprehensive set of experiments in the in summer of 2022, prior to the culmination of this project in September of 2022.
Page built from LaTeX source using texwiki, developed at MIT. Errata to issues@moos-ivp.org. Get PDF