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
Opening the door to a whole new world with AequilibraE

It was around the time I separated the Python package from the QGIS plugin and started making AequilibraE a more serious software effort with unit tests, continuous integration, and documentation that I decided that I would eventually have to develop a more consistent API for AequilibraE. That evolution, allied TranspoNET (HOW THE HELL HAVE I FAILED TO BLOG ABOUT SUCH A MAJOR FEAT ACHIEVED BY MY GOOD FRIEND ANDREW O’BRIEN?!?) made it a pretty obvious decision to develop AequilibraE towards being a complete modeling platform.

January 9, 2020 Read
Hero Image
Transportation modeling & intellectual honesty

I have been meaning to write a blog post addressing intellectual honesty in the transportation modeling practice for a while, but I never had a compelling reason to do so before today. What happened The episode that prompted me to write this blog post involves a professional acquaintance praising a private company on a LinkedIn post. This acquaintance, however, is a recognized expert in the field that the company operates in, and the whole thing sounded pretty much like one of those (poorly written) celebrity endorsements.

November 13, 2019 Read
Hero Image
New RasterStats

Oddly enough, the most popular plugin I have ever created for QGIS is NOT AequilibraE, but a much more obscure tool I created 4 years ago at the request of my brother. This tool, dedicated to the computation of raster statistics when overlayed with polygons (basically counting the number of pixels of each value for each polygon), is something that can be easily reproduced using a variety of GIS tools or some simple Python or R scripting, but at the time of release had no GUI alternative available, hence the plugin.

October 1, 2019 Read
Hero Image
Having fun with public data - Part 1 (obtaining the data)

This is is my first post that will, intentionally, have multiple parts (at least two, but not sure how many), and before anybody thinks I am about to deploy some sort of “cliff hanger”, let me just say that each part/post will make sense on itself. But first, a little background. A while ago, I purchased a mid-grade NAS to replace an old custom-built computer as our home server, as dealing with RAID arrays manually was being too much of a burden every time a drive failed or I needed more space.

September 16, 2019 Read
Hero Image
New version of AequilibraE for QGIS 3.X

It has been a really long time since I released the experimental version of AequilibraE for QGIS 3.X, and since then I haven’t worked really hard on it. Part of this slow down in the development had to do with the fact that I don’t have air condition in my home office, and Brisbane’s summer is not kind on such absurdity. The biggest reason for the slow down, however, was the fact that the QGIS 3 version was incredibly stable from the get go, and despite the large number of users (over 800 downloads, even though the release is flagged as experimental), the bugs reported were not many.

September 10, 2019 Read
Hero Image
Displaying OMX matrix in QGIS

One of my last blog posts (adding Python packages to QGIS 3 on Windows 10) was pretty simple, but I was pretty sure that something like that would help quite a bit of people that want to integrate more Python packages into their QGIS workflow, particularly for heavier data processing. One of the many packages that one can install is Open Matrix (more on that package on its wiki), which is the Python gateway to access what has become the de facto standard on transportation matrix exchange between packages.

September 10, 2019 Read
Hero Image
Get them filtered: A new plugin for QGIS

This is another quite short post, as it treats of something that is quite trivial from a technical point of view and, in hindsight, something that I should’ve published years ago. One of the features that I quite missed in QGIS right from the beginning, was the possibility of navigating through elements of a layer on the screen in order to inspect them. The possibility of mapping each one of these items did eventually come to QGIS in the form of the Atlas, which is extremely powerful and trivial to use.

August 30, 2019 Read
Hero Image
Adding Python packages to QGIS 3 on Windows 10

Since I started developing AequilibraE, one of the greatest constraints I was subject to (if not the single greatest) was the limited number of installed python libraries distributed with QGIS for Windows, which really limited the features I could add to the package and how I had to write certain features, resulting in (often) convoluted code or just plain silly implementations of basic operations used in transportation modelling data processing

August 26, 2019 Read
Hero Image
Towards efficient geoprocessing of movement data (Part 1)

By now, everybody has read (multiple times) Geoff Boeing’s excellent post on the importance of using spatial indices when performing spatial operations and the impact that having grided polygons can have in overlay operations. It is not ground-breaking, but that the number one reference I give to people that are starting in geoprocessing outside QGIS. There are (at least) three questions, however, that Geoff left for others to respond, and I guess it was time for somebody to do just that:

March 30, 2019 Read
Hero Image
Holidays & AequilibraE

Let me start by saying that AequilibraE is probably my favorite project, but I have been neglecting it for a while. Just for some perspective, QGIS 3 has had three major releases (3.0, 3.2 & 3.4) and I have not yet released a version of AequilibraE that is compatible with this new platform. That is not to say that I have not worked a fair bit in it in the past few months, because Yu-Chu ; I have worked quite a bit on it, but I did not show the commitment the project deserves.

December 30, 2018 Read
Hero Image
Biogeme on Windows using Docker

An important part of my day job is to develop new transportation models, and that includes a lot of discrete choice model estimation, and in the last 18 months that has included anywhere from simple departure time choice models, to more sophisticated mode choice models, where we experimented with Nested, Cross-Nested and Mixed-Logit. We have also estimated standard destination choice models based on standard MNL, but with close to 1,000 alternatives and with utility functions that are non-linear in parameters, which makes the choice sets incredibly large and the estimation very time consuming.

October 16, 2018 Read
Hero Image
A little more Delaunay Lines

It has been nearly 4.5 years since I published my idea on making desire lines using Delaunay Triangles on this blog, over 3.5 years I launched AequilibraE and about 2 years since I incorporated Delaunay Lines into AequilibraE (and made it actually usable). I have presented this concept in conferences (ATRF, TRB Modeling Aplications, and TRB annual meeting) however, that helped spread the word on AequilibraE and its capabilities. And although I have seen a steady increase in interest in AequilibraE’s capabilities and its use in academic and professional environments, there are two facts that I think are noteworthy.

July 23, 2018 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