>백엔드 개발 >PHP 튜토리얼 >PHP로 유전 알고리즘 작성

PHP로 유전 알고리즘 작성

不言
不言원래의
2018-04-26 16:51:072297검색

이 글은 주로 PHP로 작성된 유전 알고리즘을 소개하는데, 이제 이를 모든 사람들과 공유합니다. 도움이 필요한 친구들은 이를 참고할 수 있습니다.

이 글은 PHP 언어로 유전 알고리즘을 작성하려고 합니다. 유전자 알고리즘에 대한 자세한 소개는 직접 참고하시기 바랍니다. 이 글은 인터넷상의 글쓰기 방법을 완전히 따르지 않으며, 사용된 중급 알고리즘도 그다지 영리하지 않습니다. 비판으로.

이 글에서 사용된 유전자 알고리즘 단계

-

1초기 모집단
- ②Elimination
- 3Crossover
- 4Mutation
- ⑤모집을 재구성하고 ②~4단계 반복
- ⑥ 추가 작업 예를 들어 그림
Section 1 이야기 서문 및 알고리즘 요약

1. 이야기 서문

이 글은 위대한 신의 가리비에 관한 이야기를 소개하는데, PHP 코드는 대략 이런 식으로 작성되었습니다.

어떤 해변에 가리비 떼가 걱정 없이 살고 있었는데, 신은 할 일이 없어서 밥에게 유전자 알고리즘을 사용하여 가리비 떼를 손질하라고 보냈습니다.

①당신. 가리비는 16마리만 가질 수 있는데, 각 세대마다 2마리씩 죽이겠습니다. 구글 크롬 아이콘과 다르게 조개껍질 2개 중 가장 많은 것을 죽이겠습니다.

② 남은 14마리 중 가리비 4마리가 쌍으로 결합하여 2마리의 새끼를 낳습니다. , 그리고 나서 16개 정도를 보충하세요.

이 가리비는 매우 괴로워요. 그런데 가리비가 좀 남았는데, 나중에 크롬 가리비를 만든 게 바로 이 가리비였어요.


2. 알고리즘 개요

유전 알고리즘은 다윈, 몽테스키외 등 신의 유전 규칙을 시뮬레이션하고, 여러 세대가 지나면 규칙을 준수하는 개체군을 선별, 재생산, 돌연변이시킬 수 있습니다.

유전 알고리즘의 첫 번째 단계는 초기 개체군을 설정하는 것입니다. 초기 개체군은 이야기의 처음 16개 가리비처럼 무작위로 설정할 수 있습니다.

두 번째 단계는 선별 과정인 제거 메커니즘을 확립하는 것입니다. 이를 위해 가리비의 뒷면 패턴이 크롬 아이콘과 얼마나 유사한지를 나타내는 피트니스 속성을 추가합니다. 여기서는 픽셀의 4개 채널의 차이값(절대값)을 합한 것이며, 4개 채널에는 투명채널이 포함된다.

이 글은 PHP 언어를 사용하여 유전자 알고리즘을 작성하려고 시도합니다.

유전 알고리즘에 대한 자세한 소개는 인터넷에서 작성 방법을 완전히 따르지 않으며, 작성자의 수준이 제한되어 있으므로 직접 검색해 보세요. 사용된 중간 알고리즘은 그다지 영리하지 않습니다. 비판을 염두에 두고 기사를 읽어 보십시오.

이 글에서 사용된 유전자 알고리즘 단계

-

1초기 모집단


- ②Elimination
- 3Crossover
- 4Mutation
- ⑤모집을 재구성하고 ②~4단계 반복
- ⑥ 추가 작업 예를 들어 그림
Section 1 이야기 서문 및 알고리즘 요약

1. 이야기 서문

이 글은 위대한 신의 가리비에 관한 이야기를 소개하는데, PHP 코드는 대략 이런 식으로 작성되었습니다.

어떤 해변에 가리비 떼가 걱정 없이 살고 있었는데, 신은 할 일이 없어서 밥에게 유전자 알고리즘을 사용하여 가리비 떼를 손질하라고 보냈습니다.

①당신. 가리비는 16개만 가질 수 있으며, 각 세대마다 2개의 껍질 중 Google Chrome 아이콘과 달리 가장 많은 껍질을 죽이겠습니다.


② 나머지 14개 중에서 가리비 4개가 결합하여 2명의 새끼를 낳습니다. 그런 다음 16개로 충분합니다.
이 가리비는 매우 고민되지만 어떻게 해야 할까요? 가리비 일부가 남았고 나중에 크롬 가리비를 만든 것은 정확히 16개였습니다.

2. 알고리즘 개요

유전 알고리즘은 다윈, 몽테스키외 등 신의 유전 규칙을 시뮬레이션하고, 여러 세대가 지나면 규칙을 준수하는 개체군을 선별, 재생산, 돌연변이시킬 수 있습니다.

유전 알고리즘의 첫 번째 단계는 초기 개체군을 설정하는 것입니다. 초기 개체군은 이야기의 처음 16개 가리비처럼 무작위로 설정할 수 있습니다.

두 번째 단계는 선별 과정인 제거 메커니즘을 확립하는 것입니다. 이를 위해 가리비의 뒷면 패턴이 크롬 아이콘과 얼마나 유사한지를 나타내는 피트니스 속성을 추가합니다. 여기서는 픽셀의 4개 채널의 차이값(절대값)을 합한 것이며, 4개 채널에는 투명채널이 포함된다.


관련 권장 사항:

PHP는 KMP 알고리즘을 구현합니다

위 내용은 PHP로 유전 알고리즘 작성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.