How to show student progress on a teacher dashboard?

I'm designing a dashboard for teachers to monitor the progress of their students. This screen can have 20 to 50 students and when the teacher selects a start date, I would like to show the difference between the current state and the state from that date. I've tried several designs but either the screen becomes very hectic or the previous and current state aspect is not intuitive.

Teacher dashboard

A and B feel the most intuitive in terms of previous and current state to me but I hate how messy they look.
C and D look the most appealing in terms of design to me but less intuitive.

It doesn't have to be circles at all btw, it is just what I came up with.

Edit:
To clarify what this should do: it should show the teacher in a glance how his students are doing. The dots in this case are chapters. The primary circle always shows the current state which can be: Grey: started, Red: 25% of total was answered wrong, Green: >75% was done and <25% was wrong.

In case the student did any work in the selected period, a secondary circle is shown with the state at the selected date.

A mouseover is used to show more detailed times and numbers per chapter.

States

What would be a good way of achieving my intent?