convex optimisation problem