Skip to content

Code enhancement#162

Draft
jchiquet wants to merge 58 commits into
masterfrom
code-enhancement
Draft

Code enhancement#162
jchiquet wants to merge 58 commits into
masterfrom
code-enhancement

Conversation

@jchiquet

Copy link
Copy Markdown
Member

No description provided.

jchiquet and others added 30 commits June 5, 2026 19:24
Ajoute un optimiseur Newton diagonal coordonné (sans NLopt) pour les
modèles PLN standard et ZIPLN, activable via
  PLN_param(config_optim = list(algorithm = "NEWTON"))
  ZIPLN_param(config_optim = list(algorithm = "NEWTON"))

PLN (`nlopt_optimize_newton`, `nlopt_optimize_vestep_newton`) :
- Newton diagonal pour B et M avec backtracking Armijo
- Fixed-point exact pour logS : logS* = -0.5 log(Omega_jj + A_ij)
- Guard overflow élément par élément : logS <= 0.5 log(max(1, 700-Z))
- Gains sur oaks : +38 loglik, 36% plus rapide que CCSAQ

ZIPLN (`optim_zipln_M_S_newton`) :
- Même approche, hessien diagonal ajusté pour le masque ZI
- Défaut : CCSAQ conservé (Newton donne de mauvais optima locaux sur
  données très sparse)
- Guard de covariance "covar" : substitue CCSAQ avant d'appeler NLopt

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant