An overview of the most successful algorithms and techniques for solving large, sparse systems of equations and some algorithms and strategies for solving optimization problems. The most important topics dealt with concern iterative methods, especially Krylov methods, ordering techniques, and some iterative optimization tools. The book is a compendium of theoretical and numerical methods for solving large algebraic systems, special emphasis being placed on convergence and numerical behaviour as affected by rounding errors, accuracy in computing solutions for ill-conditioned matrices, preconditioning effectiveness, ordering procedures, stability factors, hybrid procedures and stopping criteria. Recent advances in numerical matrix calculations are presented, especially methods to accelerate the solution of symmetric and unsymmetric linear systems. Convergence analysis of the multi-grid method using a posteriori error estimation in second order elliptic equations are presented. Some inverse problems are also included. Evolution based software is described, such as genetic algorithms and evolution strategies, relations and class hierarchising to improve the exploration of large search spaces and finding near-global optima. Recent developments in messy genetic algorithms are also described. The tutorial nature of the book makes it suitable for mathematicians, computer scientists, engineers and postgraduates.