GPy/backlog/features/2025-08-15_design-modern-lfm-kernel.md

2.6 KiB

id title status priority created last_updated owner github_issue dependencies tags
design-modern-lfm-kernel Design modern LFM kernel architecture In Progress High 2025-08-15 2025-08-15 Neil Lawrence lfm-kernel-code-review
lfm
kernel
design
architecture

Design modern LFM kernel architecture

Description

Design a modern LFM kernel implementation that follows GPy's current architectural patterns and uses the multioutput kernel approach with output index as input.

Background

  • Current GPy LFM implementations don't use the modern multioutput kernel approach
  • Need to design a unified LFM kernel that integrates well with GPy's current framework
  • Should maintain backward compatibility while providing improved functionality

Design Requirements

  • Use GPy's multioutput kernel approach with output index as input
  • Follow consistent API design with other GPy kernels
  • Implement proper parameter handling and constraints
  • Support different base kernels for latent functions
  • Enable efficient gradient computation
  • Maintain backward compatibility with existing implementations

Design Tasks

  • Define kernel class structure and inheritance hierarchy
  • Design parameter handling for mass, damper, spring, sensitivity, delay
  • Plan integration with GPy's multioutput framework
  • Design cross-kernel computation methods
  • Design efficient computation methods for large datasets
  • Plan parameter tying and constraint handling (assumed to be addressed separately)

Acceptance Criteria

  • Complete design specification document
  • API design that follows GPy patterns
  • Integration plan with existing GPy infrastructure
  • Performance considerations documented
  • Backward compatibility strategy defined

Implementation Notes

  • Study how other multioutput kernels in GPy handle output indices
  • Design for extensibility to different differential equation types
  • Plan for efficient computation of cross-kernel terms
  • Parameter Tying: Assumed to be addressed by separate CIP-0002 work
  • Design Focus: Clean LFM implementation without parameter tying workarounds
  • CIP: 0001 (LFM kernel implementation)
  • Backlog: lfm-kernel-code-review

Progress Updates

2025-08-15

Design task started after completion of code review:

  • Code review identified parameter tying as a fundamental limitation
  • Decision made to proceed with clean LFM implementation assuming parameter tying addressed separately
  • Focus on core LFM functionality without parameter tying workarounds
  • Ready to begin detailed design of modern LFM kernel architecture