+ """
+ Scale the given game by a random nonnegative amount.
+
+ We re-attempt the scaling with a new random number until the
+ resulting scaled game has an acceptable condition number.
+
+ Parameters
+ ----------
+
+ G : SymmetricLinearGame
+ The game that you would like to scale.
+
+ Returns
+ -------
+ (float, SymmetricLinearGame)
+ A pair containing the both the scaling factor and the new scaled game.
+
+ Examples
+ --------
+
+ >>> from dunshire.matrices import norm
+ >>> from dunshire.options import ABS_TOL
+ >>> G = random_orthant_game()
+ >>> (alpha, H) = random_nn_scaling(G)
+ >>> alpha >= 0
+ True
+ >>> G.K() == H.K()
+ True
+ >>> norm(G.e1() - H.e1()) < ABS_TOL
+ True
+ >>> norm(G.e2() - H.e2()) < ABS_TOL
+ True
+
+ """