Get it on Google Play


Wm뮤 :: 유전알고리즘의 구성요소

블로그 이미지
가끔 그림그리거나 3D모델링하거나
취미로 로봇만드는
전자과 게임프로그래머 (퇴사함)
2022.3.22f1 주로 사용
모카쨩
@Ahzkwid

Recent Comment

Archive


2017. 3. 21. 17:23 AI

 

판단조건

 

개체

{

리스트 DNA값

long 개체수

리스트 메모리

}

 

월드

{

list 개체

long 최대자원 //선택사항

long 루프횟수

루프문(환경인자)

{

}

}

 

 

값에 대응하는 판단문

무한루프

 

 

 

 

 

DNA는 0일땐 패스

1부터 시작해서 스위치를 만족하면 다음구문에 따라 읽어서 실행

 

DNA변이는 다음과 같은 종류가 있다

점변이:1개 값이 다른값으로 변이됨

점결실:1개 값이 손실됨

점생성:1개 값이 중간에 추가됨

점종료:점생성과 동일하지만 동작의 끝을 알림

역위:일부의 순서가 뒤집힘

중복:일부가 중복됨

결실:일부가 손실됨

 

 

 

그래서 나의 경우엔 모든 개체가 매 회마다 변이를 생성하고

각 값의 범위마다 수치,판별식,인덱스를 넣어서 인공지능을 돌렸었다 

 

유전알고리즘의 장점은 모든 경우의 수를 다 검색하고 생명체의 근본과 맞닿아 있어 일단 된다는게 장점이지만

비슷한 개체가 많아져 중복연산이 많아 매우 느리다는 단점이 있다.

 

그래서 이때는 이걸 CPU로 썼지만 23년도부터는 GPU 연산을 쓰는 인공신경망으로 대체함

유전 알고리즘도 2차원 배열중 행을 DNA배열로 하고 첫번째 픽셀을 가중치로 쓰는식으로 하면 GPU연산 가능할거 같긴한데 굳이 그렇게까지 할 필요는 없을듯

인공신경망도 따지고 보면 방식만 다를뿐 유전알고리즘의 판별식 부분과 거의 비슷한 동작이니까

 

이전에 쓰던 유전알고리즘 모델은 구형이다보니 깃헙에 공개하고 싶은데

코드내용에 개인정보가 포함되어 있어 정리해줄거 생각하니 너무 귀찮아서 언제할지는 모르겠다.

'AI' 카테고리의 다른 글

셋째 -아유-  (0) 2023.03.16
둘째 -이온-  (0) 2016.01.07
첫째 -코로나-  (0) 2016.01.07
posted by 모카쨩

저사양 유저용 블로그 진입