def namespace(self, names=None, **kwargs):
ns = VariableNamespace(self, **kwargs)<EOL>if names is not None:<EOL><INDENT>ns.define(names)<EOL><DEDENT>return ns<EOL>
Return namespace for this problem.

        If names is given it should be an iterable of names to define in the
        namespace. Other keyword arguments can be specified which will be
        used to define the names given as well as being used as default
        parameters for names that are defined later.

        >>> v = prob.namespace(name='v')
        >>> v.define([1, 2, 5], lower=0, upper=10)
        >>> prob.set_objective(v[1] + 3*v[2] - 5 * v[5])