Martin Krzywinski / Genome Sciences Center / mkweb.bcgsc.ca Martin Krzywinski / Genome Sciences Center / mkweb.bcgsc.ca - contact me Martin Krzywinski / Genome Sciences Center / mkweb.bcgsc.ca on Twitter Martin Krzywinski / Genome Sciences Center / mkweb.bcgsc.ca - Lumondo Photography Martin Krzywinski / Genome Sciences Center / mkweb.bcgsc.ca - Pi Art Martin Krzywinski / Genome Sciences Center / mkweb.bcgsc.ca - Hilbertonians - Creatures on the Hilbert Curve
In your hiding, you're alone. Kept your treasures with my bones.Coeur de Piratecrawl somewhere bettermore quotes

pi day: exciting


DNA on 10th — street art, wayfinding and font


visualization + design

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The 2019 Pi Day art celebrates digits of `\pi` with hundreds of languages and alphabets. If you're a kid at heart—rejoice—there's a special edition for you!

`\pi` Day 2014 Art Posters


Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2019 `\pi` has hundreds of digits, hundreds of languages and a special kids' edition.

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2018 `\pi` day

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2017 `\pi` day

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2016 `\pi` approximation day

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2016 `\pi` day

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2015 `\pi` day

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2014 `\pi` approx day

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2014 `\pi` day

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2013 `\pi` day

Pi Day 2014 Art Poster - Folding the Number Pi
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Circular `\pi` art

On March 14th celebrate `\pi` Day. Hug `\pi`—find a way to do it.

For those who favour `\tau=2\pi` will have to postpone celebrations until July 26th. That's what you get for thinking that `\pi` is wrong. I sympathize with this position and have `\tau` day art too!

If you're not into details, you may opt to party on July 22nd, which is `\pi` approximation day (`\pi` ≈ 22/7). It's 20% more accurate that the official `\pi` day!

Finally, if you believe that `\pi = 3`, you should read why `\pi` is not equal to 3.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
All art posters are available for purchase.
I take custom requests.

For the 2014 `\pi` day, two styles of posters are available: folded paths and frequency circles.

The folded paths show `\pi` on a path that maximizes adjacent prime digits and were created using a protein-folding algorithm.

The frequency circles colourfully depict the ratio of digits in groupings of 3 or 6. Oh, look, there's the Feynman Point!

compute your own path

get simulation code

Download the HP lattice simulation binary. You'll need one of the three 2D methods — I used rem2dm, which does local and pull moves. If you'd like to learn more about the algorithm, read the publication.

A replica exchange Monte Carlo algorithm for protein folding in the HP model. Chris Thachuk, Alena Shmygelska and Holger H Hoos, BMC Bioinformatics 2007, 8:342 (17 Sep 2007).

download batch file

Download the batch file for 64- or 768-digit folding.

run simulation

When you run the 64-digit simulation, you're likely to find a path with E=-23, which is the lowest energy I've been able to sample. On my Intel Xeon E5540 (2.53 GHz) it takes anywhere from 1-30 seconds to find a E=-23 path (there are many possible paths at this energy), depending on the random seed. Here's the output of a typical run of the 64-digit folding simulation

> rem2dm -seq=hppphphphhhpphphhhppphpphhphhhphphppppphppphpphhhpphphpphpppphph
         -maxT=220 -numLocalSteps=500 -eng=100 -maxRunTime=60 -traceFile=pi.64 
         -minT=160 -expID=pi.64 -numReps=10 

REMC-HP2D-M

Begin Simulation
0.01: Current Best Solution: -8
0.01: Current Best Solution: -10
0.01: Current Best Solution: -13
0.02: Current Best Solution: -15
0.03: Current Best Solution: -16
0.03: Current Best Solution: -17
0.04: Current Best Solution: -18
0.04: Current Best Solution: -19
0.16: Current Best Solution: -20
0.27: Current Best Solution: -21
0.69: Current Best Solution: -22
36.23: Current Best Solution: -23
Real time: 120

