XL-Optim
  • Home
  • Skills
  • Experiences
  • Education
  • Publications
  • About
  • Woodworking
  • Posts
  • Posts
  • Software performance - Back to the basics
  • My oldest child got a college scholarship
  • Woodwork for a transportation scientist
  • We need to talk about the trust we put on software
  • AequilibraE embraces Pandas
  • AequilibraE networks for the entire world
  • Editing Transportation networks in GIS
  • Spatialite and Python in 2020
  • Struggling for relevance in the age of COVID-19
  • AequilibraE and Google OR-Tools
  • Extracting the most from NumPy
  • AequilibraE equilibrium traffic assignment
  • Opening the door to a whole new world with AequilibraE
  • Transportation modeling & intellectual honesty
  • New RasterStats
  • Having fun with public data - Part 1 (obtaining the data)
  • New version of AequilibraE for QGIS 3.X
  • Displaying OMX matrix in QGIS
  • Get them filtered: A new plugin for QGIS
  • Adding Python packages to QGIS 3 on Windows 10
  • Towards efficient geoprocessing of movement data (Part 1)
  • Holidays & AequilibraE
  • Biogeme on Windows using Docker
  • A little more Delaunay Lines
  • Separating the women from the girls
  • Matrix API and multi-class assignment
  • More convenience for AequilibraE users
  • AequilibraE's minor releases
  • An update on AequilibraE
  • AequilibraE's new release
  • Biogeme infrastructure
  • Scenario comparison
  • Stacked bandwidths
  • AequilibraE Linux support and desire lines
  • Reading TransCad files into Numpy arrays
  • New version of AequilibraE
  • QGIS plugin for computing raster statistics
  • Presenting AequilibraE to the open source community
  • The next step for AequilibraE: True multi-threading
  • Introducing AequilibraE for QGIS
  • Gravity distribution model in Python
  • Using Delaunay tringles to build desire lines
  • Using raster images to model commodities
  • Python's Traffic assignment module (All or Nothing)
  • Calling TransCAD from Excel
  • Cube's log file
  • Transcad video tutorials
  • US Refineries
  • Seasonality analysis
  • Shortest Path - Djikstra in MS Excel
Hero Image
Software performance - Back to the basics

The last 3 years or so have been incredibly busy for me, and the proverbial dust around this place is good evidence of that. Much of that activity translated into incredible advances for AequilibraE, with a generational improvement to traffic assignment performance, transit assignment and, more recently, route choice. The common thread in these major advances, however, is that I did not write much of that code, and certainly nothing of importance.

August 4, 2024 Read
Hero Image
My oldest child got a college scholarship

I have had many different extra-curricular activities during my childhood and early adult life, ranging from philatelics and poetry-writing to multi-day hiking, horseback riding, footbal (it is FOOTBALL, not soccer) and collecting orchids. I have never seen any of these activities as hobbies, however. It is not that they were not important to me or that I didn’t dedicate enough time and money to them, but rather that I was not dedicated to improve my skills and knowledge on each one of them and took them as purely leisure activities.

December 31, 2022 Read
Hero Image
Woodwork for a transportation scientist

I have had many different extra-curricular activities during my childhood and early adult life, ranging from philatelics and poetry-writing to multi-day hiking, horseback riding, footbal (it is FOOTBALL, not soccer) and collecting orchids. I have never seen any of these activities as hobbies, however. It is not that they were not important to me or that I didn’t dedicate enough time and money to them, but rather that I was not dedicated to improve my skills and knowledge on each one of them and took them as purely leisure activities.

December 31, 2022 Read
Hero Image
We need to talk about the trust we put on software

Written in collaboration with Jan Zill . Before we begin, let us say that we will be speaking from a transportation modeling perspective, but there is no reason why this would not be true for other fields that rely heavily on (proprietary) software. Now back to the topic at hand. The origin of our concerns There are many things in transportation modeling practice that are fundamentally heuristic and are a true mix of science and art.

