Driven by Challenges

Solar Team Eindhoven has won the World Solar Challenge Cruiser Class four times with their Stella family of solar cars (see montage of team photos above). The team’s home base, Eindhoven University of Technology (TU/e) is one of the best technical universities in the world (Times Higher Education rated it #64 in 2017, but that really doesn’t do it justice). So what do engineers do after building the world’s best solar family car?

In 2019, Liselotte Kockelkoren-Graas (account manager of the 2015 team) reconnected with five other former members of Solar Team Eindhoven, in a documentary produced by D2D Media. The six episodes of this beautifully filmed documentary (in Dutch with English subtitles) can be accessed via this playlist.

Liselotte and the other highlighted team alumni are working on some of the coolest engineering projects in the world, in some really cool places (see table and montage below). This list says something about the superb teaching that TU/e offers, the high-tech industry hub in which TU/e is located, and the close links that TU/e (wisely) maintains with its industry neighbours.

Who Now at Where
Liselotte Kockelkoren-Graas (2015 team) Innovation Lead / Senior R&D Engineer, Vanderlande Eindhoven area, NL
Arjo van der Ham (2013 team) Co-Founder / CTO, Lightyear Eindhoven area, NL
André Snoeck (2013 team) Researcher, MIT Megacity Logistics Lab Boston area, US
Patrick Deenen (2015 team) Senior Business Process Analyst, Nexperia & PhD student, TU/e Manchester, UK & Eindhoven, NL
Wouter van Loon (2013 team) Escalation Project Lead / Strategic Business Planner, ASML Taipei, TW & Eindhoven area, NL
Jessie Harms (2017 team) Graduate Intern Eindhoven area, NL & Ahmedabad, IN

Among the things I learned from the documentary Driven by Challenges: exciting things happen when your suitcase vanishes down a belt in an airport, and my beard grows at 5 nanometres per second. It was great to see that the careers of Solar Team Eindhoven alumni are progressing many orders of magnitude faster than that.

All about fixed points

In mathematics, a fixed point of a function f is a value x such that f(x) = x. For example, Wolfram notes that cos(0.7390851332) = 0.7390851332. There need not be such a fixed point, of course, but it is interesting when there is.

Unique fixed points

The Banach fixed-point theorem applies to complete metric spaces – sets where there is a concept of distance and where convergent sequences have a limit.

If f is a function that shrinks things – if, say, the distance between f(x) and f(y) is at most 50%, or 90%, or 99.99999% of the distance between x and y – then the function f will not only have a fixed point, but that fixed point will be unique.

Intuitively, this is clear. You apply the function f to the whole set an infinite number of times, and everything shrinks down to a single point satisfying f(x) = x.

Comic 688 by xkcd, with the fixed point highlighted in pink

It follows that if you stand inside a country, city, or home holding (horizontally) a map of that country, city, or home, then exactly one point in the country, city, or home is exactly underneath the corresponding point on the map. More usefully, this theorem has been used to assign meaning to recursive type expressions in computer science.

Iterated function systems

Iterated function systems are one way of defining fractals. An iterated function system is a family of functions, each of which shrinks things (i.e. is contractive). This family of functions defines a Hutchinson operator on sets of points, and that operator is in turn contractive for a certain definition of distance between sets (see Hutchinson, 1981).

Consequently, that operator has a unique “fixed point,” which is in fact a set of points, like the famous Barnsley fern. The set of points can be (approximately) generated by an iterative process (see code example here):

Least fixed points

As another example of fixed points in action, the Kleene fixed-point theorem assigns meaning to recursively defined computer programs, like these:

  • x = x, a circular definition which is satisfied by infinitely many things, defines x = ⊥, the least defined of all those things
  • z = 0 ⊙ (1 + z), where “” means putting a number in front of a list, defines the infinite list z = 0, 1, 2, 3, 4, 5, …
  • g = function (x) { if (x = 0) then 1 else x * g(x − 1) }, defines g to be the factorial function

Computer programs are modelled by Scott-continuous functions on a partial order where ⊥ is the least element (⊥ means “no information” and is the meaning of any computer program stuck in an infinite loop). Scott-continuous functions may have more than one fixed point, but they have a unique least fixed point, which is the limit of the sequence ⊥ ⊑ f(⊥) ⊑ f(f(⊥)) ⊑ …

This sequence corresponds to what actually happens when the computer attempts to execute recursive definitions like the three in red above.

Brouwer’s fixed point theorem

Even more interesting is Brouwer’s fixed-point theorem. Any continuous function mapping a compact convex set to itself has at least one fixed point.

This is hard to prove in general, though easy to see in the case that the set is simply the interval [0, 1]. We have f(0) − 0 ≥ 0 and f(1) − 1 ≤ 0, so that f(x) − x = 0 for at least one x in the range 0 to 1:

An implication is that, when I stir my cup of coffee, at least one speck of liquid winds up exactly where it started.

Fixed points and dynamics

If the function f represents a state transition function, then a fixed point corresponds to a state that remains the same over time. For example, the logistic mapx (1 − x) has fixed points 0 and 0.75. However, these are both unstable – if you start out close to them, repeated application of the function takes you further away:

  • 0.000001, 0.000004, 0.000016, 0.000064, 0.000256, 0.001024, 0.00409, 0.016295, 0.064117, 0.240023, 0.729649, 0.789046, 0.66581, 0.890028, 0.391511, 0.952921, 0.179452, 0.588995, 0.96832, 0.122706, 0.430598, …
  • 0.749999, 0.750002, 0.749996, 0.750008, 0.749984, 0.750032, 0.749936, 0.750128, 0.749744, 0.750512, 0.748975, 0.752045, 0.745893, 0.758147, 0.733441, 0.782021, 0.681856, 0.867713, 0.459147, 0.993324, 0.026525, …

On the other hand, the logistic map 2.5 x (1 − x) has a stable fixed point (an attractor) at 0.6. Starting at, say, 0.5, repeatedly applying the function gets you closer and closer to 0.6:

  • 0.5, 0.625, 0.585938, 0.606537, 0.596625, 0.601659, 0.599164, 0.600416, 0.599791, 0.600104, 0.599948, 0.600026, 0.599987, 0.600007, 0.599997, 0.600002, 0.599999, 0.6, 0.6, 0.6, 0.6, …

Fixed points are everywhere! Not only that, but the concept is a fruitful one in a diverse collection of fields. For more on fixed points, see this book (available electronically here).

Harp strings and design

Having previously blogged about the mathematics of the harp, I thought I might say some more about harp design issues. It’s an interesting question that involves both physics and human factors. For simplicity, I’m going to talk about just one string, one playing the note A at 440 Hz. Of course, a real harp will have between 21 and 46 other strings.

The physics of vibrating strings gives us Mersenne’s laws, which tell us that the frequency of a string of length L is (1 / 2L) √ T / μ , where T is the tension force on the string (in newtons), and μ is the density per unit length of the string (in kg per metre).

The diagram below shows the required tension force (in newtons) for a nylon string of various lengths and diameters to play the note A at 440 Hz (click to zoom). A newton corresponds to roughly the gravitational force on 100 grams.

The first, and most obvious, design factor is that too much tension causes the string to break. Setting a design limit of 90% of the expected breaking strength means that the string must be less than 560 mm in length. Interestingly, this limit is independent of the diameter of the string.

The string must also be playable. A string that is too floppy or too tight cannot be effectively played. A rough guide is that the tension should be at least 35% of the expected breaking strength, which means that the string must be at least 350 mm long. Additional limits, which I’m ignoring here, relate to how much room the string needs to vibrate.

Thirdly, the frame can only take so much. If the frame of a 40-string harp is built to withstand 10,000 newtons (roughly the gravitational force on 1000 kg), then the average string has a limit of 250 newtons. This restricts us to the design space on the diagram outlined in red.

Finally, a harp has levers or pedals which shift the strings to be sharp or flat (the basic harp strings correspond only to the white keys on a piano). Those devices set further limits on the design space for strings.

A modern electric lever harp (photo: Athy)

It is interesting to relate this to my other interest, that of solar cars. They are vehicles, which means that they must hold a driver (and new guidelines on World Solar Challenge driver space have just been announced). They are solar, which means that their upper surface must hold a solar panel of specified size. And they race, which means that their aerodynamic drag must be as low as possible. This necessitates a variety of compromises, just as with the design of a harp. The problem is much more complex however; the space of possible solar car designs has many more dimensions than two.

COVID-19 in the UK #2

The chart above (click to zoom) is an updated view of registered deaths in England and Wales according to the ONS up to 26 June. The difference between the red and black lines (highlighted in yellow) indicates deaths where COVID-19 was mentioned on the death certificate. The red line shows that a spike in non-COVID-19 deaths also took place.

Sombre news, but the COVID-19 peak seems to have passed.

Edit 1: Updated chart for more recent data.

Edit 2: The Telegraph is expressing concern at the spike in non-COVID-19 deaths, which seems to reflect under-treatment of cancer and other serious diseases during the lockdown.

Spot the difference #2

One more “spot the difference” puzzle. The top is a copy of Children’s Games by Pieter Bruegel the Elder (1560). The bottom is the same thing with 21 edits of my own (including 8 outright additions, 7 outright removals, and 6 alterations of colour, shape, or number). The solution is here.

COVID-19 in the UK

The chart above (click to zoom) shows registered deaths in the UK according to the ONS up to 10 April (note that during holiday periods, some deaths may be “carried over” to the next week). The year 2020 is on the way to passing 2018 as the worst year of recent times, with the fortnight to 10 April being particularly bad.

The difference between the red and black lines (highlighted in yellow) indicates deaths where COVID-19 was mentioned on the death certificate (this includes deaths “with” as well as “from” COVID-19, although other data suggests that in most cases COVID-19 would be the actual cause of death). A clear COVID-19 spike is visible.

The jump in the red line is also disturbing, however. The the red line shows deaths excluding deaths where COVID-19 was mentioned on the death certificate. The jump in the red line may indicate:

  • COVID-19 deaths where no test was done (unlikely, because the records show only a slight increase in deaths by non-COVID respiratory illness); or
  • deaths from other causes exacerbated by lack of hospital beds; or
  • deaths due to the current lockdown itself (e.g. suicides).

At present, I have no way of deciding which of those three options are the correct ones. Hopefully both COVID-19 and those other factors will pass soon (the IHME model suggests that COVID-19 deaths in the UK reached their peak on 21 April).

I should note that CNBC has also looked at this dataset, but they’ve compared this year against an average period that excludes 2018 and 2019. I don’t know why they did that.

Visualising COVID-19 risk

A friend suggested this to me as a way of visualising COVID-19 risk for the United States. The red bars in the chart above show the expected death rates for different age groups over the whole pandemic period up to August 2020 (combining the projected total deaths from IHME with the age breakdown from CDC). For comparison, the blue bars show the expected deaths from other causes over an ordinary 9-day period (using data from CDC). For every age group, the risk of dying from COVID-19 during the pandemic is less than 9 days worth of ordinary risk, because 7,700 people die in the United States on an average day (of course, the COVID-19 risk would be somewhat higher without current social distancing measures).

For children and young people aged 0–24, the risk is less than 1 day worth of ordinary risk. This is clearer if we re-plot the chart on a logarithmic scale:

Update: I have updated the charts above to match the new IHME projections dated 16 April.

The Circle of Fifths

I have often tried to visualise the circle of fifths in a way that makes sense both musically and mathematically. Above (click to zoom) is my latest attempt.

There are 12 notes in an octave (7 white piano keys and 5 black piano keys), and the diagram shows these 12 piano keys wrapped into a circle. A fifth is a step of 7 semitones (7 piano keys, counting black ones, e.g. C→D♭→D→E♭→E→F→F♯→G). The coloured spiral in the chart shows the “circle of fifths” resulting from moving up a fifth 12 times (moving left to right, and hence moving anticlockwise).

The reason that this works is that 7 and 12 have no common factor – and therefore the first multiple of 7 that is also a multiple of 12 is 7 × 12. Therefore every time you move up a fifth you get a different note, returning to the starting note only when you have moved up 12 times. In the process, you have hit every other note exactly once.