import math
from dataclasses import InitVar, dataclass, field
from plot import (
animate_starts,
draw_areas,
draw_decompositions,
draw_placement,
draw_polygons,
draw_separation,
draw_start_grid,
)
from report import report_packing, report_sides, report_spread
@dataclass
class Vertex:
x: float
y: float
class ConvexPolygon:
def __init__(self, ring):
if ring[0] == ring[-1]:
ring = ring[:-1]
self.vertices = [Vertex(x, y) for x, y in ring]
self.num_vertices = len(self.vertices)
class Polygon:
def __init__(self, ring):
self.points = [tuple(point) for point in ring]
self.centroid = centroid_of(self.points)
self.parts = []
@dataclass
class Packing:
area: float
x: list[float]
y: list[float]
cosine: list[float]
sine: list[float]
width: float
height: float
def centroid_of(points):
ring = points[:-1] if points[0] == points[-1] else points
twice, cx, cy = 0.0, 0.0, 0.0
for i, (x1, y1) in enumerate(ring):
x2, y2 = ring[(i + 1) % len(ring)]
cross = x1 * y2 - x2 * y1
twice += cross
cx += (x1 + x2) * cross
cy += (y1 + y2) * cross
return (cx / (3 * twice), cy / (3 * twice))
def rotate(x, y, c, s):
return (c * x + s * y, c * y - s * x)
def area(placement):
return placement.width * placement.heightPolygon Clustering
Pack two rotatable polygons into the smallest axis-parallel rectangle without overlap, using a convex decomposition and nonlinear programming.
Introduction
Given two polygons (possibly non-convex) \(P_j\), \(j = 1, 2\), we look for an axis-parallel rectangle with the smallest area that contains the two polygons, without overlap between the polygons. Rotating the polygons is allowed.
This kind of problem arises in packing and nesting applications, for example when parts have to be cut out of a rectangular piece of stock material.
Here is an example of two input polygons and the clustering found by Knitro:
Problem description
Input
- \(N\) polygons (here, \(N = 2\)), given by the coordinates of their vertices
Problem:
Choose, for each polygon:
- a translation vector
- a rotation angle
such that:
- the polygons do not overlap
- the polygons are contained in an axis-parallel rectangle
Objective:
Minimize the area of the containing rectangle.
Input data
A polygon is a ring of vertices with the first one repeated at the end, so the outline closes. centroid_of is the shoelace formula over that ring, and rotate turns a point about the origin given the sine and cosine of the angle rather than the angle itself, the form the model will carry a rotation. area is what the model minimizes, the width of the containing rectangle times its height.
A Packing holds that area together with the translation and the sine and cosine of each polygon, and that is all it takes to redraw the placement.
Two polygons are packed below, both written out in full and both non-convex, the case the model has to handle.
polygons = [
Polygon(
[(1, 0), (5, 0), (6, 3), (5, 7), (4, 4), (3, 8), (2, 3), (1, 6), (0, 3), (1, 0)]
),
Polygon(
[
(1, 0),
(5, 0),
(6, 4),
(6, 7),
(5, 4),
(4, 7),
(3, 2),
(2, 6),
(1, 3),
(0, 7),
(0, 3),
(1, 0),
]
),
]A placement is drawn as the containing rectangle with the two outlines dropped into it, so what the picture shows is the gap the solver still has to close. The decomposition figure keeps the input outline on top of its convex parts, since the cuts are what the model sees and the outline is what the reader knows.
draw_polygons(polygons)Intersection of convex polygons
If two convex polygons are disjoint, then there is an edge \(e\) of one of them such that these polygons lie on the opposite sides of the line containing \(e\).
The position of a point relative to a line is what decides that. line_equation returns the coefficients \(a\), \(b\), \(c\) of the line through two points, and relative_position evaluates \(ax + by + c\). The sign says which side of the line the point falls on, so two points with opposite signs sit on opposite sides.
def line_equation(p1, p2):
x1, y1 = p1
x2, y2 = p2
return y2 - y1, x1 - x2, x2 * y1 - x1 * y2
def relative_position(a, b, c, point):
x, y = point
return a * x + b * y + cLet’s illustrate this property:
triangle_1 = [(1.0, 2.0), (5.0, 5.0), (1.5, 6.0)]
triangle_2 = [(4.0, 3.4), (8.5, 0.6), (9.2, 3.2)]
draw_separation(triangle_1, triangle_2, (triangle_1[0], triangle_1[1]))Of the six edges these two triangles have, (AB) is the only one whose line separates them, with every vertex of one triangle staying in its own tint.
Running all six vertices through that line says the same thing in numbers. A and B are on it, the third vertex of the first triangle comes out negative, and all three of the second come out positive.
a, b, c = line_equation(triangle_1[0], triangle_1[1])
report_sides(a, b, c, [triangle_1, triangle_2])vertex triangle ax + by + c side
-------------------------------------------
A 1 0.00 on the line
B 1 0.00 on the line
C 1 -14.50 negative
D 2 3.40 positive
E 2 28.10 positive
F 2 19.80 positive
Decomposition of the polygons into convex polygons
Since the intersection property only holds for convex polygons, in order to use it in our case, we need to decompose the input polygons into convex polygons first.
convex_parts cuts a ring into the fewest convex pieces it can. It takes a reflex vertex, tries every other vertex that one can see, and keeps the cut whose two halves need the fewest further cuts. The model works on those pieces rather than on the original ring.
Show the convex decomposition
def triangle_area(a, b, c):
return (b[0] - a[0]) * (c[1] - a[1]) - (c[0] - a[0]) * (b[1] - a[1])
def is_left_on(a, b, c):
return triangle_area(a, b, c) >= 0
def is_right(a, b, c):
return triangle_area(a, b, c) < 0
def is_right_on(a, b, c):
return triangle_area(a, b, c) <= 0
def square_distance(a, b):
return (b[0] - a[0]) ** 2 + (b[1] - a[1]) ** 2
def at(ring, i):
return ring[i % len(ring)]
def line_crossing(a1, a2, b1, b2):
ax, ay = a2[1] - a1[1], a1[0] - a2[0]
ac = ax * a1[0] + ay * a1[1]
bx, by = b2[1] - b1[1], b1[0] - b2[0]
bc = bx * b1[0] + by * b1[1]
det = ax * by - bx * ay
if det == 0:
return (0.0, 0.0)
return ((by * ac - ay * bc) / det, (ax * bc - bx * ac) / det)
def is_reflex(ring, i):
return is_right(at(ring, i - 1), at(ring, i), at(ring, i + 1))
def can_see(ring, a, b):
p, q = at(ring, a), at(ring, b)
if is_left_on(at(ring, a + 1), p, q) and is_right_on(at(ring, a - 1), p, q):
return False
reach = square_distance(p, q)
for i in range(len(ring)):
if (i + 1) % len(ring) == a or i == a:
continue
if is_left_on(p, q, at(ring, i + 1)) and is_right_on(p, q, at(ring, i)):
crossing = line_crossing(p, q, at(ring, i), at(ring, i + 1))
if square_distance(p, crossing) < reach:
return False
return True
def subring(ring, i, j):
if i < j:
return ring[i : j + 1]
return ring[: j + 1] + ring[i:]
def cut_edges(ring):
best, fewest = [], math.inf
for i in range(len(ring)):
if not is_reflex(ring, i):
continue
for j in range(len(ring)):
if not can_see(ring, i, j):
continue
cuts = cut_edges(subring(ring, i, j)) + cut_edges(subring(ring, j, i))
if len(cuts) < fewest:
fewest = len(cuts)
cuts.append((at(ring, i), at(ring, j)))
best = cuts
return best
def slice_at(ring, edge):
if edge[0] not in ring or edge[1] not in ring:
return None
i, j = ring.index(edge[0]), ring.index(edge[1])
return subring(ring, i, j), subring(ring, j, i)
def convex_parts(ring):
edges = cut_edges(ring)
if not edges:
return [ring]
parts = [ring]
for edge in edges:
for index, part in enumerate(parts):
pieces = slice_at(part, edge)
if pieces is not None:
parts.pop(index)
parts += [pieces[0], pieces[1]]
break
return parts
def decompose(polygon):
polygon.parts = [ConvexPolygon(part) for part in convex_parts(polygon.points[:-1])]
return polygonfor polygon in polygons:
decompose(polygon)
draw_decompositions(polygons)Nonlinear model
Input
- \(N\): number of polygons (here, \(N = 2\))
- \(K^j\): number of convex parts of polygon \(P_j\)
- \(L^j_k\): number of vertices of convex part \(k\) of polygon \(P_j\)
- \(X^j_{k, l}\), \(Y^j_{k, l}\): x- and y-coordinates of vertex \(l\) of convex part \(k\) of polygon \(P_j\)
Variables
- \(w, h \in \mathbb{R}^+\): width and height of the containing rectangle
- \(x_j, y_j \in \mathbb{R}\), \(j = 1, \dots, N\): translation vector of polygon \(P_j\)
- \(s_j, c_j \in [-1, 1]\), \(j = 1, \dots, N\): sine and cosine of the rotation angle of polygon \(P_j\)
- \(x^j_{k, l}, y^j_{k, l} \in \mathbb{R}^+\): coordinates of vertex \(l\) of convex part \(k\) of polygon \(P_j\) after the rotation and the translation
- \(d^{j_1, j_2}_{k_1, l_1, k_2} \in \{ 0, 1 \}\): 1 if the minimum relative position of the vertices of convex part \(k_2\) of polygon \(P_{j_2}\) with the line \((l_1, l_1 + 1)\) of convex part \(k_1\) of polygon \(P_{j_1}\) is non-negative
Objective: minimize the area of the containing rectangle
\[ \min w \cdot h \]
Constraints
- Link between \(s_j\) and \(c_j\)
\[ \forall j = 1, \dots, N, \qquad c_j^2 + s_j^2 = 1 \]
- Coordinates of the vertices
\[ \forall j = 1, \dots, N, \quad \forall k = 1, \dots, K^j, \quad \forall l = 1, \dots, L^j_k, \qquad x^j_{k, l} = x_j + X^j_{k, l} c_j + Y^j_{k, l} s_j \] \[ \forall j = 1, \dots, N, \quad \forall k = 1, \dots, K^j, \quad \forall l = 1, \dots, L^j_k, \qquad y^j_{k, l} = y_j + Y^j_{k, l} c_j - X^j_{k, l} s_j \]
- Definition of \(d^{j_1, j_2}_{k_1, l_1, k_2}\)
\[ \forall j_1 = 1, \dots, N, \quad \forall j_2 = 1, \dots, N, j_2 \neq j_1, \quad \forall k_1 = 1, \dots, K^{j_1}, \quad \forall k_2 = 1, \dots, K^{j_2}, \quad \forall l_1 = 1, \dots, L^{j_1}_{k_1}, \quad \forall l_2 = 1, \dots, L^{j_2}_{k_2}, \]
\[ d^{j_1, j_2}_{k_1, l_1, k_2} \le \left( y^{j_1}_{k_1, l_1 + 1} - y^{j_1}_{k_1, l_1} \right) x^{j_2}_{k_2, l_2} + \left( x^{j_1}_{k_1, l_1} - x^{j_1}_{k_1, l_1 + 1} \right) y^{j_2}_{k_2, l_2} + x^{j_1}_{k_1, l_1 + 1} y^{j_1}_{k_1, l_1} - x^{j_1}_{k_1, l_1} y^{j_1}_{k_1, l_1 + 1} \]
- For each pair of polygons, each pair of convex parts from each polygon must not intersect
\[ \forall j_1 = 1, \dots, N, \quad \forall j_2 = 1, \dots, N, j_2 \neq j_1, \quad \forall k_1 = 1, \dots, K^{j_1}, \quad \forall k_2 = 1, \dots, K^{j_2}, \]
\[ \max \left( \max_{l_1 = 1, \dots, L^{j_1}_{k_1}} d^{j_1, j_2}_{k_1, l_1, k_2}, \max_{l_2 = 1, \dots, L^{j_2}_{k_2}} d^{j_2, j_1}_{k_2, l_2, k_1} \right) \ge 0 \]
- Link between \(w\) and \(h\), and \(x^j_{k, l}\) and \(y^j_{k, l}\)
\[ \forall j = 1, \dots, N, \quad \forall k = 1, \dots, K^j, \quad \forall l = 1, \dots, L^j_k, \qquad x^j_{k, l} \le w \] \[ \forall j = 1, \dots, N, \quad \forall k = 1, \dots, K^j, \quad \forall l = 1, \dots, L^j_k, \qquad y^j_{k, l} \le h \]
Solving the nonlinear model as it is wouldn’t give good results. To obtain good solutions quickly, we will:
- first find a good initial point
- then solve a simplified version of the model
Initial point
Starting from a good initial point is essential when solving packing problems with nonlinear programming.
generate_starts builds one start for every pair of rotations, eight of each polygon from 0° to 315° in 45° steps, so 64 in all. For each pair it moves the two polygons so their centroids coincide, slides the second one up until they barely overlap, and shifts the pair into the positive quadrant where the model expects it. separating_edge is what measures the overlap. It returns how deep the two convex parts still cut into each other, and the edge that keeps them apart best. That edge is also what the simplified model will fix.
ROTATIONS = list(range(0, 360, 45))
@dataclass
class Start:
angles: tuple[int, int]
cosine: list[float] = field(init=False)
sine: list[float] = field(init=False)
x: list[float]
y: list[float]
width: float
height: float
edges: InitVar[list]
separations: list = field(init=False)
def __post_init__(self, edges):
self.cosine = [math.cos(math.radians(angle)) for angle in self.angles]
self.sine = [math.sin(math.radians(angle)) for angle in self.angles]
self.separations = [
(0, k1, l1, 1, k2) if l1 is not None else (1, k2, l2, 0, k1)
for k1, k2, l1, l2 in edges
]
def separating_edge(part_1, part_2):
best, l1_best, l2_best = None, None, None
for l1, v1 in enumerate(part_1):
a, b, c = line_equation(v1, part_1[(l1 + 1) % len(part_1)])
value = min(relative_position(a, b, c, v2) for v2 in part_2)
if best is None or best < value:
best, l1_best, l2_best = value, l1, None
for l2, v2 in enumerate(part_2):
a, b, c = line_equation(v2, part_2[(l2 + 1) % len(part_2)])
value = min(relative_position(a, b, c, v1) for v1 in part_1)
if best < value:
best, l1_best, l2_best = value, None, l2
return -best, l1_best, l2_best
def worst_overlap(parts_1, parts_2):
worst, edges = 0.0, []
for k1, part_1 in enumerate(parts_1):
for k2, part_2 in enumerate(parts_2):
depth, l1, l2 = separating_edge(part_1, part_2)
worst = max(worst, depth)
edges.append((k1, k2, l1, l2))
return worst, edges
def turned_parts(polygon, theta):
c, s = math.cos(math.radians(theta)), math.sin(math.radians(theta))
xc, yc = rotate(*polygon.centroid, c, s)
return [
[(x - xc, y - yc) for x, y in (rotate(v.x, v.y, c, s) for v in part.vertices)]
for part in polygon.parts
]
def generate_starts(polygons):
starts = []
for theta1 in ROTATIONS:
parts_1 = turned_parts(polygons[0], theta1)
for theta2 in ROTATIONS:
parts_2 = turned_parts(polygons[1], theta2)
offset = 0
while True:
shifted = [[(x, y + offset) for x, y in part] for part in parts_2]
worst, edges = worst_overlap(parts_1, shifted)
if worst < 1:
break
offset += 1
points = [p for parts in (parts_1, shifted) for part in parts for p in part]
x_min = min(x for x, _ in points)
y_min = min(y for _, y in points)
x_max = max(x for x, _ in points)
y_max = max(y for _, y in points)
c1, s1 = math.cos(math.radians(theta1)), math.sin(math.radians(theta1))
c2, s2 = math.cos(math.radians(theta2)), math.sin(math.radians(theta2))
xc1, yc1 = rotate(*polygons[0].centroid, c1, s1)
xc2, yc2 = rotate(*polygons[1].centroid, c2, s2)
x = [-xc1 - x_min, -xc2 - x_min]
y = [-yc1 - y_min, -yc2 + offset - y_min]
width, height = x_max - x_min, y_max - y_min
starts.append(Start((theta1, theta2), x, y, width, height, edges))
starts.sort(key=area)
return startsThe animation runs through all 64, first with the centroids on top of each other, then with the second polygon slid up clear of the first.
starts = generate_starts(polygons)
print(f"{len(starts)} starts generated")
animate_starts(polygons, starts)64 starts generated
Laid out as a grid, the same 64 starts show where the room goes. The row is the turn applied to polygon 1 and the column the turn applied to polygon 2, every cell is drawn to the same scale so the rectangles compare by eye, and the number under each one is its area.
draw_start_grid(polygons, starts)Rotations that interlock the two outlines need the least room. Here is the smallest of the 64, the start the solver gets:
start = starts[0]
draw_placement(polygons, start, "Smallest start")That start already looks close, but it is not a solution. The polygons still overlap slightly, and they do not sit snugly against each other. Closing that gap is what the nonlinear program is for.
Simplified nonlinear model
To simplify the model, for each pair of convex polygons from different polygons, we will fix in advance which edge from these convex polygons is responsible for the non-intersection of the convex polygons. The separating edges are chosen when generating the initial point: they are the edges that separate the two convex polygons the most in the initial placement.
That is, we replace these constraints
\[ \forall j_1 = 1, \dots, N, \quad \forall j_2 = 1, \dots, N, j_2 \neq j_1, \quad \forall k_1 = 1, \dots, K^{j_1}, \quad \forall k_2 = 1, \dots, K^{j_2}, \quad \forall l_1 = 1, \dots, L^{j_1}_{k_1}, \quad \forall l_2 = 1, \dots, L^{j_2}_{k_2}, \]
\[ d^{j_1, j_2}_{k_1, l_1, k_2} \le \left( y^{j_1}_{k_1, l_1 + 1} - y^{j_1}_{k_1, l_1} \right) x^{j_2}_{k_2, l_2} + \left( x^{j_1}_{k_1, l_1} - x^{j_1}_{k_1, l_1 + 1} \right) y^{j_2}_{k_2, l_2} + x^{j_1}_{k_1, l_1 + 1} y^{j_1}_{k_1, l_1} - x^{j_1}_{k_1, l_1} y^{j_1}_{k_1, l_1 + 1} \]
and
\[ \forall j_1 = 1, \dots, N, \quad \forall j_2 = 1, \dots, N, j_2 \neq j_1, \quad \forall k_1 = 1, \dots, K^{j_1}, \quad \forall k_2 = 1, \dots, K^{j_2}, \]
\[ \max \left( \max_{l_1 = 1, \dots, L^{j_1}_{k_1}} d^{j_1, j_2}_{k_1, l_1, k_2}, \max_{l_2 = 1, \dots, L^{j_2}_{k_2}} d^{j_2, j_1}_{k_2, l_2, k_1} \right) \ge 0 \]
by the following constraints. If the edge chosen to separate convex part \(k_1\) of polygon \(P_{j_1}\) and convex part \(k_2\) of polygon \(P_{j_2}\) is edge \((l_1, l_1 + 1)\) from convex part \(k_1\) of polygon \(P_{j_1}\):
\[ \forall l_2 = 1, \dots, L^{j_2}_{k_2}, \qquad \left( y^{j_1}_{k_1, l_1 + 1} - y^{j_1}_{k_1, l_1} \right) x^{j_2}_{k_2, l_2} + \left( x^{j_1}_{k_1, l_1} - x^{j_1}_{k_1, l_1 + 1} \right) y^{j_2}_{k_2, l_2} + x^{j_1}_{k_1, l_1 + 1} y^{j_1}_{k_1, l_1} - x^{j_1}_{k_1, l_1} y^{j_1}_{k_1, l_1 + 1} \ge 0 \]
Otherwise, if the edge chosen to separate convex part \(k_1\) of polygon \(P_{j_1}\) and convex part \(k_2\) of polygon \(P_{j_2}\) is edge \((l_2, l_2 + 1)\) from convex part \(k_2\) of polygon \(P_{j_2}\):
\[ \forall l_1 = 1, \dots, L^{j_1}_{k_1}, \qquad \left( y^{j_2}_{k_2, l_2 + 1} - y^{j_2}_{k_2, l_2} \right) x^{j_1}_{k_1, l_1} + \left( x^{j_2}_{k_2, l_2} - x^{j_2}_{k_2, l_2 + 1} \right) y^{j_1}_{k_1, l_1} + x^{j_2}_{k_2, l_2 + 1} y^{j_2}_{k_2, l_2} - x^{j_2}_{k_2, l_2} y^{j_2}_{k_2, l_2 + 1} \ge 0 \]
Variables \(d^{j_1, j_2}_{k_1, l_1, k_2}\) are not necessary anymore: the simplified model is a pure nonlinear program (NLP).
Model implementation
import pyomo.environ as pyo
SOLVER_NAME = "knitroampl"minimize_area(polygons, start) builds the simplified model, solves it with Knitro, and returns a Packing. Every expression in it is quadratic, from the area \(w \cdot h\) to the circle \(c_j^2 + s_j^2 = 1\) that keeps the rotation a rotation, and the separation constraints.
The start is only nearly feasible, so the starting vertex coordinates are clamped to the bounds the model gives them.
def minimize_area(polygons, start):
model = pyo.ConcreteModel()
vertices = [
(j, k, i)
for j, polygon in enumerate(polygons)
for k, part in enumerate(polygon.parts)
for i in range(part.num_vertices)
]
separations = []
for j1, k1, l1, j2, k2 in start.separations:
p2 = (j1, k1, (l1 + 1) % polygons[j1].parts[k1].num_vertices)
for l2 in range(polygons[j2].parts[k2].num_vertices):
separations.append(((j1, k1, l1), p2, (j2, k2, l2)))
model.polygons = pyo.RangeSet(0, len(polygons) - 1)
model.vertices = pyo.Set(initialize=vertices, dimen=3)
model.separations = pyo.RangeSet(0, len(separations) - 1)
model.w = pyo.Var(within=pyo.NonNegativeReals, initialize=start.width)
model.h = pyo.Var(within=pyo.NonNegativeReals, initialize=start.height)
model.x = pyo.Var(model.polygons, initialize=start.x)
model.y = pyo.Var(model.polygons, initialize=start.y)
model.c = pyo.Var(model.polygons, bounds=(-1, 1), initialize=start.cosine)
model.s = pyo.Var(model.polygons, bounds=(-1, 1), initialize=start.sine)
model.xv = pyo.Var(model.vertices, within=pyo.NonNegativeReals)
model.yv = pyo.Var(model.vertices, within=pyo.NonNegativeReals)
for j, k, i in vertices:
v = polygons[j].parts[k].vertices[i]
v_x, v_y = rotate(v.x, v.y, start.cosine[j], start.sine[j])
model.xv[j, k, i].set_value(max(0.0, start.x[j] + v_x))
model.yv[j, k, i].set_value(max(0.0, start.y[j] + v_y))
model.obj = pyo.Objective(expr=model.w * model.h, sense=pyo.minimize)
def rotation_rule(model, j):
return model.c[j] ** 2 + model.s[j] ** 2 == 1
model.rotation = pyo.Constraint(model.polygons, rule=rotation_rule)
def v_x_rule(model, j, k, i):
v = polygons[j].parts[k].vertices[i]
return model.xv[j, k, i] == model.x[j] + v.x * model.c[j] + v.y * model.s[j]
model.v_x = pyo.Constraint(model.vertices, rule=v_x_rule)
def v_y_rule(model, j, k, i):
v = polygons[j].parts[k].vertices[i]
return model.yv[j, k, i] == model.y[j] + v.y * model.c[j] - v.x * model.s[j]
model.v_y = pyo.Constraint(model.vertices, rule=v_y_rule)
def separation_rule(model, i):
p1, p2, v = separations[i]
expr = (model.yv[p2] - model.yv[p1]) * model.xv[v]
expr += (model.xv[p1] - model.xv[p2]) * model.yv[v]
expr += model.xv[p2] * model.yv[p1] - model.xv[p1] * model.yv[p2]
return expr >= 0
model.separation = pyo.Constraint(model.separations, rule=separation_rule)
def width_rule(model, j, k, i):
return model.xv[j, k, i] <= model.w
model.width = pyo.Constraint(model.vertices, rule=width_rule)
def height_rule(model, j, k, i):
return model.yv[j, k, i] <= model.h
model.height = pyo.Constraint(model.vertices, rule=height_rule)
pyo.SolverFactory(SOLVER_NAME).solve(model, tee=True)
smallest_area = model.obj()
vectors = (model.x, model.y, model.c, model.s)
solved = [[vector[j]() for j in model.polygons] for vector in vectors]
return Packing(smallest_area, *solved, model.w(), model.h())Resolution
Let’s solve the simplified model from the best initial point.
packing = minimize_area(polygons, start)Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 216 | 216
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 78 0 | 2 78 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 472 345 | 2 472 345
total: 2 852 345 | 2 852 345
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 6.585371e+01 1.94e-01
4 6.000000e+01 3.12e-12 9.21e-09 4.07e-05 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 6.00000000101676e+01
Final feasibility error (abs / rel) = 3.12e-12 / 3.12e-12
Final optimality error (abs / rel) = 9.21e-09 / 9.21e-10
# of iterations = 4
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01112 ( 0.008 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Show the full outputHide the full output
Output visualization
Let’s visualize the solution found by the solver.
report_packing(packing)Rectangle 6.000 × 10.000, area 60.000
polygon x y cos sin turn
------------------------------------------------------
1 0.000 0.000 1.000 -0.000 0.0°
2 6.000 10.000 -1.000 -0.000 180.0°
draw_placement(polygons, packing, "Knitro solution")Resolution from each initial point
The simplified model is a nonconvex NLP, so the solution found by the solver depends on the initial point. Each solve takes a fraction of a second, so all 64 starts can be run and compared.
packings = [minimize_area(polygons, candidate) for candidate in starts]Show the full outputHide the full output
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 216 | 216
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 78 0 | 2 78 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 472 345 | 2 472 345
total: 2 852 345 | 2 852 345
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 6.585371e+01 1.94e-01
4 6.000000e+01 3.12e-12 9.21e-09 4.07e-05 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 6.00000000101676e+01
Final feasibility error (abs / rel) = 3.12e-12 / 3.12e-12
Final optimality error (abs / rel) = 9.21e-09 / 9.21e-10
# of iterations = 4
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02616 ( 0.011 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 333 | 2 460 333
total: 2 840 333 | 2 840 333
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 8.970511e+01 6.10e-01
6 8.864894e+01 6.43e-10 7.36e-08 6.35e-05 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 8.86489397746278e+01
Final feasibility error (abs / rel) = 6.43e-10 / 6.43e-10
Final optimality error (abs / rel) = 7.36e-08 / 4.98e-09
# of iterations = 6
# of CG iterations = 1
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01298 ( 0.010 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 217 | 217
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 79 0 | 2 79 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 478 339 | 2 478 339
total: 2 858 339 | 2 858 339
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 9.154839e+01 1.78e-15
3 9.000000e+01 8.78e-10 5.71e-06 9.91e-05 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.00000004808873e+01
Final feasibility error (abs / rel) = 8.78e-10 / 8.78e-10
Final optimality error (abs / rel) = 5.71e-06 / 3.81e-07
# of iterations = 3
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01179 ( 0.009 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 217 | 217
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 79 0 | 2 79 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 478 337 | 2 478 337
total: 2 858 337 | 2 858 337
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 9.463135e+01 1.78e-15
4 9.000000e+01 2.00e-11 4.01e-07 3.72e-05 0.01
EXIT: Locally optimal solution found.
HINT: Knitro spent 1.0% of solution time (0.000129 secs) checking model
convexity. To skip the automatic convexity checker for QPs and QCQPs,
explicity set the user option convex=0 or convex=1.
Final Statistics
----------------
Final objective value = 9.00000000750495e+01
Final feasibility error (abs / rel) = 2.00e-11 / 2.00e-11
Final optimality error (abs / rel) = 4.01e-07 / 2.68e-08
# of iterations = 4
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01241 ( 0.010 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 211 | 211
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 73 0 | 2 73 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 442 315 | 2 442 315
total: 2 822 315 | 2 822 315
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 9.566573e+01 0.00e+00
10 9.200005e+01 3.57e-09 4.44e-01 2.70e-04 0.02
20 9.198343e+01 2.31e-04 2.03e-03 1.01e+00 0.03
21 9.199996e+01 5.04e-07 1.88e-06 5.39e-03 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.19999641622422e+01
Final feasibility error (abs / rel) = 5.04e-07 / 5.04e-07
Final optimality error (abs / rel) = 1.88e-06 / 1.64e-07
# of iterations = 21
# of CG iterations = 4
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.03083 ( 0.028 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 323 | 2 454 323
total: 2 834 323 | 2 834 323
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 9.633427e+01 8.88e-16
10 9.333810e+01 9.28e-07 3.21e+00 1.14e-02 0.02
20 9.330939e+01 2.46e-10 4.32e+00 8.92e-06 0.03
30 9.736650e+01 2.69e-03 1.11e+01 1.17e+00 0.04
40 9.332004e+01 2.33e-04 2.33e-04 2.97e-03 0.05
46 9.331536e+01 1.01e-07 2.81e-06 1.46e-06 0.06
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.33153560793313e+01
Final feasibility error (abs / rel) = 1.01e-07 / 1.01e-07
Final optimality error (abs / rel) = 2.81e-06 / 2.41e-07
# of iterations = 46
# of CG iterations = 23
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.05995 ( 0.057 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 212 | 212
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 74 0 | 2 74 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 448 315 | 2 448 315
total: 2 828 315 | 2 828 315
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 9.822454e+01 4.24e-01
10 9.823405e+01 2.21e-03 3.12e+00 2.65e-01 0.02
18 9.813492e+01 4.39e-07 5.30e-06 3.04e-03 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.81349178163994e+01
Final feasibility error (abs / rel) = 4.39e-07 / 4.39e-07
Final optimality error (abs / rel) = 5.30e-06 / 4.32e-07
# of iterations = 18
# of CG iterations = 14
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02644 ( 0.023 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 321 | 2 454 321
total: 2 834 321 | 2 834 321
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 9.878228e+01 3.29e-01
9 9.318974e+01 3.28e-10 4.51e-07 2.46e-05 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.31897436117410e+01
Final feasibility error (abs / rel) = 3.28e-10 / 3.28e-10
Final optimality error (abs / rel) = 4.51e-07 / 3.39e-08
# of iterations = 9
# of CG iterations = 3
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01801 ( 0.015 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 217 | 217
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 79 0 | 2 79 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 478 337 | 2 478 337
total: 2 858 337 | 2 858 337
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.009890e+02 0.00e+00
5 9.569454e+01 2.67e-10 9.88e-08 3.79e-04 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.56945403904340e+01
Final feasibility error (abs / rel) = 2.67e-10 / 2.67e-10
Final optimality error (abs / rel) = 9.88e-08 / 7.23e-09
# of iterations = 5
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01299 ( 0.010 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 321 | 2 460 321
total: 2 840 321 | 2 840 321
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.011610e+02 3.56e-01
5 1.004680e+02 1.63e-11 3.94e-09 1.71e-05 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.00468037437097e+02
Final feasibility error (abs / rel) = 1.63e-11 / 1.63e-11
Final optimality error (abs / rel) = 3.94e-09 / 2.77e-10
# of iterations = 5
# of CG iterations = 3
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01239 ( 0.010 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 321 | 2 454 321
total: 2 834 321 | 2 834 321
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.015109e+02 2.30e-02
3 1.013333e+02 1.18e-10 2.71e-06 1.03e-03 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.01333337801904e+02
Final feasibility error (abs / rel) = 1.18e-10 / 1.18e-10
Final optimality error (abs / rel) = 2.71e-06 / 2.14e-07
# of iterations = 3
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02379 ( 0.009 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 211 | 211
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 73 0 | 2 73 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 442 313 | 2 442 313
total: 2 822 313 | 2 822 313
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.015563e+02 1.21e-01
6 9.522971e+01 2.50e-11 1.60e-06 4.80e-06 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.52297077513770e+01
Final feasibility error (abs / rel) = 2.50e-11 / 2.50e-11
Final optimality error (abs / rel) = 1.60e-06 / 1.19e-07
# of iterations = 6
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01730 ( 0.012 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 315 | 2 454 315
total: 2 834 315 | 2 834 315
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.027098e+02 4.44e-16
4 9.625000e+01 2.62e-10 2.04e-07 2.70e-04 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.62500001106283e+01
Final feasibility error (abs / rel) = 2.62e-10 / 2.62e-10
Final optimality error (abs / rel) = 2.04e-07 / 1.48e-08
# of iterations = 4
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02207 ( 0.009 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 329 | 2 460 329
total: 2 840 329 | 2 840 329
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.030615e+02 1.78e-15
5 9.800000e+01 8.86e-11 9.71e-10 2.67e-05 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.79999999985809e+01
Final feasibility error (abs / rel) = 8.86e-11 / 8.86e-11
Final optimality error (abs / rel) = 9.71e-10 / 6.94e-11
# of iterations = 5
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01422 ( 0.011 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 331 | 2 460 331
total: 2 840 331 | 2 840 331
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.044811e+02 4.44e-16
7 9.308531e+01 6.60e-11 2.25e-08 1.18e-05 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.30853065879219e+01
Final feasibility error (abs / rel) = 6.60e-11 / 6.60e-11
Final optimality error (abs / rel) = 2.25e-08 / 1.61e-09
# of iterations = 7
# of CG iterations = 1
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01383 ( 0.011 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 216 | 216
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 78 0 | 2 78 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 472 333 | 2 472 333
total: 2 852 333 | 2 852 333
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.045810e+02 1.78e-15
10 9.148490e+01 1.79e-08 1.31e-05 1.69e-02 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.14848957551099e+01
Final feasibility error (abs / rel) = 1.79e-08 / 1.79e-08
Final optimality error (abs / rel) = 1.31e-05 / 8.69e-07
# of iterations = 10
# of CG iterations = 1
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01685 ( 0.014 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 311 | 2 436 311
total: 2 816 311 | 2 816 311
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.048688e+02 4.44e-16
5 9.735387e+01 3.81e-07 6.83e-06 3.78e-03 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.73538727221633e+01
Final feasibility error (abs / rel) = 3.81e-07 / 3.81e-07
Final optimality error (abs / rel) = 6.83e-06 / 4.91e-07
# of iterations = 5
# of CG iterations = 3
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01713 ( 0.014 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 321 | 2 460 321
total: 2 840 321 | 2 840 321
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.049121e+02 4.44e-16
10 9.953095e+01 4.11e-05 3.19e+00 5.80e-02 0.02
17 9.943247e+01 1.76e-08 8.97e-06 7.75e-03 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.94324682109236e+01
Final feasibility error (abs / rel) = 1.76e-08 / 1.76e-08
Final optimality error (abs / rel) = 8.97e-06 / 7.22e-07
# of iterations = 17
# of CG iterations = 24
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02781 ( 0.025 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 323 | 2 454 323
total: 2 834 323 | 2 834 323
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.059825e+02 1.78e-15
8 8.830155e+01 8.69e-11 2.81e-09 3.16e-06 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 8.83015474514898e+01
Final feasibility error (abs / rel) = 8.69e-11 / 8.69e-11
Final optimality error (abs / rel) = 2.81e-09 / 1.95e-10
# of iterations = 8
# of CG iterations = 2
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01403 ( 0.011 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 217 | 217
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 79 0 | 2 79 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 478 335 | 2 478 335
total: 2 858 335 | 2 858 335
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.071087e+02 1.78e-15
3 1.040000e+02 1.79e-10 1.18e-05 2.44e-03 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.04000022642711e+02
Final feasibility error (abs / rel) = 1.79e-10 / 1.79e-10
Final optimality error (abs / rel) = 1.18e-05 / 9.09e-07
# of iterations = 3
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01245 ( 0.009 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 216 | 216
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 78 0 | 2 78 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 472 331 | 2 472 331
total: 2 852 331 | 2 852 331
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.071112e+02 4.44e-16
4 1.040000e+02 1.25e-10 7.57e-07 1.62e-04 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.04000000127636e+02
Final feasibility error (abs / rel) = 1.25e-10 / 1.25e-10
Final optimality error (abs / rel) = 7.57e-07 / 5.82e-08
# of iterations = 4
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01580 ( 0.011 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 215 | 215
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 77 0 | 2 77 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 466 331 | 2 466 331
total: 2 846 331 | 2 846 331
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.077682e+02 4.44e-16
7 9.397971e+01 2.03e-09 1.16e-05 1.81e-04 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.39797078954689e+01
Final feasibility error (abs / rel) = 2.03e-09 / 2.03e-09
Final optimality error (abs / rel) = 1.16e-05 / 8.69e-07
# of iterations = 7
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01569 ( 0.013 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 309 | 2 436 309
total: 2 816 309 | 2 816 309
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.079295e+02 8.03e-01
8 9.657308e+01 1.87e-09 1.18e-06 6.65e-05 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.65730771303135e+01
Final feasibility error (abs / rel) = 1.87e-09 / 1.87e-09
Final optimality error (abs / rel) = 1.18e-06 / 8.55e-08
# of iterations = 8
# of CG iterations = 2
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01867 ( 0.016 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 216 | 216
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 78 0 | 2 78 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 472 337 | 2 472 337
total: 2 852 337 | 2 852 337
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.082431e+02 6.19e-01
10 9.760927e+01 3.19e-11 1.33e-01 1.40e-04 0.03
18 9.760770e+01 1.46e-08 7.96e-08 5.55e-04 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.76076971541381e+01
Final feasibility error (abs / rel) = 1.46e-08 / 1.46e-08
Final optimality error (abs / rel) = 7.96e-08 / 5.26e-09
# of iterations = 18
# of CG iterations = 5
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.04302 ( 0.031 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 327 | 2 460 327
total: 2 840 327 | 2 840 327
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.094025e+02 1.78e-15
10 9.132068e+01 1.35e-03 7.42e+00 1.80e-01 0.02
20 9.092343e+01 5.11e-11 8.96e+00 1.87e-04 0.03
30 1.040582e+02 8.14e-04 6.43e+03 1.06e+00 0.04
40 9.846307e+01 9.64e-03 3.62e+01 3.67e+00 0.05
50 9.093071e+01 3.83e-07 3.41e-02 1.22e-02 0.06
60 9.092308e+01 1.17e-08 1.85e-05 2.29e-05 0.07
61 9.092308e+01 9.78e-11 9.78e-11 1.53e-07 0.07
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.09230769210969e+01
Final feasibility error (abs / rel) = 9.78e-11 / 9.78e-11
Final optimality error (abs / rel) = 9.78e-11 / 6.45e-12
# of iterations = 61
# of CG iterations = 54
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.07405 ( 0.071 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 212 | 212
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 74 0 | 2 74 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 448 315 | 2 448 315
total: 2 828 315 | 2 828 315
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.100986e+02 4.44e-16
5 1.041275e+02 2.31e-08 1.25e-05 1.13e-02 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.04127509286419e+02
Final feasibility error (abs / rel) = 2.31e-08 / 2.31e-08
Final optimality error (abs / rel) = 1.25e-05 / 9.37e-07
# of iterations = 5
# of CG iterations = 3
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01186 ( 0.009 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 313 | 2 436 313
total: 2 816 313 | 2 816 313
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.103638e+02 1.86e-01
5 9.866667e+01 3.13e-11 2.68e-07 5.37e-05 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.86666667268146e+01
Final feasibility error (abs / rel) = 3.13e-11 / 3.13e-11
Final optimality error (abs / rel) = 2.68e-07 / 2.17e-08
# of iterations = 5
# of CG iterations = 0
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01138 ( 0.009 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 321 | 2 454 321
total: 2 834 321 | 2 834 321
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.106264e+02 1.78e-15
8 9.706218e+01 8.62e-11 5.72e-09 5.46e-06 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.70621778253540e+01
Final feasibility error (abs / rel) = 8.62e-11 / 8.62e-11
Final optimality error (abs / rel) = 5.72e-09 / 4.12e-10
# of iterations = 8
# of CG iterations = 1
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01978 ( 0.015 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 309 | 2 436 309
total: 2 816 309 | 2 816 309
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.121311e+02 1.78e-15
10 9.707160e+01 2.70e-06 5.17e+00 1.29e-02 0.02
20 9.706218e+01 4.67e-13 5.60e+00 7.57e-06 0.02
22 9.706218e+01 4.91e-14 8.92e-08 3.13e-07 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.70621803671025e+01
Final feasibility error (abs / rel) = 4.91e-14 / 4.91e-14
Final optimality error (abs / rel) = 8.92e-08 / 6.43e-09
# of iterations = 22
# of CG iterations = 5
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02527 ( 0.023 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 211 | 211
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 73 0 | 2 73 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 442 315 | 2 442 315
total: 2 822 315 | 2 822 315
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.129405e+02 8.88e-16
10 1.003480e+02 2.57e-08 3.11e-04 9.60e-04 0.02
20 1.003435e+02 2.01e-08 2.72e-04 8.48e-04 0.03
30 1.002975e+02 4.12e-06 5.97e-03 1.21e-02 0.04
40 1.003377e+02 5.51e-03 1.06e-01 1.08e-02 0.07
49 1.002667e+02 7.01e-12 5.26e-08 5.74e-04 0.07
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.00266667350594e+02
Final feasibility error (abs / rel) = 7.01e-12 / 7.01e-12
Final optimality error (abs / rel) = 5.26e-08 / 4.20e-09
# of iterations = 49
# of CG iterations = 23
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.07355 ( 0.071 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 311 | 2 436 311
total: 2 816 311 | 2 816 311
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.135830e+02 8.88e-16
10 9.601159e+01 6.68e-07 2.20e+00 1.38e-02 0.02
20 9.600000e+01 3.94e-09 2.37e+00 3.19e-06 0.04
23 9.600000e+01 2.07e-11 6.96e-08 2.69e-07 0.05
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.60000003348608e+01
Final feasibility error (abs / rel) = 2.07e-11 / 2.07e-11
Final optimality error (abs / rel) = 6.96e-08 / 5.80e-09
# of iterations = 23
# of CG iterations = 1
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.04899 ( 0.046 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 327 | 2 460 327
total: 2 840 327 | 2 840 327
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.138606e+02 8.88e-16
10 9.733323e+01 6.87e-07 3.79e-02 1.16e+00 0.02
12 9.733263e+01 4.73e-07 5.77e-06 5.11e-03 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.73326269986992e+01
Final feasibility error (abs / rel) = 4.73e-07 / 4.73e-07
Final optimality error (abs / rel) = 5.77e-06 / 3.74e-07
# of iterations = 12
# of CG iterations = 3
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02201 ( 0.019 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 329 | 2 460 329
total: 2 840 329 | 2 840 329
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.183069e+02 2.99e-01
10 1.025365e+02 7.81e-08 1.68e-05 6.01e-04 0.04
11 1.025365e+02 9.79e-11 1.18e-10 2.67e-06 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.02536503257969e+02
Final feasibility error (abs / rel) = 9.79e-11 / 9.79e-11
Final optimality error (abs / rel) = 1.18e-10 / 9.85e-12
# of iterations = 11
# of CG iterations = 10
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.04040 ( 0.024 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 319 | 2 460 319
total: 2 840 319 | 2 840 319
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.195090e+02 6.05e-01
6 1.177019e+02 1.77e-09 1.12e-08 2.35e-05 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.17701901502540e+02
Final feasibility error (abs / rel) = 1.77e-09 / 1.77e-09
Final optimality error (abs / rel) = 1.12e-08 / 7.64e-10
# of iterations = 6
# of CG iterations = 7
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01814 ( 0.015 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 212 | 212
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 74 0 | 2 74 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 448 313 | 2 448 313
total: 2 828 313 | 2 828 313
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.203355e+02 3.32e-01
10 1.124018e+02 3.06e-03 8.86e-01 9.14e-01 0.02
14 1.103177e+02 1.12e-10 2.88e-07 1.32e-04 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.10317703418212e+02
Final feasibility error (abs / rel) = 1.12e-10 / 1.12e-10
Final optimality error (abs / rel) = 2.88e-07 / 2.15e-08
# of iterations = 14
# of CG iterations = 4
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01985 ( 0.016 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 211 | 211
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 73 0 | 2 73 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 442 313 | 2 442 313
total: 2 822 313 | 2 822 313
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.213701e+02 8.88e-16
10 1.067262e+02 2.22e-06 9.74e+00 6.95e-02 0.02
20 1.066667e+02 2.25e-11 9.90e+00 1.32e-05 0.03
23 1.066667e+02 1.32e-11 6.75e-08 4.29e-07 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.06666667424464e+02
Final feasibility error (abs / rel) = 1.32e-11 / 1.32e-11
Final optimality error (abs / rel) = 6.75e-08 / 5.06e-09
# of iterations = 23
# of CG iterations = 8
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.03743 ( 0.035 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 319 | 2 454 319
total: 2 834 319 | 2 834 319
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.226169e+02 4.44e-16
10 9.332400e+01 3.78e-05 3.92e+00 2.46e-02 0.02
18 9.330938e+01 4.41e-11 1.62e-07 3.00e-05 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.33093779873971e+01
Final feasibility error (abs / rel) = 4.41e-11 / 4.41e-11
Final optimality error (abs / rel) = 1.62e-07 / 1.39e-08
# of iterations = 18
# of CG iterations = 8
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02181 ( 0.019 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 212 | 212
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 74 0 | 2 74 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 448 315 | 2 448 315
total: 2 828 315 | 2 828 315
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.292778e+02 1.78e-15
7 9.540469e+01 6.63e-11 4.63e-09 2.62e-05 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.54046866326778e+01
Final feasibility error (abs / rel) = 6.63e-11 / 6.63e-11
Final optimality error (abs / rel) = 4.63e-09 / 3.91e-10
# of iterations = 7
# of CG iterations = 3
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02037 ( 0.015 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 215 | 215
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 77 0 | 2 77 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 466 331 | 2 466 331
total: 2 846 331 | 2 846 331
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.300069e+02 2.81e-01
10 1.154186e+02 3.71e-06 1.52e-04 9.78e-04 0.02
11 1.154186e+02 1.73e-10 1.67e-08 4.89e-06 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.15418640734512e+02
Final feasibility error (abs / rel) = 1.73e-10 / 1.73e-10
Final optimality error (abs / rel) = 1.67e-08 / 1.14e-09
# of iterations = 11
# of CG iterations = 7
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02535 ( 0.023 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 215 | 215
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 77 0 | 2 77 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 466 331 | 2 466 331
total: 2 846 331 | 2 846 331
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.322576e+02 1.78e-15
10 9.658895e+01 4.37e-02 1.54e+00 1.74e+00 0.03
20 9.623587e+01 6.85e-08 6.06e+00 1.07e-03 0.05
21 9.623559e+01 2.26e-08 2.26e-08 1.08e-03 0.05
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.62355875209998e+01
Final feasibility error (abs / rel) = 2.26e-08 / 2.26e-08
Final optimality error (abs / rel) = 2.26e-08 / 1.88e-09
# of iterations = 21
# of CG iterations = 12
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.05391 ( 0.042 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 325 | 2 460 325
total: 2 840 325 | 2 840 325
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.337865e+02 1.78e-15
10 9.817008e+01 2.40e-03 2.26e+00 2.22e-01 0.03
20 9.733798e+01 7.79e-07 4.69e-01 4.01e-03 0.04
30 9.600137e+01 7.24e-10 8.46e+00 5.29e-04 0.04
40 9.599992e+01 1.79e-06 1.13e+00 1.42e-05 0.07
47 9.536776e+01 4.83e-11 1.27e-09 7.60e-06 0.08
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.53677647439514e+01
Final feasibility error (abs / rel) = 4.83e-11 / 4.83e-11
Final optimality error (abs / rel) = 1.27e-09 / 1.08e-10
# of iterations = 47
# of CG iterations = 22
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.07590 ( 0.072 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 211 | 211
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 73 0 | 2 73 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 442 313 | 2 442 313
total: 2 822 313 | 2 822 313
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.339413e+02 4.44e-16
10 1.134423e+02 6.25e-03 5.04e+00 6.29e-01 0.03
20 1.125334e+02 2.70e-09 5.31e+00 1.60e-04 0.03
24 1.125331e+02 8.28e-10 5.86e-07 1.65e-09 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.12533094012345e+02
Final feasibility error (abs / rel) = 8.28e-10 / 8.28e-10
Final optimality error (abs / rel) = 5.86e-07 / 4.17e-08
# of iterations = 24
# of CG iterations = 16
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.04354 ( 0.041 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 212 | 212
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 74 0 | 2 74 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 448 319 | 2 448 319
total: 2 828 319 | 2 828 319
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.342001e+02 1.78e-15
9 1.162335e+02 1.02e-08 2.99e-07 3.58e-04 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.16233527289522e+02
Final feasibility error (abs / rel) = 1.02e-08 / 1.02e-08
Final optimality error (abs / rel) = 2.99e-07 / 2.21e-08
# of iterations = 9
# of CG iterations = 6
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02578 ( 0.014 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 319 | 2 454 319
total: 2 834 319 | 2 834 319
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.346315e+02 1.78e-15
10 1.004304e+02 1.55e-03 1.53e+00 9.31e-01 0.02
16 1.002254e+02 9.64e-11 9.64e-11 7.17e-07 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.00225371302598e+02
Final feasibility error (abs / rel) = 9.64e-11 / 9.64e-11
Final optimality error (abs / rel) = 9.64e-11 / 6.44e-12
# of iterations = 16
# of CG iterations = 9
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02718 ( 0.024 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 329 | 2 460 329
total: 2 840 329 | 2 840 329
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.356393e+02 5.70e-01
10 1.180374e+02 2.71e-01 1.26e+00 2.40e+00 0.02
13 1.168494e+02 2.08e-09 2.77e-07 2.82e-05 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.16849431179318e+02
Final feasibility error (abs / rel) = 2.08e-09 / 2.08e-09
Final optimality error (abs / rel) = 2.77e-07 / 1.88e-08
# of iterations = 13
# of CG iterations = 12
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02631 ( 0.024 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 327 | 2 454 327
total: 2 834 327 | 2 834 327
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.364236e+02 4.33e-01
9 1.018108e+02 8.73e-11 1.29e-09 1.06e-05 0.01
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.01810776640338e+02
Final feasibility error (abs / rel) = 8.73e-11 / 8.73e-11
Final optimality error (abs / rel) = 1.29e-09 / 8.78e-11
# of iterations = 9
# of CG iterations = 7
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01505 ( 0.012 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 215 | 215
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 77 0 | 2 77 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 466 329 | 2 466 329
total: 2 846 329 | 2 846 329
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.372541e+02 1.78e-15
10 1.101082e+02 4.96e-04 6.37e+00 7.97e-01 0.02
20 1.096309e+02 5.28e-11 5.38e+00 1.90e-04 0.02
30 1.096307e+02 1.25e-09 2.27e+00 3.90e-07 0.03
31 1.096307e+02 1.37e-10 4.03e-08 4.26e-07 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.09630694705543e+02
Final feasibility error (abs / rel) = 1.37e-10 / 1.37e-10
Final optimality error (abs / rel) = 4.03e-08 / 2.87e-09
# of iterations = 31
# of CG iterations = 5
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02993 ( 0.027 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 215 | 215
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 77 0 | 2 77 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 466 327 | 2 466 327
total: 2 846 327 | 2 846 327
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.374910e+02 1.78e-15
10 1.066892e+02 2.86e-03 7.34e+00 2.47e+00 0.02
20 1.047114e+02 1.52e-08 6.29e+00 4.98e-04 0.02
30 1.047107e+02 8.55e-11 9.88e-08 5.22e-07 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.04710678723531e+02
Final feasibility error (abs / rel) = 8.55e-11 / 8.55e-11
Final optimality error (abs / rel) = 9.88e-08 / 6.67e-09
# of iterations = 30
# of CG iterations = 18
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.03205 ( 0.029 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 323 | 2 460 323
total: 2 840 323 | 2 840 323
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.377079e+02 4.44e-16
10 1.031808e+02 3.84e-03 6.50e-01 1.54e-02 0.03
20 1.024328e+02 4.65e-12 1.35e+01 4.15e-05 0.04
30 1.024327e+02 8.49e-11 5.47e+00 5.56e-06 0.05
40 4.129159e+04 5.44e+00 1.03e+03 6.31e+01 0.06
50 1.743548e+04 6.69e-01 2.02e+00 7.52e+00 0.07
60 8.540916e+02 8.76e-03 6.70e+00 5.68e+02 0.08
70 2.958233e+02 6.66e-04 7.15e+00 8.44e+00 0.09
80 2.269074e+02 8.43e-06 8.25e+00 3.68e+00 0.11
90 1.655789e+02 6.92e-04 1.15e+01 3.44e+00 0.11
100 1.302962e+02 3.85e-02 1.00e+00 7.11e-02 0.12
110 1.027328e+02 5.55e-03 9.35e-01 6.16e-03 0.13
120 9.869437e+01 1.57e-07 3.19e+01 3.54e-03 0.14
123 9.868488e+01 9.81e-11 1.14e-06 9.25e-04 0.14
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.86848787566758e+01
Final feasibility error (abs / rel) = 9.81e-11 / 9.81e-11
Final optimality error (abs / rel) = 1.14e-06 / 8.06e-08
# of iterations = 123
# of CG iterations = 128
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.14426 ( 0.126 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 311 | 2 436 311
total: 2 816 311 | 2 816 311
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.377634e+02 8.88e-16
10 9.613997e+01 5.23e-05 2.11e+00 2.75e-01 0.02
20 9.613154e+01 5.36e-10 1.50e+00 1.19e-02 0.02
24 9.613153e+01 4.58e-13 3.24e-08 2.75e-01 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.61315317221432e+01
Final feasibility error (abs / rel) = 4.58e-13 / 4.58e-13
Final optimality error (abs / rel) = 3.24e-08 / 2.77e-09
# of iterations = 24
# of CG iterations = 11
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02811 ( 0.025 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 215 | 215
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 77 0 | 2 77 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 466 335 | 2 466 335
total: 2 846 335 | 2 846 335
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.379388e+02 9.16e-01
10 9.886450e+01 1.66e-02 9.73e-02 5.11e-01 0.02
14 9.881584e+01 8.30e-11 1.39e-10 9.87e-07 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.88158383490043e+01
Final feasibility error (abs / rel) = 8.30e-11 / 8.30e-11
Final optimality error (abs / rel) = 1.39e-10 / 8.94e-12
# of iterations = 14
# of CG iterations = 10
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02677 ( 0.023 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 309 | 2 436 309
total: 2 816 309 | 2 816 309
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.380924e+02 1.81e-01
10 1.157390e+02 3.93e-09 3.58e-07 5.54e-04 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.15739040543913e+02
Final feasibility error (abs / rel) = 3.93e-09 / 3.93e-09
Final optimality error (abs / rel) = 3.58e-07 / 2.41e-08
# of iterations = 10
# of CG iterations = 9
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02340 ( 0.021 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 321 | 2 454 321
total: 2 834 321 | 2 834 321
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.391330e+02 1.78e-15
7 1.276260e+02 1.40e-10 4.47e-07 1.79e-04 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.27625966466951e+02
Final feasibility error (abs / rel) = 1.40e-10 / 1.40e-10
Final optimality error (abs / rel) = 4.47e-07 / 2.74e-08
# of iterations = 7
# of CG iterations = 2
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01666 ( 0.010 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 214 | 214
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 76 0 | 2 76 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 460 325 | 2 460 325
total: 2 840 325 | 2 840 325
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.392231e+02 3.11e-01
10 1.078595e+02 4.92e-02 4.68e+00 1.79e+00 0.02
20 9.901329e+01 4.50e-08 9.47e+00 1.68e-03 0.03
30 9.900993e+01 8.57e-11 8.93e+00 1.61e-06 0.03
32 9.900993e+01 8.52e-11 6.85e-08 4.77e-07 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.90099299451594e+01
Final feasibility error (abs / rel) = 8.52e-11 / 8.52e-11
Final optimality error (abs / rel) = 6.85e-08 / 4.84e-09
# of iterations = 32
# of CG iterations = 17
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.03808 ( 0.035 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 215 | 215
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 77 0 | 2 77 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 466 331 | 2 466 331
total: 2 846 331 | 2 846 331
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.400074e+02 8.88e-16
10 1.152921e+02 6.49e-04 2.48e-01 1.02e+00 0.02
12 1.150631e+02 3.11e-09 9.51e-07 2.35e-04 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.15063084272979e+02
Final feasibility error (abs / rel) = 3.11e-09 / 3.11e-09
Final optimality error (abs / rel) = 9.51e-07 / 6.46e-08
# of iterations = 12
# of CG iterations = 9
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.01943 ( 0.016 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 309 | 2 436 309
total: 2 816 309 | 2 816 309
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.417551e+02 5.66e-01
10 9.615178e+01 6.53e-05 4.36e+00 1.30e-01 0.02
20 9.613154e+01 1.19e-10 6.43e+00 2.66e-02 0.03
25 9.613153e+01 8.19e-12 7.25e-08 5.62e-03 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.61315320371946e+01
Final feasibility error (abs / rel) = 8.19e-12 / 8.19e-12
Final optimality error (abs / rel) = 7.25e-08 / 6.20e-09
# of iterations = 25
# of CG iterations = 10
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.03683 ( 0.034 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 210 | 210
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 72 0 | 2 72 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 436 309 | 2 436 309
total: 2 816 309 | 2 816 309
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.441549e+02 8.88e-16
10 1.005086e+02 5.44e-04 9.86e-01 6.81e-03 0.02
20 9.950485e+01 2.66e-10 1.22e+01 1.74e-04 0.03
24 9.950460e+01 4.16e-13 1.85e-08 1.09e-05 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.95046011531449e+01
Final feasibility error (abs / rel) = 4.16e-13 / 4.16e-13
Final optimality error (abs / rel) = 1.85e-08 / 1.30e-09
# of iterations = 24
# of CG iterations = 12
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.03933 ( 0.037 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 212 | 212
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 74 0 | 2 74 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 448 317 | 2 448 317
total: 2 828 317 | 2 828 317
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.444398e+02 1.78e-15
10 9.728257e+01 3.63e-05 1.26e-01 3.07e-01 0.04
13 9.722890e+01 9.88e-11 9.88e-11 5.03e-06 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.72288980926018e+01
Final feasibility error (abs / rel) = 9.88e-11 / 9.88e-11
Final optimality error (abs / rel) = 9.88e-11 / 8.38e-12
# of iterations = 13
# of CG iterations = 4
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.04098 ( 0.018 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 211 | 211
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 73 0 | 2 73 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 442 317 | 2 442 317
total: 2 822 317 | 2 822 317
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.447807e+02 1.78e-15
10 9.902889e+01 1.66e-06 1.36e+01 1.58e-02 0.02
20 9.900994e+01 3.84e-09 9.12e+00 6.95e-06 0.02
24 9.900993e+01 9.36e-11 8.56e-08 3.42e-07 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.90099301860613e+01
Final feasibility error (abs / rel) = 9.36e-11 / 9.36e-11
Final optimality error (abs / rel) = 8.56e-08 / 6.05e-09
# of iterations = 24
# of CG iterations = 3
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02910 ( 0.026 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 213 | 213
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 75 0 | 2 75 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 454 315 | 2 454 315
total: 2 834 315 | 2 834 315
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.450794e+02 3.52e-01
10 1.135844e+02 1.71e-04 5.41e+00 5.64e-02 0.02
20 1.134628e+02 3.58e-12 5.93e+00 3.19e-05 0.02
22 1.134628e+02 2.46e-08 1.05e-08 4.86e-06 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.13462825577645e+02
Final feasibility error (abs / rel) = 2.46e-08 / 2.46e-08
Final optimality error (abs / rel) = 1.05e-08 / 7.40e-10
# of iterations = 22
# of CG iterations = 17
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02704 ( 0.024 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 211 | 211
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 73 0 | 2 73 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 442 317 | 2 442 317
total: 2 822 317 | 2 822 317
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.453822e+02 8.88e-16
10 1.142470e+02 4.18e-02 1.10e+01 2.53e+00 0.02
20 1.123690e+02 6.06e-09 5.51e+00 2.36e-04 0.03
29 1.123686e+02 1.13e-14 7.59e-08 7.57e-07 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.12368569207489e+02
Final feasibility error (abs / rel) = 1.13e-14 / 1.13e-14
Final optimality error (abs / rel) = 7.59e-08 / 5.40e-09
# of iterations = 29
# of CG iterations = 25
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.03852 ( 0.036 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 215 | 215
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 77 0 | 2 77 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 466 333 | 2 466 333
total: 2 846 333 | 2 846 333
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.456398e+02 8.88e-16
10 1.020013e+02 4.93e-01 1.11e+01 2.46e+00 0.02
17 1.011605e+02 8.79e-10 2.13e-07 4.76e-04 0.03
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.01160486104514e+02
Final feasibility error (abs / rel) = 8.79e-10 / 8.79e-10
Final optimality error (abs / rel) = 2.13e-07 / 1.34e-08
# of iterations = 17
# of CG iterations = 19
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02569 ( 0.023 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 212 | 212
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 74 0 | 2 74 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 448 317 | 2 448 317
total: 2 828 317 | 2 828 317
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.488991e+02 8.88e-16
10 9.695938e+01 1.30e-04 1.66e+00 7.51e-01 0.02
20 9.665350e+01 7.71e-08 2.35e+00 1.59e-03 0.03
30 9.665282e+01 8.57e-11 2.50e+00 3.49e-06 0.04
32 9.665282e+01 5.11e-11 7.27e-08 9.11e-07 0.04
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 9.66528160276009e+01
Final feasibility error (abs / rel) = 5.11e-11 / 5.11e-11
Final optimality error (abs / rel) = 7.27e-08 / 6.12e-09
# of iterations = 32
# of CG iterations = 10
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.04376 ( 0.041 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
Artelys Knitro 16.0.0:
=======================================
Commercial License
Artelys Knitro 16.0.0
=======================================
Knitro using 1 thread.
Knitro presolve eliminated 0 variables (0%) and 0 constraints (0%) in 0.00s.
concurrent_evals 0
datacheck 0
feastol 1e-06
feastol_abs 0.001
findiff_numthreads 1
hessian_no_f 1
hessopt 1
opttol 1e-06
opttol_abs 0.001
Problem Characteristics | Presolved
-----------------------
Problem type: QCQP
Objective: minimize / quadratic
Number of variables: 78 | 78
bounds: lower upper range | lower upper range
70 0 4 | 70 0 4
free fixed | free fixed
4 0 | 4 0
Number of constraints: 212 | 212
eq. ineq. range | eq. ineq. range
linear: 68 68 0 | 68 68 0
quadratic: 2 74 0 | 2 74 0
Number of nonzeros:
objective Jacobian Hessian | objective Jacobian Hessian
linear: 0 380 | 0 380
quadratic: 2 448 313 | 2 448 313
total: 2 828 313 | 2 828 313
Coefficient range:
linear objective: [0e+00, 0e+00] | [0e+00, 0e+00]
linear constraints: [1e+00, 8e+00] | [1e+00, 8e+00]
quadratic objective: [1e+00, 1e+00] | [1e+00, 1e+00]
quadratic constraints: [1e+00, 1e+00] | [1e+00, 1e+00]
variable bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
constraint bounds: [1e+00, 1e+00] | [1e+00, 1e+00]
Knitro using the Interior-Point/Barrier Direct algorithm.
Iter Objective FeasError OptError ||Step|| Time
-------- -------------- --------- --------- --------- --------
0 1.535093e+02 1.78e-15
10 1.045818e+02 2.73e-04 7.89e+00 5.37e-01 0.02
20 1.040002e+02 1.42e-10 5.66e+00 1.18e-04 0.02
22 1.040002e+02 5.36e-09 2.61e-06 3.65e-05 0.02
EXIT: Locally optimal solution found.
Final Statistics
----------------
Final objective value = 1.04000163232559e+02
Final feasibility error (abs / rel) = 5.36e-09 / 5.36e-09
Final optimality error (abs / rel) = 2.61e-06 / 2.01e-07
# of iterations = 22
# of CG iterations = 4
# of function evaluations = 0
# of gradient evaluations = 0
# of Hessian evaluations = 0
Total program time (secs) = 0.02436 ( 0.020 CPU time)
Time spent in evaluations (secs) = 0.00000
================================================================================
draw_areas(starts, packings)Conclusion
report_spread(starts, packings) start start area solved area of best
-----------------------------------------------
smallest 65.85 60.00 1.00x
median 118.31 102.54 1.71x
largest 153.51 104.00 1.73x
64 starts solved, 1 reaching the best area of 60.00. The worst solve is 2.13 times larger.
The plot above shows the value of the initial point strategy: the model being nonconvex, the quality of the solutions degrades as the area of the initial points increases, and no initial point leads to a better solution than the best one.
Generating good initial points and solving the simplified model from them is therefore an effective strategy for this packing problem.