The Discrepancy Method: Randomness and Complexity