ggslrrsrllssrrlrrllsrrlrrlslslrrsrlssrrsllrslrrlrsllsrsrrlsrssrs

         p--h--p         
         |     |           
         h--h  h--p--p--p
            |           |  
   p--p     h  H  h--p--p
   |  |     |  |  |        
p--h  h--h--p  p  p--p   
|              |     |     
p--p--h  h--p  p--p  p   
      |  |  |     |  |     
   h--h  h  h--p--h  h--p
   |     |              |  
   p--h  h  h--p--H  h--p
      |  |  |        |     
      p--p  p  p--h--h   
            |  |           
            p  p--h--p   
            |        |     
            p--p--h  h   
                  |  |     
                  p--p   

End Simulation

If you want to apply this to different number (e.g. φ or e ), you'll need to replace the digits with either p or h. Remember, the simulation will try to group the h's together. You can download 1,000,000 of π , φ and e .

The best path I could find for 768 digits is one with E=-223. In 1000s of simulations this solution came up only once. I also saw one path at E=-222. After that, there were many solutions at each of the less optimal energy levels.

If you manage to find a better one, let me know right away!

common problems

segmental fault

If you obtain a segmentation fault,

> ./rem2dlm
REMC-HP2D-LM

Begin Simulation
Real time: 0



Segmentation fault

don't panic just yet. The folding binaries don't do a lot of error checking, so you have to get the input parameters correct.

For example, if you do not include the -eng parameter, the code will segfault.

Try one of the batch files above (64 digit batch file, 768 digit batch file) or the following simple job

> bin/rem2dm -seq=hhpppphhhhpppphh -maxRunTime=5 -eng 10 
REMC-HP2D-M

Begin Simulation
3.13877e-17: Current Best Solution: -2
5.49284e-17: Current Best Solution: -3
1.0201e-16: Current Best Solution: -4
1.33398e-16: Current Best Solution: -5
Real time: 5

ggrllslsssrllsls
            
   p--p--p
   |     |  
   h  h--p
   |  |     
   H  h   
      |     
   H  h   
   |  |     
p--h  h   
|     |     
p--p--p   

If this segfaults, then you'll need to recompile the code (see below).

