sync
This commit is contained in:
@@ -236,8 +236,8 @@ class LinearExpr(object):
|
||||
while to_process: # Flatten to avoid recursion.
|
||||
expr, coef = to_process.pop()
|
||||
if isinstance(expr, _ProductCst):
|
||||
to_process.append(
|
||||
(expr.Expression(), coef * expr.Coefficient()))
|
||||
to_process.append((expr.Expression(),
|
||||
coef * expr.Coefficient()))
|
||||
elif isinstance(expr, _SumArray):
|
||||
for e in expr.Expressions():
|
||||
to_process.append((e, coef))
|
||||
@@ -483,8 +483,8 @@ class _ScalProd(LinearExpr):
|
||||
|
||||
def __repr__(self):
|
||||
return 'ScalProd([{}], [{}], {})'.format(
|
||||
', '.join(map(repr, self.__expressions)),
|
||||
', '.join(map(repr, self.__coefficients)), self.__constant)
|
||||
', '.join(map(repr, self.__expressions)), ', '.join(
|
||||
map(repr, self.__coefficients)), self.__constant)
|
||||
|
||||
def Expressions(self):
|
||||
return self.__expressions
|
||||
@@ -723,14 +723,14 @@ class IntervalVar(object):
|
||||
if self.__ct.enforcement_literal:
|
||||
return '%s(start = %s, size = %s, end = %s, is_present = %s)' % (
|
||||
self.__ct.name, ShortName(self.__model, interval.start),
|
||||
ShortName(self.__model,
|
||||
interval.size), ShortName(self.__model, interval.end),
|
||||
ShortName(self.__model, interval.size),
|
||||
ShortName(self.__model, interval.end),
|
||||
ShortName(self.__model, self.__ct.enforcement_literal[0]))
|
||||
else:
|
||||
return '%s(start = %s, size = %s, end = %s)' % (
|
||||
self.__ct.name, ShortName(self.__model, interval.start),
|
||||
ShortName(self.__model,
|
||||
interval.size), ShortName(self.__model, interval.end))
|
||||
ShortName(self.__model, interval.size),
|
||||
ShortName(self.__model, interval.end))
|
||||
|
||||
def Name(self):
|
||||
return self.__ct.name
|
||||
@@ -1608,8 +1608,8 @@ def EvaluateBooleanExpression(literal, solution):
|
||||
else:
|
||||
return not solution.solution[-index - 1]
|
||||
else:
|
||||
raise TypeError('Cannot interpret %s as a boolean expression.' %
|
||||
literal)
|
||||
raise TypeError(
|
||||
'Cannot interpret %s as a boolean expression.' % literal)
|
||||
|
||||
|
||||
class CpSolver(object):
|
||||
@@ -1777,8 +1777,8 @@ class CpSolverSolutionCallback(pywrapsat.SolutionCallback):
|
||||
index = lit.Index()
|
||||
return self.SolutionBooleanValue(index)
|
||||
else:
|
||||
raise TypeError('Cannot interpret %s as a boolean expression.' %
|
||||
lit)
|
||||
raise TypeError(
|
||||
'Cannot interpret %s as a boolean expression.' % lit)
|
||||
|
||||
def Value(self, expression):
|
||||
"""Evaluates an linear expression in the current solution.
|
||||
@@ -1802,8 +1802,8 @@ class CpSolverSolutionCallback(pywrapsat.SolutionCallback):
|
||||
while to_process:
|
||||
expr, coef = to_process.pop()
|
||||
if isinstance(expr, _ProductCst):
|
||||
to_process.append(
|
||||
(expr.Expression(), coef * expr.Coefficient()))
|
||||
to_process.append((expr.Expression(),
|
||||
coef * expr.Coefficient()))
|
||||
elif isinstance(expr, _SumArray):
|
||||
for e in expr.Expressions():
|
||||
to_process.append((e, coef))
|
||||
@@ -1815,8 +1815,8 @@ class CpSolverSolutionCallback(pywrapsat.SolutionCallback):
|
||||
elif isinstance(expr, IntVar):
|
||||
value += coef * self.SolutionIntegerValue(expr.Index())
|
||||
elif isinstance(expr, _NotBooleanVariable):
|
||||
value += coef * (1 -
|
||||
self.SolutionIntegerValue(expr.Not().Index()))
|
||||
value += coef * (
|
||||
1 - self.SolutionIntegerValue(expr.Not().Index()))
|
||||
return value
|
||||
|
||||
|
||||
@@ -4898,8 +4898,8 @@ and Value() methods.</p>
|
||||
index = lit.Index()
|
||||
return self.SolutionBooleanValue(index)
|
||||
else:
|
||||
raise TypeError('Cannot interpret %s as a boolean expression.' %
|
||||
lit)
|
||||
raise TypeError(
|
||||
'Cannot interpret %s as a boolean expression.' % lit)
|
||||
|
||||
def Value(self, expression):
|
||||
"""Evaluates an linear expression in the current solution.
|
||||
@@ -4923,8 +4923,8 @@ and Value() methods.</p>
|
||||
while to_process:
|
||||
expr, coef = to_process.pop()
|
||||
if isinstance(expr, _ProductCst):
|
||||
to_process.append(
|
||||
(expr.Expression(), coef * expr.Coefficient()))
|
||||
to_process.append((expr.Expression(),
|
||||
coef * expr.Coefficient()))
|
||||
elif isinstance(expr, _SumArray):
|
||||
for e in expr.Expressions():
|
||||
to_process.append((e, coef))
|
||||
@@ -4936,8 +4936,8 @@ and Value() methods.</p>
|
||||
elif isinstance(expr, IntVar):
|
||||
value += coef * self.SolutionIntegerValue(expr.Index())
|
||||
elif isinstance(expr, _NotBooleanVariable):
|
||||
value += coef * (1 -
|
||||
self.SolutionIntegerValue(expr.Not().Index()))
|
||||
value += coef * (
|
||||
1 - self.SolutionIntegerValue(expr.Not().Index()))
|
||||
return value</code></pre>
|
||||
</details>
|
||||
<h3>Ancestors</h3>
|
||||
@@ -4991,8 +4991,8 @@ Raises:
|
||||
index = lit.Index()
|
||||
return self.SolutionBooleanValue(index)
|
||||
else:
|
||||
raise TypeError('Cannot interpret %s as a boolean expression.' %
|
||||
lit)</code></pre>
|
||||
raise TypeError(
|
||||
'Cannot interpret %s as a boolean expression.' % lit)</code></pre>
|
||||
</details>
|
||||
</dd>
|
||||
<dt id="cp_model.CpSolverSolutionCallback.OnSolutionCallback"><code class="name flex">
|
||||
@@ -5052,8 +5052,8 @@ Raises:
|
||||
while to_process:
|
||||
expr, coef = to_process.pop()
|
||||
if isinstance(expr, _ProductCst):
|
||||
to_process.append(
|
||||
(expr.Expression(), coef * expr.Coefficient()))
|
||||
to_process.append((expr.Expression(),
|
||||
coef * expr.Coefficient()))
|
||||
elif isinstance(expr, _SumArray):
|
||||
for e in expr.Expressions():
|
||||
to_process.append((e, coef))
|
||||
@@ -5065,8 +5065,8 @@ Raises:
|
||||
elif isinstance(expr, IntVar):
|
||||
value += coef * self.SolutionIntegerValue(expr.Index())
|
||||
elif isinstance(expr, _NotBooleanVariable):
|
||||
value += coef * (1 -
|
||||
self.SolutionIntegerValue(expr.Not().Index()))
|
||||
value += coef * (
|
||||
1 - self.SolutionIntegerValue(expr.Not().Index()))
|
||||
return value</code></pre>
|
||||
</details>
|
||||
</dd>
|
||||
@@ -5299,14 +5299,14 @@ intervals into the schedule.</p></section>
|
||||
if self.__ct.enforcement_literal:
|
||||
return '%s(start = %s, size = %s, end = %s, is_present = %s)' % (
|
||||
self.__ct.name, ShortName(self.__model, interval.start),
|
||||
ShortName(self.__model,
|
||||
interval.size), ShortName(self.__model, interval.end),
|
||||
ShortName(self.__model, interval.size),
|
||||
ShortName(self.__model, interval.end),
|
||||
ShortName(self.__model, self.__ct.enforcement_literal[0]))
|
||||
else:
|
||||
return '%s(start = %s, size = %s, end = %s)' % (
|
||||
self.__ct.name, ShortName(self.__model, interval.start),
|
||||
ShortName(self.__model,
|
||||
interval.size), ShortName(self.__model, interval.end))
|
||||
ShortName(self.__model, interval.size),
|
||||
ShortName(self.__model, interval.end))
|
||||
|
||||
def Name(self):
|
||||
return self.__ct.name</code></pre>
|
||||
@@ -5419,8 +5419,8 @@ model.Add(cp_model.LinearExpr.ScalProd(expressions, coefficients) >= 0)
|
||||
while to_process: # Flatten to avoid recursion.
|
||||
expr, coef = to_process.pop()
|
||||
if isinstance(expr, _ProductCst):
|
||||
to_process.append(
|
||||
(expr.Expression(), coef * expr.Coefficient()))
|
||||
to_process.append((expr.Expression(),
|
||||
coef * expr.Coefficient()))
|
||||
elif isinstance(expr, _SumArray):
|
||||
for e in expr.Expressions():
|
||||
to_process.append((e, coef))
|
||||
@@ -5608,8 +5608,8 @@ def Sum(cls, expressions):
|
||||
while to_process: # Flatten to avoid recursion.
|
||||
expr, coef = to_process.pop()
|
||||
if isinstance(expr, _ProductCst):
|
||||
to_process.append(
|
||||
(expr.Expression(), coef * expr.Coefficient()))
|
||||
to_process.append((expr.Expression(),
|
||||
coef * expr.Coefficient()))
|
||||
elif isinstance(expr, _SumArray):
|
||||
for e in expr.Expressions():
|
||||
to_process.append((e, coef))
|
||||
|
||||
Reference in New Issue
Block a user