Visual Studio C++을 플랫폼으로 사용하여 전역 최소값으로 수렴하려고합니다.유전자 알고리즘을 사용하여 2 가변 함수의 전역 최소값에 수렴
이 함수가 블랙 박스 함수라고 가정 해 봅시다. 여기서 입력 (x, y)에 z를 얻습니다.
또한 사용 된 알고리즘은 샘플을 이진 코드로 변환하지 않고 대신 부동 소수점으로 변환하는 실제 값 유전 알고리즘입니다. 가변 기능 -
https://karczmarczuk.users.greyc.fr/TEACH/IAD/GenDoc/carrGenet.pdf
I는 2의 최소치를 찾는 부록 B. 거기에 언급 된 알고리즘을 사용 하였다.
F (X, Y) = Z I 문제의 그래프를 얻을 수있는 그리드 값 검색했을
. 나는 그래프를 첨부했다. 여기
그래프 만 한 점 (0.6, 1.3)에있을에서 볼 수 있듯이, 그래프의 최소값.
0.1의 배수로 (x, y)의 불연속 값을 사용하면 알고리즘이 수렴됩니다. 예를 들면. 0.8,0.9,2.2,5.6 등. 그러나 그렇지 않으면 수렴하지 않습니다.
그래프를 알고리즘에 맞게 수정할 수 있습니까? 아니면 알고리즘을 수정하여 함수를 최소화 할 수 있습니까?
왜 그래프를 수정하겠습니까? 마치 집에 더 많은 공간을두고 싶을 때 사진을 찍어 집을 크게 만드는 것과 같습니다. 그리고 어떤 알고리즘? – plasmacel
@plasmacel 처음에는이 그래프를 얻기 위해 z의 로그를 취했습니다. 알고리즘을 수렴하기가 쉽도록 다시 처리하는 다른 방법이 있다면. –
최소화 할 함수 나 최소화 알고리즘에 대한 정보는 제공하지 않습니다. 어떻게 도움을 기대합니까? – plasmacel