compile code (optional—only if binaries don't work)

Precompiled binaries are available for download directly: rem2dm, rem2dlm, rem2dpm, rem3dm, rem3dlm, rem3dpm.

If these don't work on your system, you need to recompile them. Download the the protein folding code and see INSTALL.txt for compilation instructions.

VIEW ALL

news + thoughts

Markov Chains

Tue 30-07-2019

You can look back there to explain things,
but the explanation disappears.
You'll never find it there.
Things are not explained by the past.
They're explained by what happens now.
—Alan Watts

A Markov chain is a probabilistic model that is used to model how a system changes over time as a series of transitions between states. Each transition is assigned a probability that defines the chance of the system changing from one state to another.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Nature Methods Points of Significance column: Markov Chains. (read)

Together with the states, these transitions probabilities define a stochastic model with the Markov property: transition probabilities only depend on the current state—the future is independent of the past if the present is known.

Once the transition probabilities are defined in matrix form, it is easy to predict the distribution of future states of the system. We cover concepts of aperiodicity, irreducibility, limiting and stationary distributions and absorption.

This column is the first part of a series and pairs particularly well with Alan Watts and Blond:ish.

Grewal, J., Krzywinski, M. & Altman, N. (2019) Points of significance: Markov Chains. Nature Methods 16:663–664.

1-bit zoomable gigapixel maps of Moon, Solar System and Sky

Mon 22-07-2019

Places to go and nobody to see.

Exquisitely detailed maps of places on the Moon, comets and asteroids in the Solar System and stars, deep-sky objects and exoplanets in the northern and southern sky. All maps are zoomable.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
3.6 gigapixel map of the near side of the Moon, annotated with 6,733. (details)
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
100 megapixel and 10 gigapixel map of the Solar System on 20 July 2019, annotated with 758k asteroids, 1.3k comets and all planets and satellites. (details)
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
100 megapixle and 10 gigapixel map of the Northern Celestial Hemisphere, annotated with 44 million stars, 74,000 deep-sky objects and 3,000 exoplanets. (details)
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
100 megapixle and 10 gigapixel map of the Southern Celestial Hemisphere, annotated with 69 million stars, 88,000 deep-sky objects and 1000 exoplanets. (details)

Quantile regression

Sat 01-06-2019
Quantile regression robustly estimates the typical and extreme values of a response.

Quantile regression explores the effect of one or more predictors on quantiles of the response. It can answer questions such as "What is the weight of 90% of individuals of a given height?"

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Nature Methods Points of Significance column: Quantile regression. (read)

Unlike in traditional mean regression methods, no assumptions about the distribution of the response are required, which makes it practical, robust and amenable to skewed distributions.

Quantile regression is also very useful when extremes are interesting or when the response variance varies with the predictors.

Das, K., Krzywinski, M. & Altman, N. (2019) Points of significance: Quantile regression. Nature Methods 16:451–452.

Background reading

Altman, N. & Krzywinski, M. (2015) Points of significance: Simple linear regression. Nature Methods 12:999–1000.

Analyzing outliers: Robust methods to the rescue

Sat 30-03-2019
Robust regression generates more reliable estimates by detecting and downweighting outliers.

Outliers can degrade the fit of linear regression models when the estimation is performed using the ordinary least squares. The impact of outliers can be mitigated with methods that provide robust inference and greater reliability in the presence of anomalous values.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Nature Methods Points of Significance column: Analyzing outliers: Robust methods to the rescue. (read)

We discuss MM-estimation and show how it can be used to keep your fitting sane and reliable.

Greco, L., Luta, G., Krzywinski, M. & Altman, N. (2019) Points of significance: Analyzing outliers: Robust methods to the rescue. Nature Methods 16:275–276.

Background reading

Altman, N. & Krzywinski, M. (2016) Points of significance: Analyzing outliers: Influential or nuisance. Nature Methods 13:281–282.

Two-level factorial experiments

Fri 22-03-2019
To find which experimental factors have an effect, simultaneously examine the difference between the high and low levels of each.

Two-level factorial experiments, in which all combinations of multiple factor levels are used, efficiently estimate factor effects and detect interactions—desirable statistical qualities that can provide deep insight into a system.

They offer two benefits over the widely used one-factor-at-a-time (OFAT) experiments: efficiency and ability to detect interactions.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Nature Methods Points of Significance column: Two-level factorial experiments. (read)

Since the number of factor combinations can quickly increase, one approach is to model only some of the factorial effects using empirically-validated assumptions of effect sparsity and effect hierarchy. Effect sparsity tells us that in factorial experiments most of the factorial terms are likely to be unimportant. Effect hierarchy tells us that low-order terms (e.g. main effects) tend to be larger than higher-order terms (e.g. two-factor or three-factor interactions).

Smucker, B., Krzywinski, M. & Altman, N. (2019) Points of significance: Two-level factorial experiments Nature Methods 16:211–212.

Background reading

Krzywinski, M. & Altman, N. (2014) Points of significance: Designing comparative experiments.. Nature Methods 11:597–598.

Happy 2019 `\pi` Day—
Digits, internationally

Tue 12-03-2019

Celebrate `\pi` Day (March 14th) and set out on an exploration explore accents unknown (to you)!

This year is purely typographical, with something for everyone. Hundreds of digits and hundreds of languages.

A special kids' edition merges math with color and fat fonts.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
116 digits in 64 languages. (details)
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
223 digits in 102 languages. (details)

Check out art from previous years: 2013 `\pi` Day and 2014 `\pi` Day, 2015 `\pi` Day, 2016 `\pi` Day, 2017 `\pi` Day and 2018 `\pi` Day.