시뮬레이션 된 어닐링은 값의 벡터가 목적 함수의 점수를 향상 시키도록 조정되는 프로세스입니다. Encog를 사용하여 시뮬레이트 된 어닐링을 사용하여 신경 네트워크를 학습하는 경우 조정/최적화하려는 벡터는 신경 네트워크의 가중치입니다. 목표 함수는 주어진 데이터 세트에 대해 원하는 출력과 비교할 때 신경망이 현재 가중치 집합에 대해 얻는 오류를 간단하게 나타냅니다. 가장 간단한 최적화 방법 중 하나 인 무작위 걸음을 고려하십시오. 여기서 하나의 가중치를 선택하고 증가 시키거나 감소시킵니다. 만약 체중의 변화가 오류를 낮춘다면, 체중 변화는 영구히되고 새로운 체중에서 반복됩니다. 오류가 개선되지 않으면 체중 변화가 취소되고 새로운 체중이 선택됩니다. 랜덤 워크는 체중 구성 사이를 무작위로 걷는 것으로 생각할 수 있으며 오류가 개선되면 새로운 위치 만 유지할 수 있습니다.
시뮬레이션 어닐링은 매우 유사하지만보다 나은 오류로 나아 가기 위해 더 나쁜 오류가있는 새로운 위치를 받아 들여야하는 경우가 종종 있음을 인정합니다. 가끔은 두 단계 앞으로 나아가려면 한 단계 뒤로해야합니다. 온도 범위는 시뮬레이트 된 어닐링이 나쁜 동작을 받아들이는 가능성을 지정합니다. 높은 기온은 낮은 기온보다 높습니다. 온도가 높아지고 낮아집니다. 저온에서 시뮬레이션 어닐링은 본질적으로 랜덤 워크입니다. cycles 매개 변수는 알고리즘이 더 나은 위치로 이동하려고 시도하는 횟수를 지정합니다.