Understanding human mobility patterns in Chicago: an analysis of taxi data using clustering techniques