Программисты - интересные люди. Я - гуманитарий, для численного моделирования подходят небольшие скриптики на современном аналоге Basic'а - на питончике. Эта задача решается в дюжину строк:
# Rubik's Cube scramble, 25 moves FTM (Face Turn Metric)
# Without any repeats fnd double previos moves such as R L R
# DRomanov 05-Nov-2018
from random import randint
blocklist = []
move = 0
while move < 25:
side = randint(0, 5)
if side in blocklist:
continue
if (5 - side) not in blocklist: # no opposite side
blocklist = []
blocklist.append(side)
print('LFUDBR'[side] + ('', '\'', '2')[randint(0, 2)], end=' ')
move += 1