Skip to content

AMPGO multivariate implementation#408

Open
arnavk23 wants to merge 6 commits intoJuliaSmoothOptimizers:mainfrom
arnavk23:fix/ampgo-test-set-issue-236
Open

AMPGO multivariate implementation#408
arnavk23 wants to merge 6 commits intoJuliaSmoothOptimizers:mainfrom
arnavk23:fix/ampgo-test-set-issue-236

Conversation

@arnavk23
Copy link
Contributor

@arnavk23 arnavk23 commented Mar 2, 2026

#236
Successfully implemented all four AMPGO multivariate functions (Ackley, Rastrigin, Griewank, Sphere)

arnavk23 added 2 commits March 2, 2026 15:15
…phere)

Implements four commonly-used multivariate optimization benchmark functions
from the AMPGO test set as part of addressing issue JuliaSmoothOptimizers#236. These functions
are widely used in global optimization and provide good test cases for
optimization algorithms.

- Ackley: n-dimensional multimodal function with bounds [-32, 32]
- Rastrigin: n-dimensional highly multimodal function with bounds [-5.12, 5.12]
- Griewank: n-dimensional multimodal function with bounds [-600, 600]
- Sphere: simple n-dimensional convex function with bounds [-1, 1]

All functions follow the standard ADNLPProblems pattern and support
arbitrary dimensions and data types.

Closes JuliaSmoothOptimizers#236 (partial - adds 4 of 184 multivariate problems)
Adds Meta metadata and PureJuMP model definitions for the four AMPGO
multivariate test functions (Ackley, Rastrigin, Griewank, Sphere).

Meta files include:
- Problem metadata (dimensions, constraints, bounds)
- Helper functions for getting problem dimensions

PureJuMP files include:
- JuMP model definitions using @variable and @objective
- Support for arbitrary dimensions via n parameter
- Random initial points within specified bounds
- Problem documentation with references

These complement the ADNLPProblems implementations added in the previous commit.
Copilot AI review requested due to automatic review settings March 2, 2026 09:53
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Implements four multivariate benchmark problems from the AMPGO test set (Ackley, Rastrigin, Griewank, Sphere) across the repository’s three layers: PureJuMP model builders, ADNLPProblems model builders, and Meta problem descriptors.

Changes:

  • Added PureJuMP formulations for Ackley, Rastrigin, Griewank, and Sphere.
  • Added ADNLPProblems formulations for the same four problems.
  • Added Meta entries and dimension helper functions for the new problems.

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 24 comments.

Show a summary per file
File Description
src/PureJuMP/ackley.jl New JuMP model for Ackley (multivariate)
src/PureJuMP/rastrigin.jl New JuMP model for Rastrigin (multivariate)
src/PureJuMP/griewank.jl New JuMP model for Griewank (multivariate)
src/PureJuMP/sphere.jl New JuMP model for Sphere (multivariate)
src/ADNLPProblems/ackley.jl New ADNLPModel for Ackley
src/ADNLPProblems/rastrigin.jl New ADNLPModel for Rastrigin
src/ADNLPProblems/griewank.jl New ADNLPModel for Griewank
src/ADNLPProblems/sphere.jl New ADNLPModel for Sphere
src/Meta/ackley.jl New metadata entry and size helpers for Ackley
src/Meta/rastrigin.jl New metadata entry and size helpers for Rastrigin
src/Meta/griewank.jl New metadata entry and size helpers for Griewank
src/Meta/sphere.jl New metadata entry and size helpers for Sphere

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

arnavk23 and others added 2 commits March 2, 2026 15:34
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@arnavk23 arnavk23 marked this pull request as draft March 2, 2026 12:00
@arnavk23 arnavk23 force-pushed the fix/ampgo-test-set-issue-236 branch 2 times, most recently from 40167db to 49dc51a Compare March 4, 2026 10:03
@arnavk23 arnavk23 marked this pull request as ready for review March 4, 2026 14:15
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.

2 participants