Noisy Oracle + Constraints
In [ ]:
Copied!
import os
import sys
from google.colab import drive
drive.mount('/content/drive')
sys.path.append('/content/drive/MyDrive/Projects/2023-HJ-Prox/src/')
from hj_prox import *
from functions import *
import numpy as np
import torch
import torch.nn as nn
import matplotlib.pyplot as plt
import time
torch.set_default_dtype(torch.float64)
torch.manual_seed(0)
device = 'cuda:0'
import os
import sys
from google.colab import drive
drive.mount('/content/drive')
sys.path.append('/content/drive/MyDrive/Projects/2023-HJ-Prox/src/')
from hj_prox import *
from functions import *
import numpy as np
import torch
import torch.nn as nn
import matplotlib.pyplot as plt
import time
torch.set_default_dtype(torch.float64)
torch.manual_seed(0)
device = 'cuda:0'
Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount("/content/drive", force_remount=True).
In [ ]:
Copied!
def l1_norm_noisy(x):
# assumes shape of x is (n_samples x dim)
return (1 + 5e-3*torch.randn(x.shape[0], device=x.device))*torch.norm(x, dim=1, p=1)
def l1_norm_noisy(x):
# assumes shape of x is (n_samples x dim)
return (1 + 5e-3*torch.randn(x.shape[0], device=x.device))*torch.norm(x, dim=1, p=1)
LADMM Algorithm to obtain true solution of¶
\begin{equation} \min_{x\in\mathbb{R}^{1000}} \; \|Wx\|_1 \quad \text{such that} \quad Ax=b \end{equation}
given by
\begin{align} p^{k+1} & = \eta_\lambda \left(p^k + \lambda(\nu_1^k + \alpha(Wx^k - p^k)) \right) \\ \nu_1^{k+1} &= \nu_1^k + \alpha(Wx^k - p^{k+1}) \\ \nu_2^{k+1} &= \nu_2^k + \alpha(Ax^k -b) \\ r^{k} & = W^\top \left( 2\nu_1^{k+1} - \nu_1^k \right) + A^\top \left( 2\nu_2^{k+1} - \nu_2^k \right)\\ x^{k+1} & = x^k - \beta r^k, \end{align}
where $\alpha$, $\beta$, and $\lambda$ are chosen parameters
In [ ]:
Copied!
torch.manual_seed(1)
dim = int(1e3)
A = torch.randn(int(dim/2), dim, device=device)
W = 1e-1*torch.randn(dim, dim, device=device)
b = torch.randn(int(dim/2), 1, device=device)
alpha = 1e-3
beta = 1e-1
lambd = 1e-2
def ladmm(x0, W, A, b, max_iters, tol=1e-6, alpha=1e-2, beta=1e-1, lambd=1e-2, verbose=True):
assert len(x0.shape)==2 and x0.shape[1]==1
dim1 = A.shape[1]
dim2 = A.shape[0]
# note if A is underdetermined, dim1 < dim2
device = x0.device
xk = x0
pk = torch.zeros(dim1, 1, device=device)
nu1k = torch.zeros(dim1, 1, device=device)
nu2k = torch.zeros(dim2, 1, device=device)
fk_hist = torch.zeros(max_iters)
fixed_point_residual_hist = torch.zeros(max_iters)
for i in range(max_iters):
Wxk = W.matmul(xk)
temp = pk + lambd*(nu1k + alpha*(Wxk - pk))
pk = l1_norm_prox(temp, t=lambd)
nu1k_plus1 = nu1k + alpha*(Wxk - pk)
nu2k_plus1 = nu2k + alpha*(A.matmul(xk) - b)
rk = W.t().matmul(2*nu1k_plus1 - nu1k) + A.t().matmul(2*nu2k_plus1 - nu2k)
xk = xk - beta*rk
fk = l1_norm(W.matmul(xk).permute(1,0)).cpu()
fk_hist[i] = fk
fixed_point_residual = torch.norm(beta*rk).cpu()
fixed_point_residual_hist[i] = fixed_point_residual
if verbose:
print('iter: ', i, ', fk: ', fk, ', fixed pt res: ', fixed_point_residual)
if fixed_point_residual <= tol:
x_sol = xk
fk_hist = fk_hist[0:i]
fixed_point_residual_hist = fixed_point_residual_hist[0:i]
print('LADMM converged to fixed pt. res. of', fixed_point_residual, ', after ', i, ' iterations ')
break
return xk, fk_hist, fixed_point_residual_hist
def hj_mm(x0, W, A, b, max_iters, delta=1e-1, int_samples=int(1e2), step_size=1e-1, tol=1e-8, lambd=0.5, verbose=True, x_true=[], print_freq=1, alpha=1.0):
assert len(x0.shape)==2 and x0.shape[1]==1
dim1 = A.shape[1]
dim2 = A.shape[0]
assert b.shape[1]==1 and b.shape[0]==dim2
# note if A is underdetermined, dim1 < dim2
device = x0.device
xk = x0
uk = torch.zeros(dim2, 1, device=device)
fk_hist = torch.zeros(max_iters)
fixed_point_residual_hist = torch.zeros(max_iters)
rel_err_hist = torch.zeros(max_iters)
linesearch_iters_hist = torch.zeros(max_iters)
def f_noisy(x):
return l1_norm_noisy(W.matmul(x.permute(1,0)).permute(1,0))
res = A.matmul(xk)-b
assert res.shape[0]==dim2 and res.shape[1]==1
for i in range(max_iters):
start_time = time.time()
xold = xk.clone()
res = A.matmul(xk)-b
xk = xk - step_size*A.t().matmul(uk + lambd*res)
xk, linesearch_iters, temp_envelope = compute_prox(xk, step_size, f_noisy, delta=delta, int_samples=int_samples, alpha=alpha, device=device)
res = A.matmul(xk)-b
uk = uk + lambd*(res)
assert res.shape[0]==A.shape[0] and res.shape[1]==1
assert uk.shape==res.shape
Wxk = W.matmul(xk)
fk = l1_norm(Wxk.permute(1,0)).cpu()
fk_hist[i] = fk
fixed_point_residual = torch.norm(xk - xold).cpu()
fixed_point_residual_hist[i] = fixed_point_residual.cpu()
rel_err = (torch.norm(xk - x_true)/torch.norm(x_true)).cpu()
rel_err_hist[i] = rel_err.cpu()
linesearch_iters_hist[i] = linesearch_iters
end_time = time.time()
iter_time = end_time - start_time
if verbose:
if (i+1)%print_freq==0:
print('iter: ', i+1, ', fixed pt res: ', fixed_point_residual, ', ls: ', linesearch_iters, ', rel_err: ', rel_err, ', time: ', iter_time)
return xk, fk_hist, fixed_point_residual_hist, rel_err_hist, linesearch_iters_hist
def grad_descent(x0, A, b, max_iters, tol=1e-6, step_size=1e-1, verbose=True, x_true=[]):
xk = x0
grad_norm_hist = torch.zeros(max_iters)
rel_err_hist = torch.zeros(max_iters)
for i in range(max_iters):
start_time = time.time()
grad_term = A.t().matmul(A.matmul(xk)-b)
xk = xk - step_size * grad_term
grad_norm_hist[i] = torch.norm(grad_term).cpu()
rel_err = (torch.norm(xk - x_true)/torch.norm(x_true)).cpu()
rel_err_hist[i] = rel_err
end_time = time.time()
iter_time = end_time - start_time
if verbose:
print('iter = ', i+1, ', grad_norm = ', grad_norm_hist[i], ', rel_err = ', rel_err)
return xk, grad_norm_hist, rel_err_hist
torch.manual_seed(1)
dim = int(1e3)
A = torch.randn(int(dim/2), dim, device=device)
W = 1e-1*torch.randn(dim, dim, device=device)
b = torch.randn(int(dim/2), 1, device=device)
alpha = 1e-3
beta = 1e-1
lambd = 1e-2
def ladmm(x0, W, A, b, max_iters, tol=1e-6, alpha=1e-2, beta=1e-1, lambd=1e-2, verbose=True):
assert len(x0.shape)==2 and x0.shape[1]==1
dim1 = A.shape[1]
dim2 = A.shape[0]
# note if A is underdetermined, dim1 < dim2
device = x0.device
xk = x0
pk = torch.zeros(dim1, 1, device=device)
nu1k = torch.zeros(dim1, 1, device=device)
nu2k = torch.zeros(dim2, 1, device=device)
fk_hist = torch.zeros(max_iters)
fixed_point_residual_hist = torch.zeros(max_iters)
for i in range(max_iters):
Wxk = W.matmul(xk)
temp = pk + lambd*(nu1k + alpha*(Wxk - pk))
pk = l1_norm_prox(temp, t=lambd)
nu1k_plus1 = nu1k + alpha*(Wxk - pk)
nu2k_plus1 = nu2k + alpha*(A.matmul(xk) - b)
rk = W.t().matmul(2*nu1k_plus1 - nu1k) + A.t().matmul(2*nu2k_plus1 - nu2k)
xk = xk - beta*rk
fk = l1_norm(W.matmul(xk).permute(1,0)).cpu()
fk_hist[i] = fk
fixed_point_residual = torch.norm(beta*rk).cpu()
fixed_point_residual_hist[i] = fixed_point_residual
if verbose:
print('iter: ', i, ', fk: ', fk, ', fixed pt res: ', fixed_point_residual)
if fixed_point_residual <= tol:
x_sol = xk
fk_hist = fk_hist[0:i]
fixed_point_residual_hist = fixed_point_residual_hist[0:i]
print('LADMM converged to fixed pt. res. of', fixed_point_residual, ', after ', i, ' iterations ')
break
return xk, fk_hist, fixed_point_residual_hist
def hj_mm(x0, W, A, b, max_iters, delta=1e-1, int_samples=int(1e2), step_size=1e-1, tol=1e-8, lambd=0.5, verbose=True, x_true=[], print_freq=1, alpha=1.0):
assert len(x0.shape)==2 and x0.shape[1]==1
dim1 = A.shape[1]
dim2 = A.shape[0]
assert b.shape[1]==1 and b.shape[0]==dim2
# note if A is underdetermined, dim1 < dim2
device = x0.device
xk = x0
uk = torch.zeros(dim2, 1, device=device)
fk_hist = torch.zeros(max_iters)
fixed_point_residual_hist = torch.zeros(max_iters)
rel_err_hist = torch.zeros(max_iters)
linesearch_iters_hist = torch.zeros(max_iters)
def f_noisy(x):
return l1_norm_noisy(W.matmul(x.permute(1,0)).permute(1,0))
res = A.matmul(xk)-b
assert res.shape[0]==dim2 and res.shape[1]==1
for i in range(max_iters):
start_time = time.time()
xold = xk.clone()
res = A.matmul(xk)-b
xk = xk - step_size*A.t().matmul(uk + lambd*res)
xk, linesearch_iters, temp_envelope = compute_prox(xk, step_size, f_noisy, delta=delta, int_samples=int_samples, alpha=alpha, device=device)
res = A.matmul(xk)-b
uk = uk + lambd*(res)
assert res.shape[0]==A.shape[0] and res.shape[1]==1
assert uk.shape==res.shape
Wxk = W.matmul(xk)
fk = l1_norm(Wxk.permute(1,0)).cpu()
fk_hist[i] = fk
fixed_point_residual = torch.norm(xk - xold).cpu()
fixed_point_residual_hist[i] = fixed_point_residual.cpu()
rel_err = (torch.norm(xk - x_true)/torch.norm(x_true)).cpu()
rel_err_hist[i] = rel_err.cpu()
linesearch_iters_hist[i] = linesearch_iters
end_time = time.time()
iter_time = end_time - start_time
if verbose:
if (i+1)%print_freq==0:
print('iter: ', i+1, ', fixed pt res: ', fixed_point_residual, ', ls: ', linesearch_iters, ', rel_err: ', rel_err, ', time: ', iter_time)
return xk, fk_hist, fixed_point_residual_hist, rel_err_hist, linesearch_iters_hist
def grad_descent(x0, A, b, max_iters, tol=1e-6, step_size=1e-1, verbose=True, x_true=[]):
xk = x0
grad_norm_hist = torch.zeros(max_iters)
rel_err_hist = torch.zeros(max_iters)
for i in range(max_iters):
start_time = time.time()
grad_term = A.t().matmul(A.matmul(xk)-b)
xk = xk - step_size * grad_term
grad_norm_hist[i] = torch.norm(grad_term).cpu()
rel_err = (torch.norm(xk - x_true)/torch.norm(x_true)).cpu()
rel_err_hist[i] = rel_err
end_time = time.time()
iter_time = end_time - start_time
if verbose:
print('iter = ', i+1, ', grad_norm = ', grad_norm_hist[i], ', rel_err = ', rel_err)
return xk, grad_norm_hist, rel_err_hist
Find Numerical True Solution with Linearized ADMM.¶
Numerically true solution is obtained by averaging three runs
In [ ]:
Copied!
n_trials_true = 3
x_true_array = torch.randn(n_trials_true, dim, device=device)
for i in range(n_trials_true):
x0 = torch.randn(dim, 1, device=device)
start_time_ladmm = time.time()
x_true, fk_admm_hist, fixed_point_residual_admm_hist = ladmm(x0, W, A, b, int(5e4), alpha=alpha, lambd=lambd, beta=beta, verbose=False, tol=1e-6)
end_time_ladmm = time.time()
time_ladmm = end_time_ladmm - start_time_ladmm
print('trial ', i, ', time = ', time_ladmm)
x_true_array[i, :] = x_true.view(-1)
assert(max(x_true)<np.inf)
n_trials_true = 3
x_true_array = torch.randn(n_trials_true, dim, device=device)
for i in range(n_trials_true):
x0 = torch.randn(dim, 1, device=device)
start_time_ladmm = time.time()
x_true, fk_admm_hist, fixed_point_residual_admm_hist = ladmm(x0, W, A, b, int(5e4), alpha=alpha, lambd=lambd, beta=beta, verbose=False, tol=1e-6)
end_time_ladmm = time.time()
time_ladmm = end_time_ladmm - start_time_ladmm
print('trial ', i, ', time = ', time_ladmm)
x_true_array[i, :] = x_true.view(-1)
assert(max(x_true)
LADMM converged to fixed pt. res. of tensor(9.9999e-07) , after 33947 iterations trial 0 , time = 17.05860137939453 LADMM converged to fixed pt. res. of tensor(1.0000e-06) , after 34690 iterations trial 1 , time = 17.195754289627075 LADMM converged to fixed pt. res. of tensor(9.9986e-07) , after 31409 iterations trial 2 , time = 15.552043437957764
Compute Gradient Descent Solution¶
This is to ensure that the proximal operator is not simply the identity
In [ ]:
Copied!
# get relative errors for ladmm_no_prox.
max_iters = int(1e4)
U, s, Vt = torch.svd(A.t().matmul(A))
step_size = 1/s.max().cpu() - 1e-8
lambd=0.5
xopt_GD, grad_norm_hist_GD, rel_err_hist_GD = grad_descent(x0, A, b, max_iters, step_size=step_size, verbose=False, x_true=x_true)
# get relative errors for ladmm_no_prox.
max_iters = int(1e4)
U, s, Vt = torch.svd(A.t().matmul(A))
step_size = 1/s.max().cpu() - 1e-8
lambd=0.5
xopt_GD, grad_norm_hist_GD, rel_err_hist_GD = grad_descent(x0, A, b, max_iters, step_size=step_size, verbose=False, x_true=x_true)
Blackbox Oracle HJ Prox Experiment 1: Fix number of samples and vary $\delta$¶
In [ ]:
Copied!
# Average runs over 30 trials: standalone
n_trials = 1
delta_array = [1e-2, 1e-1, 1.0, 10, 100]
alpha_array = [2**(-12), 2**(-9), (2**(-5) + 2**(-6))/2, 2**(-2), 2**(-1)]
xopt_HJ_lmm_delta_array = torch.zeros(len(delta_array), x_true.shape[0], x_true.shape[1])
fk_HJ_lmm_hist_delta_array = torch.zeros(len(delta_array), max_iters)
norm_diff_HJ_lmm_hist_delta_array = torch.zeros(len(delta_array), max_iters)
rel_err_lmm_hist_delta_array = torch.zeros(len(delta_array), max_iters)
ls_iters_lmm_hist_delta_array = torch.zeros(len(delta_array), max_iters)
samples_for_varying_delta = int(1e4)
for delta_index in range(len(delta_array)):
print('delta =', delta_array[delta_index])
for i in range(n_trials):
start_time_hj_lmm = time.time()
current_delta = delta_array[delta_index]
xopt_HJ_lmm_temp, fk_HJ_lmm_hist_temp, norm_diff_HJ_lmm_hist_temp, rel_err_hist_temp, ls_iters_hist_temp = hj_mm(x0, W, A, b, max_iters,
int_samples=samples_for_varying_delta,
delta=current_delta,
lambd = lambd,
step_size=step_size,
verbose=True,
print_freq=50,
x_true=x_true,
alpha=alpha_array[delta_index])
end_time_hj_lmm = time.time()
time_hj_lmm = end_time_hj_lmm - start_time_hj_lmm
print('trial ', i+1, ' finished after', time_hj_lmm)
print('\n\n\n\n CHANGE, delta = ', current_delta)
if i==0:
xopt_HJ_lmm = xopt_HJ_lmm_temp
fk_HJ_lmm_hist = fk_HJ_lmm_hist_temp
norm_diff_HJ_lmm_hist = norm_diff_HJ_lmm_hist_temp
rel_err_hist = rel_err_hist_temp
ls_iters_hist = ls_iters_hist_temp
else:
xopt_HJ_lmm = xopt_HJ_lmm + xopt_HJ_lmm_temp
fk_HJ_lmm_hist = fk_HJ_lmm_hist + fk_HJ_lmm_hist_temp
norm_diff_HJ_lmm_hist = norm_diff_HJ_lmm_hist + norm_diff_HJ_lmm_hist_temp
rel_err_hist = rel_err_hist + rel_err_hist_temp
ls_iters_hist = ls_iters_hist + ls_iters_hist_temp
xopt_HJ_lmm_delta_array[delta_index, :, :] = xopt_HJ_lmm/n_trials
fk_HJ_lmm_hist_delta_array[delta_index, :] = fk_HJ_lmm_hist/n_trials
norm_diff_HJ_lmm_hist_delta_array[delta_index, :] = norm_diff_HJ_lmm_hist/n_trials
rel_err_lmm_hist_delta_array[delta_index, :] = rel_err_hist/n_trials
ls_iters_lmm_hist_delta_array[delta_index,:] = ls_iters_hist/n_trials
print('norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[sample_index,:]) = ', torch.norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[delta_index,:]))
# Average runs over 30 trials: standalone
n_trials = 1
delta_array = [1e-2, 1e-1, 1.0, 10, 100]
alpha_array = [2**(-12), 2**(-9), (2**(-5) + 2**(-6))/2, 2**(-2), 2**(-1)]
xopt_HJ_lmm_delta_array = torch.zeros(len(delta_array), x_true.shape[0], x_true.shape[1])
fk_HJ_lmm_hist_delta_array = torch.zeros(len(delta_array), max_iters)
norm_diff_HJ_lmm_hist_delta_array = torch.zeros(len(delta_array), max_iters)
rel_err_lmm_hist_delta_array = torch.zeros(len(delta_array), max_iters)
ls_iters_lmm_hist_delta_array = torch.zeros(len(delta_array), max_iters)
samples_for_varying_delta = int(1e4)
for delta_index in range(len(delta_array)):
print('delta =', delta_array[delta_index])
for i in range(n_trials):
start_time_hj_lmm = time.time()
current_delta = delta_array[delta_index]
xopt_HJ_lmm_temp, fk_HJ_lmm_hist_temp, norm_diff_HJ_lmm_hist_temp, rel_err_hist_temp, ls_iters_hist_temp = hj_mm(x0, W, A, b, max_iters,
int_samples=samples_for_varying_delta,
delta=current_delta,
lambd = lambd,
step_size=step_size,
verbose=True,
print_freq=50,
x_true=x_true,
alpha=alpha_array[delta_index])
end_time_hj_lmm = time.time()
time_hj_lmm = end_time_hj_lmm - start_time_hj_lmm
print('trial ', i+1, ' finished after', time_hj_lmm)
print('\n\n\n\n CHANGE, delta = ', current_delta)
if i==0:
xopt_HJ_lmm = xopt_HJ_lmm_temp
fk_HJ_lmm_hist = fk_HJ_lmm_hist_temp
norm_diff_HJ_lmm_hist = norm_diff_HJ_lmm_hist_temp
rel_err_hist = rel_err_hist_temp
ls_iters_hist = ls_iters_hist_temp
else:
xopt_HJ_lmm = xopt_HJ_lmm + xopt_HJ_lmm_temp
fk_HJ_lmm_hist = fk_HJ_lmm_hist + fk_HJ_lmm_hist_temp
norm_diff_HJ_lmm_hist = norm_diff_HJ_lmm_hist + norm_diff_HJ_lmm_hist_temp
rel_err_hist = rel_err_hist + rel_err_hist_temp
ls_iters_hist = ls_iters_hist + ls_iters_hist_temp
xopt_HJ_lmm_delta_array[delta_index, :, :] = xopt_HJ_lmm/n_trials
fk_HJ_lmm_hist_delta_array[delta_index, :] = fk_HJ_lmm_hist/n_trials
norm_diff_HJ_lmm_hist_delta_array[delta_index, :] = norm_diff_HJ_lmm_hist/n_trials
rel_err_lmm_hist_delta_array[delta_index, :] = rel_err_hist/n_trials
ls_iters_lmm_hist_delta_array[delta_index,:] = ls_iters_hist/n_trials
print('norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[sample_index,:]) = ', torch.norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[delta_index,:]))
delta = 0.01 iter: 50 , fixed pt res: tensor(0.6014) , ls: 1 , rel_err: tensor(15.2876) , time: 0.002866983413696289 iter: 100 , fixed pt res: tensor(0.2610) , ls: 1 , rel_err: tensor(14.1650) , time: 0.0026578903198242188 iter: 150 , fixed pt res: tensor(0.1266) , ls: 1 , rel_err: tensor(13.2045) , time: 0.002607583999633789 iter: 200 , fixed pt res: tensor(0.0741) , ls: 1 , rel_err: tensor(12.3301) , time: 0.0027289390563964844 iter: 250 , fixed pt res: tensor(0.0612) , ls: 1 , rel_err: tensor(11.5111) , time: 0.0026788711547851562 iter: 300 , fixed pt res: tensor(0.0564) , ls: 1 , rel_err: tensor(10.7342) , time: 0.0026938915252685547 iter: 350 , fixed pt res: tensor(0.0528) , ls: 1 , rel_err: tensor(10.0056) , time: 0.0026712417602539062 iter: 400 , fixed pt res: tensor(0.0527) , ls: 1 , rel_err: tensor(9.3370) , time: 0.0026133060455322266 iter: 450 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(8.7010) , time: 0.0026159286499023438 iter: 500 , fixed pt res: tensor(0.0490) , ls: 1 , rel_err: tensor(8.1159) , time: 0.002603769302368164 iter: 550 , fixed pt res: tensor(0.0506) , ls: 1 , rel_err: tensor(7.5500) , time: 0.0025870800018310547 iter: 600 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(7.0455) , time: 0.002651691436767578 iter: 650 , fixed pt res: tensor(0.0490) , ls: 1 , rel_err: tensor(6.5675) , time: 0.0026242733001708984 iter: 700 , fixed pt res: tensor(0.0472) , ls: 1 , rel_err: tensor(6.1281) , time: 0.0026123523712158203 iter: 750 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(5.7053) , time: 0.0027201175689697266 iter: 800 , fixed pt res: tensor(0.0473) , ls: 1 , rel_err: tensor(5.3180) , time: 0.002632617950439453 iter: 850 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(4.9593) , time: 0.002621889114379883 iter: 900 , fixed pt res: tensor(0.0463) , ls: 1 , rel_err: tensor(4.6238) , time: 0.002607107162475586 iter: 950 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(4.3144) , time: 0.002595186233520508 iter: 1000 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(4.0185) , time: 0.002645254135131836 iter: 1050 , fixed pt res: tensor(0.0463) , ls: 1 , rel_err: tensor(3.7540) , time: 0.002599954605102539 iter: 1100 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(3.5047) , time: 0.0026836395263671875 iter: 1150 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(3.2836) , time: 0.0026116371154785156 iter: 1200 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(3.0738) , time: 0.002595663070678711 iter: 1250 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(2.8702) , time: 0.002620220184326172 iter: 1300 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(2.6800) , time: 0.0026030540466308594 iter: 1350 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(2.5230) , time: 0.002622842788696289 iter: 1400 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(2.3789) , time: 0.0026531219482421875 iter: 1450 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(2.2404) , time: 0.002665281295776367 iter: 1500 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(2.1036) , time: 0.002603769302368164 iter: 1550 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(1.9756) , time: 0.0026116371154785156 iter: 1600 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(1.8512) , time: 0.0026519298553466797 iter: 1650 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(1.7429) , time: 0.0026175975799560547 iter: 1700 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(1.6449) , time: 0.0026214122772216797 iter: 1750 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(1.5489) , time: 0.002623319625854492 iter: 1800 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(1.4627) , time: 0.002610445022583008 iter: 1850 , fixed pt res: tensor(0.0426) , ls: 1 , rel_err: tensor(1.3820) , time: 0.0026204586029052734 iter: 1900 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(1.3105) , time: 0.002740621566772461 iter: 1950 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(1.2419) , time: 0.0026121139526367188 iter: 2000 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(1.1821) , time: 0.0026407241821289062 iter: 2050 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(1.1262) , time: 0.0026285648345947266 iter: 2100 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(1.0700) , time: 0.0027396678924560547 iter: 2150 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(1.0336) , time: 0.0026540756225585938 iter: 2200 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.9851) , time: 0.0028276443481445312 iter: 2250 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.9466) , time: 0.0026481151580810547 iter: 2300 , fixed pt res: tensor(0.0469) , ls: 1 , rel_err: tensor(0.8937) , time: 0.002695798873901367 iter: 2350 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.8420) , time: 0.00261688232421875 iter: 2400 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.8041) , time: 0.0026023387908935547 iter: 2450 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.7707) , time: 0.0026216506958007812 iter: 2500 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.7425) , time: 0.0026090145111083984 iter: 2550 , fixed pt res: tensor(0.0427) , ls: 1 , rel_err: tensor(0.7211) , time: 0.0026030540466308594 iter: 2600 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.6999) , time: 0.0026161670684814453 iter: 2650 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.6637) , time: 0.0026285648345947266 iter: 2700 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.6484) , time: 0.002592325210571289 iter: 2750 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.6204) , time: 0.0026221275329589844 iter: 2800 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.5907) , time: 0.0026400089263916016 iter: 2850 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.5667) , time: 0.002603769302368164 iter: 2900 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.5479) , time: 0.002847433090209961 iter: 2950 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.5221) , time: 0.002637147903442383 iter: 3000 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.4944) , time: 0.002875804901123047 iter: 3050 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.4865) , time: 0.0026242733001708984 iter: 3100 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.4677) , time: 0.002634286880493164 iter: 3150 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.4603) , time: 0.0026273727416992188 iter: 3200 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.4451) , time: 0.0027008056640625 iter: 3250 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.4363) , time: 0.002660512924194336 iter: 3300 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.4198) , time: 0.002737283706665039 iter: 3350 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.4052) , time: 0.002620697021484375 iter: 3400 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.3929) , time: 0.002596616744995117 iter: 3450 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.3751) , time: 0.002627134323120117 iter: 3500 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.3594) , time: 0.0026710033416748047 iter: 3550 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.3492) , time: 0.0026192665100097656 iter: 3600 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.3329) , time: 0.002612590789794922 iter: 3650 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.3213) , time: 0.0026526451110839844 iter: 3700 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.3138) , time: 0.002615213394165039 iter: 3750 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.3068) , time: 0.0026254653930664062 iter: 3800 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2985) , time: 0.0026793479919433594 iter: 3850 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2954) , time: 0.0026276111602783203 iter: 3900 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2995) , time: 0.0027604103088378906 iter: 3950 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2918) , time: 0.0026252269744873047 iter: 4000 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2829) , time: 0.002598285675048828 iter: 4050 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2883) , time: 0.0026128292083740234 iter: 4100 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2823) , time: 0.0026764869689941406 iter: 4150 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2749) , time: 0.0026464462280273438 iter: 4200 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.2738) , time: 0.002658843994140625 iter: 4250 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2839) , time: 0.002664327621459961 iter: 4300 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2846) , time: 0.002600431442260742 iter: 4350 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2822) , time: 0.002614736557006836 iter: 4400 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2766) , time: 0.0026111602783203125 iter: 4450 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2851) , time: 0.002942800521850586 iter: 4500 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2790) , time: 0.002645254135131836 iter: 4550 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.2737) , time: 0.0026237964630126953 iter: 4600 , fixed pt res: tensor(0.0425) , ls: 1 , rel_err: tensor(0.2737) , time: 0.0026972293853759766 iter: 4650 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2738) , time: 0.002602815628051758 iter: 4700 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2681) , time: 0.0027227401733398438 iter: 4750 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2600) , time: 0.0026187896728515625 iter: 4800 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2689) , time: 0.002664327621459961 iter: 4850 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2647) , time: 0.002623319625854492 iter: 4900 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2610) , time: 0.0026009082794189453 iter: 4950 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2547) , time: 0.0026657581329345703 iter: 5000 , fixed pt res: tensor(0.0422) , ls: 1 , rel_err: tensor(0.2452) , time: 0.0026068687438964844 iter: 5050 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2534) , time: 0.002641439437866211 iter: 5100 , fixed pt res: tensor(0.0469) , ls: 1 , rel_err: tensor(0.2546) , time: 0.0025894641876220703 iter: 5150 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2565) , time: 0.0026578903198242188 iter: 5200 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2602) , time: 0.002780437469482422 iter: 5250 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2538) , time: 0.002653360366821289 iter: 5300 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.2541) , time: 0.0026001930236816406 iter: 5350 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.2446) , time: 0.0026025772094726562 iter: 5400 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.2299) , time: 0.002604246139526367 iter: 5450 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2321) , time: 0.002683401107788086 iter: 5500 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2332) , time: 0.0026204586029052734 iter: 5550 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.2307) , time: 0.0025882720947265625 iter: 5600 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2264) , time: 0.0026459693908691406 iter: 5650 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.2368) , time: 0.002635955810546875 iter: 5700 , fixed pt res: tensor(0.0426) , ls: 1 , rel_err: tensor(0.2348) , time: 0.002643585205078125 iter: 5750 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2338) , time: 0.002627849578857422 iter: 5800 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.2340) , time: 0.002646923065185547 iter: 5850 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2335) , time: 0.002660036087036133 iter: 5900 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2385) , time: 0.002616405487060547 iter: 5950 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2460) , time: 0.002605915069580078 iter: 6000 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2416) , time: 0.0026574134826660156 iter: 6050 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.2449) , time: 0.0026526451110839844 iter: 6100 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2512) , time: 0.0025959014892578125 iter: 6150 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2495) , time: 0.0025892257690429688 iter: 6200 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2530) , time: 0.002648591995239258 iter: 6250 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2474) , time: 0.0026361942291259766 iter: 6300 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.2457) , time: 0.0026311874389648438 iter: 6350 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2481) , time: 0.002582073211669922 iter: 6400 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2603) , time: 0.0027589797973632812 iter: 6450 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.2571) , time: 0.002671957015991211 iter: 6500 , fixed pt res: tensor(0.0481) , ls: 1 , rel_err: tensor(0.2515) , time: 0.0026404857635498047 iter: 6550 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2546) , time: 0.002638101577758789 iter: 6600 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2515) , time: 0.002616405487060547 iter: 6650 , fixed pt res: tensor(0.0429) , ls: 1 , rel_err: tensor(0.2477) , time: 0.0026443004608154297 iter: 6700 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2431) , time: 0.0026798248291015625 iter: 6750 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2456) , time: 0.0026657581329345703 iter: 6800 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2512) , time: 0.00266265869140625 iter: 6850 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2436) , time: 0.0026111602783203125 iter: 6900 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2404) , time: 0.0026488304138183594 iter: 6950 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2493) , time: 0.0025832653045654297 iter: 7000 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2581) , time: 0.002736330032348633 iter: 7050 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2536) , time: 0.0026400089263916016 iter: 7100 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2552) , time: 0.002611398696899414 iter: 7150 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2662) , time: 0.0026242733001708984 iter: 7200 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2723) , time: 0.002617359161376953 iter: 7250 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2547) , time: 0.0026268959045410156 iter: 7300 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2492) , time: 0.0026891231536865234 iter: 7350 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2514) , time: 0.0025877952575683594 iter: 7400 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2516) , time: 0.0026044845581054688 iter: 7450 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.2598) , time: 0.0025823116302490234 iter: 7500 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.2602) , time: 0.0026979446411132812 iter: 7550 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2565) , time: 0.002629995346069336 iter: 7600 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2516) , time: 0.002672433853149414 iter: 7650 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2441) , time: 0.0026144981384277344 iter: 7700 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2406) , time: 0.0026328563690185547 iter: 7750 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.2406) , time: 0.0026073455810546875 iter: 7800 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2393) , time: 0.0026388168334960938 iter: 7850 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2345) , time: 0.0026521682739257812 iter: 7900 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2379) , time: 0.0026383399963378906 iter: 7950 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2370) , time: 0.002651214599609375 iter: 8000 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2446) , time: 0.002850055694580078 iter: 8050 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2443) , time: 0.0026161670684814453 iter: 8100 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2481) , time: 0.0026061534881591797 iter: 8150 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2444) , time: 0.0026128292083740234 iter: 8200 , fixed pt res: tensor(0.0464) , ls: 1 , rel_err: tensor(0.2433) , time: 0.0027930736541748047 iter: 8250 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.2440) , time: 0.0026159286499023438 iter: 8300 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2494) , time: 0.00262451171875 iter: 8350 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.2557) , time: 0.002601146697998047 iter: 8400 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.2539) , time: 0.002947568893432617 iter: 8450 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2474) , time: 0.0026085376739501953 iter: 8500 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2328) , time: 0.0026068687438964844 iter: 8550 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2369) , time: 0.0025882720947265625 iter: 8600 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.2276) , time: 0.002688169479370117 iter: 8650 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2380) , time: 0.0025942325592041016 iter: 8700 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2387) , time: 0.0026848316192626953 iter: 8750 , fixed pt res: tensor(0.0420) , ls: 1 , rel_err: tensor(0.2441) , time: 0.002606630325317383 iter: 8800 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2478) , time: 0.0026895999908447266 iter: 8850 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2411) , time: 0.0025746822357177734 iter: 8900 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2358) , time: 0.0026254653930664062 iter: 8950 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2361) , time: 0.0026378631591796875 iter: 9000 , fixed pt res: tensor(0.0426) , ls: 1 , rel_err: tensor(0.2347) , time: 0.0026183128356933594 iter: 9050 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2319) , time: 0.002596139907836914 iter: 9100 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2398) , time: 0.002637624740600586 iter: 9150 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.2427) , time: 0.0026619434356689453 iter: 9200 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2579) , time: 0.002629995346069336 iter: 9250 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.2582) , time: 0.0026335716247558594 iter: 9300 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2596) , time: 0.002610445022583008 iter: 9350 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2467) , time: 0.0026264190673828125 iter: 9400 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2438) , time: 0.0026292800903320312 iter: 9450 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2456) , time: 0.0026323795318603516 iter: 9500 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2347) , time: 0.002623319625854492 iter: 9550 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2371) , time: 0.002624988555908203 iter: 9600 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2468) , time: 0.0026865005493164062 iter: 9650 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2422) , time: 0.002601146697998047 iter: 9700 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2472) , time: 0.00258636474609375 iter: 9750 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2434) , time: 0.0026235580444335938 iter: 9800 , fixed pt res: tensor(0.0469) , ls: 1 , rel_err: tensor(0.2460) , time: 0.0028467178344726562 iter: 9850 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.2459) , time: 0.0026454925537109375 iter: 9900 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2351) , time: 0.0026373863220214844 iter: 9950 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2353) , time: 0.002624034881591797 iter: 10000 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2458) , time: 0.002570629119873047 trial 1 finished after 27.3780620098114 CHANGE, delta = 0.01 norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[sample_index,:]) = tensor(0.) delta = 0.1 iter: 50 , fixed pt res: tensor(0.6024) , ls: 1 , rel_err: tensor(15.2734) , time: 0.0026395320892333984 iter: 100 , fixed pt res: tensor(0.2571) , ls: 1 , rel_err: tensor(14.1573) , time: 0.002633810043334961 iter: 150 , fixed pt res: tensor(0.1314) , ls: 1 , rel_err: tensor(13.2116) , time: 0.002636432647705078 iter: 200 , fixed pt res: tensor(0.0796) , ls: 1 , rel_err: tensor(12.3254) , time: 0.002630472183227539 iter: 250 , fixed pt res: tensor(0.0655) , ls: 1 , rel_err: tensor(11.4973) , time: 0.0026044845581054688 iter: 300 , fixed pt res: tensor(0.0626) , ls: 1 , rel_err: tensor(10.7382) , time: 0.002668619155883789 iter: 350 , fixed pt res: tensor(0.0591) , ls: 1 , rel_err: tensor(10.0184) , time: 0.0026521682739257812 iter: 400 , fixed pt res: tensor(0.0576) , ls: 1 , rel_err: tensor(9.3451) , time: 0.0036263465881347656 iter: 450 , fixed pt res: tensor(0.0553) , ls: 1 , rel_err: tensor(8.7179) , time: 0.002643108367919922 iter: 500 , fixed pt res: tensor(0.0547) , ls: 1 , rel_err: tensor(8.1263) , time: 0.0026276111602783203 iter: 550 , fixed pt res: tensor(0.0541) , ls: 1 , rel_err: tensor(7.5703) , time: 0.002591371536254883 iter: 600 , fixed pt res: tensor(0.0519) , ls: 1 , rel_err: tensor(7.0570) , time: 0.00260162353515625 iter: 650 , fixed pt res: tensor(0.0512) , ls: 1 , rel_err: tensor(6.5821) , time: 0.0026454925537109375 iter: 700 , fixed pt res: tensor(0.0519) , ls: 1 , rel_err: tensor(6.1244) , time: 0.0026962757110595703 iter: 750 , fixed pt res: tensor(0.0525) , ls: 1 , rel_err: tensor(5.7183) , time: 0.0025899410247802734 iter: 800 , fixed pt res: tensor(0.0516) , ls: 1 , rel_err: tensor(5.3294) , time: 0.0026574134826660156 iter: 850 , fixed pt res: tensor(0.0498) , ls: 1 , rel_err: tensor(4.9821) , time: 0.0026454925537109375 iter: 900 , fixed pt res: tensor(0.0508) , ls: 1 , rel_err: tensor(4.6579) , time: 0.002607583999633789 iter: 950 , fixed pt res: tensor(0.0522) , ls: 1 , rel_err: tensor(4.3529) , time: 0.002629995346069336 iter: 1000 , fixed pt res: tensor(0.0509) , ls: 1 , rel_err: tensor(4.0844) , time: 0.0026361942291259766 iter: 1050 , fixed pt res: tensor(0.0516) , ls: 1 , rel_err: tensor(3.8181) , time: 0.0026645660400390625 iter: 1100 , fixed pt res: tensor(0.0519) , ls: 1 , rel_err: tensor(3.5839) , time: 0.002616405487060547 iter: 1150 , fixed pt res: tensor(0.0508) , ls: 1 , rel_err: tensor(3.3641) , time: 0.002714872360229492 iter: 1200 , fixed pt res: tensor(0.0504) , ls: 1 , rel_err: tensor(3.1551) , time: 0.002900838851928711 iter: 1250 , fixed pt res: tensor(0.0512) , ls: 1 , rel_err: tensor(2.9600) , time: 0.002619028091430664 iter: 1300 , fixed pt res: tensor(0.0514) , ls: 1 , rel_err: tensor(2.7889) , time: 0.002590656280517578 iter: 1350 , fixed pt res: tensor(0.0500) , ls: 1 , rel_err: tensor(2.6252) , time: 0.002590656280517578 iter: 1400 , fixed pt res: tensor(0.0496) , ls: 1 , rel_err: tensor(2.4691) , time: 0.002591371536254883 iter: 1450 , fixed pt res: tensor(0.0520) , ls: 1 , rel_err: tensor(2.3233) , time: 0.0026082992553710938 iter: 1500 , fixed pt res: tensor(0.0529) , ls: 1 , rel_err: tensor(2.1884) , time: 0.0026760101318359375 iter: 1550 , fixed pt res: tensor(0.0515) , ls: 1 , rel_err: tensor(2.0734) , time: 0.002660512924194336 iter: 1600 , fixed pt res: tensor(0.0516) , ls: 1 , rel_err: tensor(1.9564) , time: 0.0026001930236816406 iter: 1650 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(1.8567) , time: 0.002652883529663086 iter: 1700 , fixed pt res: tensor(0.0491) , ls: 1 , rel_err: tensor(1.7603) , time: 0.0026578903198242188 iter: 1750 , fixed pt res: tensor(0.0499) , ls: 1 , rel_err: tensor(1.6678) , time: 0.002605438232421875 iter: 1800 , fixed pt res: tensor(0.0499) , ls: 1 , rel_err: tensor(1.5920) , time: 0.002622365951538086 iter: 1850 , fixed pt res: tensor(0.0497) , ls: 1 , rel_err: tensor(1.5209) , time: 0.002629518508911133 iter: 1900 , fixed pt res: tensor(0.0484) , ls: 1 , rel_err: tensor(1.4413) , time: 0.0026397705078125 iter: 1950 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(1.3834) , time: 0.0026040077209472656 iter: 2000 , fixed pt res: tensor(0.0497) , ls: 1 , rel_err: tensor(1.3253) , time: 0.002625703811645508 iter: 2050 , fixed pt res: tensor(0.0506) , ls: 1 , rel_err: tensor(1.2545) , time: 0.002617359161376953 iter: 2100 , fixed pt res: tensor(0.0496) , ls: 1 , rel_err: tensor(1.2010) , time: 0.0026395320892333984 iter: 2150 , fixed pt res: tensor(0.0528) , ls: 1 , rel_err: tensor(1.1449) , time: 0.0026330947875976562 iter: 2200 , fixed pt res: tensor(0.0486) , ls: 1 , rel_err: tensor(1.0987) , time: 0.0026540756225585938 iter: 2250 , fixed pt res: tensor(0.0503) , ls: 1 , rel_err: tensor(1.0528) , time: 0.002614259719848633 iter: 2300 , fixed pt res: tensor(0.0516) , ls: 1 , rel_err: tensor(1.0073) , time: 0.0025959014892578125 iter: 2350 , fixed pt res: tensor(0.0493) , ls: 1 , rel_err: tensor(0.9671) , time: 0.0025959014892578125 iter: 2400 , fixed pt res: tensor(0.0498) , ls: 1 , rel_err: tensor(0.9244) , time: 0.002643585205078125 iter: 2450 , fixed pt res: tensor(0.0521) , ls: 1 , rel_err: tensor(0.8814) , time: 0.0026264190673828125 iter: 2500 , fixed pt res: tensor(0.0491) , ls: 1 , rel_err: tensor(0.8438) , time: 0.0028371810913085938 iter: 2550 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(0.8141) , time: 0.002639293670654297 iter: 2600 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.7701) , time: 0.0028192996978759766 iter: 2650 , fixed pt res: tensor(0.0492) , ls: 1 , rel_err: tensor(0.7341) , time: 0.0026717185974121094 iter: 2700 , fixed pt res: tensor(0.0497) , ls: 1 , rel_err: tensor(0.7033) , time: 0.002650737762451172 iter: 2750 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.6702) , time: 0.0025954246520996094 iter: 2800 , fixed pt res: tensor(0.0520) , ls: 1 , rel_err: tensor(0.6541) , time: 0.002783060073852539 iter: 2850 , fixed pt res: tensor(0.0505) , ls: 1 , rel_err: tensor(0.6294) , time: 0.0026559829711914062 iter: 2900 , fixed pt res: tensor(0.0490) , ls: 1 , rel_err: tensor(0.6014) , time: 0.0029981136322021484 iter: 2950 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.5876) , time: 0.0027670860290527344 iter: 3000 , fixed pt res: tensor(0.0522) , ls: 1 , rel_err: tensor(0.5688) , time: 0.0028235912322998047 iter: 3050 , fixed pt res: tensor(0.0508) , ls: 1 , rel_err: tensor(0.5508) , time: 0.0026345252990722656 iter: 3100 , fixed pt res: tensor(0.0499) , ls: 1 , rel_err: tensor(0.5394) , time: 0.0027310848236083984 iter: 3150 , fixed pt res: tensor(0.0514) , ls: 1 , rel_err: tensor(0.5302) , time: 0.002622365951538086 iter: 3200 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(0.5260) , time: 0.002646923065185547 iter: 3250 , fixed pt res: tensor(0.0486) , ls: 1 , rel_err: tensor(0.5135) , time: 0.0025806427001953125 iter: 3300 , fixed pt res: tensor(0.0500) , ls: 1 , rel_err: tensor(0.5036) , time: 0.002665281295776367 iter: 3350 , fixed pt res: tensor(0.0510) , ls: 1 , rel_err: tensor(0.4874) , time: 0.002624034881591797 iter: 3400 , fixed pt res: tensor(0.0485) , ls: 1 , rel_err: tensor(0.4782) , time: 0.0026574134826660156 iter: 3450 , fixed pt res: tensor(0.0526) , ls: 1 , rel_err: tensor(0.4766) , time: 0.0026869773864746094 iter: 3500 , fixed pt res: tensor(0.0483) , ls: 1 , rel_err: tensor(0.4638) , time: 0.0027141571044921875 iter: 3550 , fixed pt res: tensor(0.0479) , ls: 1 , rel_err: tensor(0.4446) , time: 0.002619028091430664 iter: 3600 , fixed pt res: tensor(0.0510) , ls: 1 , rel_err: tensor(0.4431) , time: 0.002580881118774414 iter: 3650 , fixed pt res: tensor(0.0515) , ls: 1 , rel_err: tensor(0.4307) , time: 0.002605915069580078 iter: 3700 , fixed pt res: tensor(0.0504) , ls: 1 , rel_err: tensor(0.4222) , time: 0.00266265869140625 iter: 3750 , fixed pt res: tensor(0.0497) , ls: 1 , rel_err: tensor(0.4080) , time: 0.0026161670684814453 iter: 3800 , fixed pt res: tensor(0.0492) , ls: 1 , rel_err: tensor(0.4069) , time: 0.0025949478149414062 iter: 3850 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(0.3987) , time: 0.002596139907836914 iter: 3900 , fixed pt res: tensor(0.0499) , ls: 1 , rel_err: tensor(0.3832) , time: 0.002691507339477539 iter: 3950 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(0.3856) , time: 0.002644777297973633 iter: 4000 , fixed pt res: tensor(0.0516) , ls: 1 , rel_err: tensor(0.3708) , time: 0.0026993751525878906 iter: 4050 , fixed pt res: tensor(0.0493) , ls: 1 , rel_err: tensor(0.3730) , time: 0.002619028091430664 iter: 4100 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.3689) , time: 0.0026683807373046875 iter: 4150 , fixed pt res: tensor(0.0479) , ls: 1 , rel_err: tensor(0.3694) , time: 0.00261688232421875 iter: 4200 , fixed pt res: tensor(0.0516) , ls: 1 , rel_err: tensor(0.3652) , time: 0.002650737762451172 iter: 4250 , fixed pt res: tensor(0.0516) , ls: 1 , rel_err: tensor(0.3573) , time: 0.0026361942291259766 iter: 4300 , fixed pt res: tensor(0.0491) , ls: 1 , rel_err: tensor(0.3519) , time: 0.0031049251556396484 iter: 4350 , fixed pt res: tensor(0.0490) , ls: 1 , rel_err: tensor(0.3418) , time: 0.0026412010192871094 iter: 4400 , fixed pt res: tensor(0.0509) , ls: 1 , rel_err: tensor(0.3438) , time: 0.002599477767944336 iter: 4450 , fixed pt res: tensor(0.0533) , ls: 1 , rel_err: tensor(0.3472) , time: 0.002591848373413086 iter: 4500 , fixed pt res: tensor(0.0492) , ls: 1 , rel_err: tensor(0.3378) , time: 0.002658367156982422 iter: 4550 , fixed pt res: tensor(0.0467) , ls: 1 , rel_err: tensor(0.3343) , time: 0.002669095993041992 iter: 4600 , fixed pt res: tensor(0.0477) , ls: 1 , rel_err: tensor(0.3372) , time: 0.0025866031646728516 iter: 4650 , fixed pt res: tensor(0.0489) , ls: 1 , rel_err: tensor(0.3435) , time: 0.002625703811645508 iter: 4700 , fixed pt res: tensor(0.0513) , ls: 1 , rel_err: tensor(0.3364) , time: 0.0026092529296875 iter: 4750 , fixed pt res: tensor(0.0501) , ls: 1 , rel_err: tensor(0.3308) , time: 0.0026960372924804688 iter: 4800 , fixed pt res: tensor(0.0481) , ls: 1 , rel_err: tensor(0.3289) , time: 0.0026102066040039062 iter: 4850 , fixed pt res: tensor(0.0487) , ls: 1 , rel_err: tensor(0.3347) , time: 0.0026645660400390625 iter: 4900 , fixed pt res: tensor(0.0505) , ls: 1 , rel_err: tensor(0.3225) , time: 0.002632617950439453 iter: 4950 , fixed pt res: tensor(0.0496) , ls: 1 , rel_err: tensor(0.3249) , time: 0.0026404857635498047 iter: 5000 , fixed pt res: tensor(0.0520) , ls: 1 , rel_err: tensor(0.3180) , time: 0.0026352405548095703 iter: 5050 , fixed pt res: tensor(0.0503) , ls: 1 , rel_err: tensor(0.3167) , time: 0.0026044845581054688 iter: 5100 , fixed pt res: tensor(0.0513) , ls: 1 , rel_err: tensor(0.3107) , time: 0.0026082992553710938 iter: 5150 , fixed pt res: tensor(0.0506) , ls: 1 , rel_err: tensor(0.3191) , time: 0.002648591995239258 iter: 5200 , fixed pt res: tensor(0.0493) , ls: 1 , rel_err: tensor(0.3144) , time: 0.002597808837890625 iter: 5250 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(0.3067) , time: 0.0026259422302246094 iter: 5300 , fixed pt res: tensor(0.0509) , ls: 1 , rel_err: tensor(0.3126) , time: 0.0026192665100097656 iter: 5350 , fixed pt res: tensor(0.0503) , ls: 1 , rel_err: tensor(0.2975) , time: 0.002664804458618164 iter: 5400 , fixed pt res: tensor(0.0516) , ls: 1 , rel_err: tensor(0.3082) , time: 0.0026803016662597656 iter: 5450 , fixed pt res: tensor(0.0515) , ls: 1 , rel_err: tensor(0.3042) , time: 0.0026454925537109375 iter: 5500 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(0.3087) , time: 0.0026674270629882812 iter: 5550 , fixed pt res: tensor(0.0492) , ls: 1 , rel_err: tensor(0.3069) , time: 0.002651214599609375 iter: 5600 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(0.2987) , time: 0.0025959014892578125 iter: 5650 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.2988) , time: 0.002653360366821289 iter: 5700 , fixed pt res: tensor(0.0521) , ls: 1 , rel_err: tensor(0.2915) , time: 0.002653360366821289 iter: 5750 , fixed pt res: tensor(0.0492) , ls: 1 , rel_err: tensor(0.2909) , time: 0.0026268959045410156 iter: 5800 , fixed pt res: tensor(0.0496) , ls: 1 , rel_err: tensor(0.2915) , time: 0.0026569366455078125 iter: 5850 , fixed pt res: tensor(0.0481) , ls: 1 , rel_err: tensor(0.2881) , time: 0.0026044845581054688 iter: 5900 , fixed pt res: tensor(0.0497) , ls: 1 , rel_err: tensor(0.2900) , time: 0.0026781558990478516 iter: 5950 , fixed pt res: tensor(0.0500) , ls: 1 , rel_err: tensor(0.2745) , time: 0.0025932788848876953 iter: 6000 , fixed pt res: tensor(0.0509) , ls: 1 , rel_err: tensor(0.2660) , time: 0.0025959014892578125 iter: 6050 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(0.2699) , time: 0.0026063919067382812 iter: 6100 , fixed pt res: tensor(0.0506) , ls: 1 , rel_err: tensor(0.2744) , time: 0.0027208328247070312 iter: 6150 , fixed pt res: tensor(0.0481) , ls: 1 , rel_err: tensor(0.2756) , time: 0.002628326416015625 iter: 6200 , fixed pt res: tensor(0.0493) , ls: 1 , rel_err: tensor(0.2902) , time: 0.002673625946044922 iter: 6250 , fixed pt res: tensor(0.0501) , ls: 1 , rel_err: tensor(0.2795) , time: 0.005936861038208008 iter: 6300 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(0.2847) , time: 0.002641439437866211 iter: 6350 , fixed pt res: tensor(0.0514) , ls: 1 , rel_err: tensor(0.2862) , time: 0.002637624740600586 iter: 6400 , fixed pt res: tensor(0.0495) , ls: 1 , rel_err: tensor(0.2855) , time: 0.0026657581329345703 iter: 6450 , fixed pt res: tensor(0.0509) , ls: 1 , rel_err: tensor(0.2882) , time: 0.0026798248291015625 iter: 6500 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(0.2736) , time: 0.0026044845581054688 iter: 6550 , fixed pt res: tensor(0.0508) , ls: 1 , rel_err: tensor(0.2734) , time: 0.0026023387908935547 iter: 6600 , fixed pt res: tensor(0.0484) , ls: 1 , rel_err: tensor(0.2813) , time: 0.0026292800903320312 iter: 6650 , fixed pt res: tensor(0.0475) , ls: 1 , rel_err: tensor(0.2846) , time: 0.002617359161376953 iter: 6700 , fixed pt res: tensor(0.0501) , ls: 1 , rel_err: tensor(0.2871) , time: 0.0026006698608398438 iter: 6750 , fixed pt res: tensor(0.0496) , ls: 1 , rel_err: tensor(0.2827) , time: 0.0026998519897460938 iter: 6800 , fixed pt res: tensor(0.0491) , ls: 1 , rel_err: tensor(0.2914) , time: 0.002641916275024414 iter: 6850 , fixed pt res: tensor(0.0511) , ls: 1 , rel_err: tensor(0.2767) , time: 0.0026628971099853516 iter: 6900 , fixed pt res: tensor(0.0490) , ls: 1 , rel_err: tensor(0.2685) , time: 0.002627849578857422 iter: 6950 , fixed pt res: tensor(0.0485) , ls: 1 , rel_err: tensor(0.2683) , time: 0.0026264190673828125 iter: 7000 , fixed pt res: tensor(0.0517) , ls: 1 , rel_err: tensor(0.2680) , time: 0.002621889114379883 iter: 7050 , fixed pt res: tensor(0.0487) , ls: 1 , rel_err: tensor(0.2720) , time: 0.002657175064086914 iter: 7100 , fixed pt res: tensor(0.0504) , ls: 1 , rel_err: tensor(0.2722) , time: 0.0027887821197509766 iter: 7150 , fixed pt res: tensor(0.0503) , ls: 1 , rel_err: tensor(0.2694) , time: 0.0026350021362304688 iter: 7200 , fixed pt res: tensor(0.0490) , ls: 1 , rel_err: tensor(0.2759) , time: 0.0026476383209228516 iter: 7250 , fixed pt res: tensor(0.0515) , ls: 1 , rel_err: tensor(0.2741) , time: 0.0025992393493652344 iter: 7300 , fixed pt res: tensor(0.0479) , ls: 1 , rel_err: tensor(0.2775) , time: 0.0026497840881347656 iter: 7350 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.2756) , time: 0.0026824474334716797 iter: 7400 , fixed pt res: tensor(0.0517) , ls: 1 , rel_err: tensor(0.2752) , time: 0.002943754196166992 iter: 7450 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.2795) , time: 0.0026013851165771484 iter: 7500 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.2867) , time: 0.002633810043334961 iter: 7550 , fixed pt res: tensor(0.0489) , ls: 1 , rel_err: tensor(0.2829) , time: 0.0026514530181884766 iter: 7600 , fixed pt res: tensor(0.0526) , ls: 1 , rel_err: tensor(0.2755) , time: 0.002739429473876953 iter: 7650 , fixed pt res: tensor(0.0489) , ls: 1 , rel_err: tensor(0.2817) , time: 0.002626657485961914 iter: 7700 , fixed pt res: tensor(0.0518) , ls: 1 , rel_err: tensor(0.2754) , time: 0.002665281295776367 iter: 7750 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(0.2794) , time: 0.0026416778564453125 iter: 7800 , fixed pt res: tensor(0.0515) , ls: 1 , rel_err: tensor(0.2688) , time: 0.0026836395263671875 iter: 7850 , fixed pt res: tensor(0.0509) , ls: 1 , rel_err: tensor(0.2722) , time: 0.0026421546936035156 iter: 7900 , fixed pt res: tensor(0.0481) , ls: 1 , rel_err: tensor(0.2603) , time: 0.002622842788696289 iter: 7950 , fixed pt res: tensor(0.0513) , ls: 1 , rel_err: tensor(0.2730) , time: 0.0026264190673828125 iter: 8000 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(0.2707) , time: 0.0026280879974365234 iter: 8050 , fixed pt res: tensor(0.0531) , ls: 1 , rel_err: tensor(0.2837) , time: 0.002634286880493164 iter: 8100 , fixed pt res: tensor(0.0479) , ls: 1 , rel_err: tensor(0.2819) , time: 0.002626180648803711 iter: 8150 , fixed pt res: tensor(0.0490) , ls: 1 , rel_err: tensor(0.2658) , time: 0.0026307106018066406 iter: 8200 , fixed pt res: tensor(0.0498) , ls: 1 , rel_err: tensor(0.2765) , time: 0.0026407241821289062 iter: 8250 , fixed pt res: tensor(0.0507) , ls: 1 , rel_err: tensor(0.2701) , time: 0.002642393112182617 iter: 8300 , fixed pt res: tensor(0.0512) , ls: 1 , rel_err: tensor(0.2767) , time: 0.002636432647705078 iter: 8350 , fixed pt res: tensor(0.0525) , ls: 1 , rel_err: tensor(0.2821) , time: 0.0026226043701171875 iter: 8400 , fixed pt res: tensor(0.0503) , ls: 1 , rel_err: tensor(0.2873) , time: 0.002777576446533203 iter: 8450 , fixed pt res: tensor(0.0510) , ls: 1 , rel_err: tensor(0.2763) , time: 0.002614259719848633 iter: 8500 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(0.2895) , time: 0.0026481151580810547 iter: 8550 , fixed pt res: tensor(0.0496) , ls: 1 , rel_err: tensor(0.2829) , time: 0.0026159286499023438 iter: 8600 , fixed pt res: tensor(0.0485) , ls: 1 , rel_err: tensor(0.2801) , time: 0.00262451171875 iter: 8650 , fixed pt res: tensor(0.0495) , ls: 1 , rel_err: tensor(0.2850) , time: 0.0025970935821533203 iter: 8700 , fixed pt res: tensor(0.0503) , ls: 1 , rel_err: tensor(0.2773) , time: 0.0026483535766601562 iter: 8750 , fixed pt res: tensor(0.0501) , ls: 1 , rel_err: tensor(0.2770) , time: 0.0026476383209228516 iter: 8800 , fixed pt res: tensor(0.0504) , ls: 1 , rel_err: tensor(0.2859) , time: 0.002651214599609375 iter: 8850 , fixed pt res: tensor(0.0509) , ls: 1 , rel_err: tensor(0.2834) , time: 0.002624034881591797 iter: 8900 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(0.2798) , time: 0.002610921859741211 iter: 8950 , fixed pt res: tensor(0.0477) , ls: 1 , rel_err: tensor(0.2901) , time: 0.002869129180908203 iter: 9000 , fixed pt res: tensor(0.0513) , ls: 1 , rel_err: tensor(0.2827) , time: 0.0026993751525878906 iter: 9050 , fixed pt res: tensor(0.0496) , ls: 1 , rel_err: tensor(0.2763) , time: 0.0026035308837890625 iter: 9100 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.2757) , time: 0.0026476383209228516 iter: 9150 , fixed pt res: tensor(0.0501) , ls: 1 , rel_err: tensor(0.2769) , time: 0.002643108367919922 iter: 9200 , fixed pt res: tensor(0.0497) , ls: 1 , rel_err: tensor(0.2807) , time: 0.0026454925537109375 iter: 9250 , fixed pt res: tensor(0.0493) , ls: 1 , rel_err: tensor(0.2818) , time: 0.002629518508911133 iter: 9300 , fixed pt res: tensor(0.0502) , ls: 1 , rel_err: tensor(0.2832) , time: 0.0027909278869628906 iter: 9350 , fixed pt res: tensor(0.0483) , ls: 1 , rel_err: tensor(0.2743) , time: 0.0026569366455078125 iter: 9400 , fixed pt res: tensor(0.0506) , ls: 1 , rel_err: tensor(0.2720) , time: 0.002588510513305664 iter: 9450 , fixed pt res: tensor(0.0493) , ls: 1 , rel_err: tensor(0.2639) , time: 0.0026352405548095703 iter: 9500 , fixed pt res: tensor(0.0474) , ls: 1 , rel_err: tensor(0.2650) , time: 0.0026216506958007812 iter: 9550 , fixed pt res: tensor(0.0505) , ls: 1 , rel_err: tensor(0.2635) , time: 0.002645730972290039 iter: 9600 , fixed pt res: tensor(0.0511) , ls: 1 , rel_err: tensor(0.2621) , time: 0.002592802047729492 iter: 9650 , fixed pt res: tensor(0.0504) , ls: 1 , rel_err: tensor(0.2597) , time: 0.002633333206176758 iter: 9700 , fixed pt res: tensor(0.0482) , ls: 1 , rel_err: tensor(0.2604) , time: 0.002636432647705078 iter: 9750 , fixed pt res: tensor(0.0485) , ls: 1 , rel_err: tensor(0.2763) , time: 0.0026273727416992188 iter: 9800 , fixed pt res: tensor(0.0473) , ls: 1 , rel_err: tensor(0.2771) , time: 0.002584695816040039 iter: 9850 , fixed pt res: tensor(0.0492) , ls: 1 , rel_err: tensor(0.2740) , time: 0.002599477767944336 iter: 9900 , fixed pt res: tensor(0.0486) , ls: 1 , rel_err: tensor(0.2774) , time: 0.002656221389770508 iter: 9950 , fixed pt res: tensor(0.0490) , ls: 1 , rel_err: tensor(0.2829) , time: 0.002659320831298828 iter: 10000 , fixed pt res: tensor(0.0501) , ls: 1 , rel_err: tensor(0.2859) , time: 0.0026171207427978516 trial 1 finished after 27.39184856414795 CHANGE, delta = 0.1 norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[sample_index,:]) = tensor(0.) delta = 1.0 iter: 50 , fixed pt res: tensor(0.6005) , ls: 1 , rel_err: tensor(15.2768) , time: 0.0026540756225585938 iter: 100 , fixed pt res: tensor(0.2584) , ls: 1 , rel_err: tensor(14.1514) , time: 0.002636432647705078 iter: 150 , fixed pt res: tensor(0.1262) , ls: 1 , rel_err: tensor(13.2173) , time: 0.0026426315307617188 iter: 200 , fixed pt res: tensor(0.0774) , ls: 1 , rel_err: tensor(12.3428) , time: 0.0026314258575439453 iter: 250 , fixed pt res: tensor(0.0582) , ls: 1 , rel_err: tensor(11.5279) , time: 0.0026137828826904297 iter: 300 , fixed pt res: tensor(0.0570) , ls: 1 , rel_err: tensor(10.7427) , time: 0.0026383399963378906 iter: 350 , fixed pt res: tensor(0.0529) , ls: 1 , rel_err: tensor(10.0210) , time: 0.002575397491455078 iter: 400 , fixed pt res: tensor(0.0512) , ls: 1 , rel_err: tensor(9.3471) , time: 0.0026078224182128906 iter: 450 , fixed pt res: tensor(0.0520) , ls: 1 , rel_err: tensor(8.7221) , time: 0.0026149749755859375 iter: 500 , fixed pt res: tensor(0.0506) , ls: 1 , rel_err: tensor(8.1162) , time: 0.0028815269470214844 iter: 550 , fixed pt res: tensor(0.0497) , ls: 1 , rel_err: tensor(7.5650) , time: 0.0026204586029052734 iter: 600 , fixed pt res: tensor(0.0510) , ls: 1 , rel_err: tensor(7.0442) , time: 0.002576112747192383 iter: 650 , fixed pt res: tensor(0.0493) , ls: 1 , rel_err: tensor(6.5619) , time: 0.0026092529296875 iter: 700 , fixed pt res: tensor(0.0482) , ls: 1 , rel_err: tensor(6.1032) , time: 0.002608776092529297 iter: 750 , fixed pt res: tensor(0.0479) , ls: 1 , rel_err: tensor(5.6962) , time: 0.002565622329711914 iter: 800 , fixed pt res: tensor(0.0467) , ls: 1 , rel_err: tensor(5.3075) , time: 0.0025768280029296875 iter: 850 , fixed pt res: tensor(0.0467) , ls: 1 , rel_err: tensor(4.9531) , time: 0.002599954605102539 iter: 900 , fixed pt res: tensor(0.0480) , ls: 1 , rel_err: tensor(4.6159) , time: 0.0026197433471679688 iter: 950 , fixed pt res: tensor(0.0478) , ls: 1 , rel_err: tensor(4.3099) , time: 0.002585887908935547 iter: 1000 , fixed pt res: tensor(0.0481) , ls: 1 , rel_err: tensor(4.0246) , time: 0.002577066421508789 iter: 1050 , fixed pt res: tensor(0.0474) , ls: 1 , rel_err: tensor(3.7718) , time: 0.0026106834411621094 iter: 1100 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(3.5245) , time: 0.0026373863220214844 iter: 1150 , fixed pt res: tensor(0.0470) , ls: 1 , rel_err: tensor(3.3049) , time: 0.002629518508911133 iter: 1200 , fixed pt res: tensor(0.0473) , ls: 1 , rel_err: tensor(3.0891) , time: 0.0026445388793945312 iter: 1250 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(2.8850) , time: 0.0026628971099853516 iter: 1300 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(2.7110) , time: 0.00262451171875 iter: 1350 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(2.5294) , time: 0.0026557445526123047 iter: 1400 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(2.3791) , time: 0.0026009082794189453 iter: 1450 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(2.2291) , time: 0.0026459693908691406 iter: 1500 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(2.0951) , time: 0.002675294876098633 iter: 1550 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(1.9579) , time: 0.0025932788848876953 iter: 1600 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(1.8430) , time: 0.002668619155883789 iter: 1650 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(1.7305) , time: 0.0026373863220214844 iter: 1700 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(1.6303) , time: 0.002611398696899414 iter: 1750 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(1.5428) , time: 0.002649068832397461 iter: 1800 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(1.4608) , time: 0.0026705265045166016 iter: 1850 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(1.3826) , time: 0.0026466846466064453 iter: 1900 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(1.3036) , time: 0.002669095993041992 iter: 1950 , fixed pt res: tensor(0.0473) , ls: 1 , rel_err: tensor(1.2278) , time: 0.0026056766510009766 iter: 2000 , fixed pt res: tensor(0.0471) , ls: 1 , rel_err: tensor(1.1679) , time: 0.0026493072509765625 iter: 2050 , fixed pt res: tensor(0.0473) , ls: 1 , rel_err: tensor(1.1019) , time: 0.0026268959045410156 iter: 2100 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(1.0464) , time: 0.00262451171875 iter: 2150 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(1.0033) , time: 0.002627849578857422 iter: 2200 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.9490) , time: 0.002641916275024414 iter: 2250 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.8957) , time: 0.0026352405548095703 iter: 2300 , fixed pt res: tensor(0.0463) , ls: 1 , rel_err: tensor(0.8654) , time: 0.002621173858642578 iter: 2350 , fixed pt res: tensor(0.0479) , ls: 1 , rel_err: tensor(0.8243) , time: 0.0027053356170654297 iter: 2400 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.7950) , time: 0.0026209354400634766 iter: 2450 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.7708) , time: 0.0026350021362304688 iter: 2500 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.7380) , time: 0.002679109573364258 iter: 2550 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.7190) , time: 0.002644777297973633 iter: 2600 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.6741) , time: 0.0026051998138427734 iter: 2650 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.6421) , time: 0.0026192665100097656 iter: 2700 , fixed pt res: tensor(0.0463) , ls: 1 , rel_err: tensor(0.6235) , time: 0.0026314258575439453 iter: 2750 , fixed pt res: tensor(0.0469) , ls: 1 , rel_err: tensor(0.5928) , time: 0.002638578414916992 iter: 2800 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.5695) , time: 0.002611398696899414 iter: 2850 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.5487) , time: 0.0026407241821289062 iter: 2900 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.5377) , time: 0.002595186233520508 iter: 2950 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.5236) , time: 0.002619504928588867 iter: 3000 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.4881) , time: 0.0026061534881591797 iter: 3050 , fixed pt res: tensor(0.0470) , ls: 1 , rel_err: tensor(0.4761) , time: 0.0026426315307617188 iter: 3100 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.4674) , time: 0.002640962600708008 iter: 3150 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.4544) , time: 0.0026710033416748047 iter: 3200 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.4424) , time: 0.0026140213012695312 iter: 3250 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.4442) , time: 0.0026242733001708984 iter: 3300 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.4376) , time: 0.0026433467864990234 iter: 3350 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.4240) , time: 0.0026373863220214844 iter: 3400 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.4060) , time: 0.002625703811645508 iter: 3450 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.3985) , time: 0.002706766128540039 iter: 3500 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.3738) , time: 0.0026137828826904297 iter: 3550 , fixed pt res: tensor(0.0475) , ls: 1 , rel_err: tensor(0.3622) , time: 0.0026497840881347656 iter: 3600 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.3532) , time: 0.0025882720947265625 iter: 3650 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.3436) , time: 0.0026092529296875 iter: 3700 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.3315) , time: 0.0029354095458984375 iter: 3750 , fixed pt res: tensor(0.0472) , ls: 1 , rel_err: tensor(0.3287) , time: 0.002648591995239258 iter: 3800 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.3257) , time: 0.0026578903198242188 iter: 3850 , fixed pt res: tensor(0.0467) , ls: 1 , rel_err: tensor(0.3218) , time: 0.0026292800903320312 iter: 3900 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.3271) , time: 0.0026068687438964844 iter: 3950 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.3251) , time: 0.0026171207427978516 iter: 4000 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.3210) , time: 0.002641916275024414 iter: 4050 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.3092) , time: 0.002651214599609375 iter: 4100 , fixed pt res: tensor(0.0469) , ls: 1 , rel_err: tensor(0.3099) , time: 0.0026879310607910156 iter: 4150 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.3023) , time: 0.0026187896728515625 iter: 4200 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.2965) , time: 0.0026483535766601562 iter: 4250 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2969) , time: 0.002678394317626953 iter: 4300 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2840) , time: 0.0026154518127441406 iter: 4350 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2805) , time: 0.0026285648345947266 iter: 4400 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.2865) , time: 0.002627134323120117 iter: 4450 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2870) , time: 0.002590179443359375 iter: 4500 , fixed pt res: tensor(0.0463) , ls: 1 , rel_err: tensor(0.2870) , time: 0.0026192665100097656 iter: 4550 , fixed pt res: tensor(0.0470) , ls: 1 , rel_err: tensor(0.2886) , time: 0.002604246139526367 iter: 4600 , fixed pt res: tensor(0.0474) , ls: 1 , rel_err: tensor(0.2938) , time: 0.002635478973388672 iter: 4650 , fixed pt res: tensor(0.0472) , ls: 1 , rel_err: tensor(0.2835) , time: 0.0026128292083740234 iter: 4700 , fixed pt res: tensor(0.0470) , ls: 1 , rel_err: tensor(0.2962) , time: 0.0026760101318359375 iter: 4750 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2938) , time: 0.002630472183227539 iter: 4800 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2811) , time: 0.0026006698608398438 iter: 4850 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2715) , time: 0.0026330947875976562 iter: 4900 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2852) , time: 0.0026869773864746094 iter: 4950 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2726) , time: 0.002587556838989258 iter: 5000 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2675) , time: 0.002599000930786133 iter: 5050 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2669) , time: 0.002650737762451172 iter: 5100 , fixed pt res: tensor(0.0472) , ls: 1 , rel_err: tensor(0.2728) , time: 0.0026428699493408203 iter: 5150 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2719) , time: 0.0026433467864990234 iter: 5200 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.2842) , time: 0.002634286880493164 iter: 5250 , fixed pt res: tensor(0.0471) , ls: 1 , rel_err: tensor(0.2828) , time: 0.002868175506591797 iter: 5300 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.2798) , time: 0.0026540756225585938 iter: 5350 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2775) , time: 0.002628803253173828 iter: 5400 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2736) , time: 0.0025908946990966797 iter: 5450 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2676) , time: 0.0025773048400878906 iter: 5500 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2721) , time: 0.002618551254272461 iter: 5550 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2685) , time: 0.0026159286499023438 iter: 5600 , fixed pt res: tensor(0.0475) , ls: 1 , rel_err: tensor(0.2680) , time: 0.0026025772094726562 iter: 5650 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2586) , time: 0.0025658607482910156 iter: 5700 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2543) , time: 0.0026159286499023438 iter: 5750 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.2570) , time: 0.002605438232421875 iter: 5800 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2530) , time: 0.003300905227661133 iter: 5850 , fixed pt res: tensor(0.0470) , ls: 1 , rel_err: tensor(0.2553) , time: 0.002602100372314453 iter: 5900 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2602) , time: 0.0026242733001708984 iter: 5950 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.2625) , time: 0.0026111602783203125 iter: 6000 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2580) , time: 0.0029571056365966797 iter: 6050 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2541) , time: 0.0026388168334960938 iter: 6100 , fixed pt res: tensor(0.0476) , ls: 1 , rel_err: tensor(0.2559) , time: 0.0026400089263916016 iter: 6150 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2496) , time: 0.002628803253173828 iter: 6200 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.2486) , time: 0.002633333206176758 iter: 6250 , fixed pt res: tensor(0.0471) , ls: 1 , rel_err: tensor(0.2526) , time: 0.0025932788848876953 iter: 6300 , fixed pt res: tensor(0.0464) , ls: 1 , rel_err: tensor(0.2486) , time: 0.0026178359985351562 iter: 6350 , fixed pt res: tensor(0.0471) , ls: 1 , rel_err: tensor(0.2381) , time: 0.002589702606201172 iter: 6400 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2374) , time: 0.0026047229766845703 iter: 6450 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2355) , time: 0.002631664276123047 iter: 6500 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.2353) , time: 0.0025975704193115234 iter: 6550 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2260) , time: 0.002611875534057617 iter: 6600 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2244) , time: 0.002643585205078125 iter: 6650 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2314) , time: 0.002623319625854492 iter: 6700 , fixed pt res: tensor(0.0471) , ls: 1 , rel_err: tensor(0.2334) , time: 0.0026040077209472656 iter: 6750 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.2349) , time: 0.002633333206176758 iter: 6800 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2346) , time: 0.0026187896728515625 iter: 6850 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.2335) , time: 0.002584218978881836 iter: 6900 , fixed pt res: tensor(0.0478) , ls: 1 , rel_err: tensor(0.2362) , time: 0.002745389938354492 iter: 6950 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2329) , time: 0.00258636474609375 iter: 7000 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2421) , time: 0.002652883529663086 iter: 7050 , fixed pt res: tensor(0.0470) , ls: 1 , rel_err: tensor(0.2474) , time: 0.0026178359985351562 iter: 7100 , fixed pt res: tensor(0.0467) , ls: 1 , rel_err: tensor(0.2483) , time: 0.0026175975799560547 iter: 7150 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.2538) , time: 0.0026121139526367188 iter: 7200 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.2634) , time: 0.0026302337646484375 iter: 7250 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2635) , time: 0.002633333206176758 iter: 7300 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2602) , time: 0.0025920867919921875 iter: 7350 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2569) , time: 0.00262451171875 iter: 7400 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.2582) , time: 0.0026018619537353516 iter: 7450 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2591) , time: 0.002658367156982422 iter: 7500 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2521) , time: 0.0026044845581054688 iter: 7550 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2517) , time: 0.002680063247680664 iter: 7600 , fixed pt res: tensor(0.0463) , ls: 1 , rel_err: tensor(0.2522) , time: 0.002724170684814453 iter: 7650 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2457) , time: 0.002649068832397461 iter: 7700 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2462) , time: 0.002586841583251953 iter: 7750 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2563) , time: 0.0026137828826904297 iter: 7800 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2561) , time: 0.002600431442260742 iter: 7850 , fixed pt res: tensor(0.0464) , ls: 1 , rel_err: tensor(0.2601) , time: 0.002637147903442383 iter: 7900 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2634) , time: 0.0025911331176757812 iter: 7950 , fixed pt res: tensor(0.0480) , ls: 1 , rel_err: tensor(0.2607) , time: 0.0025832653045654297 iter: 8000 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2636) , time: 0.0030062198638916016 iter: 8050 , fixed pt res: tensor(0.0472) , ls: 1 , rel_err: tensor(0.2702) , time: 0.0026273727416992188 iter: 8100 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2676) , time: 0.0026102066040039062 iter: 8150 , fixed pt res: tensor(0.0474) , ls: 1 , rel_err: tensor(0.2655) , time: 0.002643108367919922 iter: 8200 , fixed pt res: tensor(0.0470) , ls: 1 , rel_err: tensor(0.2644) , time: 0.002836942672729492 iter: 8250 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2599) , time: 0.0026481151580810547 iter: 8300 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(0.2528) , time: 0.0026917457580566406 iter: 8350 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2515) , time: 0.002638101577758789 iter: 8400 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2581) , time: 0.0026161670684814453 iter: 8450 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2615) , time: 0.0026121139526367188 iter: 8500 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2630) , time: 0.002630472183227539 iter: 8550 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.2544) , time: 0.0026378631591796875 iter: 8600 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.2536) , time: 0.0028374195098876953 iter: 8650 , fixed pt res: tensor(0.0469) , ls: 1 , rel_err: tensor(0.2555) , time: 0.0026123523712158203 iter: 8700 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2586) , time: 0.0026521682739257812 iter: 8750 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2590) , time: 0.0026025772094726562 iter: 8800 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.2606) , time: 0.0026471614837646484 iter: 8850 , fixed pt res: tensor(0.0473) , ls: 1 , rel_err: tensor(0.2578) , time: 0.0026187896728515625 iter: 8900 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2623) , time: 0.002620697021484375 iter: 8950 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2704) , time: 0.002619504928588867 iter: 9000 , fixed pt res: tensor(0.0473) , ls: 1 , rel_err: tensor(0.2746) , time: 0.00292205810546875 iter: 9050 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.2834) , time: 0.002611875534057617 iter: 9100 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2765) , time: 0.002656698226928711 iter: 9150 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2818) , time: 0.0026679039001464844 iter: 9200 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2774) , time: 0.002641916275024414 iter: 9250 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2712) , time: 0.0025887489318847656 iter: 9300 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2731) , time: 0.002611875534057617 iter: 9350 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2686) , time: 0.002651691436767578 iter: 9400 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2698) , time: 0.0026099681854248047 iter: 9450 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2642) , time: 0.002611398696899414 iter: 9500 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(0.2521) , time: 0.0028138160705566406 iter: 9550 , fixed pt res: tensor(0.0478) , ls: 1 , rel_err: tensor(0.2604) , time: 0.002634763717651367 iter: 9600 , fixed pt res: tensor(0.0476) , ls: 1 , rel_err: tensor(0.2566) , time: 0.0026116371154785156 iter: 9650 , fixed pt res: tensor(0.0473) , ls: 1 , rel_err: tensor(0.2515) , time: 0.002725362777709961 iter: 9700 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2516) , time: 0.0025947093963623047 iter: 9750 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2511) , time: 0.0026650428771972656 iter: 9800 , fixed pt res: tensor(0.0480) , ls: 1 , rel_err: tensor(0.2353) , time: 0.002584218978881836 iter: 9850 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2436) , time: 0.0028257369995117188 iter: 9900 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.2401) , time: 0.002621173858642578 iter: 9950 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2476) , time: 0.002672910690307617 iter: 10000 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2453) , time: 0.0026237964630126953 trial 1 finished after 27.315054655075073 CHANGE, delta = 1.0 norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[sample_index,:]) = tensor(0.) delta = 10 iter: 50 , fixed pt res: tensor(0.6019) , ls: 1 , rel_err: tensor(15.2753) , time: 0.0026540756225585938 iter: 100 , fixed pt res: tensor(0.2578) , ls: 1 , rel_err: tensor(14.1615) , time: 0.0026514530181884766 iter: 150 , fixed pt res: tensor(0.1269) , ls: 1 , rel_err: tensor(13.2275) , time: 0.0026235580444335938 iter: 200 , fixed pt res: tensor(0.0762) , ls: 1 , rel_err: tensor(12.3565) , time: 0.002614736557006836 iter: 250 , fixed pt res: tensor(0.0597) , ls: 1 , rel_err: tensor(11.5210) , time: 0.002669095993041992 iter: 300 , fixed pt res: tensor(0.0571) , ls: 1 , rel_err: tensor(10.7411) , time: 0.0026438236236572266 iter: 350 , fixed pt res: tensor(0.0520) , ls: 1 , rel_err: tensor(10.0191) , time: 0.002608060836791992 iter: 400 , fixed pt res: tensor(0.0518) , ls: 1 , rel_err: tensor(9.3347) , time: 0.0026454925537109375 iter: 450 , fixed pt res: tensor(0.0510) , ls: 1 , rel_err: tensor(8.6942) , time: 0.002699136734008789 iter: 500 , fixed pt res: tensor(0.0485) , ls: 1 , rel_err: tensor(8.0995) , time: 0.002779245376586914 iter: 550 , fixed pt res: tensor(0.0510) , ls: 1 , rel_err: tensor(7.5484) , time: 0.0026400089263916016 iter: 600 , fixed pt res: tensor(0.0489) , ls: 1 , rel_err: tensor(7.0212) , time: 0.0026590824127197266 iter: 650 , fixed pt res: tensor(0.0483) , ls: 1 , rel_err: tensor(6.5332) , time: 0.0026786327362060547 iter: 700 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(6.0990) , time: 0.002670764923095703 iter: 750 , fixed pt res: tensor(0.0494) , ls: 1 , rel_err: tensor(5.6841) , time: 0.0026121139526367188 iter: 800 , fixed pt res: tensor(0.0467) , ls: 1 , rel_err: tensor(5.3001) , time: 0.002619504928588867 iter: 850 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(4.9403) , time: 0.002660512924194336 iter: 900 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(4.5992) , time: 0.002605438232421875 iter: 950 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(4.3029) , time: 0.0026481151580810547 iter: 1000 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(4.0176) , time: 0.002672910690307617 iter: 1050 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(3.7485) , time: 0.0026397705078125 iter: 1100 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(3.5050) , time: 0.0026443004608154297 iter: 1150 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(3.2698) , time: 0.002622842788696289 iter: 1200 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(3.0443) , time: 0.0027205944061279297 iter: 1250 , fixed pt res: tensor(0.0427) , ls: 1 , rel_err: tensor(2.8493) , time: 0.002618551254272461 iter: 1300 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(2.6783) , time: 0.0026373863220214844 iter: 1350 , fixed pt res: tensor(0.0414) , ls: 1 , rel_err: tensor(2.5112) , time: 0.0026564598083496094 iter: 1400 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(2.3520) , time: 0.0026865005493164062 iter: 1450 , fixed pt res: tensor(0.0429) , ls: 1 , rel_err: tensor(2.2008) , time: 0.0027163028717041016 iter: 1500 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(2.0657) , time: 0.0026688575744628906 iter: 1550 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(1.9482) , time: 0.002709627151489258 iter: 1600 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(1.8259) , time: 0.0026383399963378906 iter: 1650 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(1.7236) , time: 0.0026502609252929688 iter: 1700 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(1.6258) , time: 0.0026776790618896484 iter: 1750 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(1.5325) , time: 0.002692699432373047 iter: 1800 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(1.4510) , time: 0.0027060508728027344 iter: 1850 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(1.3683) , time: 0.0026793479919433594 iter: 1900 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(1.2950) , time: 0.002918243408203125 iter: 1950 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(1.2262) , time: 0.0026624202728271484 iter: 2000 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(1.1582) , time: 0.0028617382049560547 iter: 2050 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(1.1049) , time: 0.002691507339477539 iter: 2100 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(1.0510) , time: 0.0027077198028564453 iter: 2150 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.9996) , time: 0.0026416778564453125 iter: 2200 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.9575) , time: 0.002642393112182617 iter: 2250 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.9075) , time: 0.002653837203979492 iter: 2300 , fixed pt res: tensor(0.0430) , ls: 1 , rel_err: tensor(0.8576) , time: 0.002691984176635742 iter: 2350 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.8157) , time: 0.002669811248779297 iter: 2400 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.7775) , time: 0.002611398696899414 iter: 2450 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.7434) , time: 0.002624034881591797 iter: 2500 , fixed pt res: tensor(0.0427) , ls: 1 , rel_err: tensor(0.7074) , time: 0.0026209354400634766 iter: 2550 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.6806) , time: 0.0026488304138183594 iter: 2600 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.6435) , time: 0.002690553665161133 iter: 2650 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.6135) , time: 0.0027344226837158203 iter: 2700 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.5929) , time: 0.002749204635620117 iter: 2750 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.5653) , time: 0.0027985572814941406 iter: 2800 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.5382) , time: 0.002658843994140625 iter: 2850 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.5252) , time: 0.002630949020385742 iter: 2900 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.5129) , time: 0.002830982208251953 iter: 2950 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.4813) , time: 0.0026781558990478516 iter: 3000 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.4677) , time: 0.0026559829711914062 iter: 3050 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.4501) , time: 0.002631664276123047 iter: 3100 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.4472) , time: 0.0026276111602783203 iter: 3150 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.4336) , time: 0.002597808837890625 iter: 3200 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.4200) , time: 0.002661466598510742 iter: 3250 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.4142) , time: 0.002621889114379883 iter: 3300 , fixed pt res: tensor(0.0421) , ls: 1 , rel_err: tensor(0.3954) , time: 0.002713441848754883 iter: 3350 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.3863) , time: 0.0026400089263916016 iter: 3400 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.3733) , time: 0.002678394317626953 iter: 3450 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.3668) , time: 0.002679109573364258 iter: 3500 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.3535) , time: 0.0026700496673583984 iter: 3550 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.3507) , time: 0.0026290416717529297 iter: 3600 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.3416) , time: 0.0026311874389648438 iter: 3650 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.3300) , time: 0.0027027130126953125 iter: 3700 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.3323) , time: 0.0026731491088867188 iter: 3750 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.3244) , time: 0.002677440643310547 iter: 3800 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.3207) , time: 0.0026001930236816406 iter: 3850 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.3108) , time: 0.0026946067810058594 iter: 3900 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.3088) , time: 0.0026557445526123047 iter: 3950 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.3105) , time: 0.0026497840881347656 iter: 4000 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.3087) , time: 0.002724170684814453 iter: 4050 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.3149) , time: 0.002661466598510742 iter: 4100 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.3114) , time: 0.0026755332946777344 iter: 4150 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.3084) , time: 0.002646923065185547 iter: 4200 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.3067) , time: 0.0026345252990722656 iter: 4250 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2983) , time: 0.002586841583251953 iter: 4300 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.3007) , time: 0.002732515335083008 iter: 4350 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2996) , time: 0.00261688232421875 iter: 4400 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2934) , time: 0.002596139907836914 iter: 4450 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2900) , time: 0.002726316452026367 iter: 4500 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2807) , time: 0.002689361572265625 iter: 4550 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2853) , time: 0.0026869773864746094 iter: 4600 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2876) , time: 0.0026433467864990234 iter: 4650 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2823) , time: 0.0026700496673583984 iter: 4700 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2841) , time: 0.0026471614837646484 iter: 4750 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2762) , time: 0.0026712417602539062 iter: 4800 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2731) , time: 0.002760648727416992 iter: 4850 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2585) , time: 0.002687215805053711 iter: 4900 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2593) , time: 0.00275421142578125 iter: 4950 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2579) , time: 0.0027098655700683594 iter: 5000 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2592) , time: 0.002589702606201172 iter: 5050 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2644) , time: 0.0025992393493652344 iter: 5100 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2573) , time: 0.002879619598388672 iter: 5150 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2536) , time: 0.002627849578857422 iter: 5200 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2591) , time: 0.002704143524169922 iter: 5250 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2442) , time: 0.002785921096801758 iter: 5300 , fixed pt res: tensor(0.0469) , ls: 1 , rel_err: tensor(0.2435) , time: 0.0026731491088867188 iter: 5350 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2527) , time: 0.0026497840881347656 iter: 5400 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2567) , time: 0.002666473388671875 iter: 5450 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.2584) , time: 0.0027420520782470703 iter: 5500 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2566) , time: 0.002741575241088867 iter: 5550 , fixed pt res: tensor(0.0427) , ls: 1 , rel_err: tensor(0.2675) , time: 0.0027132034301757812 iter: 5600 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2643) , time: 0.002718210220336914 iter: 5650 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2668) , time: 0.002752065658569336 iter: 5700 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2581) , time: 0.0026581287384033203 iter: 5750 , fixed pt res: tensor(0.0428) , ls: 1 , rel_err: tensor(0.2603) , time: 0.002724170684814453 iter: 5800 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2698) , time: 0.0027420520782470703 iter: 5850 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2633) , time: 0.0026688575744628906 iter: 5900 , fixed pt res: tensor(0.0430) , ls: 1 , rel_err: tensor(0.2637) , time: 0.0026891231536865234 iter: 5950 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2634) , time: 0.002692699432373047 iter: 6000 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2569) , time: 0.002665996551513672 iter: 6050 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2561) , time: 0.002684354782104492 iter: 6100 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2504) , time: 0.002671957015991211 iter: 6150 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2581) , time: 0.0026755332946777344 iter: 6200 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2574) , time: 0.0026607513427734375 iter: 6250 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2477) , time: 0.002636432647705078 iter: 6300 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.2521) , time: 0.0027189254760742188 iter: 6350 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2508) , time: 0.0027017593383789062 iter: 6400 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2479) , time: 0.0026891231536865234 iter: 6450 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2471) , time: 0.002687692642211914 iter: 6500 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2560) , time: 0.002639293670654297 iter: 6550 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.2571) , time: 0.002622842788696289 iter: 6600 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2565) , time: 0.0026454925537109375 iter: 6650 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.2631) , time: 0.002637147903442383 iter: 6700 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.2600) , time: 0.0026543140411376953 iter: 6750 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2621) , time: 0.00264739990234375 iter: 6800 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2623) , time: 0.0032041072845458984 iter: 6850 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2492) , time: 0.0026340484619140625 iter: 6900 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2476) , time: 0.002618551254272461 iter: 6950 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2500) , time: 0.0026683807373046875 iter: 7000 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2462) , time: 0.0026750564575195312 iter: 7050 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2455) , time: 0.0026268959045410156 iter: 7100 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2419) , time: 0.0026750564575195312 iter: 7150 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2353) , time: 0.0025870800018310547 iter: 7200 , fixed pt res: tensor(0.0426) , ls: 1 , rel_err: tensor(0.2313) , time: 0.0027091503143310547 iter: 7250 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2405) , time: 0.0025959014892578125 iter: 7300 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2351) , time: 0.0026917457580566406 iter: 7350 , fixed pt res: tensor(0.0419) , ls: 1 , rel_err: tensor(0.2425) , time: 0.0026624202728271484 iter: 7400 , fixed pt res: tensor(0.0427) , ls: 1 , rel_err: tensor(0.2339) , time: 0.002680063247680664 iter: 7450 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2306) , time: 0.0026695728302001953 iter: 7500 , fixed pt res: tensor(0.0420) , ls: 1 , rel_err: tensor(0.2351) , time: 0.0026400089263916016 iter: 7550 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2418) , time: 0.0026137828826904297 iter: 7600 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.2372) , time: 0.0026285648345947266 iter: 7650 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.2312) , time: 0.002652406692504883 iter: 7700 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2385) , time: 0.0028412342071533203 iter: 7750 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2259) , time: 0.002637147903442383 iter: 7800 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2300) , time: 0.0027627944946289062 iter: 7850 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2300) , time: 0.0026209354400634766 iter: 7900 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2359) , time: 0.0027120113372802734 iter: 7950 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2265) , time: 0.002808094024658203 iter: 8000 , fixed pt res: tensor(0.0429) , ls: 1 , rel_err: tensor(0.2234) , time: 0.002773761749267578 iter: 8050 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.2249) , time: 0.0026445388793945312 iter: 8100 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2226) , time: 0.0027518272399902344 iter: 8150 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2228) , time: 0.0026426315307617188 iter: 8200 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.2248) , time: 0.002750873565673828 iter: 8250 , fixed pt res: tensor(0.0421) , ls: 1 , rel_err: tensor(0.2283) , time: 0.002641439437866211 iter: 8300 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2306) , time: 0.0026345252990722656 iter: 8350 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2301) , time: 0.002625703811645508 iter: 8400 , fixed pt res: tensor(0.0427) , ls: 1 , rel_err: tensor(0.2244) , time: 0.0026750564575195312 iter: 8450 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2286) , time: 0.0026092529296875 iter: 8500 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2295) , time: 0.0026237964630126953 iter: 8550 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2288) , time: 0.0026187896728515625 iter: 8600 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2285) , time: 0.002825498580932617 iter: 8650 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2294) , time: 0.002656698226928711 iter: 8700 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2260) , time: 0.002588033676147461 iter: 8750 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2314) , time: 0.0026361942291259766 iter: 8800 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2353) , time: 0.0026760101318359375 iter: 8850 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2314) , time: 0.0026254653930664062 iter: 8900 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2321) , time: 0.002634763717651367 iter: 8950 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2350) , time: 0.0026259422302246094 iter: 9000 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2309) , time: 0.002634763717651367 iter: 9050 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2292) , time: 0.0026578903198242188 iter: 9100 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2276) , time: 0.002710580825805664 iter: 9150 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.2342) , time: 0.002606630325317383 iter: 9200 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2367) , time: 0.0026199817657470703 iter: 9250 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2335) , time: 0.002606630325317383 iter: 9300 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.2380) , time: 0.0026226043701171875 iter: 9350 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2328) , time: 0.002691030502319336 iter: 9400 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2285) , time: 0.0028655529022216797 iter: 9450 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2304) , time: 0.0026679039001464844 iter: 9500 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2202) , time: 0.002732515335083008 iter: 9550 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2295) , time: 0.0026450157165527344 iter: 9600 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.2291) , time: 0.0028519630432128906 iter: 9650 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2385) , time: 0.0026679039001464844 iter: 9700 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2467) , time: 0.0026292800903320312 iter: 9750 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2429) , time: 0.0026733875274658203 iter: 9800 , fixed pt res: tensor(0.0428) , ls: 1 , rel_err: tensor(0.2391) , time: 0.002670764923095703 iter: 9850 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2349) , time: 0.0026319026947021484 iter: 9900 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2392) , time: 0.0026323795318603516 iter: 9950 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2395) , time: 0.002651691436767578 iter: 10000 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2342) , time: 0.0026276111602783203 trial 1 finished after 27.629093647003174 CHANGE, delta = 10 norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[sample_index,:]) = tensor(0.) delta = 100 iter: 50 , fixed pt res: tensor(0.6023) , ls: 1 , rel_err: tensor(15.2866) , time: 0.0026459693908691406 iter: 100 , fixed pt res: tensor(0.2743) , ls: 1 , rel_err: tensor(14.2015) , time: 0.002714872360229492 iter: 150 , fixed pt res: tensor(0.1567) , ls: 1 , rel_err: tensor(13.2935) , time: 0.0026772022247314453 iter: 200 , fixed pt res: tensor(0.1120) , ls: 1 , rel_err: tensor(12.4750) , time: 0.002736330032348633 iter: 250 , fixed pt res: tensor(0.1090) , ls: 1 , rel_err: tensor(11.7074) , time: 0.0026776790618896484 iter: 300 , fixed pt res: tensor(0.1033) , ls: 1 , rel_err: tensor(10.9887) , time: 0.002933025360107422 iter: 350 , fixed pt res: tensor(0.1008) , ls: 1 , rel_err: tensor(10.3216) , time: 0.0027055740356445312 iter: 400 , fixed pt res: tensor(0.0972) , ls: 1 , rel_err: tensor(9.7369) , time: 0.0026187896728515625 iter: 450 , fixed pt res: tensor(0.0987) , ls: 1 , rel_err: tensor(9.1810) , time: 0.0026667118072509766 iter: 500 , fixed pt res: tensor(0.1002) , ls: 1 , rel_err: tensor(8.6461) , time: 0.0026848316192626953 iter: 550 , fixed pt res: tensor(0.0993) , ls: 1 , rel_err: tensor(8.1415) , time: 0.0026662349700927734 iter: 600 , fixed pt res: tensor(0.1000) , ls: 1 , rel_err: tensor(7.6925) , time: 0.0027320384979248047 iter: 650 , fixed pt res: tensor(0.0998) , ls: 1 , rel_err: tensor(7.2723) , time: 0.002678394317626953 iter: 700 , fixed pt res: tensor(0.0997) , ls: 1 , rel_err: tensor(6.8970) , time: 0.0026404857635498047 iter: 750 , fixed pt res: tensor(0.0987) , ls: 1 , rel_err: tensor(6.5439) , time: 0.0026535987854003906 iter: 800 , fixed pt res: tensor(0.0996) , ls: 1 , rel_err: tensor(6.2256) , time: 0.002608060836791992 iter: 850 , fixed pt res: tensor(0.0970) , ls: 1 , rel_err: tensor(5.9144) , time: 0.002660036087036133 iter: 900 , fixed pt res: tensor(0.0996) , ls: 1 , rel_err: tensor(5.6303) , time: 0.002655029296875 iter: 950 , fixed pt res: tensor(0.0964) , ls: 1 , rel_err: tensor(5.3909) , time: 0.0026865005493164062 iter: 1000 , fixed pt res: tensor(0.0943) , ls: 1 , rel_err: tensor(5.1599) , time: 0.002641916275024414 iter: 1050 , fixed pt res: tensor(0.0981) , ls: 1 , rel_err: tensor(4.9327) , time: 0.002622365951538086 iter: 1100 , fixed pt res: tensor(0.0976) , ls: 1 , rel_err: tensor(4.7290) , time: 0.002641916275024414 iter: 1150 , fixed pt res: tensor(0.1019) , ls: 1 , rel_err: tensor(4.5391) , time: 0.00260162353515625 iter: 1200 , fixed pt res: tensor(0.0966) , ls: 1 , rel_err: tensor(4.3715) , time: 0.002603292465209961 iter: 1250 , fixed pt res: tensor(0.0969) , ls: 1 , rel_err: tensor(4.1634) , time: 0.002655506134033203 iter: 1300 , fixed pt res: tensor(0.0937) , ls: 1 , rel_err: tensor(4.0231) , time: 0.00273895263671875 iter: 1350 , fixed pt res: tensor(0.1010) , ls: 1 , rel_err: tensor(3.8837) , time: 0.002590179443359375 iter: 1400 , fixed pt res: tensor(0.0976) , ls: 1 , rel_err: tensor(3.7580) , time: 0.0026481151580810547 iter: 1450 , fixed pt res: tensor(0.0942) , ls: 1 , rel_err: tensor(3.6261) , time: 0.0025975704193115234 iter: 1500 , fixed pt res: tensor(0.0992) , ls: 1 , rel_err: tensor(3.5287) , time: 0.0029494762420654297 iter: 1550 , fixed pt res: tensor(0.0973) , ls: 1 , rel_err: tensor(3.4125) , time: 0.002590179443359375 iter: 1600 , fixed pt res: tensor(0.0981) , ls: 1 , rel_err: tensor(3.2955) , time: 0.002639293670654297 iter: 1650 , fixed pt res: tensor(0.1037) , ls: 1 , rel_err: tensor(3.1531) , time: 0.002641439437866211 iter: 1700 , fixed pt res: tensor(0.0973) , ls: 1 , rel_err: tensor(3.0603) , time: 0.002615690231323242 iter: 1750 , fixed pt res: tensor(0.0964) , ls: 1 , rel_err: tensor(2.9629) , time: 0.002638578414916992 iter: 1800 , fixed pt res: tensor(0.1004) , ls: 1 , rel_err: tensor(2.8633) , time: 0.002737760543823242 iter: 1850 , fixed pt res: tensor(0.1000) , ls: 1 , rel_err: tensor(2.7754) , time: 0.002644777297973633 iter: 1900 , fixed pt res: tensor(0.0986) , ls: 1 , rel_err: tensor(2.7222) , time: 0.0027008056640625 iter: 1950 , fixed pt res: tensor(0.0954) , ls: 1 , rel_err: tensor(2.6393) , time: 0.002593517303466797 iter: 2000 , fixed pt res: tensor(0.0967) , ls: 1 , rel_err: tensor(2.5414) , time: 0.002609729766845703 iter: 2050 , fixed pt res: tensor(0.0985) , ls: 1 , rel_err: tensor(2.4807) , time: 0.0025920867919921875 iter: 2100 , fixed pt res: tensor(0.1011) , ls: 1 , rel_err: tensor(2.4069) , time: 0.002677440643310547 iter: 2150 , fixed pt res: tensor(0.1029) , ls: 1 , rel_err: tensor(2.3481) , time: 0.002691984176635742 iter: 2200 , fixed pt res: tensor(0.0995) , ls: 1 , rel_err: tensor(2.3009) , time: 0.002658843994140625 iter: 2250 , fixed pt res: tensor(0.0974) , ls: 1 , rel_err: tensor(2.2204) , time: 0.002644777297973633 iter: 2300 , fixed pt res: tensor(0.0958) , ls: 1 , rel_err: tensor(2.1699) , time: 0.0026183128356933594 iter: 2350 , fixed pt res: tensor(0.0962) , ls: 1 , rel_err: tensor(2.1140) , time: 0.0026688575744628906 iter: 2400 , fixed pt res: tensor(0.0949) , ls: 1 , rel_err: tensor(2.0510) , time: 0.002635955810546875 iter: 2450 , fixed pt res: tensor(0.1010) , ls: 1 , rel_err: tensor(1.9629) , time: 0.002660036087036133 iter: 2500 , fixed pt res: tensor(0.0966) , ls: 1 , rel_err: tensor(1.9201) , time: 0.0028488636016845703 iter: 2550 , fixed pt res: tensor(0.0983) , ls: 1 , rel_err: tensor(1.8688) , time: 0.0026946067810058594 iter: 2600 , fixed pt res: tensor(0.0928) , ls: 1 , rel_err: tensor(1.8419) , time: 0.0028378963470458984 iter: 2650 , fixed pt res: tensor(0.1003) , ls: 1 , rel_err: tensor(1.7858) , time: 0.0026476383209228516 iter: 2700 , fixed pt res: tensor(0.0988) , ls: 1 , rel_err: tensor(1.7670) , time: 0.0026540756225585938 iter: 2750 , fixed pt res: tensor(0.1000) , ls: 1 , rel_err: tensor(1.7203) , time: 0.002648591995239258 iter: 2800 , fixed pt res: tensor(0.0993) , ls: 1 , rel_err: tensor(1.6839) , time: 0.002696990966796875 iter: 2850 , fixed pt res: tensor(0.0967) , ls: 1 , rel_err: tensor(1.6716) , time: 0.0027446746826171875 iter: 2900 , fixed pt res: tensor(0.0982) , ls: 1 , rel_err: tensor(1.6258) , time: 0.002668619155883789 iter: 2950 , fixed pt res: tensor(0.0991) , ls: 1 , rel_err: tensor(1.5811) , time: 0.0026657581329345703 iter: 3000 , fixed pt res: tensor(0.1003) , ls: 1 , rel_err: tensor(1.5758) , time: 0.002733945846557617 iter: 3050 , fixed pt res: tensor(0.0959) , ls: 1 , rel_err: tensor(1.5285) , time: 0.0026404857635498047 iter: 3100 , fixed pt res: tensor(0.0985) , ls: 1 , rel_err: tensor(1.4862) , time: 0.0026612281799316406 iter: 3150 , fixed pt res: tensor(0.0980) , ls: 1 , rel_err: tensor(1.4581) , time: 0.002658843994140625 iter: 3200 , fixed pt res: tensor(0.1008) , ls: 1 , rel_err: tensor(1.4271) , time: 0.002880096435546875 iter: 3250 , fixed pt res: tensor(0.0999) , ls: 1 , rel_err: tensor(1.4019) , time: 0.002668619155883789 iter: 3300 , fixed pt res: tensor(0.1013) , ls: 1 , rel_err: tensor(1.3836) , time: 0.0028009414672851562 iter: 3350 , fixed pt res: tensor(0.0952) , ls: 1 , rel_err: tensor(1.3714) , time: 0.0027768611907958984 iter: 3400 , fixed pt res: tensor(0.0960) , ls: 1 , rel_err: tensor(1.3542) , time: 0.002624988555908203 iter: 3450 , fixed pt res: tensor(0.0976) , ls: 1 , rel_err: tensor(1.3573) , time: 0.002659320831298828 iter: 3500 , fixed pt res: tensor(0.0967) , ls: 1 , rel_err: tensor(1.3376) , time: 0.002629518508911133 iter: 3550 , fixed pt res: tensor(0.0979) , ls: 1 , rel_err: tensor(1.3192) , time: 0.0026197433471679688 iter: 3600 , fixed pt res: tensor(0.1008) , ls: 1 , rel_err: tensor(1.3276) , time: 0.0026237964630126953 iter: 3650 , fixed pt res: tensor(0.0979) , ls: 1 , rel_err: tensor(1.3151) , time: 0.002643108367919922 iter: 3700 , fixed pt res: tensor(0.0990) , ls: 1 , rel_err: tensor(1.2869) , time: 0.0025787353515625 iter: 3750 , fixed pt res: tensor(0.0993) , ls: 1 , rel_err: tensor(1.2659) , time: 0.0026044845581054688 iter: 3800 , fixed pt res: tensor(0.0971) , ls: 1 , rel_err: tensor(1.2559) , time: 0.0027234554290771484 iter: 3850 , fixed pt res: tensor(0.0954) , ls: 1 , rel_err: tensor(1.2633) , time: 0.0026369094848632812 iter: 3900 , fixed pt res: tensor(0.0973) , ls: 1 , rel_err: tensor(1.2327) , time: 0.0026540756225585938 iter: 3950 , fixed pt res: tensor(0.0986) , ls: 1 , rel_err: tensor(1.1850) , time: 0.002602815628051758 iter: 4000 , fixed pt res: tensor(0.0990) , ls: 1 , rel_err: tensor(1.1821) , time: 0.0025894641876220703 iter: 4050 , fixed pt res: tensor(0.0981) , ls: 1 , rel_err: tensor(1.1858) , time: 0.002626657485961914 iter: 4100 , fixed pt res: tensor(0.0947) , ls: 1 , rel_err: tensor(1.1439) , time: 0.002600431442260742 iter: 4150 , fixed pt res: tensor(0.0993) , ls: 1 , rel_err: tensor(1.1387) , time: 0.0026493072509765625 iter: 4200 , fixed pt res: tensor(0.0996) , ls: 1 , rel_err: tensor(1.1192) , time: 0.0028383731842041016 iter: 4250 , fixed pt res: tensor(0.0949) , ls: 1 , rel_err: tensor(1.0881) , time: 0.0027513504028320312 iter: 4300 , fixed pt res: tensor(0.0958) , ls: 1 , rel_err: tensor(1.0803) , time: 0.0026311874389648438 iter: 4350 , fixed pt res: tensor(0.0997) , ls: 1 , rel_err: tensor(1.0660) , time: 0.0026144981384277344 iter: 4400 , fixed pt res: tensor(0.0955) , ls: 1 , rel_err: tensor(1.0327) , time: 0.0026459693908691406 iter: 4450 , fixed pt res: tensor(0.0964) , ls: 1 , rel_err: tensor(1.0417) , time: 0.002648591995239258 iter: 4500 , fixed pt res: tensor(0.0976) , ls: 1 , rel_err: tensor(1.0445) , time: 0.002627849578857422 iter: 4550 , fixed pt res: tensor(0.0935) , ls: 1 , rel_err: tensor(1.0299) , time: 0.002614736557006836 iter: 4600 , fixed pt res: tensor(0.0952) , ls: 1 , rel_err: tensor(1.0165) , time: 0.0026810169219970703 iter: 4650 , fixed pt res: tensor(0.0977) , ls: 1 , rel_err: tensor(1.0161) , time: 0.0026397705078125 iter: 4700 , fixed pt res: tensor(0.0997) , ls: 1 , rel_err: tensor(1.0329) , time: 0.0026242733001708984 iter: 4750 , fixed pt res: tensor(0.0987) , ls: 1 , rel_err: tensor(1.0263) , time: 0.002673625946044922 iter: 4800 , fixed pt res: tensor(0.0957) , ls: 1 , rel_err: tensor(1.0179) , time: 0.0026826858520507812 iter: 4850 , fixed pt res: tensor(0.0989) , ls: 1 , rel_err: tensor(1.0152) , time: 0.002739429473876953 iter: 4900 , fixed pt res: tensor(0.0958) , ls: 1 , rel_err: tensor(1.0190) , time: 0.0026226043701171875 iter: 4950 , fixed pt res: tensor(0.1008) , ls: 1 , rel_err: tensor(1.0083) , time: 0.0027060508728027344 iter: 5000 , fixed pt res: tensor(0.0958) , ls: 1 , rel_err: tensor(0.9981) , time: 0.0026297569274902344 iter: 5050 , fixed pt res: tensor(0.0980) , ls: 1 , rel_err: tensor(0.9669) , time: 0.0026192665100097656 iter: 5100 , fixed pt res: tensor(0.0957) , ls: 1 , rel_err: tensor(0.9647) , time: 0.002637624740600586 iter: 5150 , fixed pt res: tensor(0.0973) , ls: 1 , rel_err: tensor(0.9442) , time: 0.002691030502319336 iter: 5200 , fixed pt res: tensor(0.0995) , ls: 1 , rel_err: tensor(0.9389) , time: 0.002645730972290039 iter: 5250 , fixed pt res: tensor(0.1021) , ls: 1 , rel_err: tensor(0.9361) , time: 0.0026426315307617188 iter: 5300 , fixed pt res: tensor(0.0970) , ls: 1 , rel_err: tensor(0.9394) , time: 0.0026667118072509766 iter: 5350 , fixed pt res: tensor(0.0947) , ls: 1 , rel_err: tensor(0.9366) , time: 0.0026564598083496094 iter: 5400 , fixed pt res: tensor(0.0977) , ls: 1 , rel_err: tensor(0.9341) , time: 0.002665281295776367 iter: 5450 , fixed pt res: tensor(0.0952) , ls: 1 , rel_err: tensor(0.9331) , time: 0.002624988555908203 iter: 5500 , fixed pt res: tensor(0.0955) , ls: 1 , rel_err: tensor(0.9150) , time: 0.0027475357055664062 iter: 5550 , fixed pt res: tensor(0.1011) , ls: 1 , rel_err: tensor(0.9156) , time: 0.0026793479919433594 iter: 5600 , fixed pt res: tensor(0.0967) , ls: 1 , rel_err: tensor(0.9214) , time: 0.003243684768676758 iter: 5650 , fixed pt res: tensor(0.0969) , ls: 1 , rel_err: tensor(0.9045) , time: 0.0027420520782470703 iter: 5700 , fixed pt res: tensor(0.0970) , ls: 1 , rel_err: tensor(0.9005) , time: 0.0028600692749023438 iter: 5750 , fixed pt res: tensor(0.0975) , ls: 1 , rel_err: tensor(0.8744) , time: 0.0026273727416992188 iter: 5800 , fixed pt res: tensor(0.1004) , ls: 1 , rel_err: tensor(0.8787) , time: 0.0026781558990478516 iter: 5850 , fixed pt res: tensor(0.0981) , ls: 1 , rel_err: tensor(0.8809) , time: 0.0026412010192871094 iter: 5900 , fixed pt res: tensor(0.1017) , ls: 1 , rel_err: tensor(0.8876) , time: 0.0027167797088623047 iter: 5950 , fixed pt res: tensor(0.0959) , ls: 1 , rel_err: tensor(0.9126) , time: 0.0028395652770996094 iter: 6000 , fixed pt res: tensor(0.0977) , ls: 1 , rel_err: tensor(0.9226) , time: 0.0026731491088867188 iter: 6050 , fixed pt res: tensor(0.1001) , ls: 1 , rel_err: tensor(0.9003) , time: 0.002645730972290039 iter: 6100 , fixed pt res: tensor(0.0969) , ls: 1 , rel_err: tensor(0.8834) , time: 0.0027151107788085938 iter: 6150 , fixed pt res: tensor(0.0941) , ls: 1 , rel_err: tensor(0.8768) , time: 0.002652406692504883 iter: 6200 , fixed pt res: tensor(0.0940) , ls: 1 , rel_err: tensor(0.8559) , time: 0.002678394317626953 iter: 6250 , fixed pt res: tensor(0.1001) , ls: 1 , rel_err: tensor(0.8983) , time: 0.002643585205078125 iter: 6300 , fixed pt res: tensor(0.0964) , ls: 1 , rel_err: tensor(0.8749) , time: 0.0027146339416503906 iter: 6350 , fixed pt res: tensor(0.1014) , ls: 1 , rel_err: tensor(0.8756) , time: 0.0026204586029052734 iter: 6400 , fixed pt res: tensor(0.0987) , ls: 1 , rel_err: tensor(0.8709) , time: 0.003339052200317383 iter: 6450 , fixed pt res: tensor(0.0978) , ls: 1 , rel_err: tensor(0.8542) , time: 0.002626180648803711 iter: 6500 , fixed pt res: tensor(0.0923) , ls: 1 , rel_err: tensor(0.8736) , time: 0.0028307437896728516 iter: 6550 , fixed pt res: tensor(0.1011) , ls: 1 , rel_err: tensor(0.8672) , time: 0.00263214111328125 iter: 6600 , fixed pt res: tensor(0.1008) , ls: 1 , rel_err: tensor(0.8565) , time: 0.002622842788696289 iter: 6650 , fixed pt res: tensor(0.0956) , ls: 1 , rel_err: tensor(0.8584) , time: 0.002637147903442383 iter: 6700 , fixed pt res: tensor(0.1013) , ls: 1 , rel_err: tensor(0.8428) , time: 0.0026862621307373047 iter: 6750 , fixed pt res: tensor(0.0975) , ls: 1 , rel_err: tensor(0.8281) , time: 0.0026366710662841797 iter: 6800 , fixed pt res: tensor(0.1006) , ls: 1 , rel_err: tensor(0.8326) , time: 0.002646207809448242 iter: 6850 , fixed pt res: tensor(0.0989) , ls: 1 , rel_err: tensor(0.8473) , time: 0.002773284912109375 iter: 6900 , fixed pt res: tensor(0.0977) , ls: 1 , rel_err: tensor(0.8323) , time: 0.002663850784301758 iter: 6950 , fixed pt res: tensor(0.0964) , ls: 1 , rel_err: tensor(0.8157) , time: 0.0027344226837158203 iter: 7000 , fixed pt res: tensor(0.0948) , ls: 1 , rel_err: tensor(0.7917) , time: 0.0026133060455322266 iter: 7050 , fixed pt res: tensor(0.0980) , ls: 1 , rel_err: tensor(0.7897) , time: 0.002618551254272461 iter: 7100 , fixed pt res: tensor(0.0989) , ls: 1 , rel_err: tensor(0.8002) , time: 0.0026454925537109375 iter: 7150 , fixed pt res: tensor(0.0995) , ls: 1 , rel_err: tensor(0.7800) , time: 0.0026922225952148438 iter: 7200 , fixed pt res: tensor(0.0969) , ls: 1 , rel_err: tensor(0.7724) , time: 0.002665281295776367 iter: 7250 , fixed pt res: tensor(0.0959) , ls: 1 , rel_err: tensor(0.7787) , time: 0.0026602745056152344 iter: 7300 , fixed pt res: tensor(0.0984) , ls: 1 , rel_err: tensor(0.7685) , time: 0.002656698226928711 iter: 7350 , fixed pt res: tensor(0.0981) , ls: 1 , rel_err: tensor(0.7541) , time: 0.0026764869689941406 iter: 7400 , fixed pt res: tensor(0.0967) , ls: 1 , rel_err: tensor(0.7528) , time: 0.0027091503143310547 iter: 7450 , fixed pt res: tensor(0.0977) , ls: 1 , rel_err: tensor(0.7571) , time: 0.0026578903198242188 iter: 7500 , fixed pt res: tensor(0.1019) , ls: 1 , rel_err: tensor(0.7803) , time: 0.002628326416015625 iter: 7550 , fixed pt res: tensor(0.0989) , ls: 1 , rel_err: tensor(0.7855) , time: 0.002618551254272461 iter: 7600 , fixed pt res: tensor(0.0959) , ls: 1 , rel_err: tensor(0.7927) , time: 0.0026383399963378906 iter: 7650 , fixed pt res: tensor(0.0991) , ls: 1 , rel_err: tensor(0.8163) , time: 0.0029609203338623047 iter: 7700 , fixed pt res: tensor(0.0986) , ls: 1 , rel_err: tensor(0.8069) , time: 0.0026159286499023438 iter: 7750 , fixed pt res: tensor(0.0966) , ls: 1 , rel_err: tensor(0.8106) , time: 0.002648591995239258 iter: 7800 , fixed pt res: tensor(0.0994) , ls: 1 , rel_err: tensor(0.8216) , time: 0.002741098403930664 iter: 7850 , fixed pt res: tensor(0.0960) , ls: 1 , rel_err: tensor(0.8073) , time: 0.0026519298553466797 iter: 7900 , fixed pt res: tensor(0.0990) , ls: 1 , rel_err: tensor(0.7909) , time: 0.0027015209197998047 iter: 7950 , fixed pt res: tensor(0.0944) , ls: 1 , rel_err: tensor(0.7850) , time: 0.0027010440826416016 iter: 8000 , fixed pt res: tensor(0.0987) , ls: 1 , rel_err: tensor(0.7983) , time: 0.0026674270629882812 iter: 8050 , fixed pt res: tensor(0.0946) , ls: 1 , rel_err: tensor(0.8124) , time: 0.002661466598510742 iter: 8100 , fixed pt res: tensor(0.0938) , ls: 1 , rel_err: tensor(0.8342) , time: 0.0027573108673095703 iter: 8150 , fixed pt res: tensor(0.0981) , ls: 1 , rel_err: tensor(0.8350) , time: 0.0026941299438476562 iter: 8200 , fixed pt res: tensor(0.0981) , ls: 1 , rel_err: tensor(0.8280) , time: 0.0026400089263916016 iter: 8250 , fixed pt res: tensor(0.0975) , ls: 1 , rel_err: tensor(0.8259) , time: 0.0026302337646484375 iter: 8300 , fixed pt res: tensor(0.1005) , ls: 1 , rel_err: tensor(0.8353) , time: 0.0026967525482177734 iter: 8350 , fixed pt res: tensor(0.0974) , ls: 1 , rel_err: tensor(0.8341) , time: 0.0026950836181640625 iter: 8400 , fixed pt res: tensor(0.0965) , ls: 1 , rel_err: tensor(0.8350) , time: 0.00262451171875 iter: 8450 , fixed pt res: tensor(0.0988) , ls: 1 , rel_err: tensor(0.8283) , time: 0.002725839614868164 iter: 8500 , fixed pt res: tensor(0.0975) , ls: 1 , rel_err: tensor(0.8191) , time: 0.002711772918701172 iter: 8550 , fixed pt res: tensor(0.0952) , ls: 1 , rel_err: tensor(0.7979) , time: 0.002776622772216797 iter: 8600 , fixed pt res: tensor(0.0939) , ls: 1 , rel_err: tensor(0.8140) , time: 0.002679109573364258 iter: 8650 , fixed pt res: tensor(0.0999) , ls: 1 , rel_err: tensor(0.8250) , time: 0.0026099681854248047 iter: 8700 , fixed pt res: tensor(0.0997) , ls: 1 , rel_err: tensor(0.8035) , time: 0.002637147903442383 iter: 8750 , fixed pt res: tensor(0.0993) , ls: 1 , rel_err: tensor(0.7881) , time: 0.0026390552520751953 iter: 8800 , fixed pt res: tensor(0.0932) , ls: 1 , rel_err: tensor(0.8042) , time: 0.0029790401458740234 iter: 8850 , fixed pt res: tensor(0.1018) , ls: 1 , rel_err: tensor(0.7971) , time: 0.0026328563690185547 iter: 8900 , fixed pt res: tensor(0.0981) , ls: 1 , rel_err: tensor(0.7499) , time: 0.002802133560180664 iter: 8950 , fixed pt res: tensor(0.0980) , ls: 1 , rel_err: tensor(0.7480) , time: 0.0026078224182128906 iter: 9000 , fixed pt res: tensor(0.0976) , ls: 1 , rel_err: tensor(0.7709) , time: 0.002763032913208008 iter: 9050 , fixed pt res: tensor(0.1001) , ls: 1 , rel_err: tensor(0.7505) , time: 0.002651214599609375 iter: 9100 , fixed pt res: tensor(0.0995) , ls: 1 , rel_err: tensor(0.7414) , time: 0.0027337074279785156 iter: 9150 , fixed pt res: tensor(0.1007) , ls: 1 , rel_err: tensor(0.7507) , time: 0.0026307106018066406 iter: 9200 , fixed pt res: tensor(0.0970) , ls: 1 , rel_err: tensor(0.7687) , time: 0.0026504993438720703 iter: 9250 , fixed pt res: tensor(0.0963) , ls: 1 , rel_err: tensor(0.7512) , time: 0.0026214122772216797 iter: 9300 , fixed pt res: tensor(0.1027) , ls: 1 , rel_err: tensor(0.7331) , time: 0.0026297569274902344 iter: 9350 , fixed pt res: tensor(0.1021) , ls: 1 , rel_err: tensor(0.7549) , time: 0.0026335716247558594 iter: 9400 , fixed pt res: tensor(0.0972) , ls: 1 , rel_err: tensor(0.7413) , time: 0.0026237964630126953 iter: 9450 , fixed pt res: tensor(0.1009) , ls: 1 , rel_err: tensor(0.7578) , time: 0.0026702880859375 iter: 9500 , fixed pt res: tensor(0.0990) , ls: 1 , rel_err: tensor(0.7343) , time: 0.0026204586029052734 iter: 9550 , fixed pt res: tensor(0.0995) , ls: 1 , rel_err: tensor(0.7433) , time: 0.0026760101318359375 iter: 9600 , fixed pt res: tensor(0.0988) , ls: 1 , rel_err: tensor(0.7255) , time: 0.002622842788696289 iter: 9650 , fixed pt res: tensor(0.0958) , ls: 1 , rel_err: tensor(0.7154) , time: 0.002593994140625 iter: 9700 , fixed pt res: tensor(0.1000) , ls: 1 , rel_err: tensor(0.7179) , time: 0.0026009082794189453 iter: 9750 , fixed pt res: tensor(0.0998) , ls: 1 , rel_err: tensor(0.7104) , time: 0.0026895999908447266 iter: 9800 , fixed pt res: tensor(0.0993) , ls: 1 , rel_err: tensor(0.7094) , time: 0.002779722213745117 iter: 9850 , fixed pt res: tensor(0.0990) , ls: 1 , rel_err: tensor(0.6891) , time: 0.0026383399963378906 iter: 9900 , fixed pt res: tensor(0.0974) , ls: 1 , rel_err: tensor(0.7056) , time: 0.002614736557006836 iter: 9950 , fixed pt res: tensor(0.1008) , ls: 1 , rel_err: tensor(0.7106) , time: 0.002745389938354492 iter: 10000 , fixed pt res: tensor(0.0996) , ls: 1 , rel_err: tensor(0.7004) , time: 0.0027778148651123047 trial 1 finished after 27.69773554801941 CHANGE, delta = 100 norm(rel_err_hist_temp - rel_err_lmm_hist_delta_array[sample_index,:]) = tensor(0.)
Plot varying $\delta$ results¶
In [ ]:
Copied!
title_fontsize = 22
fontsize = 20
fig1 = plt.figure()
my_blue = '#1f77b4'
my_orange = '#F97306'
fig1 = plt.figure()
plt.style.use('seaborn-whitegrid')
ax = plt.axes()
ax.semilogy(rel_err_lmm_hist_delta_array[0,:], linewidth=5, color=my_blue)
ax.semilogy(rel_err_lmm_hist_delta_array[1,:], linewidth=5, color='tab:green')
ax.semilogy(rel_err_lmm_hist_delta_array[2,:], linewidth=5, color='tab:purple')
ax.semilogy(rel_err_lmm_hist_delta_array[3,:], linewidth=5, color='tab:cyan')
ax.semilogy(rel_err_lmm_hist_delta_array[4,:], linewidth=5, color='tab:brown')
# ax.set_xlabel("x-axis", fontsize=title_fontsize)
# ax.legend(['HJ-ADMM $\delta=0.001$', 'HJ-ADMM $\delta=0.01$', 'HJ-ADMM $\delta=0.1$', 'HJ-ADMM $\delta=1$', 'HJ-ADMM $\delta=10$'],fontsize=fontsize, bbox_to_anchor=(1.0, 1.0), loc='upper left')
ax.legend(['HJ-MM $\delta=0.01$', 'HJ-MM $\delta=0.1$', 'HJ-MM $\delta=1$', 'HJ-MM $\delta=10$', 'HJ-MM $\delta=100$'],fontsize=fontsize, bbox_to_anchor=(1.0, 1.0), loc='upper left')
ax.tick_params(labelsize=fontsize, which='both', direction='in')
save_str = 'ADMM_noisy_delta_comparison.pdf'
fig1.savefig(save_str, dpi=300 , bbox_inches="tight", pad_inches=0.0)
title_str = 'samples = ' + str(samples_for_varying_delta)
ax.set_title(title_str, fontsize=fontsize)
title_fontsize = 22
fontsize = 20
fig1 = plt.figure()
my_blue = '#1f77b4'
my_orange = '#F97306'
fig1 = plt.figure()
plt.style.use('seaborn-whitegrid')
ax = plt.axes()
ax.semilogy(rel_err_lmm_hist_delta_array[0,:], linewidth=5, color=my_blue)
ax.semilogy(rel_err_lmm_hist_delta_array[1,:], linewidth=5, color='tab:green')
ax.semilogy(rel_err_lmm_hist_delta_array[2,:], linewidth=5, color='tab:purple')
ax.semilogy(rel_err_lmm_hist_delta_array[3,:], linewidth=5, color='tab:cyan')
ax.semilogy(rel_err_lmm_hist_delta_array[4,:], linewidth=5, color='tab:brown')
# ax.set_xlabel("x-axis", fontsize=title_fontsize)
# ax.legend(['HJ-ADMM $\delta=0.001$', 'HJ-ADMM $\delta=0.01$', 'HJ-ADMM $\delta=0.1$', 'HJ-ADMM $\delta=1$', 'HJ-ADMM $\delta=10$'],fontsize=fontsize, bbox_to_anchor=(1.0, 1.0), loc='upper left')
ax.legend(['HJ-MM $\delta=0.01$', 'HJ-MM $\delta=0.1$', 'HJ-MM $\delta=1$', 'HJ-MM $\delta=10$', 'HJ-MM $\delta=100$'],fontsize=fontsize, bbox_to_anchor=(1.0, 1.0), loc='upper left')
ax.tick_params(labelsize=fontsize, which='both', direction='in')
save_str = 'ADMM_noisy_delta_comparison.pdf'
fig1.savefig(save_str, dpi=300 , bbox_inches="tight", pad_inches=0.0)
title_str = 'samples = ' + str(samples_for_varying_delta)
ax.set_title(title_str, fontsize=fontsize)
<ipython-input-8-3304b89c7bc1>:8: MatplotlibDeprecationWarning: The seaborn styles shipped by Matplotlib are deprecated since 3.6, as they no longer correspond to the styles shipped by seaborn. However, they will remain available as 'seaborn-v0_8-<style>'. Alternatively, directly use the seaborn API instead. plt.style.use('seaborn-whitegrid')
Out[ ]:
Text(0.5, 1.0, 'samples = 10000')
<Figure size 640x480 with 0 Axes>
Blackbox Oracle HJ Prox Experiment 2: Fix best $\delta$ and vary number of samples¶
In [ ]:
Copied!
sample_array = [int(1), int(1e2), int(1e3), int(1e4)]
xopt_HJ_lmm_sample_array = torch.zeros(len(sample_array), x_true.shape[0], x_true.shape[1])
fk_HJ_lmm_hist_sample_array = torch.zeros(len(sample_array), max_iters)
norm_diff_HJ_lmm_hist_sample_array = torch.zeros(len(sample_array), max_iters)
rel_err_lmm_hist_sample_array = torch.zeros(len(sample_array), max_iters)
ls_iters_lmm_hist_sample_array = torch.zeros(len(sample_array), max_iters)
delta_for_varying_samples = 10
alpha_for_varying_samples = alpha_array[3]
for sample_index in range(len(sample_array)):
print('Number of Samples =', sample_array[sample_index])
for i in range(n_trials):
start_time_hj_lmm = time.time()
current_samples = sample_array[sample_index]
xopt_HJ_lmm_temp, fk_HJ_lmm_hist_temp, norm_diff_HJ_lmm_hist_temp, rel_err_hist_temp, ls_iters_hist_temp = hj_mm(x0, W, A, b, max_iters,
int_samples=current_samples,
delta=delta_for_varying_samples,
step_size=step_size,
lambd = lambd,
verbose=True,
print_freq=50,
x_true=x_true,
alpha=alpha_for_varying_samples)
end_time_hj_lmm = time.time()
time_hj_lmm = end_time_hj_lmm - start_time_hj_lmm
print('trial ', i+1, ' finished after', time_hj_lmm)
if i==0:
xopt_HJ_lmm = xopt_HJ_lmm_temp
fk_HJ_lmm_hist = fk_HJ_lmm_hist_temp
norm_diff_HJ_lmm_hist = norm_diff_HJ_lmm_hist_temp
rel_err_hist = rel_err_hist_temp
ls_iters_hist = ls_iters_hist_temp
else:
xopt_HJ_lmm = xopt_HJ_lmm + xopt_HJ_lmm_temp
fk_HJ_lmm_hist = fk_HJ_lmm_hist + fk_HJ_lmm_hist_temp
norm_diff_HJ_lmm_hist = norm_diff_HJ_lmm_hist + norm_diff_HJ_lmm_hist_temp
rel_err_hist = rel_err_hist + rel_err_hist_temp
ls_iters_hist = ls_iters_hist + ls_iters_hist_temp
xopt_HJ_lmm_sample_array[sample_index, :, :] = xopt_HJ_lmm/n_trials
fk_HJ_lmm_hist_sample_array[sample_index, :] = fk_HJ_lmm_hist/n_trials
norm_diff_HJ_lmm_hist_sample_array[sample_index, :] = norm_diff_HJ_lmm_hist/n_trials
rel_err_lmm_hist_sample_array[sample_index, :] = rel_err_hist/n_trials
ls_iters_lmm_hist_sample_array[sample_index,:] = ls_iters_hist/n_trials
print('norm(rel_err_hist_temp - rel_err_lmm_hist_sample_array[sample_index,:]) = ', torch.norm(rel_err_hist_temp - rel_err_lmm_hist_sample_array[sample_index,:]))
sample_array = [int(1), int(1e2), int(1e3), int(1e4)]
xopt_HJ_lmm_sample_array = torch.zeros(len(sample_array), x_true.shape[0], x_true.shape[1])
fk_HJ_lmm_hist_sample_array = torch.zeros(len(sample_array), max_iters)
norm_diff_HJ_lmm_hist_sample_array = torch.zeros(len(sample_array), max_iters)
rel_err_lmm_hist_sample_array = torch.zeros(len(sample_array), max_iters)
ls_iters_lmm_hist_sample_array = torch.zeros(len(sample_array), max_iters)
delta_for_varying_samples = 10
alpha_for_varying_samples = alpha_array[3]
for sample_index in range(len(sample_array)):
print('Number of Samples =', sample_array[sample_index])
for i in range(n_trials):
start_time_hj_lmm = time.time()
current_samples = sample_array[sample_index]
xopt_HJ_lmm_temp, fk_HJ_lmm_hist_temp, norm_diff_HJ_lmm_hist_temp, rel_err_hist_temp, ls_iters_hist_temp = hj_mm(x0, W, A, b, max_iters,
int_samples=current_samples,
delta=delta_for_varying_samples,
step_size=step_size,
lambd = lambd,
verbose=True,
print_freq=50,
x_true=x_true,
alpha=alpha_for_varying_samples)
end_time_hj_lmm = time.time()
time_hj_lmm = end_time_hj_lmm - start_time_hj_lmm
print('trial ', i+1, ' finished after', time_hj_lmm)
if i==0:
xopt_HJ_lmm = xopt_HJ_lmm_temp
fk_HJ_lmm_hist = fk_HJ_lmm_hist_temp
norm_diff_HJ_lmm_hist = norm_diff_HJ_lmm_hist_temp
rel_err_hist = rel_err_hist_temp
ls_iters_hist = ls_iters_hist_temp
else:
xopt_HJ_lmm = xopt_HJ_lmm + xopt_HJ_lmm_temp
fk_HJ_lmm_hist = fk_HJ_lmm_hist + fk_HJ_lmm_hist_temp
norm_diff_HJ_lmm_hist = norm_diff_HJ_lmm_hist + norm_diff_HJ_lmm_hist_temp
rel_err_hist = rel_err_hist + rel_err_hist_temp
ls_iters_hist = ls_iters_hist + ls_iters_hist_temp
xopt_HJ_lmm_sample_array[sample_index, :, :] = xopt_HJ_lmm/n_trials
fk_HJ_lmm_hist_sample_array[sample_index, :] = fk_HJ_lmm_hist/n_trials
norm_diff_HJ_lmm_hist_sample_array[sample_index, :] = norm_diff_HJ_lmm_hist/n_trials
rel_err_lmm_hist_sample_array[sample_index, :] = rel_err_hist/n_trials
ls_iters_lmm_hist_sample_array[sample_index,:] = ls_iters_hist/n_trials
print('norm(rel_err_hist_temp - rel_err_lmm_hist_sample_array[sample_index,:]) = ', torch.norm(rel_err_hist_temp - rel_err_lmm_hist_sample_array[sample_index,:]))
Number of Samples = 1 iter: 50 , fixed pt res: tensor(4.3492) , ls: 1 , rel_err: tensor(22.0593) , time: 0.0012357234954833984 iter: 100 , fixed pt res: tensor(4.2398) , ls: 1 , rel_err: tensor(26.0788) , time: 0.0013756752014160156 iter: 150 , fixed pt res: tensor(4.3122) , ls: 1 , rel_err: tensor(29.7923) , time: 0.0012924671173095703 iter: 200 , fixed pt res: tensor(4.2578) , ls: 1 , rel_err: tensor(32.9060) , time: 0.001222848892211914 iter: 250 , fixed pt res: tensor(4.2742) , ls: 1 , rel_err: tensor(36.0638) , time: 0.001218557357788086 iter: 300 , fixed pt res: tensor(4.2656) , ls: 1 , rel_err: tensor(38.0925) , time: 0.001238107681274414 iter: 350 , fixed pt res: tensor(4.3729) , ls: 1 , rel_err: tensor(40.2829) , time: 0.0012290477752685547 iter: 400 , fixed pt res: tensor(4.4421) , ls: 1 , rel_err: tensor(42.0254) , time: 0.001237630844116211 iter: 450 , fixed pt res: tensor(4.4611) , ls: 1 , rel_err: tensor(43.8565) , time: 0.002003908157348633 iter: 500 , fixed pt res: tensor(4.3654) , ls: 1 , rel_err: tensor(46.0011) , time: 0.0012235641479492188 iter: 550 , fixed pt res: tensor(4.4026) , ls: 1 , rel_err: tensor(48.4161) , time: 0.0012052059173583984 iter: 600 , fixed pt res: tensor(4.3892) , ls: 1 , rel_err: tensor(50.3180) , time: 0.0013031959533691406 iter: 650 , fixed pt res: tensor(4.4085) , ls: 1 , rel_err: tensor(51.9762) , time: 0.0017383098602294922 iter: 700 , fixed pt res: tensor(4.2235) , ls: 1 , rel_err: tensor(53.8161) , time: 0.001260519027709961 iter: 750 , fixed pt res: tensor(4.3299) , ls: 1 , rel_err: tensor(55.5659) , time: 0.0012469291687011719 iter: 800 , fixed pt res: tensor(4.3728) , ls: 1 , rel_err: tensor(58.0084) , time: 0.0012285709381103516 iter: 850 , fixed pt res: tensor(4.5146) , ls: 1 , rel_err: tensor(59.5839) , time: 0.001222372055053711 iter: 900 , fixed pt res: tensor(4.4009) , ls: 1 , rel_err: tensor(61.2522) , time: 0.0012252330780029297 iter: 950 , fixed pt res: tensor(4.3857) , ls: 1 , rel_err: tensor(63.1436) , time: 0.0012290477752685547 iter: 1000 , fixed pt res: tensor(4.3707) , ls: 1 , rel_err: tensor(64.9713) , time: 0.001203775405883789 iter: 1050 , fixed pt res: tensor(4.2621) , ls: 1 , rel_err: tensor(66.0495) , time: 0.0012392997741699219 iter: 1100 , fixed pt res: tensor(4.5444) , ls: 1 , rel_err: tensor(67.6864) , time: 0.001298666000366211 iter: 1150 , fixed pt res: tensor(4.2174) , ls: 1 , rel_err: tensor(69.0120) , time: 0.0012073516845703125 iter: 1200 , fixed pt res: tensor(4.3168) , ls: 1 , rel_err: tensor(70.2632) , time: 0.0012478828430175781 iter: 1250 , fixed pt res: tensor(4.5151) , ls: 1 , rel_err: tensor(72.0217) , time: 0.0012123584747314453 iter: 1300 , fixed pt res: tensor(4.4318) , ls: 1 , rel_err: tensor(72.8153) , time: 0.0013761520385742188 iter: 1350 , fixed pt res: tensor(4.4913) , ls: 1 , rel_err: tensor(75.4307) , time: 0.0012369155883789062 iter: 1400 , fixed pt res: tensor(4.3189) , ls: 1 , rel_err: tensor(76.6560) , time: 0.001226186752319336 iter: 1450 , fixed pt res: tensor(4.3683) , ls: 1 , rel_err: tensor(76.9220) , time: 0.0021958351135253906 iter: 1500 , fixed pt res: tensor(4.5245) , ls: 1 , rel_err: tensor(78.3533) , time: 0.0012638568878173828 iter: 1550 , fixed pt res: tensor(4.4940) , ls: 1 , rel_err: tensor(79.2072) , time: 0.001207113265991211 iter: 1600 , fixed pt res: tensor(4.4487) , ls: 1 , rel_err: tensor(80.8733) , time: 0.0015423297882080078 iter: 1650 , fixed pt res: tensor(4.5145) , ls: 1 , rel_err: tensor(81.4984) , time: 0.0012214183807373047 iter: 1700 , fixed pt res: tensor(4.3175) , ls: 1 , rel_err: tensor(83.0772) , time: 0.0011968612670898438 iter: 1750 , fixed pt res: tensor(4.4626) , ls: 1 , rel_err: tensor(84.6571) , time: 0.0012164115905761719 iter: 1800 , fixed pt res: tensor(4.5192) , ls: 1 , rel_err: tensor(86.1078) , time: 0.001241445541381836 iter: 1850 , fixed pt res: tensor(4.3068) , ls: 1 , rel_err: tensor(87.2647) , time: 0.0012059211730957031 iter: 1900 , fixed pt res: tensor(4.2968) , ls: 1 , rel_err: tensor(88.8182) , time: 0.0011935234069824219 iter: 1950 , fixed pt res: tensor(4.2597) , ls: 1 , rel_err: tensor(90.1199) , time: 0.0012166500091552734 iter: 2000 , fixed pt res: tensor(4.2799) , ls: 1 , rel_err: tensor(91.2706) , time: 0.0015642642974853516 iter: 2050 , fixed pt res: tensor(4.3968) , ls: 1 , rel_err: tensor(93.1120) , time: 0.001207590103149414 iter: 2100 , fixed pt res: tensor(4.2294) , ls: 1 , rel_err: tensor(94.6409) , time: 0.0012409687042236328 iter: 2150 , fixed pt res: tensor(4.1860) , ls: 1 , rel_err: tensor(95.0320) , time: 0.0012357234954833984 iter: 2200 , fixed pt res: tensor(4.3426) , ls: 1 , rel_err: tensor(96.5111) , time: 0.0012042522430419922 iter: 2250 , fixed pt res: tensor(4.3826) , ls: 1 , rel_err: tensor(97.7978) , time: 0.001207590103149414 iter: 2300 , fixed pt res: tensor(4.4400) , ls: 1 , rel_err: tensor(99.7797) , time: 0.0012328624725341797 iter: 2350 , fixed pt res: tensor(4.4654) , ls: 1 , rel_err: tensor(101.4514) , time: 0.0012099742889404297 iter: 2400 , fixed pt res: tensor(4.3189) , ls: 1 , rel_err: tensor(102.1042) , time: 0.0012078285217285156 iter: 2450 , fixed pt res: tensor(4.2428) , ls: 1 , rel_err: tensor(103.2482) , time: 0.0012216567993164062 iter: 2500 , fixed pt res: tensor(4.3893) , ls: 1 , rel_err: tensor(103.7875) , time: 0.00119781494140625 iter: 2550 , fixed pt res: tensor(4.3765) , ls: 1 , rel_err: tensor(104.7699) , time: 0.0012710094451904297 iter: 2600 , fixed pt res: tensor(4.3278) , ls: 1 , rel_err: tensor(105.2396) , time: 0.001291513442993164 iter: 2650 , fixed pt res: tensor(4.2415) , ls: 1 , rel_err: tensor(105.4326) , time: 0.001216888427734375 iter: 2700 , fixed pt res: tensor(4.1311) , ls: 1 , rel_err: tensor(106.0025) , time: 0.001210927963256836 iter: 2750 , fixed pt res: tensor(4.4455) , ls: 1 , rel_err: tensor(106.8205) , time: 0.0012440681457519531 iter: 2800 , fixed pt res: tensor(4.3838) , ls: 1 , rel_err: tensor(108.9093) , time: 0.0015323162078857422 iter: 2850 , fixed pt res: tensor(4.1581) , ls: 1 , rel_err: tensor(110.2157) , time: 0.0012116432189941406 iter: 2900 , fixed pt res: tensor(4.3265) , ls: 1 , rel_err: tensor(110.9226) , time: 0.0012247562408447266 iter: 2950 , fixed pt res: tensor(4.2206) , ls: 1 , rel_err: tensor(111.6767) , time: 0.0012023448944091797 iter: 3000 , fixed pt res: tensor(4.3502) , ls: 1 , rel_err: tensor(112.5193) , time: 0.0012269020080566406 iter: 3050 , fixed pt res: tensor(4.3318) , ls: 1 , rel_err: tensor(112.9838) , time: 0.0012021064758300781 iter: 3100 , fixed pt res: tensor(4.4128) , ls: 1 , rel_err: tensor(114.0561) , time: 0.0012402534484863281 iter: 3150 , fixed pt res: tensor(4.1856) , ls: 1 , rel_err: tensor(114.3409) , time: 0.0012400150299072266 iter: 3200 , fixed pt res: tensor(4.3584) , ls: 1 , rel_err: tensor(115.2822) , time: 0.001224517822265625 iter: 3250 , fixed pt res: tensor(4.1931) , ls: 1 , rel_err: tensor(115.8058) , time: 0.0012483596801757812 iter: 3300 , fixed pt res: tensor(4.3942) , ls: 1 , rel_err: tensor(115.2320) , time: 0.0012700557708740234 iter: 3350 , fixed pt res: tensor(4.4909) , ls: 1 , rel_err: tensor(116.2544) , time: 0.0013701915740966797 iter: 3400 , fixed pt res: tensor(4.3221) , ls: 1 , rel_err: tensor(116.9406) , time: 0.0012536048889160156 iter: 3450 , fixed pt res: tensor(4.2316) , ls: 1 , rel_err: tensor(118.2200) , time: 0.001245260238647461 iter: 3500 , fixed pt res: tensor(4.3480) , ls: 1 , rel_err: tensor(119.6118) , time: 0.0012774467468261719 iter: 3550 , fixed pt res: tensor(4.4444) , ls: 1 , rel_err: tensor(120.3955) , time: 0.0012316703796386719 iter: 3600 , fixed pt res: tensor(4.2887) , ls: 1 , rel_err: tensor(121.2983) , time: 0.0012226104736328125 iter: 3650 , fixed pt res: tensor(4.3580) , ls: 1 , rel_err: tensor(122.7465) , time: 0.001253366470336914 iter: 3700 , fixed pt res: tensor(4.3071) , ls: 1 , rel_err: tensor(122.0843) , time: 0.001230478286743164 iter: 3750 , fixed pt res: tensor(4.4815) , ls: 1 , rel_err: tensor(122.9040) , time: 0.0012171268463134766 iter: 3800 , fixed pt res: tensor(4.1557) , ls: 1 , rel_err: tensor(123.1052) , time: 0.0012226104736328125 iter: 3850 , fixed pt res: tensor(4.2987) , ls: 1 , rel_err: tensor(123.6549) , time: 0.001209259033203125 iter: 3900 , fixed pt res: tensor(4.3005) , ls: 1 , rel_err: tensor(123.6455) , time: 0.0012559890747070312 iter: 3950 , fixed pt res: tensor(4.4685) , ls: 1 , rel_err: tensor(124.7504) , time: 0.0014450550079345703 iter: 4000 , fixed pt res: tensor(4.3504) , ls: 1 , rel_err: tensor(125.1232) , time: 0.0012197494506835938 iter: 4050 , fixed pt res: tensor(4.2964) , ls: 1 , rel_err: tensor(124.8335) , time: 0.0012235641479492188 iter: 4100 , fixed pt res: tensor(4.4660) , ls: 1 , rel_err: tensor(126.1516) , time: 0.001220703125 iter: 4150 , fixed pt res: tensor(4.5462) , ls: 1 , rel_err: tensor(127.2025) , time: 0.0012118816375732422 iter: 4200 , fixed pt res: tensor(4.3123) , ls: 1 , rel_err: tensor(126.9322) , time: 0.0012183189392089844 iter: 4250 , fixed pt res: tensor(4.3521) , ls: 1 , rel_err: tensor(127.3104) , time: 0.0012164115905761719 iter: 4300 , fixed pt res: tensor(4.2757) , ls: 1 , rel_err: tensor(128.1557) , time: 0.001264810562133789 iter: 4350 , fixed pt res: tensor(4.3231) , ls: 1 , rel_err: tensor(129.0909) , time: 0.0012233257293701172 iter: 4400 , fixed pt res: tensor(4.3421) , ls: 1 , rel_err: tensor(129.4120) , time: 0.0013189315795898438 iter: 4450 , fixed pt res: tensor(4.5757) , ls: 1 , rel_err: tensor(129.6437) , time: 0.0012159347534179688 iter: 4500 , fixed pt res: tensor(4.3383) , ls: 1 , rel_err: tensor(130.6270) , time: 0.0012118816375732422 iter: 4550 , fixed pt res: tensor(4.2816) , ls: 1 , rel_err: tensor(130.9382) , time: 0.0012242794036865234 iter: 4600 , fixed pt res: tensor(4.5565) , ls: 1 , rel_err: tensor(131.5833) , time: 0.001222848892211914 iter: 4650 , fixed pt res: tensor(4.3938) , ls: 1 , rel_err: tensor(132.9198) , time: 0.0012316703796386719 iter: 4700 , fixed pt res: tensor(4.1798) , ls: 1 , rel_err: tensor(134.1844) , time: 0.0013203620910644531 iter: 4750 , fixed pt res: tensor(4.2626) , ls: 1 , rel_err: tensor(134.6126) , time: 0.0012254714965820312 iter: 4800 , fixed pt res: tensor(4.3756) , ls: 1 , rel_err: tensor(135.4791) , time: 0.0012345314025878906 iter: 4850 , fixed pt res: tensor(4.2080) , ls: 1 , rel_err: tensor(137.6846) , time: 0.0015499591827392578 iter: 4900 , fixed pt res: tensor(4.5486) , ls: 1 , rel_err: tensor(137.8125) , time: 0.0012052059173583984 iter: 4950 , fixed pt res: tensor(4.4195) , ls: 1 , rel_err: tensor(138.8419) , time: 0.0012307167053222656 iter: 5000 , fixed pt res: tensor(4.4447) , ls: 1 , rel_err: tensor(139.9588) , time: 0.0012805461883544922 iter: 5050 , fixed pt res: tensor(4.4724) , ls: 1 , rel_err: tensor(140.3710) , time: 0.0012123584747314453 iter: 5100 , fixed pt res: tensor(4.3861) , ls: 1 , rel_err: tensor(141.2079) , time: 0.0012962818145751953 iter: 5150 , fixed pt res: tensor(4.2526) , ls: 1 , rel_err: tensor(143.0183) , time: 0.0012211799621582031 iter: 5200 , fixed pt res: tensor(4.4316) , ls: 1 , rel_err: tensor(143.8309) , time: 0.0012254714965820312 iter: 5250 , fixed pt res: tensor(4.3292) , ls: 1 , rel_err: tensor(144.8065) , time: 0.0012087821960449219 iter: 5300 , fixed pt res: tensor(4.1978) , ls: 1 , rel_err: tensor(145.1760) , time: 0.0012331008911132812 iter: 5350 , fixed pt res: tensor(4.3954) , ls: 1 , rel_err: tensor(145.9453) , time: 0.0012140274047851562 iter: 5400 , fixed pt res: tensor(4.5053) , ls: 1 , rel_err: tensor(148.0731) , time: 0.0012247562408447266 iter: 5450 , fixed pt res: tensor(4.4561) , ls: 1 , rel_err: tensor(148.3923) , time: 0.0014989376068115234 iter: 5500 , fixed pt res: tensor(4.5518) , ls: 1 , rel_err: tensor(147.9458) , time: 0.001608133316040039 iter: 5550 , fixed pt res: tensor(4.3144) , ls: 1 , rel_err: tensor(148.8063) , time: 0.0012576580047607422 iter: 5600 , fixed pt res: tensor(4.3206) , ls: 1 , rel_err: tensor(149.4920) , time: 0.0016512870788574219 iter: 5650 , fixed pt res: tensor(4.4863) , ls: 1 , rel_err: tensor(149.8737) , time: 0.001215219497680664 iter: 5700 , fixed pt res: tensor(4.4126) , ls: 1 , rel_err: tensor(150.2984) , time: 0.0012290477752685547 iter: 5750 , fixed pt res: tensor(4.5650) , ls: 1 , rel_err: tensor(151.4765) , time: 0.0012562274932861328 iter: 5800 , fixed pt res: tensor(4.2554) , ls: 1 , rel_err: tensor(150.7308) , time: 0.0012602806091308594 iter: 5850 , fixed pt res: tensor(4.2354) , ls: 1 , rel_err: tensor(151.0924) , time: 0.0012059211730957031 iter: 5900 , fixed pt res: tensor(4.4356) , ls: 1 , rel_err: tensor(152.0713) , time: 0.0012755393981933594 iter: 5950 , fixed pt res: tensor(4.4027) , ls: 1 , rel_err: tensor(152.7037) , time: 0.001271963119506836 iter: 6000 , fixed pt res: tensor(4.1286) , ls: 1 , rel_err: tensor(154.0682) , time: 0.0012352466583251953 iter: 6050 , fixed pt res: tensor(4.4555) , ls: 1 , rel_err: tensor(155.5801) , time: 0.001233816146850586 iter: 6100 , fixed pt res: tensor(4.1264) , ls: 1 , rel_err: tensor(155.5533) , time: 0.0012335777282714844 iter: 6150 , fixed pt res: tensor(4.3133) , ls: 1 , rel_err: tensor(155.6941) , time: 0.0012552738189697266 iter: 6200 , fixed pt res: tensor(4.1991) , ls: 1 , rel_err: tensor(155.8660) , time: 0.0012211799621582031 iter: 6250 , fixed pt res: tensor(4.1847) , ls: 1 , rel_err: tensor(155.8810) , time: 0.0012273788452148438 iter: 6300 , fixed pt res: tensor(4.3835) , ls: 1 , rel_err: tensor(157.5197) , time: 0.0012090206146240234 iter: 6350 , fixed pt res: tensor(4.4773) , ls: 1 , rel_err: tensor(158.0135) , time: 0.0012416839599609375 iter: 6400 , fixed pt res: tensor(4.2756) , ls: 1 , rel_err: tensor(158.2304) , time: 0.001211404800415039 iter: 6450 , fixed pt res: tensor(4.3285) , ls: 1 , rel_err: tensor(158.2862) , time: 0.0012767314910888672 iter: 6500 , fixed pt res: tensor(4.3430) , ls: 1 , rel_err: tensor(158.4957) , time: 0.0012328624725341797 iter: 6550 , fixed pt res: tensor(4.4024) , ls: 1 , rel_err: tensor(158.7941) , time: 0.001210927963256836 iter: 6600 , fixed pt res: tensor(4.3154) , ls: 1 , rel_err: tensor(160.0966) , time: 0.0012059211730957031 iter: 6650 , fixed pt res: tensor(4.3362) , ls: 1 , rel_err: tensor(161.1296) , time: 0.0012753009796142578 iter: 6700 , fixed pt res: tensor(4.2554) , ls: 1 , rel_err: tensor(161.2044) , time: 0.0012421607971191406 iter: 6750 , fixed pt res: tensor(4.3534) , ls: 1 , rel_err: tensor(161.5621) , time: 0.0020461082458496094 iter: 6800 , fixed pt res: tensor(4.4202) , ls: 1 , rel_err: tensor(162.2499) , time: 0.0012614727020263672 iter: 6850 , fixed pt res: tensor(4.3849) , ls: 1 , rel_err: tensor(162.1226) , time: 0.0012538433074951172 iter: 6900 , fixed pt res: tensor(4.4920) , ls: 1 , rel_err: tensor(163.0170) , time: 0.001508951187133789 iter: 6950 , fixed pt res: tensor(4.3237) , ls: 1 , rel_err: tensor(163.7699) , time: 0.001219034194946289 iter: 7000 , fixed pt res: tensor(4.3307) , ls: 1 , rel_err: tensor(164.7055) , time: 0.001251220703125 iter: 7050 , fixed pt res: tensor(4.3875) , ls: 1 , rel_err: tensor(166.1488) , time: 0.001219034194946289 iter: 7100 , fixed pt res: tensor(4.2454) , ls: 1 , rel_err: tensor(166.5173) , time: 0.0012180805206298828 iter: 7150 , fixed pt res: tensor(4.5403) , ls: 1 , rel_err: tensor(166.6101) , time: 0.0012042522430419922 iter: 7200 , fixed pt res: tensor(4.3249) , ls: 1 , rel_err: tensor(166.7866) , time: 0.0011980533599853516 iter: 7250 , fixed pt res: tensor(4.2379) , ls: 1 , rel_err: tensor(166.9070) , time: 0.001207113265991211 iter: 7300 , fixed pt res: tensor(4.1400) , ls: 1 , rel_err: tensor(166.6404) , time: 0.001207113265991211 iter: 7350 , fixed pt res: tensor(4.3063) , ls: 1 , rel_err: tensor(167.2403) , time: 0.0011966228485107422 iter: 7400 , fixed pt res: tensor(4.3218) , ls: 1 , rel_err: tensor(167.5425) , time: 0.001191854476928711 iter: 7450 , fixed pt res: tensor(4.4948) , ls: 1 , rel_err: tensor(169.0356) , time: 0.0011944770812988281 iter: 7500 , fixed pt res: tensor(4.3100) , ls: 1 , rel_err: tensor(168.2851) , time: 0.001407623291015625 iter: 7550 , fixed pt res: tensor(4.2834) , ls: 1 , rel_err: tensor(169.4251) , time: 0.0013039112091064453 iter: 7600 , fixed pt res: tensor(4.3020) , ls: 1 , rel_err: tensor(170.3145) , time: 0.001260519027709961 iter: 7650 , fixed pt res: tensor(4.1987) , ls: 1 , rel_err: tensor(170.9172) , time: 0.0012359619140625 iter: 7700 , fixed pt res: tensor(4.2722) , ls: 1 , rel_err: tensor(171.9099) , time: 0.0012178421020507812 iter: 7750 , fixed pt res: tensor(4.3431) , ls: 1 , rel_err: tensor(172.2238) , time: 0.0012478828430175781 iter: 7800 , fixed pt res: tensor(4.4537) , ls: 1 , rel_err: tensor(172.2792) , time: 0.0012288093566894531 iter: 7850 , fixed pt res: tensor(4.2815) , ls: 1 , rel_err: tensor(172.2619) , time: 0.0012218952178955078 iter: 7900 , fixed pt res: tensor(4.4923) , ls: 1 , rel_err: tensor(171.8362) , time: 0.001215219497680664 iter: 7950 , fixed pt res: tensor(4.1887) , ls: 1 , rel_err: tensor(172.1641) , time: 0.0014383792877197266 iter: 8000 , fixed pt res: tensor(4.1604) , ls: 1 , rel_err: tensor(171.9559) , time: 0.0012226104736328125 iter: 8050 , fixed pt res: tensor(4.5022) , ls: 1 , rel_err: tensor(172.6269) , time: 0.0012369155883789062 iter: 8100 , fixed pt res: tensor(4.3863) , ls: 1 , rel_err: tensor(172.6648) , time: 0.0012516975402832031 iter: 8150 , fixed pt res: tensor(4.5391) , ls: 1 , rel_err: tensor(172.7342) , time: 0.0012407302856445312 iter: 8200 , fixed pt res: tensor(4.3726) , ls: 1 , rel_err: tensor(174.2308) , time: 0.0012116432189941406 iter: 8250 , fixed pt res: tensor(4.4113) , ls: 1 , rel_err: tensor(174.1882) , time: 0.001323699951171875 iter: 8300 , fixed pt res: tensor(4.3925) , ls: 1 , rel_err: tensor(174.1840) , time: 0.0012085437774658203 iter: 8350 , fixed pt res: tensor(4.4766) , ls: 1 , rel_err: tensor(174.4624) , time: 0.0012044906616210938 iter: 8400 , fixed pt res: tensor(4.3198) , ls: 1 , rel_err: tensor(174.3825) , time: 0.0013380050659179688 iter: 8450 , fixed pt res: tensor(4.2532) , ls: 1 , rel_err: tensor(175.6964) , time: 0.001226663589477539 iter: 8500 , fixed pt res: tensor(4.1973) , ls: 1 , rel_err: tensor(175.1025) , time: 0.0020666122436523438 iter: 8550 , fixed pt res: tensor(4.2542) , ls: 1 , rel_err: tensor(175.3418) , time: 0.0012395381927490234 iter: 8600 , fixed pt res: tensor(4.3963) , ls: 1 , rel_err: tensor(175.6121) , time: 0.001481771469116211 iter: 8650 , fixed pt res: tensor(4.5053) , ls: 1 , rel_err: tensor(175.6718) , time: 0.0012290477752685547 iter: 8700 , fixed pt res: tensor(4.5122) , ls: 1 , rel_err: tensor(175.7919) , time: 0.0012845993041992188 iter: 8750 , fixed pt res: tensor(4.5139) , ls: 1 , rel_err: tensor(177.0038) , time: 0.001233816146850586 iter: 8800 , fixed pt res: tensor(4.4545) , ls: 1 , rel_err: tensor(177.6089) , time: 0.001232147216796875 iter: 8850 , fixed pt res: tensor(4.4173) , ls: 1 , rel_err: tensor(178.6840) , time: 0.001413106918334961 iter: 8900 , fixed pt res: tensor(4.3516) , ls: 1 , rel_err: tensor(179.5216) , time: 0.0012238025665283203 iter: 8950 , fixed pt res: tensor(4.4677) , ls: 1 , rel_err: tensor(180.7708) , time: 0.0012068748474121094 iter: 9000 , fixed pt res: tensor(4.1992) , ls: 1 , rel_err: tensor(180.7370) , time: 0.0012822151184082031 iter: 9050 , fixed pt res: tensor(4.5322) , ls: 1 , rel_err: tensor(181.2392) , time: 0.0012969970703125 iter: 9100 , fixed pt res: tensor(4.4024) , ls: 1 , rel_err: tensor(181.9343) , time: 0.0012459754943847656 iter: 9150 , fixed pt res: tensor(4.2635) , ls: 1 , rel_err: tensor(183.3682) , time: 0.0014431476593017578 iter: 9200 , fixed pt res: tensor(4.3862) , ls: 1 , rel_err: tensor(183.9166) , time: 0.0012183189392089844 iter: 9250 , fixed pt res: tensor(4.4897) , ls: 1 , rel_err: tensor(185.5516) , time: 0.0012104511260986328 iter: 9300 , fixed pt res: tensor(4.3664) , ls: 1 , rel_err: tensor(186.3082) , time: 0.001222848892211914 iter: 9350 , fixed pt res: tensor(4.2656) , ls: 1 , rel_err: tensor(186.6163) , time: 0.0011990070343017578 iter: 9400 , fixed pt res: tensor(4.2133) , ls: 1 , rel_err: tensor(187.3418) , time: 0.001234292984008789 iter: 9450 , fixed pt res: tensor(4.4000) , ls: 1 , rel_err: tensor(188.1650) , time: 0.0012516975402832031 iter: 9500 , fixed pt res: tensor(4.3824) , ls: 1 , rel_err: tensor(188.9037) , time: 0.0012440681457519531 iter: 9550 , fixed pt res: tensor(4.3504) , ls: 1 , rel_err: tensor(189.1673) , time: 0.00121307373046875 iter: 9600 , fixed pt res: tensor(4.5031) , ls: 1 , rel_err: tensor(190.2241) , time: 0.0012161731719970703 iter: 9650 , fixed pt res: tensor(4.3399) , ls: 1 , rel_err: tensor(190.3523) , time: 0.0012121200561523438 iter: 9700 , fixed pt res: tensor(4.4984) , ls: 1 , rel_err: tensor(191.1164) , time: 0.0013153553009033203 iter: 9750 , fixed pt res: tensor(4.3649) , ls: 1 , rel_err: tensor(192.1975) , time: 0.001260995864868164 iter: 9800 , fixed pt res: tensor(4.3691) , ls: 1 , rel_err: tensor(191.9936) , time: 0.0012807846069335938 iter: 9850 , fixed pt res: tensor(4.4353) , ls: 1 , rel_err: tensor(192.7367) , time: 0.0012423992156982422 iter: 9900 , fixed pt res: tensor(4.4677) , ls: 1 , rel_err: tensor(193.7720) , time: 0.0012576580047607422 iter: 9950 , fixed pt res: tensor(4.3881) , ls: 1 , rel_err: tensor(193.7817) , time: 0.0018002986907958984 iter: 10000 , fixed pt res: tensor(4.2635) , ls: 1 , rel_err: tensor(194.5954) , time: 0.0012183189392089844 trial 1 finished after 13.358325004577637 norm(rel_err_hist_temp - rel_err_lmm_hist_sample_array[sample_index,:]) = tensor(0.) Number of Samples = 100 iter: 50 , fixed pt res: tensor(0.7745) , ls: 1 , rel_err: tensor(15.3021) , time: 0.001310110092163086 iter: 100 , fixed pt res: tensor(0.5291) , ls: 1 , rel_err: tensor(14.1823) , time: 0.001262664794921875 iter: 150 , fixed pt res: tensor(0.4858) , ls: 1 , rel_err: tensor(13.4265) , time: 0.001257181167602539 iter: 200 , fixed pt res: tensor(0.4850) , ls: 1 , rel_err: tensor(12.6152) , time: 0.0014407634735107422 iter: 250 , fixed pt res: tensor(0.4468) , ls: 1 , rel_err: tensor(11.8486) , time: 0.00128173828125 iter: 300 , fixed pt res: tensor(0.4460) , ls: 1 , rel_err: tensor(11.1918) , time: 0.0014660358428955078 iter: 350 , fixed pt res: tensor(0.4499) , ls: 1 , rel_err: tensor(10.4513) , time: 0.0012519359588623047 iter: 400 , fixed pt res: tensor(0.4664) , ls: 1 , rel_err: tensor(10.0025) , time: 0.0012450218200683594 iter: 450 , fixed pt res: tensor(0.4562) , ls: 1 , rel_err: tensor(9.3706) , time: 0.0014846324920654297 iter: 500 , fixed pt res: tensor(0.4679) , ls: 1 , rel_err: tensor(8.8386) , time: 0.0012602806091308594 iter: 550 , fixed pt res: tensor(0.4514) , ls: 1 , rel_err: tensor(8.2698) , time: 0.001310586929321289 iter: 600 , fixed pt res: tensor(0.4350) , ls: 1 , rel_err: tensor(7.8019) , time: 0.0014019012451171875 iter: 650 , fixed pt res: tensor(0.4584) , ls: 1 , rel_err: tensor(7.3331) , time: 0.001260519027709961 iter: 700 , fixed pt res: tensor(0.4525) , ls: 1 , rel_err: tensor(7.0093) , time: 0.0012497901916503906 iter: 750 , fixed pt res: tensor(0.4378) , ls: 1 , rel_err: tensor(6.7379) , time: 0.002296924591064453 iter: 800 , fixed pt res: tensor(0.4329) , ls: 1 , rel_err: tensor(6.3145) , time: 0.0013031959533691406 iter: 850 , fixed pt res: tensor(0.4491) , ls: 1 , rel_err: tensor(5.9935) , time: 0.0012462139129638672 iter: 900 , fixed pt res: tensor(0.4482) , ls: 1 , rel_err: tensor(5.6870) , time: 0.0012958049774169922 iter: 950 , fixed pt res: tensor(0.4573) , ls: 1 , rel_err: tensor(5.4872) , time: 0.0013692378997802734 iter: 1000 , fixed pt res: tensor(0.4454) , ls: 1 , rel_err: tensor(5.2836) , time: 0.001262664794921875 iter: 1050 , fixed pt res: tensor(0.4282) , ls: 1 , rel_err: tensor(5.1239) , time: 0.002058744430541992 iter: 1100 , fixed pt res: tensor(0.4601) , ls: 1 , rel_err: tensor(4.8779) , time: 0.0012831687927246094 iter: 1150 , fixed pt res: tensor(0.4569) , ls: 1 , rel_err: tensor(4.7101) , time: 0.0012745857238769531 iter: 1200 , fixed pt res: tensor(0.4447) , ls: 1 , rel_err: tensor(4.3678) , time: 0.0012636184692382812 iter: 1250 , fixed pt res: tensor(0.4372) , ls: 1 , rel_err: tensor(4.1949) , time: 0.0012631416320800781 iter: 1300 , fixed pt res: tensor(0.4548) , ls: 1 , rel_err: tensor(4.1029) , time: 0.0012526512145996094 iter: 1350 , fixed pt res: tensor(0.4440) , ls: 1 , rel_err: tensor(3.9807) , time: 0.0013229846954345703 iter: 1400 , fixed pt res: tensor(0.4486) , ls: 1 , rel_err: tensor(3.8899) , time: 0.0012824535369873047 iter: 1450 , fixed pt res: tensor(0.4442) , ls: 1 , rel_err: tensor(3.7541) , time: 0.00128936767578125 iter: 1500 , fixed pt res: tensor(0.4513) , ls: 1 , rel_err: tensor(3.5777) , time: 0.0012822151184082031 iter: 1550 , fixed pt res: tensor(0.4171) , ls: 1 , rel_err: tensor(3.4925) , time: 0.0012974739074707031 iter: 1600 , fixed pt res: tensor(0.4389) , ls: 1 , rel_err: tensor(3.2979) , time: 0.0012981891632080078 iter: 1650 , fixed pt res: tensor(0.4353) , ls: 1 , rel_err: tensor(3.1825) , time: 0.0013427734375 iter: 1700 , fixed pt res: tensor(0.4445) , ls: 1 , rel_err: tensor(3.1297) , time: 0.0012636184692382812 iter: 1750 , fixed pt res: tensor(0.4608) , ls: 1 , rel_err: tensor(3.1012) , time: 0.002191781997680664 iter: 1800 , fixed pt res: tensor(0.4407) , ls: 1 , rel_err: tensor(2.9704) , time: 0.0013363361358642578 iter: 1850 , fixed pt res: tensor(0.4530) , ls: 1 , rel_err: tensor(3.0412) , time: 0.0012786388397216797 iter: 1900 , fixed pt res: tensor(0.4420) , ls: 1 , rel_err: tensor(2.9323) , time: 0.0013391971588134766 iter: 1950 , fixed pt res: tensor(0.4544) , ls: 1 , rel_err: tensor(2.9978) , time: 0.0013275146484375 iter: 2000 , fixed pt res: tensor(0.4489) , ls: 1 , rel_err: tensor(2.9866) , time: 0.0012645721435546875 iter: 2050 , fixed pt res: tensor(0.4557) , ls: 1 , rel_err: tensor(2.8863) , time: 0.0012743473052978516 iter: 2100 , fixed pt res: tensor(0.4534) , ls: 1 , rel_err: tensor(2.8482) , time: 0.001253366470336914 iter: 2150 , fixed pt res: tensor(0.4365) , ls: 1 , rel_err: tensor(2.8268) , time: 0.0012631416320800781 iter: 2200 , fixed pt res: tensor(0.4519) , ls: 1 , rel_err: tensor(2.8113) , time: 0.002457141876220703 iter: 2250 , fixed pt res: tensor(0.4497) , ls: 1 , rel_err: tensor(2.8356) , time: 0.0012688636779785156 iter: 2300 , fixed pt res: tensor(0.4532) , ls: 1 , rel_err: tensor(2.8252) , time: 0.0012612342834472656 iter: 2350 , fixed pt res: tensor(0.4499) , ls: 1 , rel_err: tensor(2.7863) , time: 0.0012767314910888672 iter: 2400 , fixed pt res: tensor(0.4548) , ls: 1 , rel_err: tensor(2.6750) , time: 0.0012617111206054688 iter: 2450 , fixed pt res: tensor(0.4557) , ls: 1 , rel_err: tensor(2.6320) , time: 0.001291513442993164 iter: 2500 , fixed pt res: tensor(0.4548) , ls: 1 , rel_err: tensor(2.5933) , time: 0.0012500286102294922 iter: 2550 , fixed pt res: tensor(0.4298) , ls: 1 , rel_err: tensor(2.5141) , time: 0.00127410888671875 iter: 2600 , fixed pt res: tensor(0.4316) , ls: 1 , rel_err: tensor(2.5273) , time: 0.0012772083282470703 iter: 2650 , fixed pt res: tensor(0.4303) , ls: 1 , rel_err: tensor(2.5612) , time: 0.0012912750244140625 iter: 2700 , fixed pt res: tensor(0.4467) , ls: 1 , rel_err: tensor(2.4864) , time: 0.0012738704681396484 iter: 2750 , fixed pt res: tensor(0.4455) , ls: 1 , rel_err: tensor(2.5092) , time: 0.001268625259399414 iter: 2800 , fixed pt res: tensor(0.4444) , ls: 1 , rel_err: tensor(2.4727) , time: 0.0013165473937988281 iter: 2850 , fixed pt res: tensor(0.4379) , ls: 1 , rel_err: tensor(2.5988) , time: 0.0015835762023925781 iter: 2900 , fixed pt res: tensor(0.4466) , ls: 1 , rel_err: tensor(2.4992) , time: 0.0012874603271484375 iter: 2950 , fixed pt res: tensor(0.4663) , ls: 1 , rel_err: tensor(2.4649) , time: 0.0013229846954345703 iter: 3000 , fixed pt res: tensor(0.4610) , ls: 1 , rel_err: tensor(2.3884) , time: 0.0015511512756347656 iter: 3050 , fixed pt res: tensor(0.4496) , ls: 1 , rel_err: tensor(2.4362) , time: 0.0012707710266113281 iter: 3100 , fixed pt res: tensor(0.4613) , ls: 1 , rel_err: tensor(2.4918) , time: 0.0012714862823486328 iter: 3150 , fixed pt res: tensor(0.4323) , ls: 1 , rel_err: tensor(2.5321) , time: 0.0016469955444335938 iter: 3200 , fixed pt res: tensor(0.4321) , ls: 1 , rel_err: tensor(2.5537) , time: 0.001306772232055664 iter: 3250 , fixed pt res: tensor(0.4411) , ls: 1 , rel_err: tensor(2.5134) , time: 0.0013120174407958984 iter: 3300 , fixed pt res: tensor(0.4662) , ls: 1 , rel_err: tensor(2.4812) , time: 0.0013124942779541016 iter: 3350 , fixed pt res: tensor(0.4527) , ls: 1 , rel_err: tensor(2.5300) , time: 0.0012688636779785156 iter: 3400 , fixed pt res: tensor(0.4342) , ls: 1 , rel_err: tensor(2.5346) , time: 0.0013089179992675781 iter: 3450 , fixed pt res: tensor(0.4434) , ls: 1 , rel_err: tensor(2.5757) , time: 0.001308441162109375 iter: 3500 , fixed pt res: tensor(0.4403) , ls: 1 , rel_err: tensor(2.5628) , time: 0.0012698173522949219 iter: 3550 , fixed pt res: tensor(0.4538) , ls: 1 , rel_err: tensor(2.5536) , time: 0.0012412071228027344 iter: 3600 , fixed pt res: tensor(0.4477) , ls: 1 , rel_err: tensor(2.5987) , time: 0.001482248306274414 iter: 3650 , fixed pt res: tensor(0.4369) , ls: 1 , rel_err: tensor(2.5586) , time: 0.0013012886047363281 iter: 3700 , fixed pt res: tensor(0.4333) , ls: 1 , rel_err: tensor(2.5921) , time: 0.001262664794921875 iter: 3750 , fixed pt res: tensor(0.4608) , ls: 1 , rel_err: tensor(2.6525) , time: 0.0014340877532958984 iter: 3800 , fixed pt res: tensor(0.4732) , ls: 1 , rel_err: tensor(2.5588) , time: 0.0012569427490234375 iter: 3850 , fixed pt res: tensor(0.4544) , ls: 1 , rel_err: tensor(2.4464) , time: 0.001260995864868164 iter: 3900 , fixed pt res: tensor(0.4411) , ls: 1 , rel_err: tensor(2.4579) , time: 0.0020532608032226562 iter: 3950 , fixed pt res: tensor(0.4562) , ls: 1 , rel_err: tensor(2.4835) , time: 0.0012850761413574219 iter: 4000 , fixed pt res: tensor(0.4672) , ls: 1 , rel_err: tensor(2.5577) , time: 0.0012614727020263672 iter: 4050 , fixed pt res: tensor(0.4457) , ls: 1 , rel_err: tensor(2.6432) , time: 0.0012993812561035156 iter: 4100 , fixed pt res: tensor(0.4429) , ls: 1 , rel_err: tensor(2.6017) , time: 0.0014777183532714844 iter: 4150 , fixed pt res: tensor(0.4509) , ls: 1 , rel_err: tensor(2.6780) , time: 0.0012485980987548828 iter: 4200 , fixed pt res: tensor(0.4659) , ls: 1 , rel_err: tensor(2.7382) , time: 0.0015103816986083984 iter: 4250 , fixed pt res: tensor(0.4457) , ls: 1 , rel_err: tensor(2.8506) , time: 0.0012941360473632812 iter: 4300 , fixed pt res: tensor(0.4542) , ls: 1 , rel_err: tensor(2.8595) , time: 0.0012731552124023438 iter: 4350 , fixed pt res: tensor(0.4522) , ls: 1 , rel_err: tensor(2.7833) , time: 0.0013074874877929688 iter: 4400 , fixed pt res: tensor(0.4330) , ls: 1 , rel_err: tensor(2.7281) , time: 0.0012753009796142578 iter: 4450 , fixed pt res: tensor(0.4533) , ls: 1 , rel_err: tensor(2.6754) , time: 0.0012965202331542969 iter: 4500 , fixed pt res: tensor(0.4516) , ls: 1 , rel_err: tensor(2.7161) , time: 0.0012755393981933594 iter: 4550 , fixed pt res: tensor(0.4267) , ls: 1 , rel_err: tensor(2.6371) , time: 0.001272439956665039 iter: 4600 , fixed pt res: tensor(0.4389) , ls: 1 , rel_err: tensor(2.6671) , time: 0.0013155937194824219 iter: 4650 , fixed pt res: tensor(0.4410) , ls: 1 , rel_err: tensor(2.7035) , time: 0.002562284469604492 iter: 4700 , fixed pt res: tensor(0.4573) , ls: 1 , rel_err: tensor(2.7827) , time: 0.0012750625610351562 iter: 4750 , fixed pt res: tensor(0.4588) , ls: 1 , rel_err: tensor(2.7491) , time: 0.001306295394897461 iter: 4800 , fixed pt res: tensor(0.4312) , ls: 1 , rel_err: tensor(2.7217) , time: 0.001256704330444336 iter: 4850 , fixed pt res: tensor(0.4261) , ls: 1 , rel_err: tensor(2.6792) , time: 0.0013720989227294922 iter: 4900 , fixed pt res: tensor(0.4446) , ls: 1 , rel_err: tensor(2.6511) , time: 0.0012812614440917969 iter: 4950 , fixed pt res: tensor(0.4327) , ls: 1 , rel_err: tensor(2.6247) , time: 0.0013003349304199219 iter: 5000 , fixed pt res: tensor(0.4393) , ls: 1 , rel_err: tensor(2.7084) , time: 0.0012722015380859375 iter: 5050 , fixed pt res: tensor(0.4415) , ls: 1 , rel_err: tensor(2.6556) , time: 0.0012764930725097656 iter: 5100 , fixed pt res: tensor(0.4376) , ls: 1 , rel_err: tensor(2.6374) , time: 0.00128936767578125 iter: 5150 , fixed pt res: tensor(0.4451) , ls: 1 , rel_err: tensor(2.6773) , time: 0.0012967586517333984 iter: 5200 , fixed pt res: tensor(0.4329) , ls: 1 , rel_err: tensor(2.6425) , time: 0.0012586116790771484 iter: 5250 , fixed pt res: tensor(0.4457) , ls: 1 , rel_err: tensor(2.6239) , time: 0.0014810562133789062 iter: 5300 , fixed pt res: tensor(0.4464) , ls: 1 , rel_err: tensor(2.5870) , time: 0.0012464523315429688 iter: 5350 , fixed pt res: tensor(0.4333) , ls: 1 , rel_err: tensor(2.5976) , time: 0.0012700557708740234 iter: 5400 , fixed pt res: tensor(0.4657) , ls: 1 , rel_err: tensor(2.6095) , time: 0.002093791961669922 iter: 5450 , fixed pt res: tensor(0.4228) , ls: 1 , rel_err: tensor(2.6575) , time: 0.0012738704681396484 iter: 5500 , fixed pt res: tensor(0.4472) , ls: 1 , rel_err: tensor(2.6417) , time: 0.001249551773071289 iter: 5550 , fixed pt res: tensor(0.4502) , ls: 1 , rel_err: tensor(2.6688) , time: 0.0013189315795898438 iter: 5600 , fixed pt res: tensor(0.4398) , ls: 1 , rel_err: tensor(2.5957) , time: 0.0012636184692382812 iter: 5650 , fixed pt res: tensor(0.4403) , ls: 1 , rel_err: tensor(2.7314) , time: 0.0015289783477783203 iter: 5700 , fixed pt res: tensor(0.4475) , ls: 1 , rel_err: tensor(2.7141) , time: 0.0012578964233398438 iter: 5750 , fixed pt res: tensor(0.4478) , ls: 1 , rel_err: tensor(2.5837) , time: 0.0012476444244384766 iter: 5800 , fixed pt res: tensor(0.4301) , ls: 1 , rel_err: tensor(2.5068) , time: 0.0012676715850830078 iter: 5850 , fixed pt res: tensor(0.4321) , ls: 1 , rel_err: tensor(2.5192) , time: 0.0021185874938964844 iter: 5900 , fixed pt res: tensor(0.4248) , ls: 1 , rel_err: tensor(2.5974) , time: 0.0012679100036621094 iter: 5950 , fixed pt res: tensor(0.4331) , ls: 1 , rel_err: tensor(2.5246) , time: 0.0012791156768798828 iter: 6000 , fixed pt res: tensor(0.4590) , ls: 1 , rel_err: tensor(2.4553) , time: 0.0012676715850830078 iter: 6050 , fixed pt res: tensor(0.4304) , ls: 1 , rel_err: tensor(2.4796) , time: 0.0013103485107421875 iter: 6100 , fixed pt res: tensor(0.4495) , ls: 1 , rel_err: tensor(2.4144) , time: 0.001794576644897461 iter: 6150 , fixed pt res: tensor(0.4649) , ls: 1 , rel_err: tensor(2.4198) , time: 0.0014438629150390625 iter: 6200 , fixed pt res: tensor(0.4218) , ls: 1 , rel_err: tensor(2.4917) , time: 0.0012674331665039062 iter: 6250 , fixed pt res: tensor(0.4481) , ls: 1 , rel_err: tensor(2.3632) , time: 0.0012516975402832031 iter: 6300 , fixed pt res: tensor(0.4243) , ls: 1 , rel_err: tensor(2.4195) , time: 0.0013699531555175781 iter: 6350 , fixed pt res: tensor(0.4402) , ls: 1 , rel_err: tensor(2.4351) , time: 0.0012640953063964844 iter: 6400 , fixed pt res: tensor(0.4558) , ls: 1 , rel_err: tensor(2.4017) , time: 0.0012509822845458984 iter: 6450 , fixed pt res: tensor(0.4455) , ls: 1 , rel_err: tensor(2.4357) , time: 0.0012545585632324219 iter: 6500 , fixed pt res: tensor(0.4350) , ls: 1 , rel_err: tensor(2.5407) , time: 0.0012562274932861328 iter: 6550 , fixed pt res: tensor(0.4334) , ls: 1 , rel_err: tensor(2.5926) , time: 0.0013165473937988281 iter: 6600 , fixed pt res: tensor(0.4355) , ls: 1 , rel_err: tensor(2.5967) , time: 0.0013005733489990234 iter: 6650 , fixed pt res: tensor(0.4348) , ls: 1 , rel_err: tensor(2.5459) , time: 0.001241922378540039 iter: 6700 , fixed pt res: tensor(0.4418) , ls: 1 , rel_err: tensor(2.4853) , time: 0.0012357234954833984 iter: 6750 , fixed pt res: tensor(0.4555) , ls: 1 , rel_err: tensor(2.4952) , time: 0.002100229263305664 iter: 6800 , fixed pt res: tensor(0.4577) , ls: 1 , rel_err: tensor(2.5541) , time: 0.001260519027709961 iter: 6850 , fixed pt res: tensor(0.4522) , ls: 1 , rel_err: tensor(2.5946) , time: 0.0012519359588623047 iter: 6900 , fixed pt res: tensor(0.4356) , ls: 1 , rel_err: tensor(2.6092) , time: 0.0017650127410888672 iter: 6950 , fixed pt res: tensor(0.4543) , ls: 1 , rel_err: tensor(2.7244) , time: 0.0012505054473876953 iter: 7000 , fixed pt res: tensor(0.4458) , ls: 1 , rel_err: tensor(2.6772) , time: 0.0012483596801757812 iter: 7050 , fixed pt res: tensor(0.4605) , ls: 1 , rel_err: tensor(2.6311) , time: 0.0019910335540771484 iter: 7100 , fixed pt res: tensor(0.4489) , ls: 1 , rel_err: tensor(2.6301) , time: 0.001264333724975586 iter: 7150 , fixed pt res: tensor(0.4489) , ls: 1 , rel_err: tensor(2.6015) , time: 0.0012781620025634766 iter: 7200 , fixed pt res: tensor(0.4505) , ls: 1 , rel_err: tensor(2.5872) , time: 0.0012555122375488281 iter: 7250 , fixed pt res: tensor(0.4641) , ls: 1 , rel_err: tensor(2.5395) , time: 0.0012531280517578125 iter: 7300 , fixed pt res: tensor(0.4527) , ls: 1 , rel_err: tensor(2.5581) , time: 0.001360177993774414 iter: 7350 , fixed pt res: tensor(0.4420) , ls: 1 , rel_err: tensor(2.4711) , time: 0.0014126300811767578 iter: 7400 , fixed pt res: tensor(0.4186) , ls: 1 , rel_err: tensor(2.4286) , time: 0.001264810562133789 iter: 7450 , fixed pt res: tensor(0.4505) , ls: 1 , rel_err: tensor(2.4745) , time: 0.0012433528900146484 iter: 7500 , fixed pt res: tensor(0.4584) , ls: 1 , rel_err: tensor(2.4456) , time: 0.0012326240539550781 iter: 7550 , fixed pt res: tensor(0.4400) , ls: 1 , rel_err: tensor(2.4178) , time: 0.0012383460998535156 iter: 7600 , fixed pt res: tensor(0.4476) , ls: 1 , rel_err: tensor(2.5011) , time: 0.0012450218200683594 iter: 7650 , fixed pt res: tensor(0.4579) , ls: 1 , rel_err: tensor(2.6409) , time: 0.0012357234954833984 iter: 7700 , fixed pt res: tensor(0.4439) , ls: 1 , rel_err: tensor(2.6166) , time: 0.0012264251708984375 iter: 7750 , fixed pt res: tensor(0.4443) , ls: 1 , rel_err: tensor(2.5579) , time: 0.0012443065643310547 iter: 7800 , fixed pt res: tensor(0.4565) , ls: 1 , rel_err: tensor(2.5625) , time: 0.0012531280517578125 iter: 7850 , fixed pt res: tensor(0.4612) , ls: 1 , rel_err: tensor(2.5585) , time: 0.0012328624725341797 iter: 7900 , fixed pt res: tensor(0.4464) , ls: 1 , rel_err: tensor(2.5860) , time: 0.0012888908386230469 iter: 7950 , fixed pt res: tensor(0.4675) , ls: 1 , rel_err: tensor(2.6191) , time: 0.0012793540954589844 iter: 8000 , fixed pt res: tensor(0.4551) , ls: 1 , rel_err: tensor(2.6183) , time: 0.0012764930725097656 iter: 8050 , fixed pt res: tensor(0.4404) , ls: 1 , rel_err: tensor(2.5896) , time: 0.001256704330444336 iter: 8100 , fixed pt res: tensor(0.4297) , ls: 1 , rel_err: tensor(2.5343) , time: 0.001226186752319336 iter: 8150 , fixed pt res: tensor(0.4416) , ls: 1 , rel_err: tensor(2.5102) , time: 0.0018901824951171875 iter: 8200 , fixed pt res: tensor(0.4591) , ls: 1 , rel_err: tensor(2.5327) , time: 0.0012922286987304688 iter: 8250 , fixed pt res: tensor(0.4611) , ls: 1 , rel_err: tensor(2.5747) , time: 0.0012788772583007812 iter: 8300 , fixed pt res: tensor(0.4653) , ls: 1 , rel_err: tensor(2.5335) , time: 0.0013616085052490234 iter: 8350 , fixed pt res: tensor(0.4489) , ls: 1 , rel_err: tensor(2.4418) , time: 0.0012996196746826172 iter: 8400 , fixed pt res: tensor(0.4395) , ls: 1 , rel_err: tensor(2.4722) , time: 0.0012898445129394531 iter: 8450 , fixed pt res: tensor(0.4424) , ls: 1 , rel_err: tensor(2.6027) , time: 0.0013608932495117188 iter: 8500 , fixed pt res: tensor(0.4472) , ls: 1 , rel_err: tensor(2.6112) , time: 0.0013065338134765625 iter: 8550 , fixed pt res: tensor(0.4407) , ls: 1 , rel_err: tensor(2.5731) , time: 0.0012345314025878906 iter: 8600 , fixed pt res: tensor(0.4375) , ls: 1 , rel_err: tensor(2.5217) , time: 0.0013403892517089844 iter: 8650 , fixed pt res: tensor(0.4432) , ls: 1 , rel_err: tensor(2.4493) , time: 0.0012629032135009766 iter: 8700 , fixed pt res: tensor(0.4439) , ls: 1 , rel_err: tensor(2.4075) , time: 0.0012497901916503906 iter: 8750 , fixed pt res: tensor(0.4542) , ls: 1 , rel_err: tensor(2.5005) , time: 0.0014042854309082031 iter: 8800 , fixed pt res: tensor(0.4657) , ls: 1 , rel_err: tensor(2.4351) , time: 0.001285552978515625 iter: 8850 , fixed pt res: tensor(0.4505) , ls: 1 , rel_err: tensor(2.4636) , time: 0.0013206005096435547 iter: 8900 , fixed pt res: tensor(0.4628) , ls: 1 , rel_err: tensor(2.4797) , time: 0.0013439655303955078 iter: 8950 , fixed pt res: tensor(0.4455) , ls: 1 , rel_err: tensor(2.5193) , time: 0.0012857913970947266 iter: 9000 , fixed pt res: tensor(0.4604) , ls: 1 , rel_err: tensor(2.4887) , time: 0.0012402534484863281 iter: 9050 , fixed pt res: tensor(0.4510) , ls: 1 , rel_err: tensor(2.4719) , time: 0.0016787052154541016 iter: 9100 , fixed pt res: tensor(0.4549) , ls: 1 , rel_err: tensor(2.5755) , time: 0.0013275146484375 iter: 9150 , fixed pt res: tensor(0.4400) , ls: 1 , rel_err: tensor(2.5101) , time: 0.0013310909271240234 iter: 9200 , fixed pt res: tensor(0.4531) , ls: 1 , rel_err: tensor(2.5554) , time: 0.001753091812133789 iter: 9250 , fixed pt res: tensor(0.4451) , ls: 1 , rel_err: tensor(2.5776) , time: 0.0015501976013183594 iter: 9300 , fixed pt res: tensor(0.4418) , ls: 1 , rel_err: tensor(2.5312) , time: 0.0012629032135009766 iter: 9350 , fixed pt res: tensor(0.4620) , ls: 1 , rel_err: tensor(2.5556) , time: 0.0012884140014648438 iter: 9400 , fixed pt res: tensor(0.4415) , ls: 1 , rel_err: tensor(2.6350) , time: 0.0013172626495361328 iter: 9450 , fixed pt res: tensor(0.4341) , ls: 1 , rel_err: tensor(2.7121) , time: 0.0012619495391845703 iter: 9500 , fixed pt res: tensor(0.4464) , ls: 1 , rel_err: tensor(2.7205) , time: 0.001325845718383789 iter: 9550 , fixed pt res: tensor(0.4657) , ls: 1 , rel_err: tensor(2.6309) , time: 0.0012462139129638672 iter: 9600 , fixed pt res: tensor(0.4424) , ls: 1 , rel_err: tensor(2.5812) , time: 0.0012547969818115234 iter: 9650 , fixed pt res: tensor(0.4499) , ls: 1 , rel_err: tensor(2.5472) , time: 0.0013298988342285156 iter: 9700 , fixed pt res: tensor(0.4457) , ls: 1 , rel_err: tensor(2.5958) , time: 0.0012683868408203125 iter: 9750 , fixed pt res: tensor(0.4490) , ls: 1 , rel_err: tensor(2.5856) , time: 0.0012929439544677734 iter: 9800 , fixed pt res: tensor(0.4406) , ls: 1 , rel_err: tensor(2.5817) , time: 0.0021517276763916016 iter: 9850 , fixed pt res: tensor(0.4568) , ls: 1 , rel_err: tensor(2.5975) , time: 0.0012955665588378906 iter: 9900 , fixed pt res: tensor(0.4475) , ls: 1 , rel_err: tensor(2.5970) , time: 0.0013790130615234375 iter: 9950 , fixed pt res: tensor(0.4553) , ls: 1 , rel_err: tensor(2.6232) , time: 0.001971006393432617 iter: 10000 , fixed pt res: tensor(0.4416) , ls: 1 , rel_err: tensor(2.7439) , time: 0.0013000965118408203 trial 1 finished after 13.767562627792358 norm(rel_err_hist_temp - rel_err_lmm_hist_sample_array[sample_index,:]) = tensor(0.) Number of Samples = 1000 iter: 50 , fixed pt res: tensor(0.6200) , ls: 1 , rel_err: tensor(15.2804) , time: 0.0013267993927001953 iter: 100 , fixed pt res: tensor(0.2911) , ls: 1 , rel_err: tensor(14.1417) , time: 0.001394510269165039 iter: 150 , fixed pt res: tensor(0.1899) , ls: 1 , rel_err: tensor(13.2434) , time: 0.0013072490692138672 iter: 200 , fixed pt res: tensor(0.1576) , ls: 1 , rel_err: tensor(12.3547) , time: 0.0013120174407958984 iter: 250 , fixed pt res: tensor(0.1532) , ls: 1 , rel_err: tensor(11.5270) , time: 0.0013427734375 iter: 300 , fixed pt res: tensor(0.1436) , ls: 1 , rel_err: tensor(10.7576) , time: 0.0013353824615478516 iter: 350 , fixed pt res: tensor(0.1472) , ls: 1 , rel_err: tensor(10.0357) , time: 0.0013246536254882812 iter: 400 , fixed pt res: tensor(0.1415) , ls: 1 , rel_err: tensor(9.3400) , time: 0.0013191699981689453 iter: 450 , fixed pt res: tensor(0.1464) , ls: 1 , rel_err: tensor(8.6775) , time: 0.0013461112976074219 iter: 500 , fixed pt res: tensor(0.1451) , ls: 1 , rel_err: tensor(8.0616) , time: 0.0013186931610107422 iter: 550 , fixed pt res: tensor(0.1401) , ls: 1 , rel_err: tensor(7.5455) , time: 0.0013468265533447266 iter: 600 , fixed pt res: tensor(0.1464) , ls: 1 , rel_err: tensor(7.0520) , time: 0.0013208389282226562 iter: 650 , fixed pt res: tensor(0.1461) , ls: 1 , rel_err: tensor(6.6107) , time: 0.0013234615325927734 iter: 700 , fixed pt res: tensor(0.1416) , ls: 1 , rel_err: tensor(6.1561) , time: 0.0013158321380615234 iter: 750 , fixed pt res: tensor(0.1482) , ls: 1 , rel_err: tensor(5.7341) , time: 0.0013077259063720703 iter: 800 , fixed pt res: tensor(0.1493) , ls: 1 , rel_err: tensor(5.3443) , time: 0.0013120174407958984 iter: 850 , fixed pt res: tensor(0.1430) , ls: 1 , rel_err: tensor(4.9980) , time: 0.001325845718383789 iter: 900 , fixed pt res: tensor(0.1422) , ls: 1 , rel_err: tensor(4.6833) , time: 0.0013217926025390625 iter: 950 , fixed pt res: tensor(0.1458) , ls: 1 , rel_err: tensor(4.3519) , time: 0.0013098716735839844 iter: 1000 , fixed pt res: tensor(0.1456) , ls: 1 , rel_err: tensor(4.0684) , time: 0.0013206005096435547 iter: 1050 , fixed pt res: tensor(0.1501) , ls: 1 , rel_err: tensor(3.8478) , time: 0.0013120174407958984 iter: 1100 , fixed pt res: tensor(0.1433) , ls: 1 , rel_err: tensor(3.5528) , time: 0.0013175010681152344 iter: 1150 , fixed pt res: tensor(0.1389) , ls: 1 , rel_err: tensor(3.3633) , time: 0.0013332366943359375 iter: 1200 , fixed pt res: tensor(0.1424) , ls: 1 , rel_err: tensor(3.1406) , time: 0.0016374588012695312 iter: 1250 , fixed pt res: tensor(0.1448) , ls: 1 , rel_err: tensor(2.9578) , time: 0.0013070106506347656 iter: 1300 , fixed pt res: tensor(0.1426) , ls: 1 , rel_err: tensor(2.8013) , time: 0.001321554183959961 iter: 1350 , fixed pt res: tensor(0.1404) , ls: 1 , rel_err: tensor(2.6524) , time: 0.0013594627380371094 iter: 1400 , fixed pt res: tensor(0.1420) , ls: 1 , rel_err: tensor(2.4768) , time: 0.0013468265533447266 iter: 1450 , fixed pt res: tensor(0.1411) , ls: 1 , rel_err: tensor(2.3400) , time: 0.0013494491577148438 iter: 1500 , fixed pt res: tensor(0.1338) , ls: 1 , rel_err: tensor(2.1864) , time: 0.0013415813446044922 iter: 1550 , fixed pt res: tensor(0.1412) , ls: 1 , rel_err: tensor(2.0526) , time: 0.0012879371643066406 iter: 1600 , fixed pt res: tensor(0.1430) , ls: 1 , rel_err: tensor(1.9605) , time: 0.0013277530670166016 iter: 1650 , fixed pt res: tensor(0.1379) , ls: 1 , rel_err: tensor(1.8693) , time: 0.0013251304626464844 iter: 1700 , fixed pt res: tensor(0.1475) , ls: 1 , rel_err: tensor(1.7646) , time: 0.0013089179992675781 iter: 1750 , fixed pt res: tensor(0.1407) , ls: 1 , rel_err: tensor(1.6703) , time: 0.0013682842254638672 iter: 1800 , fixed pt res: tensor(0.1371) , ls: 1 , rel_err: tensor(1.5463) , time: 0.0013401508331298828 iter: 1850 , fixed pt res: tensor(0.1418) , ls: 1 , rel_err: tensor(1.4633) , time: 0.0013346672058105469 iter: 1900 , fixed pt res: tensor(0.1449) , ls: 1 , rel_err: tensor(1.3959) , time: 0.001359701156616211 iter: 1950 , fixed pt res: tensor(0.1457) , ls: 1 , rel_err: tensor(1.3546) , time: 0.0013265609741210938 iter: 2000 , fixed pt res: tensor(0.1362) , ls: 1 , rel_err: tensor(1.2826) , time: 0.0013346672058105469 iter: 2050 , fixed pt res: tensor(0.1465) , ls: 1 , rel_err: tensor(1.2340) , time: 0.00138092041015625 iter: 2100 , fixed pt res: tensor(0.1402) , ls: 1 , rel_err: tensor(1.1610) , time: 0.0013661384582519531 iter: 2150 , fixed pt res: tensor(0.1354) , ls: 1 , rel_err: tensor(1.1367) , time: 0.0012798309326171875 iter: 2200 , fixed pt res: tensor(0.1405) , ls: 1 , rel_err: tensor(1.1296) , time: 0.001314401626586914 iter: 2250 , fixed pt res: tensor(0.1388) , ls: 1 , rel_err: tensor(1.0809) , time: 0.0013225078582763672 iter: 2300 , fixed pt res: tensor(0.1445) , ls: 1 , rel_err: tensor(1.0908) , time: 0.0013470649719238281 iter: 2350 , fixed pt res: tensor(0.1458) , ls: 1 , rel_err: tensor(1.0808) , time: 0.0013251304626464844 iter: 2400 , fixed pt res: tensor(0.1373) , ls: 1 , rel_err: tensor(1.0571) , time: 0.0016121864318847656 iter: 2450 , fixed pt res: tensor(0.1444) , ls: 1 , rel_err: tensor(1.0480) , time: 0.0013060569763183594 iter: 2500 , fixed pt res: tensor(0.1383) , ls: 1 , rel_err: tensor(1.0257) , time: 0.0013158321380615234 iter: 2550 , fixed pt res: tensor(0.1422) , ls: 1 , rel_err: tensor(0.9971) , time: 0.0013117790222167969 iter: 2600 , fixed pt res: tensor(0.1411) , ls: 1 , rel_err: tensor(0.9783) , time: 0.001316070556640625 iter: 2650 , fixed pt res: tensor(0.1514) , ls: 1 , rel_err: tensor(0.9526) , time: 0.0013360977172851562 iter: 2700 , fixed pt res: tensor(0.1430) , ls: 1 , rel_err: tensor(0.9029) , time: 0.001321554183959961 iter: 2750 , fixed pt res: tensor(0.1389) , ls: 1 , rel_err: tensor(0.8754) , time: 0.0013165473937988281 iter: 2800 , fixed pt res: tensor(0.1417) , ls: 1 , rel_err: tensor(0.8571) , time: 0.0013239383697509766 iter: 2850 , fixed pt res: tensor(0.1427) , ls: 1 , rel_err: tensor(0.8450) , time: 0.0015385150909423828 iter: 2900 , fixed pt res: tensor(0.1392) , ls: 1 , rel_err: tensor(0.8497) , time: 0.0013189315795898438 iter: 2950 , fixed pt res: tensor(0.1374) , ls: 1 , rel_err: tensor(0.8491) , time: 0.0013012886047363281 iter: 3000 , fixed pt res: tensor(0.1415) , ls: 1 , rel_err: tensor(0.8551) , time: 0.0013537406921386719 iter: 3050 , fixed pt res: tensor(0.1446) , ls: 1 , rel_err: tensor(0.8554) , time: 0.0013756752014160156 iter: 3100 , fixed pt res: tensor(0.1413) , ls: 1 , rel_err: tensor(0.8232) , time: 0.0013523101806640625 iter: 3150 , fixed pt res: tensor(0.1374) , ls: 1 , rel_err: tensor(0.7949) , time: 0.0013320446014404297 iter: 3200 , fixed pt res: tensor(0.1393) , ls: 1 , rel_err: tensor(0.8140) , time: 0.0013515949249267578 iter: 3250 , fixed pt res: tensor(0.1373) , ls: 1 , rel_err: tensor(0.7867) , time: 0.0013611316680908203 iter: 3300 , fixed pt res: tensor(0.1399) , ls: 1 , rel_err: tensor(0.7978) , time: 0.0013480186462402344 iter: 3350 , fixed pt res: tensor(0.1426) , ls: 1 , rel_err: tensor(0.7789) , time: 0.0013136863708496094 iter: 3400 , fixed pt res: tensor(0.1410) , ls: 1 , rel_err: tensor(0.7430) , time: 0.0014259815216064453 iter: 3450 , fixed pt res: tensor(0.1390) , ls: 1 , rel_err: tensor(0.7700) , time: 0.001317739486694336 iter: 3500 , fixed pt res: tensor(0.1388) , ls: 1 , rel_err: tensor(0.7716) , time: 0.0013110637664794922 iter: 3550 , fixed pt res: tensor(0.1428) , ls: 1 , rel_err: tensor(0.7730) , time: 0.0013706684112548828 iter: 3600 , fixed pt res: tensor(0.1406) , ls: 1 , rel_err: tensor(0.7427) , time: 0.0013256072998046875 iter: 3650 , fixed pt res: tensor(0.1371) , ls: 1 , rel_err: tensor(0.7262) , time: 0.001313924789428711 iter: 3700 , fixed pt res: tensor(0.1399) , ls: 1 , rel_err: tensor(0.7157) , time: 0.0013587474822998047 iter: 3750 , fixed pt res: tensor(0.1349) , ls: 1 , rel_err: tensor(0.7001) , time: 0.0013885498046875 iter: 3800 , fixed pt res: tensor(0.1397) , ls: 1 , rel_err: tensor(0.7020) , time: 0.001420736312866211 iter: 3850 , fixed pt res: tensor(0.1456) , ls: 1 , rel_err: tensor(0.7235) , time: 0.0013663768768310547 iter: 3900 , fixed pt res: tensor(0.1397) , ls: 1 , rel_err: tensor(0.7402) , time: 0.0013508796691894531 iter: 3950 , fixed pt res: tensor(0.1425) , ls: 1 , rel_err: tensor(0.7389) , time: 0.0018417835235595703 iter: 4000 , fixed pt res: tensor(0.1436) , ls: 1 , rel_err: tensor(0.7703) , time: 0.0014348030090332031 iter: 4050 , fixed pt res: tensor(0.1337) , ls: 1 , rel_err: tensor(0.7420) , time: 0.0013256072998046875 iter: 4100 , fixed pt res: tensor(0.1397) , ls: 1 , rel_err: tensor(0.7171) , time: 0.0014235973358154297 iter: 4150 , fixed pt res: tensor(0.1453) , ls: 1 , rel_err: tensor(0.7282) , time: 0.0013887882232666016 iter: 4200 , fixed pt res: tensor(0.1385) , ls: 1 , rel_err: tensor(0.7112) , time: 0.0013659000396728516 iter: 4250 , fixed pt res: tensor(0.1352) , ls: 1 , rel_err: tensor(0.7160) , time: 0.0013580322265625 iter: 4300 , fixed pt res: tensor(0.1392) , ls: 1 , rel_err: tensor(0.7100) , time: 0.0013353824615478516 iter: 4350 , fixed pt res: tensor(0.1354) , ls: 1 , rel_err: tensor(0.6963) , time: 0.001379251480102539 iter: 4400 , fixed pt res: tensor(0.1355) , ls: 1 , rel_err: tensor(0.7218) , time: 0.0014262199401855469 iter: 4450 , fixed pt res: tensor(0.1435) , ls: 1 , rel_err: tensor(0.7312) , time: 0.0013265609741210938 iter: 4500 , fixed pt res: tensor(0.1412) , ls: 1 , rel_err: tensor(0.7417) , time: 0.001306295394897461 iter: 4550 , fixed pt res: tensor(0.1381) , ls: 1 , rel_err: tensor(0.7293) , time: 0.001348257064819336 iter: 4600 , fixed pt res: tensor(0.1438) , ls: 1 , rel_err: tensor(0.7312) , time: 0.0012989044189453125 iter: 4650 , fixed pt res: tensor(0.1411) , ls: 1 , rel_err: tensor(0.7336) , time: 0.001322031021118164 iter: 4700 , fixed pt res: tensor(0.1406) , ls: 1 , rel_err: tensor(0.7303) , time: 0.0013480186462402344 iter: 4750 , fixed pt res: tensor(0.1405) , ls: 1 , rel_err: tensor(0.7269) , time: 0.0015642642974853516 iter: 4800 , fixed pt res: tensor(0.1401) , ls: 1 , rel_err: tensor(0.7372) , time: 0.0012898445129394531 iter: 4850 , fixed pt res: tensor(0.1392) , ls: 1 , rel_err: tensor(0.7530) , time: 0.0013241767883300781 iter: 4900 , fixed pt res: tensor(0.1426) , ls: 1 , rel_err: tensor(0.7443) , time: 0.0013282299041748047 iter: 4950 , fixed pt res: tensor(0.1415) , ls: 1 , rel_err: tensor(0.7270) , time: 0.0013480186462402344 iter: 5000 , fixed pt res: tensor(0.1400) , ls: 1 , rel_err: tensor(0.7463) , time: 0.002387523651123047 iter: 5050 , fixed pt res: tensor(0.1389) , ls: 1 , rel_err: tensor(0.7224) , time: 0.001508951187133789 iter: 5100 , fixed pt res: tensor(0.1411) , ls: 1 , rel_err: tensor(0.7328) , time: 0.0013210773468017578 iter: 5150 , fixed pt res: tensor(0.1442) , ls: 1 , rel_err: tensor(0.7383) , time: 0.0013167858123779297 iter: 5200 , fixed pt res: tensor(0.1433) , ls: 1 , rel_err: tensor(0.7134) , time: 0.0013079643249511719 iter: 5250 , fixed pt res: tensor(0.1407) , ls: 1 , rel_err: tensor(0.7117) , time: 0.0013206005096435547 iter: 5300 , fixed pt res: tensor(0.1411) , ls: 1 , rel_err: tensor(0.7247) , time: 0.001340627670288086 iter: 5350 , fixed pt res: tensor(0.1418) , ls: 1 , rel_err: tensor(0.7424) , time: 0.0013110637664794922 iter: 5400 , fixed pt res: tensor(0.1416) , ls: 1 , rel_err: tensor(0.7371) , time: 0.0013244152069091797 iter: 5450 , fixed pt res: tensor(0.1425) , ls: 1 , rel_err: tensor(0.7402) , time: 0.0013208389282226562 iter: 5500 , fixed pt res: tensor(0.1421) , ls: 1 , rel_err: tensor(0.7102) , time: 0.0013213157653808594 iter: 5550 , fixed pt res: tensor(0.1387) , ls: 1 , rel_err: tensor(0.7229) , time: 0.0013065338134765625 iter: 5600 , fixed pt res: tensor(0.1406) , ls: 1 , rel_err: tensor(0.6984) , time: 0.001306772232055664 iter: 5650 , fixed pt res: tensor(0.1352) , ls: 1 , rel_err: tensor(0.6988) , time: 0.001354217529296875 iter: 5700 , fixed pt res: tensor(0.1405) , ls: 1 , rel_err: tensor(0.7207) , time: 0.0013785362243652344 iter: 5750 , fixed pt res: tensor(0.1384) , ls: 1 , rel_err: tensor(0.7091) , time: 0.0013396739959716797 iter: 5800 , fixed pt res: tensor(0.1351) , ls: 1 , rel_err: tensor(0.7164) , time: 0.001318216323852539 iter: 5850 , fixed pt res: tensor(0.1448) , ls: 1 , rel_err: tensor(0.7072) , time: 0.0013074874877929688 iter: 5900 , fixed pt res: tensor(0.1397) , ls: 1 , rel_err: tensor(0.7139) , time: 0.0013289451599121094 iter: 5950 , fixed pt res: tensor(0.1380) , ls: 1 , rel_err: tensor(0.7105) , time: 0.0013780593872070312 iter: 6000 , fixed pt res: tensor(0.1332) , ls: 1 , rel_err: tensor(0.7013) , time: 0.0013089179992675781 iter: 6050 , fixed pt res: tensor(0.1376) , ls: 1 , rel_err: tensor(0.7175) , time: 0.0012922286987304688 iter: 6100 , fixed pt res: tensor(0.1384) , ls: 1 , rel_err: tensor(0.7122) , time: 0.0013475418090820312 iter: 6150 , fixed pt res: tensor(0.1434) , ls: 1 , rel_err: tensor(0.7273) , time: 0.0012962818145751953 iter: 6200 , fixed pt res: tensor(0.1402) , ls: 1 , rel_err: tensor(0.7510) , time: 0.001360177993774414 iter: 6250 , fixed pt res: tensor(0.1441) , ls: 1 , rel_err: tensor(0.7371) , time: 0.001276254653930664 iter: 6300 , fixed pt res: tensor(0.1403) , ls: 1 , rel_err: tensor(0.7318) , time: 0.0013804435729980469 iter: 6350 , fixed pt res: tensor(0.1406) , ls: 1 , rel_err: tensor(0.7090) , time: 0.0012996196746826172 iter: 6400 , fixed pt res: tensor(0.1324) , ls: 1 , rel_err: tensor(0.7121) , time: 0.001295328140258789 iter: 6450 , fixed pt res: tensor(0.1376) , ls: 1 , rel_err: tensor(0.7380) , time: 0.0013594627380371094 iter: 6500 , fixed pt res: tensor(0.1328) , ls: 1 , rel_err: tensor(0.7118) , time: 0.001314401626586914 iter: 6550 , fixed pt res: tensor(0.1424) , ls: 1 , rel_err: tensor(0.6888) , time: 0.0013668537139892578 iter: 6600 , fixed pt res: tensor(0.1386) , ls: 1 , rel_err: tensor(0.6796) , time: 0.0013508796691894531 iter: 6650 , fixed pt res: tensor(0.1440) , ls: 1 , rel_err: tensor(0.6752) , time: 0.0013365745544433594 iter: 6700 , fixed pt res: tensor(0.1395) , ls: 1 , rel_err: tensor(0.6984) , time: 0.0013523101806640625 iter: 6750 , fixed pt res: tensor(0.1383) , ls: 1 , rel_err: tensor(0.6993) , time: 0.0013263225555419922 iter: 6800 , fixed pt res: tensor(0.1401) , ls: 1 , rel_err: tensor(0.6909) , time: 0.0013306140899658203 iter: 6850 , fixed pt res: tensor(0.1416) , ls: 1 , rel_err: tensor(0.6914) , time: 0.0013840198516845703 iter: 6900 , fixed pt res: tensor(0.1435) , ls: 1 , rel_err: tensor(0.6869) , time: 0.0013513565063476562 iter: 6950 , fixed pt res: tensor(0.1434) , ls: 1 , rel_err: tensor(0.7111) , time: 0.0012936592102050781 iter: 7000 , fixed pt res: tensor(0.1376) , ls: 1 , rel_err: tensor(0.6947) , time: 0.0013315677642822266 iter: 7050 , fixed pt res: tensor(0.1412) , ls: 1 , rel_err: tensor(0.6983) , time: 0.0012993812561035156 iter: 7100 , fixed pt res: tensor(0.1369) , ls: 1 , rel_err: tensor(0.7071) , time: 0.0013473033905029297 iter: 7150 , fixed pt res: tensor(0.1388) , ls: 1 , rel_err: tensor(0.7188) , time: 0.0013604164123535156 iter: 7200 , fixed pt res: tensor(0.1369) , ls: 1 , rel_err: tensor(0.7448) , time: 0.0013170242309570312 iter: 7250 , fixed pt res: tensor(0.1319) , ls: 1 , rel_err: tensor(0.7368) , time: 0.0013206005096435547 iter: 7300 , fixed pt res: tensor(0.1384) , ls: 1 , rel_err: tensor(0.7549) , time: 0.0013265609741210938 iter: 7350 , fixed pt res: tensor(0.1407) , ls: 1 , rel_err: tensor(0.7553) , time: 0.0013527870178222656 iter: 7400 , fixed pt res: tensor(0.1432) , ls: 1 , rel_err: tensor(0.7565) , time: 0.0013544559478759766 iter: 7450 , fixed pt res: tensor(0.1406) , ls: 1 , rel_err: tensor(0.7565) , time: 0.0013697147369384766 iter: 7500 , fixed pt res: tensor(0.1371) , ls: 1 , rel_err: tensor(0.7860) , time: 0.0013203620910644531 iter: 7550 , fixed pt res: tensor(0.1376) , ls: 1 , rel_err: tensor(0.7820) , time: 0.0013303756713867188 iter: 7600 , fixed pt res: tensor(0.1436) , ls: 1 , rel_err: tensor(0.7663) , time: 0.0013909339904785156 iter: 7650 , fixed pt res: tensor(0.1442) , ls: 1 , rel_err: tensor(0.7851) , time: 0.0013649463653564453 iter: 7700 , fixed pt res: tensor(0.1420) , ls: 1 , rel_err: tensor(0.7762) , time: 0.0013232231140136719 iter: 7750 , fixed pt res: tensor(0.1393) , ls: 1 , rel_err: tensor(0.7632) , time: 0.0013110637664794922 iter: 7800 , fixed pt res: tensor(0.1449) , ls: 1 , rel_err: tensor(0.7567) , time: 0.0013320446014404297 iter: 7850 , fixed pt res: tensor(0.1384) , ls: 1 , rel_err: tensor(0.7296) , time: 0.001306772232055664 iter: 7900 , fixed pt res: tensor(0.1419) , ls: 1 , rel_err: tensor(0.7354) , time: 0.0013387203216552734 iter: 7950 , fixed pt res: tensor(0.1383) , ls: 1 , rel_err: tensor(0.7613) , time: 0.0013384819030761719 iter: 8000 , fixed pt res: tensor(0.1419) , ls: 1 , rel_err: tensor(0.7467) , time: 0.0013229846954345703 iter: 8050 , fixed pt res: tensor(0.1452) , ls: 1 , rel_err: tensor(0.7224) , time: 0.0013377666473388672 iter: 8100 , fixed pt res: tensor(0.1356) , ls: 1 , rel_err: tensor(0.7609) , time: 0.0013251304626464844 iter: 8150 , fixed pt res: tensor(0.1378) , ls: 1 , rel_err: tensor(0.7480) , time: 0.0013353824615478516 iter: 8200 , fixed pt res: tensor(0.1463) , ls: 1 , rel_err: tensor(0.7545) , time: 0.001306772232055664 iter: 8250 , fixed pt res: tensor(0.1358) , ls: 1 , rel_err: tensor(0.7275) , time: 0.0013210773468017578 iter: 8300 , fixed pt res: tensor(0.1417) , ls: 1 , rel_err: tensor(0.7226) , time: 0.0013229846954345703 iter: 8350 , fixed pt res: tensor(0.1443) , ls: 1 , rel_err: tensor(0.7175) , time: 0.0012788772583007812 iter: 8400 , fixed pt res: tensor(0.1343) , ls: 1 , rel_err: tensor(0.6982) , time: 0.001321554183959961 iter: 8450 , fixed pt res: tensor(0.1443) , ls: 1 , rel_err: tensor(0.6652) , time: 0.0013155937194824219 iter: 8500 , fixed pt res: tensor(0.1454) , ls: 1 , rel_err: tensor(0.6660) , time: 0.0013110637664794922 iter: 8550 , fixed pt res: tensor(0.1424) , ls: 1 , rel_err: tensor(0.6580) , time: 0.001312255859375 iter: 8600 , fixed pt res: tensor(0.1389) , ls: 1 , rel_err: tensor(0.6790) , time: 0.0013172626495361328 iter: 8650 , fixed pt res: tensor(0.1384) , ls: 1 , rel_err: tensor(0.6680) , time: 0.0013356208801269531 iter: 8700 , fixed pt res: tensor(0.1440) , ls: 1 , rel_err: tensor(0.6871) , time: 0.0013518333435058594 iter: 8750 , fixed pt res: tensor(0.1415) , ls: 1 , rel_err: tensor(0.6838) , time: 0.001293182373046875 iter: 8800 , fixed pt res: tensor(0.1370) , ls: 1 , rel_err: tensor(0.7017) , time: 0.0013251304626464844 iter: 8850 , fixed pt res: tensor(0.1383) , ls: 1 , rel_err: tensor(0.6953) , time: 0.001463174819946289 iter: 8900 , fixed pt res: tensor(0.1370) , ls: 1 , rel_err: tensor(0.6880) , time: 0.0013523101806640625 iter: 8950 , fixed pt res: tensor(0.1372) , ls: 1 , rel_err: tensor(0.7067) , time: 0.0013394355773925781 iter: 9000 , fixed pt res: tensor(0.1405) , ls: 1 , rel_err: tensor(0.6999) , time: 0.0013720989227294922 iter: 9050 , fixed pt res: tensor(0.1458) , ls: 1 , rel_err: tensor(0.7255) , time: 0.0013670921325683594 iter: 9100 , fixed pt res: tensor(0.1417) , ls: 1 , rel_err: tensor(0.7175) , time: 0.001369476318359375 iter: 9150 , fixed pt res: tensor(0.1353) , ls: 1 , rel_err: tensor(0.7578) , time: 0.0013086795806884766 iter: 9200 , fixed pt res: tensor(0.1428) , ls: 1 , rel_err: tensor(0.7319) , time: 0.0013167858123779297 iter: 9250 , fixed pt res: tensor(0.1454) , ls: 1 , rel_err: tensor(0.7346) , time: 0.00135040283203125 iter: 9300 , fixed pt res: tensor(0.1510) , ls: 1 , rel_err: tensor(0.7130) , time: 0.0013244152069091797 iter: 9350 , fixed pt res: tensor(0.1436) , ls: 1 , rel_err: tensor(0.7370) , time: 0.0013294219970703125 iter: 9400 , fixed pt res: tensor(0.1460) , ls: 1 , rel_err: tensor(0.7486) , time: 0.0013434886932373047 iter: 9450 , fixed pt res: tensor(0.1476) , ls: 1 , rel_err: tensor(0.7702) , time: 0.0013148784637451172 iter: 9500 , fixed pt res: tensor(0.1363) , ls: 1 , rel_err: tensor(0.7755) , time: 0.0013265609741210938 iter: 9550 , fixed pt res: tensor(0.1386) , ls: 1 , rel_err: tensor(0.8153) , time: 0.0013353824615478516 iter: 9600 , fixed pt res: tensor(0.1428) , ls: 1 , rel_err: tensor(0.8055) , time: 0.0013208389282226562 iter: 9650 , fixed pt res: tensor(0.1402) , ls: 1 , rel_err: tensor(0.8265) , time: 0.0013794898986816406 iter: 9700 , fixed pt res: tensor(0.1369) , ls: 1 , rel_err: tensor(0.8177) , time: 0.00130462646484375 iter: 9750 , fixed pt res: tensor(0.1397) , ls: 1 , rel_err: tensor(0.8112) , time: 0.0013453960418701172 iter: 9800 , fixed pt res: tensor(0.1359) , ls: 1 , rel_err: tensor(0.7822) , time: 0.0012867450714111328 iter: 9850 , fixed pt res: tensor(0.1455) , ls: 1 , rel_err: tensor(0.7920) , time: 0.0013346672058105469 iter: 9900 , fixed pt res: tensor(0.1358) , ls: 1 , rel_err: tensor(0.7939) , time: 0.0013093948364257812 iter: 9950 , fixed pt res: tensor(0.1455) , ls: 1 , rel_err: tensor(0.7798) , time: 0.0013077259063720703 iter: 10000 , fixed pt res: tensor(0.1357) , ls: 1 , rel_err: tensor(0.7740) , time: 0.0013074874877929688 trial 1 finished after 14.293195247650146 norm(rel_err_hist_temp - rel_err_lmm_hist_sample_array[sample_index,:]) = tensor(0.) Number of Samples = 10000 iter: 50 , fixed pt res: tensor(0.5998) , ls: 1 , rel_err: tensor(15.2757) , time: 0.0027074813842773438 iter: 100 , fixed pt res: tensor(0.2594) , ls: 1 , rel_err: tensor(14.1686) , time: 0.0026099681854248047 iter: 150 , fixed pt res: tensor(0.1279) , ls: 1 , rel_err: tensor(13.2236) , time: 0.002675771713256836 iter: 200 , fixed pt res: tensor(0.0737) , ls: 1 , rel_err: tensor(12.3519) , time: 0.0026006698608398438 iter: 250 , fixed pt res: tensor(0.0603) , ls: 1 , rel_err: tensor(11.5406) , time: 0.0026094913482666016 iter: 300 , fixed pt res: tensor(0.0584) , ls: 1 , rel_err: tensor(10.7629) , time: 0.0026221275329589844 iter: 350 , fixed pt res: tensor(0.0541) , ls: 1 , rel_err: tensor(10.0456) , time: 0.0026645660400390625 iter: 400 , fixed pt res: tensor(0.0505) , ls: 1 , rel_err: tensor(9.3683) , time: 0.0026504993438720703 iter: 450 , fixed pt res: tensor(0.0519) , ls: 1 , rel_err: tensor(8.7420) , time: 0.002627849578857422 iter: 500 , fixed pt res: tensor(0.0506) , ls: 1 , rel_err: tensor(8.1479) , time: 0.0025856494903564453 iter: 550 , fixed pt res: tensor(0.0503) , ls: 1 , rel_err: tensor(7.5810) , time: 0.002635955810546875 iter: 600 , fixed pt res: tensor(0.0478) , ls: 1 , rel_err: tensor(7.0501) , time: 0.0025839805603027344 iter: 650 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(6.5615) , time: 0.002607583999633789 iter: 700 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(6.1033) , time: 0.002591848373413086 iter: 750 , fixed pt res: tensor(0.0472) , ls: 1 , rel_err: tensor(5.6785) , time: 0.0026273727416992188 iter: 800 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(5.2926) , time: 0.0025899410247802734 iter: 850 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(4.9309) , time: 0.002669811248779297 iter: 900 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(4.5934) , time: 0.0026297569274902344 iter: 950 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(4.2891) , time: 0.002602815628051758 iter: 1000 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(4.0050) , time: 0.0025856494903564453 iter: 1050 , fixed pt res: tensor(0.0463) , ls: 1 , rel_err: tensor(3.7418) , time: 0.002600431442260742 iter: 1100 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(3.4833) , time: 0.0026674270629882812 iter: 1150 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(3.2542) , time: 0.0025968551635742188 iter: 1200 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(3.0267) , time: 0.0026426315307617188 iter: 1250 , fixed pt res: tensor(0.0428) , ls: 1 , rel_err: tensor(2.8332) , time: 0.0026497840881347656 iter: 1300 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(2.6491) , time: 0.0026335716247558594 iter: 1350 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(2.4943) , time: 0.0026102066040039062 iter: 1400 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(2.3482) , time: 0.002626180648803711 iter: 1450 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(2.1982) , time: 0.0025713443756103516 iter: 1500 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(2.0771) , time: 0.002585172653198242 iter: 1550 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(1.9496) , time: 0.002601146697998047 iter: 1600 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(1.8299) , time: 0.002844095230102539 iter: 1650 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(1.7146) , time: 0.002629995346069336 iter: 1700 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(1.6179) , time: 0.0026674270629882812 iter: 1750 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(1.5289) , time: 0.0026276111602783203 iter: 1800 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(1.4434) , time: 0.0029823780059814453 iter: 1850 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(1.3554) , time: 0.0026099681854248047 iter: 1900 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(1.2854) , time: 0.002686023712158203 iter: 1950 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(1.2185) , time: 0.0026140213012695312 iter: 2000 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(1.1540) , time: 0.002638578414916992 iter: 2050 , fixed pt res: tensor(0.0430) , ls: 1 , rel_err: tensor(1.0946) , time: 0.002608060836791992 iter: 2100 , fixed pt res: tensor(0.0458) , ls: 1 , rel_err: tensor(1.0330) , time: 0.00270843505859375 iter: 2150 , fixed pt res: tensor(0.0421) , ls: 1 , rel_err: tensor(0.9753) , time: 0.002655506134033203 iter: 2200 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.9208) , time: 0.002630949020385742 iter: 2250 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.8866) , time: 0.0026464462280273438 iter: 2300 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.8417) , time: 0.0026397705078125 iter: 2350 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.8105) , time: 0.002640962600708008 iter: 2400 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.7749) , time: 0.0026361942291259766 iter: 2450 , fixed pt res: tensor(0.0456) , ls: 1 , rel_err: tensor(0.7270) , time: 0.002605915069580078 iter: 2500 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.6931) , time: 0.0027260780334472656 iter: 2550 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.6712) , time: 0.0026073455810546875 iter: 2600 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.6482) , time: 0.0026667118072509766 iter: 2650 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.6209) , time: 0.0026335716247558594 iter: 2700 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.5894) , time: 0.0026459693908691406 iter: 2750 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.5727) , time: 0.0026636123657226562 iter: 2800 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.5474) , time: 0.0026328563690185547 iter: 2850 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.5290) , time: 0.0026111602783203125 iter: 2900 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.5104) , time: 0.002604961395263672 iter: 2950 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.4945) , time: 0.002595186233520508 iter: 3000 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.4735) , time: 0.002607107162475586 iter: 3050 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.4701) , time: 0.0026390552520751953 iter: 3100 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.4575) , time: 0.0027000904083251953 iter: 3150 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.4560) , time: 0.002655506134033203 iter: 3200 , fixed pt res: tensor(0.0429) , ls: 1 , rel_err: tensor(0.4378) , time: 0.0026350021362304688 iter: 3250 , fixed pt res: tensor(0.0468) , ls: 1 , rel_err: tensor(0.4312) , time: 0.0026488304138183594 iter: 3300 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.4260) , time: 0.002607583999633789 iter: 3350 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.4119) , time: 0.002643585205078125 iter: 3400 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.4009) , time: 0.0026383399963378906 iter: 3450 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.4003) , time: 0.002610921859741211 iter: 3500 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.3972) , time: 0.0026311874389648438 iter: 3550 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.3895) , time: 0.002611398696899414 iter: 3600 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.3673) , time: 0.0025801658630371094 iter: 3650 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.3589) , time: 0.002653837203979492 iter: 3700 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.3513) , time: 0.002604961395263672 iter: 3750 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.3462) , time: 0.00260162353515625 iter: 3800 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.3258) , time: 0.002612590789794922 iter: 3850 , fixed pt res: tensor(0.0466) , ls: 1 , rel_err: tensor(0.3177) , time: 0.0026407241821289062 iter: 3900 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.3112) , time: 0.0027043819427490234 iter: 3950 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.3034) , time: 0.0026886463165283203 iter: 4000 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.3008) , time: 0.002656698226928711 iter: 4050 , fixed pt res: tensor(0.0429) , ls: 1 , rel_err: tensor(0.2942) , time: 0.0026063919067382812 iter: 4100 , fixed pt res: tensor(0.0462) , ls: 1 , rel_err: tensor(0.2901) , time: 0.002576112747192383 iter: 4150 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2870) , time: 0.002616405487060547 iter: 4200 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2925) , time: 0.0025975704193115234 iter: 4250 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2890) , time: 0.002580404281616211 iter: 4300 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2853) , time: 0.0026237964630126953 iter: 4350 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2807) , time: 0.0026149749755859375 iter: 4400 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2652) , time: 0.002762317657470703 iter: 4450 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2658) , time: 0.0026183128356933594 iter: 4500 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2650) , time: 0.0026106834411621094 iter: 4550 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2632) , time: 0.0026085376739501953 iter: 4600 , fixed pt res: tensor(0.0426) , ls: 1 , rel_err: tensor(0.2559) , time: 0.002616405487060547 iter: 4650 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2557) , time: 0.0026111602783203125 iter: 4700 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2527) , time: 0.0027801990509033203 iter: 4750 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2439) , time: 0.0026085376739501953 iter: 4800 , fixed pt res: tensor(0.0438) , ls: 1 , rel_err: tensor(0.2454) , time: 0.0027692317962646484 iter: 4850 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2379) , time: 0.0026547908782958984 iter: 4900 , fixed pt res: tensor(0.0420) , ls: 1 , rel_err: tensor(0.2425) , time: 0.002617359161376953 iter: 4950 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2371) , time: 0.0026412010192871094 iter: 5000 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2339) , time: 0.0026237964630126953 iter: 5050 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2248) , time: 0.0026144981384277344 iter: 5100 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2118) , time: 0.002590179443359375 iter: 5150 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2202) , time: 0.0026094913482666016 iter: 5200 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2171) , time: 0.002602100372314453 iter: 5250 , fixed pt res: tensor(0.0436) , ls: 1 , rel_err: tensor(0.2239) , time: 0.0026252269744873047 iter: 5300 , fixed pt res: tensor(0.0428) , ls: 1 , rel_err: tensor(0.2304) , time: 0.0026252269744873047 iter: 5350 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2316) , time: 0.0027251243591308594 iter: 5400 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2359) , time: 0.0026140213012695312 iter: 5450 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.2331) , time: 0.0025742053985595703 iter: 5500 , fixed pt res: tensor(0.0427) , ls: 1 , rel_err: tensor(0.2311) , time: 0.002604246139526367 iter: 5550 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2384) , time: 0.002608060836791992 iter: 5600 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2446) , time: 0.002630949020385742 iter: 5650 , fixed pt res: tensor(0.0475) , ls: 1 , rel_err: tensor(0.2419) , time: 0.002635955810546875 iter: 5700 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.2349) , time: 0.0026977062225341797 iter: 5750 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2445) , time: 0.0026857852935791016 iter: 5800 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2331) , time: 0.0026388168334960938 iter: 5850 , fixed pt res: tensor(0.0459) , ls: 1 , rel_err: tensor(0.2479) , time: 0.0027358531951904297 iter: 5900 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2453) , time: 0.0026693344116210938 iter: 5950 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2445) , time: 0.002724885940551758 iter: 6000 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2450) , time: 0.002702474594116211 iter: 6050 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2435) , time: 0.0026938915252685547 iter: 6100 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2424) , time: 0.002642393112182617 iter: 6150 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2368) , time: 0.002652883529663086 iter: 6200 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2373) , time: 0.002664804458618164 iter: 6250 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2439) , time: 0.0026662349700927734 iter: 6300 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2335) , time: 0.002669095993041992 iter: 6350 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2266) , time: 0.0026252269744873047 iter: 6400 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2422) , time: 0.0026700496673583984 iter: 6450 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2494) , time: 0.002619028091430664 iter: 6500 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2411) , time: 0.002673625946044922 iter: 6550 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2380) , time: 0.0026128292083740234 iter: 6600 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2402) , time: 0.0026497840881347656 iter: 6650 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2401) , time: 0.002610921859741211 iter: 6700 , fixed pt res: tensor(0.0461) , ls: 1 , rel_err: tensor(0.2256) , time: 0.0026390552520751953 iter: 6750 , fixed pt res: tensor(0.0429) , ls: 1 , rel_err: tensor(0.2239) , time: 0.002607107162475586 iter: 6800 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2263) , time: 0.002607583999633789 iter: 6850 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2380) , time: 0.002641916275024414 iter: 6900 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2354) , time: 0.0027132034301757812 iter: 6950 , fixed pt res: tensor(0.0434) , ls: 1 , rel_err: tensor(0.2344) , time: 0.0027217864990234375 iter: 7000 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2373) , time: 0.002673625946044922 iter: 7050 , fixed pt res: tensor(0.0425) , ls: 1 , rel_err: tensor(0.2289) , time: 0.002610921859741211 iter: 7100 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.2301) , time: 0.002599477767944336 iter: 7150 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2306) , time: 0.002654552459716797 iter: 7200 , fixed pt res: tensor(0.0465) , ls: 1 , rel_err: tensor(0.2249) , time: 0.002593994140625 iter: 7250 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2225) , time: 0.0026268959045410156 iter: 7300 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2336) , time: 0.0026633739471435547 iter: 7350 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2387) , time: 0.0026025772094726562 iter: 7400 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.2361) , time: 0.0027959346771240234 iter: 7450 , fixed pt res: tensor(0.0447) , ls: 1 , rel_err: tensor(0.2402) , time: 0.0026085376739501953 iter: 7500 , fixed pt res: tensor(0.0437) , ls: 1 , rel_err: tensor(0.2379) , time: 0.002661466598510742 iter: 7550 , fixed pt res: tensor(0.0419) , ls: 1 , rel_err: tensor(0.2360) , time: 0.0026352405548095703 iter: 7600 , fixed pt res: tensor(0.0429) , ls: 1 , rel_err: tensor(0.2377) , time: 0.0026412010192871094 iter: 7650 , fixed pt res: tensor(0.0430) , ls: 1 , rel_err: tensor(0.2376) , time: 0.00267791748046875 iter: 7700 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2417) , time: 0.0025963783264160156 iter: 7750 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2421) , time: 0.002657651901245117 iter: 7800 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2403) , time: 0.0026264190673828125 iter: 7850 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2342) , time: 0.002609729766845703 iter: 7900 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.2360) , time: 0.0026090145111083984 iter: 7950 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2312) , time: 0.002658843994140625 iter: 8000 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2386) , time: 0.0026226043701171875 iter: 8050 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2389) , time: 0.002712249755859375 iter: 8100 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2428) , time: 0.0026378631591796875 iter: 8150 , fixed pt res: tensor(0.0463) , ls: 1 , rel_err: tensor(0.2545) , time: 0.0025916099548339844 iter: 8200 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2502) , time: 0.002643585205078125 iter: 8250 , fixed pt res: tensor(0.0441) , ls: 1 , rel_err: tensor(0.2474) , time: 0.0025789737701416016 iter: 8300 , fixed pt res: tensor(0.0450) , ls: 1 , rel_err: tensor(0.2367) , time: 0.0025835037231445312 iter: 8350 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2376) , time: 0.0025784969329833984 iter: 8400 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.2338) , time: 0.0026235580444335938 iter: 8450 , fixed pt res: tensor(0.0427) , ls: 1 , rel_err: tensor(0.2361) , time: 0.002642393112182617 iter: 8500 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2343) , time: 0.0026869773864746094 iter: 8550 , fixed pt res: tensor(0.0440) , ls: 1 , rel_err: tensor(0.2282) , time: 0.0026705265045166016 iter: 8600 , fixed pt res: tensor(0.0432) , ls: 1 , rel_err: tensor(0.2310) , time: 0.002638578414916992 iter: 8650 , fixed pt res: tensor(0.0433) , ls: 1 , rel_err: tensor(0.2331) , time: 0.002623319625854492 iter: 8700 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2308) , time: 0.0025844573974609375 iter: 8750 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2349) , time: 0.0025954246520996094 iter: 8800 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2365) , time: 0.002594470977783203 iter: 8850 , fixed pt res: tensor(0.0460) , ls: 1 , rel_err: tensor(0.2305) , time: 0.0025708675384521484 iter: 8900 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2322) , time: 0.002640247344970703 iter: 8950 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2321) , time: 0.00260162353515625 iter: 9000 , fixed pt res: tensor(0.0455) , ls: 1 , rel_err: tensor(0.2332) , time: 0.002644062042236328 iter: 9050 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2342) , time: 0.002650022506713867 iter: 9100 , fixed pt res: tensor(0.0431) , ls: 1 , rel_err: tensor(0.2352) , time: 0.0026323795318603516 iter: 9150 , fixed pt res: tensor(0.0419) , ls: 1 , rel_err: tensor(0.2377) , time: 0.0025916099548339844 iter: 9200 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2383) , time: 0.002780437469482422 iter: 9250 , fixed pt res: tensor(0.0446) , ls: 1 , rel_err: tensor(0.2482) , time: 0.0026121139526367188 iter: 9300 , fixed pt res: tensor(0.0454) , ls: 1 , rel_err: tensor(0.2536) , time: 0.002669095993041992 iter: 9350 , fixed pt res: tensor(0.0449) , ls: 1 , rel_err: tensor(0.2583) , time: 0.0026013851165771484 iter: 9400 , fixed pt res: tensor(0.0443) , ls: 1 , rel_err: tensor(0.2538) , time: 0.002645730972290039 iter: 9450 , fixed pt res: tensor(0.0442) , ls: 1 , rel_err: tensor(0.2458) , time: 0.0026335716247558594 iter: 9500 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.2508) , time: 0.0026450157165527344 iter: 9550 , fixed pt res: tensor(0.0448) , ls: 1 , rel_err: tensor(0.2519) , time: 0.0026204586029052734 iter: 9600 , fixed pt res: tensor(0.0453) , ls: 1 , rel_err: tensor(0.2448) , time: 0.0026938915252685547 iter: 9650 , fixed pt res: tensor(0.0452) , ls: 1 , rel_err: tensor(0.2445) , time: 0.002580404281616211 iter: 9700 , fixed pt res: tensor(0.0435) , ls: 1 , rel_err: tensor(0.2445) , time: 0.0026569366455078125 iter: 9750 , fixed pt res: tensor(0.0444) , ls: 1 , rel_err: tensor(0.2461) , time: 0.0026009082794189453 iter: 9800 , fixed pt res: tensor(0.0457) , ls: 1 , rel_err: tensor(0.2492) , time: 0.0026717185974121094 iter: 9850 , fixed pt res: tensor(0.0439) , ls: 1 , rel_err: tensor(0.2451) , time: 0.002624034881591797 iter: 9900 , fixed pt res: tensor(0.0445) , ls: 1 , rel_err: tensor(0.2470) , time: 0.0027098655700683594 iter: 9950 , fixed pt res: tensor(0.0451) , ls: 1 , rel_err: tensor(0.2420) , time: 0.002642393112182617 iter: 10000 , fixed pt res: tensor(0.0422) , ls: 1 , rel_err: tensor(0.2330) , time: 0.0026102066040039062 trial 1 finished after 27.398865699768066 norm(rel_err_hist_temp - rel_err_lmm_hist_sample_array[sample_index,:]) = tensor(0.)
In [ ]:
Copied!
# plotting parameters
title_fontsize = 22
fontsize = 20
fig1 = plt.figure()
my_blue = '#1f77b4'
my_orange = '#F97306'
fig1 = plt.figure()
plt.style.use('seaborn-whitegrid')
ax = plt.axes()
ax.semilogy(rel_err_lmm_hist_sample_array[0,:], '-',linewidth=5, color=my_blue)
ax.semilogy(rel_err_lmm_hist_sample_array[1,:], '-', linewidth=5, color='tab:green')
ax.semilogy(rel_err_lmm_hist_sample_array[2,:], linewidth=5, color='tab:purple')
ax.semilogy(rel_err_lmm_hist_sample_array[3,:], linewidth=5, color='tab:cyan')
ax.semilogy(rel_err_hist_GD, linewidth=5, color='k')
# ax.set_xlabel("x-axis", fontsize=title_fontsize)
ax.legend(['HJ-MM 1 Sample', 'HJ-MM 100 Samples', 'HJ-MM 1K Samples', 'HJ-MM 10K Samples', 'Gradient Descent'],fontsize=fontsize, bbox_to_anchor=(1.0, 1.0), loc='upper left')
ax.tick_params(labelsize=fontsize, which='both', direction='in')
save_str = 'ADMM_noisy_sample_comparison.pdf'
fig1.savefig(save_str, dpi=300 , bbox_inches="tight", pad_inches=0.0)
title_str = 'delta = ' + str(delta_for_varying_samples)
ax.set_title(title_str, fontsize=fontsize)
# plotting parameters
title_fontsize = 22
fontsize = 20
fig1 = plt.figure()
my_blue = '#1f77b4'
my_orange = '#F97306'
fig1 = plt.figure()
plt.style.use('seaborn-whitegrid')
ax = plt.axes()
ax.semilogy(rel_err_lmm_hist_sample_array[0,:], '-',linewidth=5, color=my_blue)
ax.semilogy(rel_err_lmm_hist_sample_array[1,:], '-', linewidth=5, color='tab:green')
ax.semilogy(rel_err_lmm_hist_sample_array[2,:], linewidth=5, color='tab:purple')
ax.semilogy(rel_err_lmm_hist_sample_array[3,:], linewidth=5, color='tab:cyan')
ax.semilogy(rel_err_hist_GD, linewidth=5, color='k')
# ax.set_xlabel("x-axis", fontsize=title_fontsize)
ax.legend(['HJ-MM 1 Sample', 'HJ-MM 100 Samples', 'HJ-MM 1K Samples', 'HJ-MM 10K Samples', 'Gradient Descent'],fontsize=fontsize, bbox_to_anchor=(1.0, 1.0), loc='upper left')
ax.tick_params(labelsize=fontsize, which='both', direction='in')
save_str = 'ADMM_noisy_sample_comparison.pdf'
fig1.savefig(save_str, dpi=300 , bbox_inches="tight", pad_inches=0.0)
title_str = 'delta = ' + str(delta_for_varying_samples)
ax.set_title(title_str, fontsize=fontsize)
<ipython-input-10-f1d11af914b3>:9: MatplotlibDeprecationWarning: The seaborn styles shipped by Matplotlib are deprecated since 3.6, as they no longer correspond to the styles shipped by seaborn. However, they will remain available as 'seaborn-v0_8-<style>'. Alternatively, directly use the seaborn API instead. plt.style.use('seaborn-whitegrid')
Out[ ]:
Text(0.5, 1.0, 'delta = 10')
<Figure size 640x480 with 0 Axes>