06 October 2012

Formulation of a Service Quality Metric

The quantitative formulation of an overall quality metric, which can be extracted from an arbitrary timetable, is necessary to objectively answer the question “is proposed timetable A better than proposed timetable B?”

Such metrics facilitate the trade-study and optimization process of planning a new timetable, and must take into account several factors, including not just the quality of the service provided to passengers but also other factors that passengers don’t think about, such as robustness to disruption, fleet size and crew time considerations.

For today, however, we will focus exclusively on quantifying the quality of the service provided to passengers.  This particular formulation proceeds in eight reasonably simple steps, pulling together earlier information on timetable metrics and demographics.  It is only one example of how one might formulate a service quality metric, something that Caltrain has never explicitly done and could benefit greatly from doing as they share the pros and cons of various blended service plans.  This is one way to do it; what's theirs?

Step 1: Extract trip time and wait time statistics for each origin and destination pair.  By straightforward analysis of the timetable, one can figure all the possible trips between any origin station A and destination station B (including transfers) during a one-hour span during the morning peak.  One can then determine (in units of time):
  1. The average trip time between A and B (Tmean_AB)
  2. The fastest trip time between A and B (Tmin_AB)
  3. The average wait between trips that connect A and B (Wmean_AB)
  4. The longest wait between trips that connect A and B (Wmax_AB)
The first two metrics measure trip time on board the train, and the next two can be used as a proxy for measuring typical wait times on the platform.  The trip time and wait time figures are intrinsic to the timetable and can be extracted by a computer program.

Step 2: Compute an “effective” trip time from A to B by computing a weighted sum of the time components extracted above. This is where judgment calls start to be made. Taking into account the waiting times Wmean and Wmax is just as important as the actual trip times Tmin and Tmean, in order to properly account for the frequency of service. For example, the effective trip time could be defined as:

Teff_AB = (30% of Tmin_AB + 70% of Tmean_AB) + (20% of Wmean_AB + 15% of Wmax_AB)

The trip time term (30% of Tmin_AB + 70% of Tmean_AB) accounts for some trips being shortened by express service. The waiting time term (20% of Wmean_AB + 15% of Wmax_AB) properly penalizes long service gaps, but remains shorter than the waiting time incurred when the passenger shows up randomly, which is 50% of Wmean_AB.  This lower weighting reflects the fact that passengers don’t show up randomly, but usually time their arrival at origin A for a particular trip to destination B.  For example, when trips are available every 15 minutes, the waiting term works out to a quite reasonable 5 minutes. The effective trip time is a reasonably good measure of how long it will take you to get from A to B.

Step 3: Determine the “effective” speed between origin A and origin B. This is simply distance divided by time, or: V_AB = d_AB / Teff_AB where d_AB is the distance between A and B. This process is repeated for every origin and destination pair A-B, and describes not the speed of a train, but the average speed of a typical trip from A to B including waiting time, based only on the available service provided by the specific timetable being considered.

Step 4: Compute weighting by population and jobs.  This is where census data enters the calculation, as it must.  For the morning rush hour, since ridership consists primarily of people going from their home near A to their work near B, we calculate a potential ridership weight based on how many people live near A and how many people work near B.  This simply reflects that if a lot of people live near A and work near B, it is more important to provide fast service between A and B than between other station pairs where fewer people and jobs are located.

The “home weight” Whome_A of origin station A is a simple gravity sum (1/r squared law) of the residential population, taken from the 2010 census, as described previously in greater detail.  Each person is divided by the square of how far they live from station A, to reflect that people who live further away from the station are less likely to use it. To prevent over-counting people who live very close to the station (where the 1/r squared term diverges), anyone living closer than ¼ mile from the station is considered to live ¼ mile away.  The resulting weights are shown at left, in orange.

Similarly, the “work weight” Wwork_B of destination station B is a simple gravity sum of the number of jobs over $40k, again taken from census data. Each job is divided by the square of how far it is from station B, to reflect that people who work further away from the station are less likely to use it. Once again, to prevent over-counting jobs located very close to the station, any job closer than ¼ mile from the station is considered ¼ mile away.  The resulting weights are shown at right, in blue.

Step 5: Compute weighting by distance. Regardless of where people live and work, there are upper and lower limits to how far they will typically commute by rail. Extremely short trips are less likely because of the overhead of access and egress to and from the station at each end of the journey. Conversely, extremely long trips are less likely because of their sheer duration.  As it turns out, the typical rush hour trip on Caltrain turns out to be about 25 miles, or 40 km.

For our purposes, the distance weighting is constructed by drawing a curve with a peak at 40 km. This distance weight starts off at zero for a trip distance of less than 7 km (reflecting no demand for such short trips), peaks at a distance of 40 km, and decays slowly thereafter.  Converted to miles, it looks like the figure at left.  The underlying math to draw this curve is a Rayleigh distribution with a peak at (d-7) = 33, where d is the trip distance in km.

