From e7d90a6a6bef168cac4b18587be68efa29038cfc Mon Sep 17 00:00:00 2001 From: JQSakaJoo Date: Tue, 24 Jun 2025 01:17:05 +0400 Subject: [PATCH] Add BSA (backtracking search algorithm) --- .../Math/AOs/PopulationAO/#C_AO_enum.mqh | Bin 18904 -> 24914 bytes .../AO_BSA_BacktrackingSearchAlgorithm.mqh | Bin 0 -> 21602 bytes MQL5/Include/Math/AOs/PopulationAO/links.html | 1 + README.md | 1 + 4 files changed, 2 insertions(+) create mode 100644 MQL5/Include/Math/AOs/PopulationAO/AO_BSA_BacktrackingSearchAlgorithm.mqh diff --git a/MQL5/Include/Math/AOs/PopulationAO/#C_AO_enum.mqh b/MQL5/Include/Math/AOs/PopulationAO/#C_AO_enum.mqh index 92181991a2e6540efeee404b12b22b4f45eaf31c..e02afe509b5debdeb6c329c9ab4576d075aa8d10 100644 GIT binary patch literal 24914 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 delta 690 zcmZuvO-lk%6uslvCUK#Y^O0zxsfABNDnF{tsA)nHIFSTG7__W5{QzklExheowJxY| zAK|)HZCdshYG3s3n9v(#80PWLx#zrh&b$t!ca$FPru%-+i!bekX^8O0gdI45GHmk| z198`c21k#9VKN-T%dm<+VOzo<~$u#5Xxw8&kHRKEba9CGN+t6V((^ zr9x~pV+MX@{rDVn8zSC>DoxV)@v)*v45he%uEb1A O`t`MIPyed=H2Vudn0WO7 diff --git a/MQL5/Include/Math/AOs/PopulationAO/AO_BSA_BacktrackingSearchAlgorithm.mqh b/MQL5/Include/Math/AOs/PopulationAO/AO_BSA_BacktrackingSearchAlgorithm.mqh new file mode 100644 index 0000000000000000000000000000000000000000..4ee2036fa520ba283e24261a41413b0fa5d51263 GIT binary patch literal 21602 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 literal 0 HcmV?d00001 diff --git a/MQL5/Include/Math/AOs/PopulationAO/links.html b/MQL5/Include/Math/AOs/PopulationAO/links.html index 9b2f17f..dbf69f3 100644 --- a/MQL5/Include/Math/AOs/PopulationAO/links.html +++ b/MQL5/Include/Math/AOs/PopulationAO/links.html @@ -69,6 +69,7 @@ RFOroyal flush optimization (joo) AOSmatomic orbital search M TSEAturtle shell evolution algorithm (joo) + BSAbacktracking search algorithm DEdifferential evolution SRAsuccessful restaurateur algorithm (joo) CROchemical reaction optimisation diff --git a/README.md b/README.md index df99e32..a99905a 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,7 @@ ASO (anarchy society optimization) RFO (royal flush optimization, joo) AOSm (atomic orbital search M) TSEA (turtle shell evolution algorithm, joo) +BSA (backtracking search algorithm) DE (differential evolution) SRA (successful restaurateur algorithm, joo) CRO (chemical reaction optimisation)