2

누군가 "돌연변이 단계 크기"를 어떻게 설명 할 수 있습니까? 내가 유전자 알고리즘에 관한 기사를 읽고 있어요하고 말한다 :유전 알고리즘의 돌연변이 단계 크기

"이 돌연변이는 무작위로 노드의 결정을 변경 또는 0.25의 스텝 크기 값을 변이"

나는의 역할을 알고 GA 수명주기의 돌연변이가 있지만 돌연변이의 단계 크기가 무엇인지에 대한 좋은 설명을 찾을 수 없습니다.

감사합니다.

답변

1

근본적으로 돌연변이가 얼마나 멀리 마지막 값에서 멀어 질 수 있는지입니다.

"실제 값 검색 공간에 관한 한, 돌연변이는 정상적으로 분포 된 난수 값을 각 벡터 구성 요소에 추가하여 정상적으로 수행됩니다. 단계 크기 또는 돌연변이 강도 (즉 정규 분포의 표준 편차)는 종종 자기 적응에 의해 규율된다 (진화론 참조). "

당신이 돌연변이를 일으키는 벡터 (예 : X = [x1, x2, .., xN])에 대한 복잡한 말은 돌연변이보다 크지 않은 임의의 양으로 벡터의 값을 수정합니다 단계 크기. 그래서 우리는 normal (v, stdDev)라는 함수를 가지고 stdDev를 사용하여 임의의 값을 중심으로 정규 분포를 갖는 임의의 값을 생성했다고 가정 해 봅시다. 그런 다음 해당 벡터의 각 값을 다음의 가짜 코드로 수정합니다.

for x in X { 
    x = normal(x,mutationStepSize) 
} 
+1

예를 들어, "단계 크기"의 의미는 변이 알고리즘에 따라 다릅니다. 간격 [-0.25, 0.25]에서 균등하게 생성 된 숫자가 원래 누 더머에 더해질 수도 있습니다. 나는 돌연변이 알고리즘에 대한 지식이 없다면 돌연변이의 강도라고 생각합니다. – zegkljan

+0

그건 정확히 내가 말한 것과 내가 쓴 의사 코드가 가리키는 것입니다. – chubbsondubs

+0

@chubbsondbus 예, 저는 그것이 정규 분포와 특별히 관련이 없다는 것을 강조하고 싶었습니다. – zegkljan