I suggest we take a particular look at the Ouroboros algorithm (Cardano), and see if we can adapt that.
That would basically mean that we define X number of generations as an epoch, let candidates claim an election based on a ‘random seed’ in the epoch election snapshot, and then include a proof in the keyblock.
Perhaps a sloppy description, but more detail can be found in the related work thread.
In this approach, the parent chain would provide time slots and randomness for the Ouroboros-style child chain.