December 17, 2021 Read
Hero Image
AequilibraE embraces Pandas

If one takes a look at the AequilibraE code, they will find an unusual amount of NumPy gymnastics that would definitely point to a world with no Pandas. It is the case, however, that Pandas is not only alive and well, but it also has a large number of features that would greatly accelerate the development of AequilibraE and, in the case of I/O, greatly improve its performance. So why haven’t I started using Pandas when I first launched AequilibraE in 2014?

January 22, 2021 Read
Hero Image
AequilibraE networks for the entire world

A couple of months ago, somebody from the World Bank asked me for suggestions on how to go about computing a distance matrix between a series of points spread throughout India using Open-Street-Maps or something similar. Computing path computations on large networks are nothing new, nor is it to compute skim matrices for a large number of nodes. However, efficiently computing large distance matrices for huge networks is not necessarily trivial.

September 23, 2020 Read
Hero Image
Editing Transportation networks in GIS

I have now mentioned in two blog posts that I have missed an important blog post on the amazing work that my friend Andrew O’Brien and I did about 3 years ago (even though I have bragged about it to everybody I know in this industry). So since this was a truly collaborative effort, I invited him to co-author this blog post with me (although some description of how the idea really came about is largely a recollection of my thoughts from before I met Andrew).

August 17, 2020 Read
Hero Image
Spatialite and Python in 2020

Spatialite is one of those pieces of software that make you scratch your head when you realize it is the work of a single person and without huge support from major sponsors. The portability and power provided by that piece of software are just mind-boggling and seriously underappreciated. Spatialite is also a cornerstone of AequilibraE’s infrastructure and the heart of its network editing features. However, getting it to work with Python is not easy, especially on Windows.

June 2, 2020 Read
Hero Image
Struggling for relevance in the age of COVID-19

As I start to write this text (April 1st), it has now been a bit more than two months that the total number of reported cases of COVID-19 has passed 10,000 and about a month that the number of confirmed cases and reported deaths have started to climb at a seemingly uncontrollable speed. This post is a long rant with multiple targets, so I found it wise to break it down in sections.

May 10, 2020 Read
Hero Image
AequilibraE and Google OR-Tools

I have been using the routing tools inside Google OR-Tools for quite a while now, and I must say that it behaves incredibly well in most cases I tested. The procedures there are not the best you will find in the Operations Research world (neither in time nor in objective function results), but they are incredibly easy to set up and use. The first time I used it was for the development of a vehicle dispatcher to model services provided by Transportation Network Companies (TNC) such as Uber, Didi & Lyft.

March 31, 2020 Read
Hero Image
Extracting the most from NumPy

NumPy is fast, and for people using it correctly, it provides all performance they will need, as their bottleneck will most likely reside somewhere else in their code. There are times, however, when NumPy presents bottlenecks that are worth trying to address. In the age of AMD’s Ryzen line of CPUs, the lack of multi-threading in most NumPy operations is the most obvious of them, but that is not all.

March 24, 2020 Read
Hero Image
AequilibraE equilibrium traffic assignment

Traffic assignment is a cornerstone of any transportation modeling software, and regardless of what you are using it for (consulting or research), a capable traffic assignment tool/software/algorithm is often a required tool for a successful outcome. Even though it has taken me some time to appreciate the fact that the modeling practice also needed an open-source alternative, I quickly realized that my own research at ITS-UCI could not rely on commercial software when I was rudely refused access to some of the RESULTS of their traditional link-based traffic assignment procedure by one vendor (I did not procure other vendors at that time).

February 18, 2020 Read
  • ««
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
  • »»
Navigation
  • Skills
  • Experiences
  • Education
  • Publications
Contact me:
  • pedro@outerloop.io
  • pedrocamargo
  • Pedro Camargo, Ph.D.

Toha Theme Logo Toha
© 2022 Copyright.
Powered by Hugo Logo