On Random Embeddings And Their Application To Optimisation