mscroggs.co.uk
mscroggs.co.uk

subscribe

Blog

 2018-09-13 
This is a post I wrote for round 2 of The Aperiodical's Big Internet Math-Off 2018. As I went out in round 1 of the Big Math-Off, you got to read about the real projective plane instead of this.
Polynomials are very nice functions: they're easy to integrate and differentiate, it's quick to calculate their value at points, and they're generally friendly to deal with. Because of this, it can often be useful to find a polynomial that closely approximates a more complicated function.
Imagine a function defined for \(x\) between -1 and 1. Pick \(n-1\) points that lie on the function. There is a unique degree \(n\) polynomial (a polynomial whose highest power of \(x\) is \(x^n\)) that passes through these points. This polynomial is called an interpolating polynomial, and it sounds like it ought to be a pretty good approximation of the function.
So let's try taking points on a function at equally spaced values of \(x\), and try to approximate the function:
$$f(x)=\frac1{1+25x^2}$$
Polynomial interpolations of \(\displaystyle f(x)=\frac1{1+25x^2}\) using equally spaced points
I'm sure you'll agree that these approximations are pretty terrible, and they get worse as more points are added. The high error towards 1 and -1 is called Runge's phenomenon, and was discovered in 1901 by Carl David Tolmé Runge.
All hope of finding a good polynomial approximation is not lost, however: by choosing the points more carefully, it's possible to avoid Runge's phenomenon. Chebyshev points (named after Pafnuty Chebyshev) are defined by taking the \(x\) co-ordinate of equally spaced points on a circle.
Eight Chebyshev points
The following GIF shows interpolating polynomials of the same function as before using Chebyshev points.
Nice, we've found a polynomial that closely approximates the function... But I guess you're now wondering how well the Chebyshev interpolation will approximate other functions. To find out, let's try it out on the votes over time of my first round Big Internet Math-Off match.
Scroggs vs Parker, 6-8 July 2018
The graphs below show the results of the match over time interpolated using 16 uniform points (left) and 16 Chebyshev points (right). You can see that the uniform interpolation is all over the place, but the Chebyshev interpolation is very close the the actual results.
Scroggs vs Parker, 6-8 July 2018, approximated using uniform points (left) and Chebyshev points (right)
But maybe you still want to see how good Chebyshev interpolation is for a function of your choice... To help you find out, I've wrote @RungeBot, a Twitter bot that can compare interpolations with equispaced and Chebyshev points. Since first publishing this post, Twitter's API changes broke @RungeBot, but it lives on on Mathstodon: @RungeBot@mathstodon.xyz. Just tweet it a function, and it'll show you how bad Runge's phenomenon is for that function, and how much better Chebysheb points are.
For example, if you were to toot "@RungeBot@mathstodon.xyz f(x)=abs(x)", then RungeBot would reply: "Here's your function interpolated using 17 equally spaced points (blue) and 17 Chebyshev points (red). For your function, Runge's phenomenon is terrible."
A list of constants and functions that RungeBot understands can be found here.
×2      ×2      ×2      ×2      ×2
(Click on one of these icons to react to this blog post)

You might also enjoy...

Comments

Comments in green were written by me. Comments in blue were not written by me.
Hi Matthew, I really like your post. Is there a benefit of using chebyshev spaced polynomial interpolation rather than OLS polynomial regression when it comes to real world data? It is clear to me, that if you have a symmetric function your approach is superior in capturing the center data point. But in my understanding in your vote-example a regression minimizing the residuals would be preferrable in minimizing the error. Or do I miss something?
Benedikt
                 Reply
 Add a Comment 


I will only use your email address to reply to your comment (if a reply is needed).

Allowed HTML tags: <br> <a> <small> <b> <i> <s> <sup> <sub> <u> <spoiler> <ul> <ol> <li> <logo>
To prove you are not a spam bot, please type "k" then "i" then "t" then "e" in the box below (case sensitive):

Archive

Show me a random blog post
 2026 

May 2026

World Cup stickers 2026

Apr 2026

A new puzzle every day
Mixing Wordle with other games

Feb 2026

Christmas (2025) is over
 2025 

Dec 2025

Christmas card 2025

Nov 2025

Christmas (2025) is coming!

Sep 2025

The partridge puzzle

Aug 2025

TMiP 2025 puzzle hunt

Jun 2025

A nonogram alphabet

Mar 2025

How to write a crossnumber

Jan 2025

Christmas (2024) is over
Friendly squares
 2024 

Dec 2024

A regular expression Christmas puzzle
Christmas card 2024

Nov 2024

Christmas (2024) is coming!

Feb 2024

Zines, pt. 2

Jan 2024

Christmas (2023) is over
 2023 
▼ show ▼
 2022 
▼ show ▼
 2021 
▼ show ▼
 2020 
▼ show ▼
 2019 
▼ show ▼
 2018 
▼ show ▼
 2017 
▼ show ▼
 2016 
▼ show ▼
 2015 
▼ show ▼
 2014 
▼ show ▼
 2013 
▼ show ▼
 2012 
▼ show ▼

Tags

asteroids inline code manchester science festival youtube puzzles light speed go golden ratio guest posts map projections finite element method hyperbolic surfaces newcastle countdown world cup noughts and crosses fence posts recursion dates crochet ucl machine learning curvature convergence golden spiral final fantasy databet errors mathsteroids error bars sorting pizza cutting tmip wave scattering raspberry pi palindromes zines royal baby weak imposition gaussian elimination latex thirteen reuleaux polygons statistics christmas card stirling numbers graph theory advent calendar regular expressions cambridge london bots game show probability matrix of cofactors national lottery flexagons menace alphabets inverse matrices estimation dinosaurs ternary chebyshev coins draughts mathslogicbot graphs weather station programming braiding bempp runge's phenomenon determinants people maths pokémon wordle datasaurus dozen hats wool anscombe's quartet manchester correlation geogebra gather town nonograms matrices talking maths in public geometry mean video games warwick javascript preconditioning edinburgh pythagoras propositional calculus cross stitch books hexapawn approximation matt parker coventry python folding paper data visualisation gerry anderson crossnumbers accuracy mathsjam wordle rust nine men's morris european cup pi approximation day kings craft pokémon dataset christmas 24 hour maths finite group standard deviation fractals reddit pac-man simultaneous equations game of life matrix multiplication misleading statistics realhats crosswords quadrilaterals binary squares kenilworth crossnumber bubble bobble rhombicuboctahedron royal institution arithmetic tetris fonts bodmas turtles probability stickers london underground harriss spiral data live stream hannah fry interpolation numbers triangles captain scarlet platonic solids friendly squares oeis the aperiodical dragon curves trigonometry sobolev spaces logo polynomials football php chess big internet math-off exponential growth arrangement puzzles pi sport electromagnetic field radio 4 frobel rugby boundary element methods bluesky pascal's triangle signorini conditions matrix of minors folding tube maps martin gardner games logic a gamut of games logs partridge puzzle tennis plastic ratio computational complexity news sound numerical analysis phd chalkdust magazine

Archive

Show me a random blog post
▼ show ▼
© Matthew Scroggs 2012–2026