UI はローカライズ済みです。スキルの紹介と説明文書は選択した言語へ AI が自動翻訳し、コード・コマンド・パス・専門用語は原文のままです。原作者の文書が優先されます。
スキルを探す
生産性・共同作業 · SKILL.md

curvature_memory

curvature_memory

Maintain bounded positive-curvature L-BFGS correction memory for large-scale quasi-Newton optimization.

Independent GitHub snapshot · Automated classification · Original documentation governs

スキルの説明

GitHub

name: curvature_memory description: Maintain bounded positive-curvature L-BFGS correction memory for large-scale quasi-Newton optimization.

Curvature Memory

Use this skill when implementing or auditing an L-BFGS optimizer that must store only a small number of recent BFGS correction pairs. Do not use it for dense BFGS updates or constrained optimization logic.

Inputs

  • Previous and next iterates x_old, x_new.
  • Previous and next gradients g_old, g_new.
  • Existing ordered memory of (s, y) pairs.
  • Positive integer memory limit m.

Outputs

  • A FIFO memory list containing at most m valid pairs.
  • Each valid pair satisfies s^T y > tolerance.

Workflow

  1. Compute s = x_new - x_old and y = g_new - g_old.
  2. Validate matching vector dimensions and memory limit.
  3. Reject non-positive or tiny curvature pairs.
  4. Append valid pairs and drop oldest entries until the memory length is bounded.
  5. Preserve oldest-to-newest order for downstream two-loop recursion.

Validation

Run python tests/test_curvature_memory.py or validate this skill tree with the Paper2Skills module-to-skill validator.

Limitations

This skill manages only correction-pair state. It does not choose step lengths or compute search directions.

保存したスキル