U.S. Department of Transportation
Federal Highway Administration
1200 New Jersey Avenue, SE
Washington, DC 20590
202-366-4000
Federal Highway Administration Research and Technology
Coordinating, Developing, and Delivering Highway Transportation Innovations
REPORT |
This report is an archived publication and may contain dated technical, contact, and link information |
|
![]() |
Publication Number: FHWA-HRT-17-104 Date: June 2018 |
Publication Number: FHWA-HRT-17-104 Date: June 2018 |
In this research project, MOEAs have been implemented to optimize the multiple objective functions involved. MOEA Framework (moeaframework.org) is a free and open-source Java framework for multi-objective optimization using a variety of EAs, including GAs and ESs. In this object-oriented framework, an instance of the “abstract problem” class needs to be created, in which the calculation process for the multiple objective functions is implemented. Then an instance of the “problem execution” class is created, where the abstract multi-objective optimization problem is solved using a selected “algorithm.” The user should employ an integrated development environment (IDE) to add the “MOEAFramework-2.10.jar” to the build path before running the codes discussed in this appendix.
The following sections in this appendix describe the source codes developed for this study. In addition, the “ReadFromFile.java” and “WriteToFile.java” source codes were developed to read the calibration data and factors and to write the rutting calculation results and final calibration factors into corresponding files.
To use these codes, the user needs to store the calibration and validation datasets in two separate folders and provide the folder path in the “problem execution” code. Depending on the number of objective functions, different source codes should be used as explained below. The calibration dataset comprises one folder per test section, which contains both the measured rutting through time and the intermediate pavement response files calculated using the AASHTOWare® Pavement ME Design software. The validation dataset only includes measured rutting in each folder for each test section.
All the noted source codes and the calibration and validation data files used for this study are available online through https://www.fhwa.dot.gov/.
This code is the main code that needs to be executed. An executable file was not created for this project because this was a research experiment, and the developed code does not include a front-end user interface. Therefore the “problem execution” code needs to be run through an IDE. The user needs to make sure that all the other corresponding source codes are located in the same folder and that the folder path for the calibration and validation datasets is specified within this source code. Table 48 shows the names of the “problem execution” codes and the corresponding “problem” codes for the calculation of various numbers of objective functions.
Table 48. Developed source codes for multi-objective calibration of MEPDG rutting models.
Problem To Be Solved | Problem Execution Code | Rutting Problem Objective Functions Code |
---|---|---|
AASHTO calibration method for new pavements on SPS-1 | ProblemExecution_SPS1_ 1Obj.java |
RuttingProblem_SPS1_ 1Obj.java |
Two-objective calibration for new pavements on SPS-1 | ProblemExecution_SPS1_ 2Obj.java |
RuttingProblem_SPS1_ 2Obj.java |
Four-objective calibration for new pavements on SPS-1 and FDOT APT | ProblemExecution_SPS1_ 4Obj.java |
RuttingProblem_SPS1_ 4Obj.java |
AASHTO calibration method for overlaid pavements on SPS-5 | ProblemExecution_SPS5_ 1Obj.java |
RuttingProblem_SPS5_ 1Obj.java |
Two-objective calibration for overlaid pavements on SPS-5 | ProblemExecution_SPS5_ 2Obj.java |
RuttingProblem_SPS5_ 2Obj.java |
As noted above, an instance of the “abstract problem” class was created, in which the calculation process for the multiple objective functions is implemented. Table 48 includes the file names for the Java codes created for rutting problems according to the pavement type (new AC models calibrated on SPS-1 and overlaid AC models calibrated on SPS-5 data) and the number of objective functions used (single-objective calibration according to the AASHTO method, two-objective minimization of bias and STE, or four-objective optimization using LTPP and APT data simultaneously). These source codes set up the problem solutions (calibration factors) and the way in which the various objective functions are calculated. These source codes are called from the corresponding problem execution codes, and they in turn call for the source code that provides total pavement deformation estimates.
The source code called TotalDeformation.java adds the cumulative rutting developed in all pavement layers (including asphalt-bound and unbounded materials) up to each month through pavement age. This source code calls the corresponding codes for calculating the cumulative rutting in AC and unbounded layers. This source code is called by the problem codes to provide the specific calculations of objective functions.
The source code called CumulativeAC.java provides a simulated process for calculating the amount of permanent deformation accumulated in asphalt-bound layers through time and under specific traffic and climatic conditions using the intermediate pavement response files provided by the AASHTOWare® Pavement ME Design software. The detailed process is described in chapter 4, under the heading “Simulating Permanent Deformation in Asphalt Concrete Layers.” This source code is called by the source code for calculating the total pavement deformation.
The source code called CumulativeUnbounded.java provides a simulated process for calculating the amount of permanent deformation accumulated in unbounded layers through time and under specific traffic and climatic conditions using the intermediate pavement response files provided by the AASHTOWare® Pavement ME Design software. The detailed process is described in chapter 4, under the heading “Simulating Permanent Deformation in Unbound Materials.” This source code is called by the source code for calculating the total pavement deformation.