Como uma das minhas respostas foi citada, tentarei esclarecer por que sugeri o uso do IPOPT em vez do MINPACK.
Minhas objeções ao uso do MINPACK não têm nada a ver com os algoritmos que o MINPACK usa e tudo a ver com sua implementação. Minha principal objeção é que o software remonta a 1980 e foi atualizado pela última vez em 1999. Jorge Moré está aposentado; Duvido que ele ou qualquer um dos outros autores do software mantenha o controle sobre ele, e não há nenhuma equipe de pessoas que o apóie ativamente. A única documentação que posso encontrar no software é o relatório técnico original de Argonne de 1980, escrito por Jorge Moré e os outros autores do MINPACK. (Os capítulos 1-3 podem ser encontrados aqui e o capítulo 4 pode ser encontrado aqui.) Depois de pesquisar o código-fonte do MINPACK e ler a documentação (os PDFs são imagens digitalizadas e não podem ser pesquisadas), não vejo opções para acomodar restrições. Como o pôster original do problema de quadrados mínimos não lineares queria resolver um problema de quadrados mínimos não lineares restrito, o MINPACK nem sequer resolveria esse problema.
Se você olhar para a lista de discussão IPOPT, alguns usuários indicam que o desempenho do pacote em problemas de mínimos quadrados não lineares (NLS) é misto em relação aos algoritmos de Levenberg-Marquardt e algoritmos NLS mais especializados (veja aqui , aqui e aqui ). O desempenho do IPOPT em relação aos algoritmos NLS depende, é claro, do problema. Dado o feedback do usuário, o IPOPT parece ser uma recomendação razoável em relação aos algoritmos NLS.
No entanto, você enfatiza que os algoritmos NLS devem ser investigados. Concordo. Eu apenas acho que um pacote mais moderno que o MINPACK deve ser usado porque acredito que ele terá um desempenho melhor, será mais utilizável e terá suporte. Ceres parece ser um pacote candidato interessante, mas não pode lidar com problemas restritos no momento. TAOfuncionaria em problemas de mínimos quadrados com restrição de caixa, embora não implemente o clássico Levenberg-Marquardt, mas implemente um algoritmo sem derivadas. Um algoritmo livre de derivado provavelmente funcionaria bem para problemas de grande escala, mas eu não o usaria para problemas de pequena escala. Não consegui encontrar outros pacotes que inspirassem muita confiança em sua engenharia de software. Por exemplo, o GALAHAD parece não usar controle de versão ou qualquer teste automatizado, à primeira vista. O MINPACK também não parece fazer essas coisas. Se você tem experiência com o MINPACK ou recomendações sobre um software melhor, eu sou todo ouvidos.
Com tudo isso em mente, voltando à citação do meu comentário:
Qualquer sistema de equações é equivalente a um problema de otimização, e é por isso que os métodos baseados em Newton na otimização se parecem muito com os métodos baseados em Newton para resolver sistemas de equações não lineares.
Um comentário melhor provavelmente é algo para o efeito de:
nng(x)=0
Esta afirmação vale mesmo para resolver sistemas de equações sob restrições. Não conheço nenhum algoritmo que seja considerado "solucionador de equações" para o caso em que existem restrições nas variáveis. A abordagem comum que conheço, talvez com icterícia por vários semestres de cursos de otimização e pesquisa em um laboratório de otimização, é incorporar as restrições no sistema de equações em uma formulação de otimização. Se você tentasse usar as restrições em um esquema semelhante a Newton-Raphson para resolver equações, provavelmente terminaria com um gradiente projetado ou um método de região de confiança projetada, como os métodos usados na otimização restrita.