Step 6: Combine the population, jobs and distance weights to obtain a ridership potential matrix.  The ridership potential matrix R is a matrix of size N squared, where N is the number of stations.  Each element R_AB of this matrix represents the "potential" ridership (in arbitrary relative units) that can be tapped into during the morning commute from origin A to destination B.  This ridership potential matrix has an important property: it is independent of any timetable, and concisely describes the underlying demand that inherently exists out there--regardless of how or whether that demand is met by rail service.  Each element R_AB is given by the product:

R_AB = Whome_A * Wwork_B * Wdistance_AB

Note that the matrix R is not symmetric, because the number of residents and jobs near each station differs.  For example, far more people will want to commute to SF Transbay in the morning than from it, since the number of jobs within a half mile of that station is greater than all the jobs within a half mile of every other Caltrain station all the way to Gilroy combined.

Step 7: Compute the service quality matrix. The service quality matrix Q is again a matrix of size N squared, where N is the number of stations. Each element Q_AB of this matrix represents the quality of morning rush hour service from station A to station B, and is given by the following formula:

Q_AB = R_AB * V_AB

This combines R_AB, the timetable-independent ridership potential from origin A to destination B, with V_AB, the timetable-dependent effective speed from A to B.  If you have a preferred AM origin and destination (as most commuters do), then you can compare your Q_AB for various timetables to see how any given timetable will meet your own specific needs.

Step 8: Extract overall service quality scores. The service quality metrics must be bench marked against some reference, so they are simply normalized against the most current timetable.  That means today's timetable will score 100, by definition.  By adding the elements of Q over all possible origin and destination pairs, we can quantify the degree of service improvement and compute a score for the entire timetable as well as a score for each individual station. The overall timetable service quality score is S = ΣQ / Sref, i.e. the sum of all the elements of Q divided by the corresponding sum for today's timetable.

An entire timetable can now be distilled to its essence, a single service quality score.

