I think also like Exo.
The simpliest way is, to use a microcontroller.
A normal shift register wouldn'd work, because there is forward and reverse shifting of 20 Bits required.
I'm not shure but i think that function in C-Mos not availible !?
A binary up / down counter with a bit decoder wouldn't work, because the lower bits must stay in 1 Level.
A possible Way is to use 3 EPROMs ( 24Bits ) that will be countet up by a binary counter.
At the end of sequence - All Leds shifted in and out - The Counter must be reseted.
This EPROMs must be progged too, so you can use a microcontroller also.