SkillAgentSearch skills...

ASMO

This is a standalone version of ASMO, a surrogate based single objective optimization algorithm.

Install / Use

/learn @gongw03/ASMO
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

ASMO

This is a standalone version of ASMO, a surrogate based single objective optimization algorithm.

Quick start: please run Ackley/Ackley_ASMO.py to start your first run. For more information about ASMO, please read the paper. And please cite it if you use the code in your own research.
Wang, C., Duan, Q., Gong, W., Ye, A., Di, Z., & Miao, C. (2014). An evaluation of adaptive surrogate modeling based optimization with two benchmark problems. Environmental Modelling & Software, 60(0), 167-179. https://doi.org/10.1016/j.envsoft.2014.05.026

Two test cases with the test function Ackley.

  1. Ackley_SCEUA.py: Optimize with SCE-UA algorithm, a traditional single objective optimization algorithm.
  2. Ackley_ASMO.py: Optimize with ASMO.

Other files in directory Ackley:

  1. Ackley.py: the test function Ackley.
  2. Ackley.txt: the parameter name, lower bound, upper bound.

A quick example of NWS hydrology model Sno17SacUH to show how to connect your own model with ASMO. Two test cases.

  1. SAC_SCEUA.py: Optimize with SCE-UA algorithm, a traditional single objective optimization algorithm.
  2. SAC_ASMO.py: Optimize with ASMO.

Other files in directory Snow17SacUH (abbrev. SAC):

  1. SAC.py: model driver file that put the parameter value in the parameter files that Snow17SacUH can read, run the model, and compute objective function (Here we use RMSE).
  2. SAC.txt: the parameter name, lower bound, upper bound.
  3. sac_params.HHWM8.txt.tmplt: sac parameter templete file, replace string "UQ_xxxx" in this file and generate parameter file sac_params.HHWM8.txt for the model to load.
  4. snow17_params.HHWM8.txt.tmplt: snow17 parameter templete file.
  5. uh_params.HHWM8.txt.tmplt: unit hydrograph parameter templete file.
View on GitHub
GitHub Stars11
CategoryDevelopment
Updated2y ago
Forks8

Languages

Python

Security Score

75/100

Audited on Sep 28, 2023

No findings