We are now empowered to compare various timetables and understand quantitatively the pros and cons of each.  This method will tell you objectively whether timetable A provides better overall service than timetable B--and if you happened to disagree with the scoring outcome, then your argument would be with the scoring method and not any particular detail of this or that proposed timetable.  Beyond the mathematical minutiae of the rather simple scoring method presented here, the larger point is that there needs to be a defined scoring process and a framework for stakeholders to discuss what makes a good timetable.  This scoring process is absolutely essential for planning future blended service on the peninsula.  Caltrain's approach so far has been to prescribe a certain skip-stop pattern (see Tables 7 and 8) and restrict all analysis to that particular pattern, seemingly without regard to overall service quality!


  1. Clem,
    One factor that's not analyzed well, and not sure how to factor it are the shuttles.

    In Palo Alto, half the train boards the marguerite shuttles.

    My employer runs a shuttle to MV that's timed with 3/5 baby bullet trains in morning and evening. The shuttle ride is probably another 5 miles. What's interesting is that Sunnyvale and Lawrence stations are closer, but Mountain View has much better service. (It's also a faster straight shot down 237).

    However, given the good service, most employers settled on MV as their main shuttle stop. (Yahoo, Apple, etc...) This is actually good, as that cooperation ensures large passenger volumes which are rewarded by fast and frequent service.

    If all the employers were split evenly between Lawrence / Sunnyvale / MV, then trip time would suffer by servicing all three stations, or frequency would suffer due to express trains getting distributed across those 3 stations.

    1. This is correct, this analysis does not account for the context of the transit grid, i.e. the quality of connections offered at each stop. MV as a hub is a recent phenomenon, induced largely by the Baby Bullet effect. Shuttle service is good because Caltrain service is good. Lawrence, San Antonio, Cal Ave and others are some of the worst-served stations in the Caltrain system-- you can see this in the census data, particularly Figure 8 comparing demographic data to Caltrain's realized ridership.

      At some point I will have to expound on the folly of skip-stop service in Santa Clara county. Express trains don't make sense there in my opinion.

    2. Another real world factor that skews ridership is the use of GO Passes. My employer (Stanford) has made free passes available to most university employees for years. As of this summer, free passes are now available to additional thousands of Stanford Medical Center employees. This resulted from the deal cut with the counties, PA, and MP to allow the medical center to expand. It's clear that this has already had a significant effect on Stanford-related Caltrain rides, the number of peak hour shuttles to Palo Alto station has been doubled, with nearly all of the added shuttles providing service to the medical center area (and these are full-size transit buses, often packed).

      I have no idea how many other large employers in the area subject to the same pressures, but Stanford operates under strict county-imposed limits as to the number of parking spaces it can provide, and the county can apply various penalties if the (periodically counted) number of peak hour solo car trips exceeds set thresholds. So, I get paid an extra $300/year if I don't get a parking permit, and I can travel for free on Caltrain, VTA, Dumbarton Express (Stanford Oval or office park to Union City BART), and AC Transit Line U (Stanford campus to east bay park & rides, Fremont ACE station and BART).

    3. Free GO passes or tons of shuttle service could easily be accommodated in this model by increasing the work weight Wwork_B for Palo Alto and/or Mountain View, since this effectively increases the number of jobs accessible from there.

      We can make all sorts of tweaks, but again the point is to do so in an open fashion where all stakeholders understand what's going on and why. Generally, the wrong way to specify things is to say "4 tph is non-negotiable at Palo Alto"... that's prescribing an answer before the question has been posed properly. The right way is to set up the various weights and let the best timetable win.

    4. Clem, you're making the classic "technocrat's mistake".

      There are actually stupid numbers of factors which will be left out of the model. There's the "cultural propensity" of people within a given area to take trains, which is real and documented (yeah, yeah, you can use demographics as a rough approximation, but it's still rough). That's just the most difficult to incorporate into the model -- there's also variation in preferred travel time of day (look up all the employers' schedules, yeah...)

      So you need to make all sorts of tweaks to get an accurate model. The trouble is that the more tweaks you make, the *less* predictive value the model actually has, because you have too many knobs. Puget Sound uses a super-complicated ridership prediction models, and its numbers are garbage.

      So the idea of "Set up the various weights and let the best timetable win" is actually pretty bogus. The decision as to what is the best timetable is a fundamentally *political* decision -- the best timetable is the most *popular* timetable -- and it cannot be extricated from politics.

      So the way to specify things is really to start with "Right, so what will make the voters of each of our constituent election districts happy?" and then try to accomodate *those* demands as the first order of business -- with a *simple* ridership model like yours as the *second* order of business.

      That first order of business is often critically important: a vital constituency may have as their top priority "We must have a train which arrives from San Francisco in Palo Alto before 8:45 AM and after 8:40 AM", for extremely local reasons.

    5. What you describe is analytical defeatism.

      Even if the creation of a timetable were a political act (and I fundamentally disagree that it is, even if that makes me a technocrat), it would still boil down to trying to satisfy the most constituents at once by optimally allocating a scarce resource (fast and frequent service). That's why a metrics-based quantitative model is still the best approach, even if the weights have to be calibrated (distorted?) by the "pull" of various constituencies.

      Politically, this metrics-based approach is what you can and should use to sell improvements to local constituents, because it enables you to make extremely specific and targeted pitches for how certain improvements directly serve individual communities. Right now Caltrain is stuck with making nebulous promises of faster, better, quieter, etc. service; this is how they can give their pitch more targeted impact, and answer the question that people have at the ballot box: What's in it for me?

    6. (Ever wondered why the original IRT in NY has a flashy loop terminus at City Hall -- now basically abandoned? Well, the name of the station gives you a hint!)

    7. "Even if the creation of a timetable were a political act (and I fundamentally disagree that it is, even if that makes me a technocrat), it would still boil down to trying to satisfy the most constituents at once by optimally allocating a scarce resource (fast and frequent service)."

      Ah, but the constituents *don't all want the same thing*.

      In construction, the ideal arrangement often ends up giving stations to the cities which want them and no stations to the cities which don't want them.

      But you're right about one thing: what Caltrain is doing is even worse! You do need to be able to make specific, targeted pitches for why a proposal will help a community, and right now Caltrain is stuck making totally nebulous, vague claims!

      Please do not interpret my statements as defending Caltrain management in any way. You can just look at their political situation to see that they are politically mishandling things as well as technically mishandling things.

    8. For those of you interested in GO passes, here is map of companies with GO passes:


    9. "here is map of companies with GO passes"
      That's a nice datum. Thank you.

      Of course it party reflects Caltrain's existing crappy timetable, since you couldn't pay people to take Caltrain from workplaces near California Avenue (1tph!!), Sunnyvale (1tph!!!), Santa Clara(2tph, non-bullet) or Lawrence (ditto)

      Clem's census investigations show a ton of employment around those stations. Pre-"Baby Bullet" Caltrain statistics show heavy boardings. It seems clear they're under-served, and my suspicion is that "Go Pass" penetration reflects crap Caltrain service, not that crap Caltrain reflects lack of nearby employment.

  2. You overlook how some of the assumptions you make themselves depend on service quality. If off-peak service is so bad nobody rides it, it will look as if everyone or almost everyone rides at the peak, making off-peak frequency appear less important. If frequency and lack of fare integration make sure everyone from Millbrae north uses BART instead of Caltrain, it will look as if few people make short trips, making express speed seem more important. If fares are too high, it will look as if low-income people don't travel at commuter rail distances. And so on.

    In the longer term, development patterns depend on transit service quality. Compare development around subway and commuter rail stations. It's less relevant to the Peninsula because zoning laws and PAMPA NIMBYs ensure that high-intensity development around Caltrain stations will be sparse, but it's relevant to a service in an area with more rational zoning laws.

    1. Hi Alon, I do indeed assume that it is harder to optimize service during the peak (when track capacity is at a premium) than off-peak. In other words, if you've done a good job with the peak then off-peak service can pretty much take care of itself since it suffers from fewer constraints. This explains why the service quality metric developed here is focused exclusively on peak-hour service. I agree that off-peak service needs to be considered as well, perhaps in an even more global trade-off process.

      As for short trips, I can see why you might take issue with the distance weighting. Perhaps it needs to be non-zero at distances less than 7 km, and it is true that the distance distribution will depend in some way on the actual service provided. In my model I tried to decouple the distance distribution from the timetable, which is a simplifying assumption that may not be entirely correct.

      Regarding incomes, the census data I used is for jobs that pay > 40k. Lower incomes might alter the distribution of jobs slightly.

      The point here isn't to develop the perfect ridership model, but to illustrate that one is needed, and that the various ingredients that make for good service must be explicitly defined and somehow combined into a top-level service quality metric. In a mathematical sense this is a multi-dimensional optimization problem, and the objective function must be defined clearly and openly... not behind a black curtain inside the San Carlos bunker.

    2. @ Alon: That's not how I would interpret Clem's work at all. The points you appear to be making are the very ones of which Caltrain planners are guilty e.g. California Avenue cannot require better service because, look!, very few travelers board there today and therefore demand for service is low.
      Nit-pick all you want, but re-read Clem's initial post first.

    3. @Michael
      I think Alon's "nitpick" is more about the danger of making assumptions based on today's ridership which is a result of today's schedule. This may result again in something similar to today's schedule, rather than a schedule based on ridership potential and the census.

      "Very few travelers board California Avenue Today" => "California Avenue cannot require better service"

      "Very few people travel short distances" => "There's no demand for short trips"
      "Most travelers today travel during peak commute" => "There's little demand for off-peak service"

      I'd also add the nitpick that the way the average wait time is computed may favor American-style commuter rail schedules, rather than fixed interval schedules found systems that operate more like rapid transit.

      However; The point that Clem gets across pretty well is that using a well-defined formula to evaluate schedules makes schedules comparable - and it also exposes the underlying assumptions when making those comparisons.

    4. I do indeed assume that few people will travel short distances by Caltrain, today and for the foreseeable future. If I don't assume that, I will predict enormous flows of passengers between 22nd and Transbay for example, dwarfing anything you might see between SF and Palo Alto (the two busiest stations today). Because Caltrain doesn't operate in a vacuum, and because there is a transportation context that includes cars, buses, other transit systems, etc., I think the distance assumption is fair-- trips of 4 miles or less unlikely to occur in great numbers, even 15 to 20 years from now, no matter how good the service. Note that I don't assume such trips won't occur. I only assume that they don't count for anything when it comes to planning a timetable.

    5. @Ant6n: I'm curious about what you mean when you say that the wait time computation favors commuter rail schedules. For example, in a regular 4 tph takt the effective wait time is assumed to be (0.2 + 0.15) * 15 = 5 minutes. However, if the 4 trains are not evenly spaced around the clock face and show up in a highly bunched configuration of 5:5:5:45, the resulting effective wait time is assumed to be (0.2 * 15) + (0.15 * 45) = 10 minutes. Do you think this penalty is insufficient?

    6. American commuter rail schedules require people to memorize schedules, and trains are spread over the day in such that you have to follow schedules to make sure you don't end up waiting for an hour (or three). For rapid transit, the assumption is that people do not use schedules, they just show up at the station and wait for the next train - this encourages non-commuting/occasional trips, and gives you the 'freedom' that Jarret Walker at humantransit talks about all the time. Takt-schedules attempt to provide a sense of rapid transit schedules even if the tph is relatively low by having a very regular and easy to remember schedule.

      So let's look at your example, assuming people wanted to use the system as if it were rapid transit. If people show up randomly, then the expected waiting time for a 45/5/5/5 schedule is 17.5 minutes, whereas for the 15/15/15/15 schedule it's 7.5 minutes, the difference is more than half. You notice that both the relative difference is bigger than for your metric, but also the absolute numbers. If you consider that people who will use the system without knowing the schedules are worried about the maximum time they may have to wait, then you'll see that a potential 45 minute wait is much worse than a potential 15 minute wait. If you also consider that people will view waiting at a station as worse than sitting in a train, then you should penalize waiting even more relative to the travel time.

      Btw, I'm not saying that Caltrain should strive to be a rapid transit system, that may not make sense. But I think it would make sense to at least consider the benefits of a Takt and relatively frequent service (<20 min).

    7. I understand your point, and I must disagree. When you consider the huge portion of peak hour riders who are daily commuters (and will be far into the future), you have to take into account that most people do in fact memorize the schedule, as inconvenient as that may be. People dislike waiting far more than they dislike memorizing schedules. Using the random-show wait time, assuming nobody memorized schedules, would be an unrealistically pessimistic assumption. That's why I've tried to strike a balance with my wait time factors of 0.2 and 0.15 to reflect the facts that (a) most people can and will plan their arrival at the origin station, but (b) long service gaps must be penalized in the scoring.

      In a nutshell, the scoring method already awards higher scores to (and thus considers the benefits of) regular takt and more frequent service.

    8. Clem, re 22nd-to-Transbay, it depends on how Caltrain compares to the alternatives. If the fare is the same as Muni's, the frequency is good, and the concentration of residences around 22nd and of jobs around Transbay is sufficiently close that a bus won't provide better door-to-door service, then why shouldn't people take Caltrain over short distances?

      Likewise, for short-distance suburban trips, if trains have lower mode share than they do for longer-distance trips, it's probably not just because of the distance, but also factors like parking availability, street walkability, and the quality of connecting transit.

      In both cases, what should morally happen is that higher frequency reduces the penalty for short-distance trips, since waiting is a smaller proportion of the trip. Perhaps there's a way of controlling for this and at the same time adding fudge factors for poor service to suburban destinations. For example, you might apply some walkability factor to reduce or increase the acceptable walking distance from the train station to one's job, and also weight origins not just by the number of residents but also by the number of residents without cars.

      Ant6n, Clem, one hidden advantage of takts is that they also make it easier to plan connecting transit. Caltrain's park-and-ride model looks like it works in an environment where people own cars, but in fact it works much better to have connecting buses. The comparison you should keep in mind is Toronto subway vs. BART and Washington Metro. A train system with a regular takt favors connecting buses even more than a subway, because then the 15-minute bus that connects to the train doesn't impose any additional waiting time or reduction in effective frequency.

    9. I'll let you in on a little secret. Quite a few people figured out that they could get a free ride between 22nd and 4th and King (more than showed up on the ridership counts, as it paid to be stealthy), since there wasn't any time to do a fare check, and, the numbers were increasing. That's why they started checking fares on outgoing trips from 4th and King. The de facto fare between 22nd and 4th and King is now 50% of the 1 zone fare (assuming a round trip), which is less than Muni fare, but the number of these riders appears to have dropped. For free, one is willing to adapt to a screwy schedule, put if you have to pay for a short trip, I suspect frequency wins...

    10. @Marc "I'll let you in on a little secret" also: that what you write is nonsense.

      Caltrain morning trains towards downtown SF don't stop at 22nd. And nobody commutes from 4th and King to 22nd. I ride those trains all the time and I NEVER see anybody get off at 22nd.

      Same in the evening peak.

      So you're asking us to believe a "little secret" that "quite a few people" worked out how to ride a mile from 4th to 22nd in the middle of the day or late at night (and I've not seen more than one or two people get off at 22nd on those trains, either, in years of riding), on trains that run ONCE AN HOUR, and that this is justification for making every rider on every train that leaves the busiest station line up in single file and have the busy busy busy busy conductor-man run the slow slow slow Clipper reader over every card?

      As far as I can tell, the extra wasted time and queuing in SF is just a way to let the many conductors on the trains continue to do NOTHING nearly all of the time.

      It's a pointless waste of time that makes the train slower (because getting on the train is part of riding the train), keeps the trains expensive to run with lots of useless conductors, isn't based around any real problem (SF-22nd is *imaginary* travel), isn't based around trading added lots of revenue versus passenger hassle, and just seems like they hate POP and want to go back to the Good Old Days before "foreign" POP invaded from Germany or whereever, or want to install turnstiles Just Like In Philadelphia or whereever.

      "Caltrain Classic: Pointless. Expensive. Slow. Inconvenient. Based on make-believe"

      (Could that also be the new CBOSS slogan? The New Electrified Blended Caltrain slogan? The new grade separation slogan? The new HSR slogan?)

    11. I have no idea what the normal commute situation is. I do reverse commute, nearly all trains stop at 22nd, and it's quite obvious if you pay attention. For what it's worth, this was also the explanation given by a conductor when I asked, although there may be as many "explanations" as conductors...

    12. Marc,

      Caltrain ridership counts agree with Anonymous above and with my observations that anybody who spends even 30 seconds worrying revenue loss from Fourth&Townssend—22nd Street is incapable of understanding orders of magnitude, and shouldn't be in position to set policy.

      People are extremely irrational once they latch onto the idea that Somebody Somewhere is Getting Away with Something.

      Sure some people are Getting Away With Something illegitimate. That seems to be how the world works. (Correct me if I'm wrong!) Non-stupid people and non-stupid policy is about quantitatively informed understanding of what matters and what doesn't, and letting some stuff slide (30 miscreants a day or whatever riding to 22nd, possibly without paying; jaywalking; failing to pay sales taxes on yard sale proceeds; etc) while paying attention to stuff that matters (hopeless service to California Avenue and Sunnyvale; bad service to Redwood City; gang warfare; planetary ecosystem collapse.)

  3. Here's one question. Since Baby Bullet service come into place, the ridership to Cal Ave went down, while at Palo Alto went up way up. Many riders probably shifted from one stop to the other. Some riders might even need a shuttle or a bike where a walk would've sufficed. How do you evaluate if that's a good thing? Obviously, more PA passengers means more service (see extra PA service added on Oct 1st), so that's all good there.

    But is that a good thing overall? When Broadway station closed, some people switched to cars, but others probably went to Millbrae and Burlingame. When Atherton closed, rider went to Menlo Park and RWC. Closing those stations, is obviously good overall since end-to-end time speeds up for everyone.

    Clem, can your formula rate stations like that? For example, would overall ridership increase if South SF station were closed, and riders went (or were bused to) either Bayshore or San Bruno? Or would it be better to increase ridership to that station from 1/hour to 2/hour? Could we run such analysis on other staions?

    1. What you are getting at is close to Caltrain's current "push model" of service planning, which assumes that if you change where the trains stop (to shorten trip times or limit stops where station parking lots are saturated) then the ridership will follow and adapt, mostly by driving to where the train does stop. The problem with this is twofold: (1) it doesn't provide good service by the common dictionary definition of that term, and (2) it is a very leaky method, where an incorrect assumption is made that people will still drive to another station rather than drive to their ultimate destination.

      The model presented here already captures the trade-off between stopping at smaller stations vs. skipping them to improve trip times for major destinations. You can see from a timetable scoring matrix (more to come on that topic...) the degree to which each stop contributes (or not) to the overall timetable score. You can even see what closing any particular stop will do to overall service quality.

  4. One important factor that this methodology doesn't account for is the fare zone system in place, which has probably diverted ridership from stations near the edge of one zone to adjacent ones at the edge of another zone. For example, Atherton has lost all its riders to RWC, while Sunnyvale will continue to see ridership increases at the detriment of Lawrence if round trips are $4 cheaper. This phenomenon affects the home_weight variable in the service quality metric.

    I'll post some more thoughts later.

    1. Yeah, so now you get a score where you can play around with the takt tool. Here's a sample Caltrain 2013 schedule. Note I closed Hayward Park, increased the average trip time of the train, removed timed transfers/restored local trains, and completely redid the reverse peak schedule, and yet overall quality declined by only 0.6. Conclusion: Caltrain's peak direction schedule isn't too bad, but its reverse peak schedule needs work if I can get the same quality with only 4 trains instead of 5.

    2. Caelestor makes an excellent point. The zone boundaries artificially skew / discourage certain trips and commutes. The ~13-mile zones result in ridiculously uneven/unfair trip pricing. Redwood City to Menlo Park (or Palo Alto) -- a very short and quick ride, costs the same as Redwood City to SF 4th & King. A handful of transit advocates lobbied staff for revenue-neutral straight distance-based pricing around the time of the introduction of the new and horribly overpriced and misguided consultant-developed recommendation to move to the new zone structure. After pooh-poohing it, staff gave distance-based pricing the minimally required lip service after a board member started warming up to it: they promised "we'll take a look at that next time ..."

      So, going back to the example given ... the widely-spaced arbitrary fare zone boundaries are discouraging lots of what should otherwise be popular short trips/commutes that happen to cross a zone boundary. There are also riders who have adopted fare zone boundary-induced cost-saving behaviors such as riding to a somewhat less convenient or close station in order to avoid crossing one or two stations into another zone.

    3. I would say that the fare zone system is orthogonal to what Clem is proposing. Working out the schedules and service based on potential demand is one thing. Figuring out appropriate ticket price structure is another. Certainly Caltrain's current zone system is terrible, but it doesn't and shouldn't have any bearing on the kind of demand analysis that Clem is working out. If Caltrain ever got smart enough to do what Clem is suggesting, they'd be smart enough to fix ticket prices too.

    4. I think the zone system shouldn't enter into the discussion of how to plan future service. We're looking at blended service that won't start before the mid 2020's, optimistically, and by then the technology for fare payment systems will likely have moved on. Compare where we were in the year 1999 (as far as train tickets, cell phones and the internet) to where we are today; that gives you a pretty good lower bound for how much change we can expect between now and 2025. Physical ticket vending machines and the accompanying fare zones will have joined the ticket punch and hat check stub somewhere in a museum.

      Bottom line: the zone system is likely to become irrelevant before blended service becomes a reality, and therefore should not enter into the service planning picture.

    5. Agreed, today's zone system shouldn't be a factor in future service planning. Caelestor's comments just triggered me to blather on about one of my Caltrain pet peeves.

    6. While the technology may have changed, people's desire for a *comprehensible* fare system will *not* change, and accordingly something like a zone system is likely to stay.

    7. Distance-based fares are both more comprehensible and fair than zone-based. Works for BART.

    8. Pure distance-based fares only work if you have a non-integrated (non-)system, with separate fares for each leg of the journey.

      For a Verkehrsverbund (MTC's nightmare scenario -- Success MUST BE AVOIDED, the mafia must be paid for useless capital projects instead) the penalty of a transfer to a bus from a train needs to be kept low. This is done by the combination of low transfer time penalty (coordinated schedules; fast, short and direct transfer walks) and zero transfer time cost.

      It's hard to be mode-neurtral when you're obsessively counting and charging for every metre of in-vehicle travel. Of course such a model is ideal for "smart card" vendors (YOU MUST TAG IN AND OUT AT THE START AND END OF EVERY LEG OF EVERY JOURNEY, CITIZEN. IT IS YOUR DUTY FOR THE PROFIT OF THE FATHERCORPORATION) but works out less than ideal for maximizing ridership, system cost efficiency, and return on investment.

      You won't hear me argue that Caltrain's present system (I spent quite a bit of time and effort arguing nicely and totally pointlessly against it, as you know) is remotely good. In a regional zone-based system perhaps (perhaps) each Caltrain station would be in a different zone (I wouldn't do things that way.)

      Even just within the one mode, there are small trade-offs against "back-riding" (starting in the wrong direction to make a better connection) and against low-"friction" one-off (or infrequent) variations on regular trips (have a pass to station X, but go to station X+2 today to run an errand.) There are ways to make these things work.

    9. Singapore recently implemented a mode-neutral, free-transfer fare regime based on distance-based fares and tagging in and out with the smartcard. I don't know if it obsessively counts every meter on the subway - it counts kilometers on the buses and has since forever, and at least before the new system was implemented listed your fare on each subway station pair. (It also doesn't have season passes. Not best industry practice, but with a good enough smartcard implementation the transaction cost is zero either way and so there's less of an incentive to make passengers use season passes.)

    10. Ah, I was hoping you'd integrate this into the takt timetable tool. I'd just like to point out that the A/B/C Caltrain timetable I knocked up a while back, which assumes electrification and a 125 mph speed limit but only two tracks, scores 254.

    11. We're still working on it and tweaking the formula, testing against real timetables. One major change will involve weighting by effective trip time, rather than distance. I will have an update when ready; in the meantime, please don't rely on scores from the taktulator just yet.

  5. The "push model" is also 100% based around driving to the origin station.

    It simply doesn't work for destination ("work", in most cases) -- except for the minority of people who bring bicycles along.(a percentage which will have to decrease over time, for space reasons.)

    Those many trains that used to express through Palo Alto until a week ago? THey did it because the "push model" said that PA parking lots were full, therefore everything else (Stanford, Marguerite, ...) can be ignored?

    That one train PER HOUR peak at California Avenue? Just ignore the Stanford Business Park and its tens of thousands of employees, several hundred of whom formerly used the California Avenue stop.

    Drive-to-station home-end commuters can and do drive a few extra miles based upon parking availability and parking price and upon train schedule.
    For the entire rest of the potential market? A very poor service planning fit, indeed.

    As for Caltrain's existing zone system and the like: yes, that skews existing ridership. (Existing ridership is skewed far more by wretched frequency, crazy skip-stop patterns, unreliability, and lack of connectivity.) But this isn't about exact modelling of Caltrain's present ridership: it's about meeting latent demand.

    As for the argument that the census-based model neglects existing transit connections at stations: first, transit access is (sadly) pretty much negligible except at the SF terminal and Palo Alto. Marguerite and the forced transfers to Muni, and that's it to a first approximation. SJ and Millbrae have a few dribs and drabs. along with the employer shuttles at one trip end only. There really is no "network" and there are no "connections" that anybody with a choice endure.

    But even aside from that, in a remotely rational world you'd expect transit availability to track housing and employment density (I mean, nobody would as insane to build a light rail line that runs slower than a bus and run where there are no passengers, right? RIGHT?), so the crude-but-useful demographic heuristics than Clem is using (and using transparently) are actually good proxies, and especially good proxies for where service ISN'T being provided but SHOULD be -- Caltrain as well as connecting transit service.

    Yes, there are a few special cases -- university-driven "over-use"; geography like SF's Potrero Hill suppressing the simple distance-from-station counts -- but on the whole I think the data are hard to contest and the simple-but-not-misleading model built around them is interesting, not stupid, transparent, and worthy of attention.

    If you want to add special cases, I'd throw in a two minute penalty for every northbound train at California Avenue thanks to Caltrain's knowingly stupidly misplaced tunnel. And add an extra minute or two minute southbound at SF for the new mandatory line-up-and-be-counted-citizens non-POP ticket check queue. And add an extra two minutes at Millbrae for the slow and lengthy escalator ride to the stars and back. And ... But let's get real, and keep things straightforward and avoid special pleading and special cases and try to achieve some idea of The Big Picture.

  6. Interesting discussion… I have never been a fan of so-called memory/clock face schedules if they are used to the detriment of regular customers. Is there any evidence that such schedules actually increase ridership?
    As opposed to schedules that reflect when people start and end work?

    I have had this discussion with a couple of my Caltrain advocate buddies some years ago. They would argue that the 3:45 pm train should leave SF at 4:00 pm instead, making it less useful to customers that get off work at 3:30 pm in San Francisco. Or the first train should leave San Jose at 5:00 am instead of 4:50 am to ‘increase’ ridership---‘memory schedule.’ However, that change would make the first train completely useless for those of us who start work in San Francisco at 6:30 am, therefore causing a loss of ridership.

    They point out that with the memory schedule; you don’t need to have a timetable… Well, that argument was used by BART---Trains will run so frequently that you don’t need to have a schedule. For years BART did not publish schedules, they just got by with the time/fares matrix. But after years of customer requests, BART final started publishing timetables, customers want to know when a train would arrive at their origin station and arrive at their destination station. There was also this ‘condensed’ timetable thing… i. e. showing the bus at each time point… “Then every 15 minutes at the same times each hour until…” Samtrans used to have this type of timetable for the mainline/El Camino routes (5L, 5M, 7B, 7F) back in the days, but customers did not like these kinds of timetables, so Samtrans eventually started publishing schedules that show every bus at each time point throughout the day.

    Then there are those who defend the current Caltrain schedule, citing that they are matching the service to the demand. Well the so-called ‘demand’ is actually reflective upon the schedule. Stations with shitty service will have shitty ridership; stations with good service will have good ridership. The illogical zone boundaries/system does contribute to some stations poorer ridership. This system grossly penalizes short trips. The primary reason for the current zone boundaries/lengths was to make the Caltrain fare from Millbrae to SF comparable to the BART fare from Millbrae to downtown SF. This system needs to be changed, the sooner the better. Either shorter zones or point to point, although in some cases a couple stations may be better grouped together, i. e. Palo Alto/Stanford/California; or San Francisco/22nd. Short trips should NOT be forced to use the bus, just because someone in Caltrain management or one of my fellow advocate buddies thinks they should… Which was another argument that I had with them, the idea was that Caltrain should close 22nd street so the train would be ‘faster’ and increase ridership. Those using 22nd can use the bus/shuttle get to Caltrain at 4th/King. This scenario is more likely to kill off ridership than to increase ridership, some people have no idea of the meaning of convenience.

    The idea should be for Caltrain to be frequent enough that customers don’t have to think about or build their life around the schedules. The basic service should be about every 15-20 minutes from 4:00 am till at least midnight. Peak hours would have additional express/bullet service.

    Infrequent service give people the impression that Caltrain is ‘slow’ compared to BART is ‘fast’… primarily due to the very frequent BART service.

    Have you tested BART like service (every 15-20 minutes, 4:00 am till midnight) in your calculator?

    1. The saying in Zurich is that the best way to kill ridership is to run a bus every 11 minutes - or 13, or 17. Even on a 10-minute scale they do everything clockface. And at least anecdotally, on the bus line I used in New York that ran on a 10-minute takt it was very useful to know instantly when it would serve my stop without consulting a schedule.

  7. In Japan the urban private railways generally run a show up and go service with 2~3 minute headways schedule during the morning and evening peaks, and a "pattern" schedule in the off-peak between 10am and 4:00pm. The off peak service is typically a local, semi-express, and express pattern repeating every 20 minutes or so. Casual and occasional users find the system easy to understand, and regular commuters already know their train times and timepoints at every station on their route as the railways publish their complete schedules (often available as paper timetables at bookstores, in addition to on the net).

  8. Another way to use the tool is projected population/jobs. San Antonio has an atrocious schedule today. Mountain View is looking to upzone, the area is attracting development, and there are lively debates about whether and how much to improve bike/ped access in the area including to the train. The question about PA/Cal Ave/San Antonio schedule is partly a land use question.

    Caltrain is not predominantly a park-n-ride system: as of 2010 "39 percent of the system’s riders drive to the station or are dropped off; 27 percent walk; 22 percent take transit; and 8 percent bike." It's problematic to assume that riders will compensate for station/schedule changes by driving further when 60% aren't driving to the station.