📄 asa-readme.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML//EN">
<HTML>
<HEAD>
<TITLE>ASA-README.html file of Lester Ingber's Archive</TITLE>
<LINK REV="made" HREF="mailto:ingber@ingber.com">
</HEAD>
<BODY TEXT="#000066" BGCOLOR="#FFFFFF" LINK="#660000" VLINK="#993300" ALINK="#003300" BACKGROUND="asa_back.jpg">
<H1><A NAME="To-Top-of-ASA-READMEhtml">ASA-README.html</A></H1>
<H2>http://www.ingber.com/ASA-README.html</H2>
[<A HREF="http://www.ingber.com/">To-Top-of-Archive</A>]
<P>
ADAPTIVE SIMULATED ANNEALING (ASA) ©
<P>
Lester Ingber
<P>
<A HREF="mailto:ingber@ingber.com">ingber@ingber.com</A>
<BR>
<A HREF="mailto:ingber@alumni.caltech.edu">ingber@alumni.caltech.edu</A>
<P>
Adaptive Simulated Annealing (ASA) is a C-language code developed
to statistically find the best global fit of a nonlinear constrained
non-convex cost-function over a D-dimensional space. This algorithm
permits an annealing schedule for "temperature" T decreasing
exponentially in annealing-time k, T = T_0 exp(-c k^1/D). The
introduction of re-annealing also permits adaptation to changing
sensitivities in the multi-dimensional parameter-space. This
annealing schedule is faster than fast Cauchy annealing, where T =
T_0/k, and much faster than Boltzmann annealing, where T = T_0/ln k.
ASA has over 100 OPTIONS to provide robust tuning over many classes of
nonlinear stochastic systems.
<P>
-----------
<BR>
/******************************************************************<BR>
* Adaptive Simulated Annealing (ASA)<BR>
* Lester Ingber <<A HREF="mailto:ingber@ingber.com">ingber@ingber.com</A>><BR>
* Copyright © 1993-2007 Lester Ingber. All Rights Reserved.<BR>
* The <A HREF="#ASA-LICENSE">ASA-LICENSE</A> file must be included with ASA code.<BR>
******************************************************************/<BR>
$Id: ASA-README.ms,v 26.23 2007/01/31 20:13:25 ingber Exp ingber $<BR>
<BR>
<P>
Table of Contents<P>
1. <A HREF="#ASA-LICENSE">ASA-LICENSE</A><BR>
2. <A HREF="#Lester-Ingber-Research-Terms-of-Use">Lester Ingber Research Terms of Use</A><BR>
3. <A HREF="#Documentation">Documentation</A><BR>
3.1. <A HREF="#Table-of-Contents-Index">Table of Contents/Index</A><BR>
3.2. <A HREF="#ASA-README-ms-and-ASA-README">ASA-README.ms and ASA-README</A><BR>
3.2.1. <A HREF="#ASA-README-txt-and-ASA-README--txt">ASA-README.txt and ASA-README+.txt</A><BR>
3.2.2. <A HREF="#asa--13nl--Manpage">asa.[13nl] Manpage</A><BR>
3.2.3. <A HREF="#ASA-README-ps-and-ASA-README-pdf">ASA-README.ps and ASA-README.pdf</A><BR>
3.2.4. <A HREF="#ASA-README-html">ASA-README.html</A><BR>
3.3. <A HREF="#Additional-Documentation">Additional Documentation</A><BR>
3.4. <A HREF="#Use-of-Documentation-for-Tuning">Use of Documentation for Tuning</A><BR>
4. <A HREF="#Availability-of-ASA-Code">Availability of ASA Code</A><BR>
4.1. <A HREF="#ingber-com">ingber.com</A><BR>
4.2. <A HREF="#Electronic-Mail">Electronic Mail</A><BR>
5. <A HREF="#Background">Background</A><BR>
5.1. <A HREF="#Context">Context</A><BR>
5.2. <A HREF="#Outline-of-ASA-Algorithm">Outline of ASA Algorithm</A><BR>
5.2.1. <A HREF="#Generating-Probability-Density-Function">Generating Probability Density Function</A><BR>
5.2.2. <A HREF="#Acceptance-Probability-Density-Function">Acceptance Probability Density Function</A><BR>
5.2.3. <A HREF="#Reannealing-Temperature-Schedule">Reannealing Temperature Schedule</A><BR>
5.3. <A HREF="#Efficiency-Versus-Necessity">Efficiency Versus Necessity</A><BR>
6. <A HREF="#Outline-of-Use">Outline of Use</A><BR>
7. <A HREF="#ASA-Makefile-Compilation-Procedures">ASA-Makefile/Compilation Procedures</A><BR>
7.1. <A HREF="#DLL-ASA-Makefile">DLL ASA-Makefile</A><BR>
8. <A HREF="#Generic-ASA-Interfaces">Generic ASA Interfaces</A><BR>
9. <A HREF="#User-Options">User Options</A><BR>
9.1. <A HREF="#Pre-Compile-DEFINE-OPTIONS">Pre-Compile DEFINE_OPTIONS</A><BR>
9.1.1. <A HREF="#USER-COST-FUNCTION-cost-function">USER_COST_FUNCTION=cost_function</A><BR>
9.1.2. <A HREF="#RECUR-USER-COST-FUNCTION-recur-cost-function">RECUR_USER_COST_FUNCTION=recur_cost_function</A><BR>
9.1.3. <A HREF="#OPTIONS-FILE-TRUE">OPTIONS_FILE=TRUE</A><BR>
9.1.4. <A HREF="#OPTIONS-FILE-DATA-TRUE">OPTIONS_FILE_DATA=TRUE</A><BR>
9.1.5. <A HREF="#RECUR-OPTIONS-FILE-FALSE">RECUR_OPTIONS_FILE=FALSE</A><BR>
9.1.6. <A HREF="#RECUR-OPTIONS-FILE-DATA-FALSE">RECUR_OPTIONS_FILE_DATA=FALSE</A><BR>
9.1.7. <A HREF="#COST-FILE-TRUE">COST_FILE=TRUE</A><BR>
9.1.8. <A HREF="#ASA-LIB-FALSE">ASA_LIB=FALSE</A><BR>
9.1.9. <A HREF="#HAVE-ANSI-TRUE">HAVE_ANSI=TRUE</A><BR>
9.1.10. <A HREF="#IO-PROTOTYPES-FALSE">IO_PROTOTYPES=FALSE</A><BR>
9.1.11. <A HREF="#TIME-CALC-FALSE">TIME_CALC=FALSE</A><BR>
9.1.12. <A HREF="#TIME-STD-FALSE">TIME_STD=FALSE</A><BR>
9.1.13. <A HREF="#TIME-GETRUSAGE-TRUE">TIME_GETRUSAGE=TRUE</A><BR>
9.1.14. <A HREF="#INT-LONG-TRUE">INT_LONG=TRUE</A><BR>
9.1.15. <A HREF="#INT-ALLOC-FALSE">INT_ALLOC=FALSE</A><BR>
9.1.16. <A HREF="#SMALL-FLOAT-1-0E-18">SMALL_FLOAT=1.0E-18</A><BR>
9.1.17. <A HREF="#MIN-DOUBLE-SMALL-FLOAT">MIN_DOUBLE=SMALL_FLOAT</A><BR>
9.1.18. <A HREF="#MAX-DOUBLE-1-0-SMALL-FLOAT">MAX_DOUBLE=1.0/SMALL_FLOAT</A><BR>
9.1.19. <A HREF="#EPS-DOUBLE-SMALL-FLOAT">EPS_DOUBLE=SMALL_FLOAT</A><BR>
9.1.20. <A HREF="#CHECK-EXPONENT-FALSE">CHECK_EXPONENT=FALSE</A><BR>
9.1.21. <A HREF="#NO-PARAM-TEMP-TEST-FALSE">NO_PARAM_TEMP_TEST=FALSE</A><BR>
9.1.22. <A HREF="#NO-COST-TEMP-TEST-FALSE">NO_COST_TEMP_TEST=FALSE</A><BR>
9.1.23. <A HREF="#SELF-OPTIMIZE-FALSE">SELF_OPTIMIZE=FALSE</A><BR>
9.1.24. <A HREF="#ASA-TEST-FALSE">ASA_TEST=FALSE</A><BR>
9.1.25. <A HREF="#ASA-TEST-POINT-FALSE">ASA_TEST_POINT=FALSE</A><BR>
9.1.26. <A HREF="#MY-TEMPLATE-TRUE">MY_TEMPLATE=TRUE</A><BR>
9.1.27. <A HREF="#USER-INITIAL-COST-TEMP-FALSE">USER_INITIAL_COST_TEMP=FALSE</A><BR>
9.1.28. <A HREF="#RATIO-TEMPERATURE-SCALES-FALSE">RATIO_TEMPERATURE_SCALES=FALSE</A><BR>
9.1.29. <A HREF="#USER-INITIAL-PARAMETERS-TEMPS-FALSE">USER_INITIAL_PARAMETERS_TEMPS=FALSE</A><BR>
9.1.30. <A HREF="#DELTA-PARAMETERS-FALSE">DELTA_PARAMETERS=FALSE</A><BR>
9.1.31. <A HREF="#QUENCH-PARAMETERS-FALSE">QUENCH_PARAMETERS=FALSE</A><BR>
9.1.32. <A HREF="#QUENCH-COST-FALSE">QUENCH_COST=FALSE</A><BR>
9.1.33. <A HREF="#QUENCH-PARAMETERS-SCALE-TRUE">QUENCH_PARAMETERS_SCALE=TRUE</A><BR>
9.1.34. <A HREF="#QUENCH-COST-SCALE-TRUE">QUENCH_COST_SCALE=TRUE</A><BR>
9.1.35. <A HREF="#ASA-TEMPLATE-FALSE">ASA_TEMPLATE=FALSE</A><BR>
9.1.36. <A HREF="#OPTIONAL-DATA-DBL-FALSE">OPTIONAL_DATA_DBL=FALSE</A><BR>
9.1.37. <A HREF="#OPTIONAL-DATA-INT-FALSE">OPTIONAL_DATA_INT=FALSE</A><BR>
9.1.38. <A HREF="#OPTIONAL-DATA-PTR-FALSE">OPTIONAL_DATA_PTR=FALSE</A><BR>
9.1.39. <A HREF="#OPTIONAL-PTR-TYPE-USER-TYPE">OPTIONAL_PTR_TYPE=USER_TYPE</A><BR>
9.1.40. <A HREF="#USER-COST-SCHEDULE-FALSE">USER_COST_SCHEDULE=FALSE</A><BR>
9.1.41. <A HREF="#USER-ACCEPT-ASYMP-EXP-FALSE">USER_ACCEPT_ASYMP_EXP=FALSE</A><BR>
9.1.42. <A HREF="#USER-ACCEPT-THRESHOLD-FALSE">USER_ACCEPT_THRESHOLD=FALSE</A><BR>
9.1.43. <A HREF="#USER-ACCEPTANCE-TEST-FALSE">USER_ACCEPTANCE_TEST=FALSE</A><BR>
9.1.44. <A HREF="#USER-GENERATING-FUNCTION-FALSE">USER_GENERATING_FUNCTION=FALSE</A><BR>
9.1.45. <A HREF="#USER-REANNEAL-COST-FALSE">USER_REANNEAL_COST=FALSE</A><BR>
9.1.46. <A HREF="#USER-REANNEAL-PARAMETERS-FALSE">USER_REANNEAL_PARAMETERS=FALSE</A><BR>
9.1.47. <A HREF="#MAXIMUM-REANNEAL-INDEX-50000">MAXIMUM_REANNEAL_INDEX=50000</A><BR>
9.1.48. <A HREF="#REANNEAL-SCALE-10-0">REANNEAL_SCALE=10.0</A><BR>
9.1.49. <A HREF="#ASA-SAMPLE-FALSE">ASA_SAMPLE=FALSE</A><BR>
9.1.50. <A HREF="#ASA-QUEUE-FALSE">ASA_QUEUE=FALSE</A><BR>
9.1.51. <A HREF="#ASA-RESOLUTION-FALSE">ASA_RESOLUTION=FALSE</A><BR>
9.1.52. <A HREF="#FITLOC-FALSE">FITLOC=FALSE</A><BR>
9.1.53. <A HREF="#FITLOC-ROUND-TRUE">FITLOC_ROUND=TRUE</A><BR>
9.1.54. <A HREF="#FITLOC-PRINT-TRUE">FITLOC_PRINT=TRUE</A><BR>
9.1.55. <A HREF="#MULTI-MIN-FALSE">MULTI_MIN=FALSE</A><BR>
9.1.56. <A HREF="#ASA-PARALLEL-FALSE">ASA_PARALLEL=FALSE</A><BR>
9.1.57. <A HREF="#FDLIBM-POW-FALSE">FDLIBM_POW=FALSE</A><BR>
9.1.58. <A HREF="#FDLIBM-LOG-FALSE">FDLIBM_LOG=FALSE</A><BR>
9.1.59. <A HREF="#FDLIBM-EXP-FALSE">FDLIBM_EXP=FALSE</A><BR>
9.2. <A HREF="#Printing-DEFINE-OPTIONS">Printing DEFINE_OPTIONS</A><BR>
9.2.1. <A HREF="#USER-OUT---quot-asa-usr-out--quot-">USER_OUT=\"asa_usr_out\"</A><BR>
9.2.2. <A HREF="#INCL-STDOUT-TRUE">INCL_STDOUT=TRUE</A><BR>
9.2.3. <A HREF="#ASA-PRINT-TRUE">ASA_PRINT=TRUE</A><BR>
9.2.4. <A HREF="#ASA-OUT---quot-asa-out--quot-">ASA_OUT=\"asa_out\"</A><BR>
9.2.5. <A HREF="#USER-ASA-OUT-FALSE">USER_ASA_OUT=FALSE</A><BR>
9.2.6. <A HREF="#ASA-PRINT-INTERMED-TRUE">ASA_PRINT_INTERMED=TRUE</A><BR>
9.2.7. <A HREF="#ASA-PRINT-MORE-FALSE">ASA_PRINT_MORE=FALSE</A><BR>
9.2.8. <A HREF="#G-FIELD-12--amp--G-PRECISION-7">G_FIELD=12 & G_PRECISION=7</A><BR>
9.2.9. <A HREF="#ASA-SAVE-FALSE">ASA_SAVE=FALSE</A><BR>
9.2.10. <A HREF="#ASA-SAVE-OPT-FALSE">ASA_SAVE_OPT=FALSE</A><BR>
9.2.11. <A HREF="#ASA-SAVE-BACKUP-FALSE">ASA_SAVE_BACKUP=FALSE</A><BR>
9.2.12. <A HREF="#ASA-PIPE-FALSE">ASA_PIPE=FALSE</A><BR>
9.2.13. <A HREF="#ASA-PIPE-FILE-FALSE">ASA_PIPE_FILE=FALSE</A><BR>
9.2.14. <A HREF="#SYSTEM-CALL-TRUE">SYSTEM_CALL=TRUE</A><BR>
9.3. <A HREF="#Program-OPTIONS">Program OPTIONS</A><BR>
9.3.1. <A HREF="#OPTIONS--gt-Limit-Acceptances-10000-">OPTIONS->Limit_Acceptances[10000]</A><BR>
9.3.2. <A HREF="#OPTIONS--gt-Limit-Generated-99999-">OPTIONS->Limit_Generated[99999]</A><BR>
9.3.3. <A HREF="#OPTIONS--gt-Limit-Invalid-Generated-States-1000-">OPTIONS->Limit_Invalid_Generated_States[1000]</A><BR>
9.3.4. <A HREF="#OPTIONS--gt-Accepted-To-Generated-Ratio-1-0E-6-">OPTIONS->Accepted_To_Generated_Ratio[1.0E-6]</A><BR>
9.3.5. <A HREF="#OPTIONS--gt-Cost-Precision-1-0E-18-">OPTIONS->Cost_Precision[1.0E-18]</A><BR>
9.3.6. <A HREF="#OPTIONS--gt-Maximum-Cost-Repeat-5-">OPTIONS->Maximum_Cost_Repeat[5]</A><BR>
9.3.7. <A HREF="#OPTIONS--gt-Number-Cost-Samples-5-">OPTIONS->Number_Cost_Samples[5]</A><BR>
9.3.8. <A HREF="#OPTIONS--gt-Temperature-Ratio-Scale-1-0E-5-">OPTIONS->Temperature_Ratio_Scale[1.0E-5]</A><BR>
9.3.9. <A HREF="#OPTIONS--gt-Cost-Parameter-Scale-Ratio-1-0-">OPTIONS->Cost_Parameter_Scale_Ratio[1.0]</A><BR>
9.3.10. <A HREF="#OPTIONS--gt-Temperature-Anneal-Scale-100-0-">OPTIONS->Temperature_Anneal_Scale[100.0]</A><BR>
9.3.11. <A HREF="#OPTIONS--gt-User-Cost-Temperature">OPTIONS->User_Cost_Temperature</A><BR>
9.3.12. <A HREF="#OPTIONS--gt-Include-Integer-Parameters-FALSE-">OPTIONS->Include_Integer_Parameters[FALSE]</A><BR>
9.3.13. <A HREF="#OPTIONS--gt-User-Initial-Parameters-FALSE-">OPTIONS->User_Initial_Parameters[FALSE]</A><BR>
9.3.14. <A HREF="#OPTIONS--gt-Sequential-Parameters--1-">OPTIONS->Sequential_Parameters[-1]</A><BR>
9.3.15. <A HREF="#OPTIONS--gt-Initial-Parameter-Temperature-1-0-">OPTIONS->Initial_Parameter_Temperature[1.0]</A><BR>
9.3.16. <A HREF="#OPTIONS--gt-User-Temperature-Ratio">OPTIONS->User_Temperature_Ratio</A><BR>
9.3.17. <A HREF="#OPTIONS--gt-User-Parameter-Temperature">OPTIONS->User_Parameter_Temperature</A><BR>
9.3.18. <A HREF="#OPTIONS--gt-Acceptance-Frequency-Modulus-100-">OPTIONS->Acceptance_Frequency_Modulus[100]</A><BR>
9.3.19. <A HREF="#OPTIONS--gt-Generated-Frequency-Modulus-10000-">OPTIONS->Generated_Frequency_Modulus[10000]</A><BR>
9.3.20. <A HREF="#OPTIONS--gt-Reanneal-Cost-1-">OPTIONS->Reanneal_Cost[1]</A><BR>
9.3.21. <A HREF="#OPTIONS--gt-Reanneal-Parameters-TRUE-">OPTIONS->Reanneal_Parameters[TRUE]</A><BR>
9.3.22. <A HREF="#OPTIONS--gt-Delta-X-0-001-">OPTIONS->Delta_X[0.001]</A><BR>
9.3.23. <A HREF="#OPTIONS--gt-User-Delta-Parameter">OPTIONS->User_Delta_Parameter</A><BR>
9.3.24. <A HREF="#OPTIONS--gt-User-Tangents-FALSE-">OPTIONS->User_Tangents[FALSE]</A><BR>
9.3.25. <A HREF="#OPTIONS--gt-Curvature-0-FALSE-">OPTIONS->Curvature_0[FALSE]</A><BR>
9.3.26. <A HREF="#OPTIONS--gt-User-Quench-Param-Scale">OPTIONS->User_Quench_Param_Scale</A><BR>
9.3.27. <A HREF="#OPTIONS--gt-User-Quench-Cost-Scale">OPTIONS->User_Quench_Cost_Scale</A><BR>
9.3.28. <A HREF="#OPTIONS--gt-N-Accepted">OPTIONS->N_Accepted</A><BR>
9.3.29. <A HREF="#OPTIONS--gt-N-Generated">OPTIONS->N_Generated</A><BR>
9.3.30. <A HREF="#OPTIONS--gt-Locate-Cost">OPTIONS->Locate_Cost</A><BR>
9.3.31. <A HREF="#OPTIONS--gt-Immediate-Exit-FALSE-">OPTIONS->Immediate_Exit[FALSE]</A><BR>
9.3.32. <A HREF="#OPTIONS--gt-Best-Cost">OPTIONS->Best_Cost</A><BR>
9.3.33. <A HREF="#OPTIONS--gt-Best-Parameters">OPTIONS->Best_Parameters</A><BR>
9.3.34. <A HREF="#OPTIONS--gt-Last-Cost">OPTIONS->Last_Cost</A><BR>
9.3.35. <A HREF="#OPTIONS--gt-Last-Parameters">OPTIONS->Last_Parameters</A><BR>
9.3.36. <A HREF="#OPTIONS--gt-Asa-Data-Dim-Dbl">OPTIONS->Asa_Data_Dim_Dbl</A><BR>
9.3.37. <A HREF="#OPTIONS--gt-Asa-Data-Dbl">OPTIONS->Asa_Data_Dbl</A><BR>
9.3.38. <A HREF="#OPTIONS--gt-Asa-Data-Dim-Int">OPTIONS->Asa_Data_Dim_Int</A><BR>
9.3.39. <A HREF="#OPTIONS--gt-Asa-Data-Int">OPTIONS->Asa_Data_Int</A><BR>
9.3.40. <A HREF="#OPTIONS--gt-Asa-Data-Dim-Ptr">OPTIONS->Asa_Data_Dim_Ptr</A><BR>
9.3.41. <A HREF="#OPTIONS--gt-Asa-Data-Ptr">OPTIONS->Asa_Data_Ptr</A><BR>
9.3.42. <A HREF="#OPTIONS--gt-Asa-Out-File">OPTIONS->Asa_Out_File</A><BR>
9.3.43. <A HREF="#OPTIONS--gt-Cost-Schedule">OPTIONS->Cost_Schedule</A><BR>
9.3.44. <A HREF="#OPTIONS--gt-Asymp-Exp-Param">OPTIONS->Asymp_Exp_Param</A><BR>
9.3.45. <A HREF="#OPTIONS--gt-Acceptance-Test">OPTIONS->Acceptance_Test</A><BR>
9.3.46. <A HREF="#OPTIONS--gt-User-Acceptance-Flag">OPTIONS->User_Acceptance_Flag</A><BR>
9.3.47. <A HREF="#OPTIONS--gt-Cost-Acceptance-Flag">OPTIONS->Cost_Acceptance_Flag</A><BR>
9.3.48. <A HREF="#OPTIONS--gt-Cost-Temp-Curr">OPTIONS->Cost_Temp_Curr</A><BR>
9.3.49. <A HREF="#OPTIONS--gt-Cost-Temp-Init">OPTIONS->Cost_Temp_Init</A><BR>
9.3.50. <A HREF="#OPTIONS--gt-Cost-Temp-Scale">OPTIONS->Cost_Temp_Scale</A><BR>
9.3.51. <A HREF="#OPTIONS--gt-Prob-Bias">OPTIONS->Prob_Bias</A><BR>
9.3.52. <A HREF="#OPTIONS--gt-Random-Seed">OPTIONS->Random_Seed</A><BR>
9.3.53. <A HREF="#OPTIONS--gt-Generating-Distrib">OPTIONS->Generating_Distrib</A><BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -