Monday, April 21, 2014

Visualizing Heuristic Results

Once platooning becomes a safe operation, the next question to answer is, "How should we form platoons in a way that saves the most dollars?" Also, "How can we visualize these results?"


In order to answer these important questions...
1. The first step is to track vehicle locations and speeds at intermittent times. This way, we obtain a dataset that serves as an analytical starting point. We can use the data to see which trucks could have joined into a platoon on that dataset.
Since drivers have a right to privacy, we can't share any real data. The full tutorial on how to create a fictitious dataset is impractically long for a blog post; however, the following snapshot is a very small example of what a dataset should look like. In particular, it should include:
Column A: vehicle id (unique integer value to associate with a given vehicle)
Column B: speed
Column C: Latitude
Column D: Longitude
Column E: Heading
    1 => Heading north
    2 => Heading south
    3 => Heading east
    4 => Heading west
    0 => Vehicle Stationary
Column F: Road Alias (integer value associated with the road that the vehicle is on)
Column G: Time (decimal value of the time that the row of vehicle data was logged; e.g. 12 indicates
    12:00 p.m., 12.5 indicates 12:30 p.m., and 13.25 indicates 1:15 p.m.)
Column H: Latitude converted to radians
Column I: Longitude converted to radians



2. The second step is to input such a dataset into a MATLAB script that I programmed to identify platooning opportunities and ultimately form platoons. The MATLAB script is a heuristic solver that utilizes steepest descent procedures to form platoons (and to join already-formed platoons together). In particular, the heuristic finds the two-vehicle join that provides the best savings, and it joins them. After updating the dataset, the heuristic repeats itself and finds the next two-vehicle join that provides the best savings. It repeats in this manner until all joins that generate fuel savings are exhausted.


3. After the heuristic forms platoons exhaustively, it generates summary bar graphs and box plots as well as two maps to help the researcher visualize the solution.
The first map is displayed below. It shows individual trucks and platoons on the road at the selected time, which, in this case, is 10:35 a.m. The white markers indicate that, at 10:35, there is a two-vehicle platoon at that location. Notice that all markers are heading south, as indicated by the directional arrow that each marker bears.





The second map is an aggregate description of the platooning action being executed. Each color of a road segment indicates that, over the entire analysis period, there were a certain number of platoons that traversed that part of the road. The number of platoons is indicated by the color of the road segment in combination with the map legend. Without further ado, here is the aggregate map: