Skip to content

Commit

Permalink
Uploading FTOT 2024.3 release (#61)
Browse files Browse the repository at this point in the history
* Add main level files

* Upload files to program directory

* Upload to lib directory

* Upload files to tools directory

* Upload template examples
  • Loading branch information
kzhang81 authored Oct 8, 2024
1 parent a20bd6a commit 1c753b1
Show file tree
Hide file tree
Showing 23 changed files with 5,476 additions and 4,849 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ See the [Getting Started section on the FTOT landing page](https://volpeusdot.gi
* Alexander Oberg (Volpe)
* Matthew Pearlson (Volpe)
* Tess Perrone (Volpe)
* Jaewoong Yun (Volpe)
* Kevin Zhang (Volpe)

## Project Sponsors:
Expand Down
15 changes: 15 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
# FTOT Change Log

## v2024_3

The FTOT 2024.3 public release includes updates related to customization of first-mile and last-mile costs, custom demand fulfillment incentives by destination facility and commodity, default processor minimum capacities, the Tableau dashboard, as well as minor bug fixes and back-end improvements. The following changes have been made:
* Added functionality to allow users to model several first-mile, last-mile related costs. By default, FTOT models transport to and from user-defined facilities via short artificial links that connect to the modal networks. By default, transport on these links follows local road costs and impedances. The 2024.3 release allows users to (1) specify different transport costs on these links through the XML, (2) impede artificial links differently than modal network links, (3) define additional facility unit costs by facility, commodity phase of matter, and in vs. out movements through the facility-commodity CSV files. These customizations are reflected in FTOT reporting outputs.
* Expanded FTOT’s unmet demand penalty parameter (UDP) to allow for facility-specific and commodity-specific values. The default UDP parameter remains in the XML input file, which the user can overwrite or supplement with values in the destination facility-commodity CSV file. This allows the user to incentivize meeting demand at certain facilities (for certain commodities) by setting a higher UDP for that facility (or commodity).
* Adjusted the default minimum processor capacity to be zero when the user specifies a maximum capacity but no minimum capacity. Previously, FTOT used a default minimum capacity of half the maximum capacity—the user can still define this by explicitly defining minimum capacity in an optional column in the processor facility-commodity CSV file.
* In the Tableau workbook, fixed a bug in the bar chart tooltips in the By Supply & Demand dashboard and made various aesthetic improvements.
* Other updates:
* Updated the ArcGIS dependency to require version 3.0 or higher.
* Created an automated testing suite for the development team to ensure functionality of the codebase and improve development processes.
* Fixed a logger warning that incorrectly indicated "Impedance weights file not specified", when an impedance weight file was specified.
* Fixed a bug with processor capacities that caused FTOT to overwrite a minimum total input or output capacity when both minimum and maximum total capacities were provided for inputs or outputs to a facility.
See documentation files for additional details.


## v2024_2

The FTOT 2024.2 public release includes updates related to cost reporting outputs and visualizations, modeling of intermodal movement costs, scenario input validation, and back-end improvements to how the transportation network is processed and translated into NetworkX. The following changes have been made:
Expand Down
11 changes: 5 additions & 6 deletions program/ftot.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@
ureg.define('us_ton = US_ton')


FTOT_VERSION = "2024.2"
SCHEMA_VERSION = "7.0.5"
VERSION_DATE = "7/8/2024"
FTOT_VERSION = "2024.3"
SCHEMA_VERSION = "7.0.6"
VERSION_DATE = "10/8/2024"

# ===================================================================================================

Expand Down Expand Up @@ -63,7 +63,6 @@
# optimization options
# --------------------
o1 = optimization setup; structures tables necessary for optimization run
TODO pickle "prob" and move at least variable creation to o1, constraints if possible
o2 = optimization calculation; Calculates the optimal flow and unmet demand for each OD pair with a route
Expand Down Expand Up @@ -172,12 +171,12 @@
try:
import arcpy
arcgis_pro_version = arcpy.GetInstallInfo()['Version']
if float(arcgis_pro_version[0:3]) < 2.6:
if float(arcgis_pro_version[0:3]) < 3.0:
logger.error("Version {} of ArcGIS Pro is not supported. Exiting.".format(arcgis_pro_version))
sys.exit()

except RuntimeError:
logger.error("ArcGIS Pro 2.6 or later is required to run this script. If you do have ArcGIS Pro installed, "
logger.error("ArcGIS Pro 3.0 or later is required to run this script. If you do have ArcGIS Pro installed, "
"confirm that it is properly licensed and/or that the license manager is accessible. Exiting.")
sys.exit()

Expand Down
Loading

0 comments on commit 1c753b1

Please sign in to comment.