Numerical Optimization for Large Scale Problems

Implementing and comparing two Newton methods on large, sparse problems.

What I implemented

For my Numerical Optimization for Large Scale Problems course, I implemented Modified Newton and Truncated Newton. I compared their runtime and convergence on test problems with up to 100,000 variables, paying particular attention to sparse matrix operations.

Algorithms Implemented

Both methods are globalized using a Backtracking Line Search strategy.

Test Problems

Key Optimizations

Key Findings

Built with

Language: Python 3
Libraries: NumPy, SciPy (sparse, linalg), Matplotlib
Techniques: Modified Cholesky Factorization, Conjugate Gradient, Backtracking Line Search, Graph Coloring, Finite Differences
Authors: Lucio Baiocchi (s360244), Leonardo Passafiume (s358616) — Politecnico di Torino, Jan 2026

Source: GitHub