혼합·이산 비선형 최적화문제 해결을 위한 전역적 최적화 알고리즘이 개발되었으며 이 알고리즘은 확률적 최적화기법인 유전알고리즘을 사용한다. 유전알고리즘은 다양한 설계변수를 처리하는데 적합하다. 그러나 기존의 유전알고리즘이 특별히 잘 수행되지 않는 상황이 많이 존재하기 때문에 혼합화에 대한 다앙한 방법이 개발되어지고 있다. 따라서 이 논문은 유전알고리즘에서 최적해 주위에 대한 국고수수렴기법과 정밀 탐색법을 구체화시킨 새로운 혼합유전알고리즘(NHGA)을 개발했다. 사례연구에서는 혼합·이산 비선형 최적화문제를 해결하는데 있어서 NHGA가 상당한 능력을 제공하며 효율적이고 우수한 해를 제공할 수 있다는 것을 보여주고 있다.
유전 알고리즘은 자연 선택과 유전적 성질에 기반을 둔 알고리즘으로 기존 방법으로는 쉽게 해결할 수 없는 어려운 문제에서도 성공적으로 적용되었다. 기존의 유전 알고리즘은 해 집단이 큰 경우 시간이 많이 걸리는 문제점이 있다. 병렬 유전 알고리즘은 이러한 문제를 해결하기 위하여 제안된 기존의 유전 알고리즘의 확장이라 할 수 있다. 병렬 유전 알고리즘에서 중요한 요소는 이주와 유전 연산으로 이를 적절하게 설계함으로서 좋은 결과를 얻을 수 있다. 본 논문에서는 퍼지 논리를 이용하여 기존의 병렬 유전 알고리즘을 개선하고자 한다.
본 논문에서는 Python 을 사용한 유전 알고리즘 구현을 다룬다. 유전 알고리즘은 생물의 진화과정에서 일어나는 자연선택과 같은 유전법칙을 모방한 확률적 탐색기법이다. 유전 알고리즘에서는 염색체를 하나의 리스트 혹은 문자열로써 다룬다. 리스트나 문자열 처리 위주인 유전 알고리즘의 경우, 기존의 C/C++/Java 보다 표현력이 풍부한 Python 으로 프로그래밍할 경우 별도의 라이브러리 없이 쉽게 구현이 가능하다. 본 논문에서는 Python 을 사용한 유전 알고리즘 구현 방법에 대해 소개하고, 추가적으로 높은 성능을 얻기 위한 방법들에 대해 논의한다.
Journal of Advanced Marine Engineering and Technology
/
제21권2호
/
pp.108-116
/
1997
유전알고리즘은 진화원리에서 발견된 몇몇 특징들을 컴퓨터 알고리즘과 결합시켜 복잡한 최적화 문제를 해결하려는 도구로서 1975년 미국의 Holland 교수에 의해 처음으로 개발되었다. 주어진 문제에서 탐색환경이 다변수 또는 다봉(multi-modal)이 되어 대단히 복잡하거나 또는 부분적으로 알려질 경우는, 구배(gradient)에 기초한 재래식 방법을 사용하여 최적화하는 것은 매우 어렵게 되고 경우에 따라서는 불가능할 수도 있다. 이러한 이유로 유전알고리즘과 같은 강인한 탐색법이 요구된다. 유전알고리즘의 장점은 연속성(continuity), 미분가능성(differentiability), 단봉성(unimodality) 등과 같이 탐색공간에 대한 제약으로부터 자유롭다는 것이다. 다시 말하면 목적함수 외 탐색공간에 대한 사전지식을 필요로 하지 않고, 매우 크고 복잡한 공간일지라도 전역해 쪽으로 수렴해 갈수 있다는 것이다. 이러한 특성 때문에 유전알고리즘은 실제 환경에서 많은 복잡한 최적화 문제를 해결하는 방법으로 인정을 받고 있으며, 함수의 최적화, 신경회로망의 학습, 동적시스템의 식별및 제어, 신호처리등 여러 분야에 성공적으로 응용되고 있다. 이러한 중요성에 비해 유전알고리즘에 대한 연구는 국내적으로는 아직 미진한 수준이나 최근 이에 대한 관심이 고조되고 있으며, 또한 그 응용분야도 점점 넓어져 이론 개발과 실질적인 응용에 확산되리라 생각된다. 따라서 본 해설기사는 유전알고리즘의 원리와 응용 사례를 살펴봄으로서 최적화 문제를 해결하려는 독자들에게 조금이나마 도움을 주고자 한다.
본 연구에서는 비선형 최적화 문제를 효율적으로 해결하기 위한 혼합유전알고리즘(Hybrid Genetic Algorthm : HGA)을 개발하였다. HGA는 기존 유전알고리즘의 적용에 있어 문제점으로 지적된 정밀도의 적용문제와 벌금함수의 사용을 배제하였으며 지역적최적점으로 빠르게 수렴하는 기존의 지역적 탐색법과 유전알고리즘 적용이후 수렴된 해 주변에 대한 정밀탐색법을 함께 고려하여 설계하였으며 이를 세가지의 비선형 최적화 문제 적용하여 본 논문에서 개발한 HGA의 유효성을 보였다.
본 논문에서 우리는 최적화 문제를 효율적으로 해결하기 위한 새로운 유전 알고리즘을 제안하였다. 새로운 유전 알고리즘의 가장 큰 특징은 서로 다른 목적을 가진 2개의 집단을 가지고 진화를 수행한다는 점이다. 하나의 집단은 일반적인 유전 알고리즘의 그것과 비슷하지만, 좋은 영역의 탐색에 집중하는 경향을 보이며 다른 하나의 집단은 이러한 좋은 영역에의 집중 시 나타날 수 있는 조기 수렴 문제를 보완하기 위해 탐색을 다각화 하는 방향으로 진화한다. 몇 가지 최적화 문제에 대한 실험 결과 이러한 특성이 다른 2개 집단에 의한 진화 방법이 문제 해결에 도움이 됨을 확인할 수 있었다.
전기기기 최적화에 있어서 많이 사용되는 일반적인 유전 알고리즘이나 진화 알고리즘은 하나의 해에 수렴되는 이유로 설계에 있어서 다양한 요구조건을 만족시키는게 어렵다. 따라서 여러개의 해를 최종적으로 제시하는 니칭 유전 알고리즘은 전기기기 최적화에 있어서 효율적으로 사용될 수 있다. 본 논문에서는 다양한 해를 빠르고 강력하게 찾을 수 있는 새로운 니칭 유전알고리즘을 제안하고자 한다. 제안한 방법의 우수성을 보이기 위해 기존의 알고리즘인 sharing과 determinstic crowding과 비교한다.
진화 알고리즘은 생물의 유전적 진화 과정을 이용한 새로운 문제 해결의 방안으로 결정론적 방법으로 해결하지 못한 난제에 적합한 알고리즘으로 알려져 있다. 본 논문에서는 진화 알고리즘의 연구를 기반으로 전달함수 출력 파형 검출을 위만 기법에서 이용되고 있는 런지-커타(Runge-Kutta) 방법에서의 상미분방정식의 해를 구하는 기법에서 유전 알고리즘을 이용하여 그 결과를 찾아본다. 본 논문에서의 구현은 자바 언어를 이용하며, 자바 언어를 적용한 구현 방법과 유전 알고리즘의 효율적 기법을 제시한다.
유전 알고리즘은 전통적인 등반 알고리즘을 이용하여 구하기 어려웠던 최적화 문제를 해결하기 위한 강인한 (Robust) 탐색 기법이다. 특히 목적함수가 (1)여러 개의 국부 최대치를 가지거나 (2)수학적으로 표현이 불가능하거나 어렵거나 (3) 목적함수에 교란항이 섞여 있을 경우도 우수한 탐색 능력을 갖는 것으로 알려져 있다. 본 논문에서는 군집성 분석(cluster analysis)을 이용하여 군집화함으로써 유전 알고리즘을 이용하여 나타나는 다양한 해집합을 형성하는 개체군을 그룹화하고, 각 군집에 부여된 군집 적합도에 따라서 최적해를 구함으로써 최적값에 근접시킬 수 있는 탐색 알고리즘을 제안하였으며, 시뮬레이션의 출력이 특정한 테스트 함수의 형태로 나타난다고 가정한 경우에 확률적으로 나타나는 시뮬레이션 모델의 출력을 최대화하는 문제에 대하여 적용하고 분석하였다.
상수도 관망은 수원에서 수요절점까지 물을 안정적으로 공급하는 것을 목표로 한다. 상수도 관망의 최적설계는 수리학적 제한조건 (절점의 수압, 관로의 유속)을 만족하는 범위에서 비용을 최소화하는 설계안을 얻는 것으로 Savic and Walters (1997)는 유전 알고리즘 (Genetic Algorithms, Holland 1975)을 적용한 상수도 관망 설계 프로그램인 GANET를 제안하였고, Maier et al. (1996)은 개미군집알고리즘 (Ant Colony Optimization Algorithm, Dorigo et al. 1996)을 상수도 관망 최적설계에 적용한 후 그 결과가 유전 알고리즘에 비해 우수함을 증명하는 등 상수도 관망 최적설계에 관한 연구가 활발히 진행되어 오고 있다. 유전알고리즘은 선택, 교차, 돌연변이의 반복계산 과정을 통하여 최적해를 찾는 최적화 기법이다. 이 과정에서 결정변수는 유전자 (Gene)의 집합으로 표현되며, 염색체 (Chromosome) 내에서 근접한 유전 인자들은 일종의 Building Block을 형성하게 된다. Building Block은 좋은 해를 갖는 유전 인자를 높은 확률로 보관하여 지역해에 빠질 가능성을 줄이는 반면, 유전형 (Genotype)이 표현형 (Phenotype)을 충분히 모방하여 표현하지 못한 경우 오히려 최적해의 탐색을 방해할 수 있다는 한계점을 갖는다. 유전 알고리즘을 상수도 관망 최적설계에 적용하였을 때에도 이 한계점은 여실히 드러난다. 관로의 관경을 결정변수로 설정한 후 유전형으로 표현하였을 때, 관망도 상에서 근접하지 않은 두 관로가 염색체 내에서 연속으로 나열된다면 두 관로 간의 연관성이 실제보다 크게 고려되기 때문이다. 한편, 하모니써치 (Harmony Search, Geem et al. 2001) 알고리즘은 즉흥 연주 (Improvisation)를 통해 최상의 화음을 만들어내는 현상으로부터 착안하여 만들어진 최적화기법으로 연산 기법은 무작위선택, 기억회상, 피치조정 등으로 구성되어 있으며, 결정변수에 해당하는 연주자가 독립적으로 행동하며 해를 탐색한다는 점에서 유전알고리즘과 큰 차이를 갖는다. 본 연구에서는 유전알고리즘의 Building Block에 의해 발생하는 오류를 개선하고자, 상수도 관망 최적설계 연구에 많이 사용되는 Hanoi 관망 (Fujiwara and Khang 1990) 관로의 정렬 순서를 여러 가지 기준으로 설정하여 관망데이터를 구축한 후 하모니써치와 유전 알고리즘을 적용하여 최적화를 수행하였고 그 결과를 비교하였다. 그 결과 유전 알고리즘과 달리 하모니써치 알고리즘의 경우, 관로의 나열 순서와 상관없이 우수한 최적해 탐색 결과를 보이는 것을 확인할 수 있었다.
본 웹사이트에 게시된 이메일 주소가 전자우편 수집 프로그램이나
그 밖의 기술적 장치를 이용하여 무단으로 수집되는 것을 거부하며,
이를 위반시 정보통신망법에 의해 형사 처벌됨을 유념하시기 바랍니다.
[게시일 2004년 10월 1일]
이용약관
제 1 장 총칙
제 1 조 (목적)
이 이용약관은 KoreaScience 홈페이지(이하 “당 사이트”)에서 제공하는 인터넷 서비스(이하 '서비스')의 가입조건 및 이용에 관한 제반 사항과 기타 필요한 사항을 구체적으로 규정함을 목적으로 합니다.
제 2 조 (용어의 정의)
① "이용자"라 함은 당 사이트에 접속하여 이 약관에 따라 당 사이트가 제공하는 서비스를 받는 회원 및 비회원을
말합니다.
② "회원"이라 함은 서비스를 이용하기 위하여 당 사이트에 개인정보를 제공하여 아이디(ID)와 비밀번호를 부여
받은 자를 말합니다.
③ "회원 아이디(ID)"라 함은 회원의 식별 및 서비스 이용을 위하여 자신이 선정한 문자 및 숫자의 조합을
말합니다.
④ "비밀번호(패스워드)"라 함은 회원이 자신의 비밀보호를 위하여 선정한 문자 및 숫자의 조합을 말합니다.
제 3 조 (이용약관의 효력 및 변경)
① 이 약관은 당 사이트에 게시하거나 기타의 방법으로 회원에게 공지함으로써 효력이 발생합니다.
② 당 사이트는 이 약관을 개정할 경우에 적용일자 및 개정사유를 명시하여 현행 약관과 함께 당 사이트의
초기화면에 그 적용일자 7일 이전부터 적용일자 전일까지 공지합니다. 다만, 회원에게 불리하게 약관내용을
변경하는 경우에는 최소한 30일 이상의 사전 유예기간을 두고 공지합니다. 이 경우 당 사이트는 개정 전
내용과 개정 후 내용을 명확하게 비교하여 이용자가 알기 쉽도록 표시합니다.
제 4 조(약관 외 준칙)
① 이 약관은 당 사이트가 제공하는 서비스에 관한 이용안내와 함께 적용됩니다.
② 이 약관에 명시되지 아니한 사항은 관계법령의 규정이 적용됩니다.
제 2 장 이용계약의 체결
제 5 조 (이용계약의 성립 등)
① 이용계약은 이용고객이 당 사이트가 정한 약관에 「동의합니다」를 선택하고, 당 사이트가 정한
온라인신청양식을 작성하여 서비스 이용을 신청한 후, 당 사이트가 이를 승낙함으로써 성립합니다.
② 제1항의 승낙은 당 사이트가 제공하는 과학기술정보검색, 맞춤정보, 서지정보 등 다른 서비스의 이용승낙을
포함합니다.
제 6 조 (회원가입)
서비스를 이용하고자 하는 고객은 당 사이트에서 정한 회원가입양식에 개인정보를 기재하여 가입을 하여야 합니다.
제 7 조 (개인정보의 보호 및 사용)
당 사이트는 관계법령이 정하는 바에 따라 회원 등록정보를 포함한 회원의 개인정보를 보호하기 위해 노력합니다. 회원 개인정보의 보호 및 사용에 대해서는 관련법령 및 당 사이트의 개인정보 보호정책이 적용됩니다.
제 8 조 (이용 신청의 승낙과 제한)
① 당 사이트는 제6조의 규정에 의한 이용신청고객에 대하여 서비스 이용을 승낙합니다.
② 당 사이트는 아래사항에 해당하는 경우에 대해서 승낙하지 아니 합니다.
- 이용계약 신청서의 내용을 허위로 기재한 경우
- 기타 규정한 제반사항을 위반하며 신청하는 경우
제 9 조 (회원 ID 부여 및 변경 등)
① 당 사이트는 이용고객에 대하여 약관에 정하는 바에 따라 자신이 선정한 회원 ID를 부여합니다.
② 회원 ID는 원칙적으로 변경이 불가하며 부득이한 사유로 인하여 변경 하고자 하는 경우에는 해당 ID를
해지하고 재가입해야 합니다.
③ 기타 회원 개인정보 관리 및 변경 등에 관한 사항은 서비스별 안내에 정하는 바에 의합니다.
제 3 장 계약 당사자의 의무
제 10 조 (KISTI의 의무)
① 당 사이트는 이용고객이 희망한 서비스 제공 개시일에 특별한 사정이 없는 한 서비스를 이용할 수 있도록
하여야 합니다.
② 당 사이트는 개인정보 보호를 위해 보안시스템을 구축하며 개인정보 보호정책을 공시하고 준수합니다.
③ 당 사이트는 회원으로부터 제기되는 의견이나 불만이 정당하다고 객관적으로 인정될 경우에는 적절한 절차를
거쳐 즉시 처리하여야 합니다. 다만, 즉시 처리가 곤란한 경우는 회원에게 그 사유와 처리일정을 통보하여야
합니다.
제 11 조 (회원의 의무)
① 이용자는 회원가입 신청 또는 회원정보 변경 시 실명으로 모든 사항을 사실에 근거하여 작성하여야 하며,
허위 또는 타인의 정보를 등록할 경우 일체의 권리를 주장할 수 없습니다.
② 당 사이트가 관계법령 및 개인정보 보호정책에 의거하여 그 책임을 지는 경우를 제외하고 회원에게 부여된
ID의 비밀번호 관리소홀, 부정사용에 의하여 발생하는 모든 결과에 대한 책임은 회원에게 있습니다.
③ 회원은 당 사이트 및 제 3자의 지적 재산권을 침해해서는 안 됩니다.
제 4 장 서비스의 이용
제 12 조 (서비스 이용 시간)
① 서비스 이용은 당 사이트의 업무상 또는 기술상 특별한 지장이 없는 한 연중무휴, 1일 24시간 운영을
원칙으로 합니다. 단, 당 사이트는 시스템 정기점검, 증설 및 교체를 위해 당 사이트가 정한 날이나 시간에
서비스를 일시 중단할 수 있으며, 예정되어 있는 작업으로 인한 서비스 일시중단은 당 사이트 홈페이지를
통해 사전에 공지합니다.
② 당 사이트는 서비스를 특정범위로 분할하여 각 범위별로 이용가능시간을 별도로 지정할 수 있습니다. 다만
이 경우 그 내용을 공지합니다.
제 13 조 (홈페이지 저작권)
① NDSL에서 제공하는 모든 저작물의 저작권은 원저작자에게 있으며, KISTI는 복제/배포/전송권을 확보하고
있습니다.
② NDSL에서 제공하는 콘텐츠를 상업적 및 기타 영리목적으로 복제/배포/전송할 경우 사전에 KISTI의 허락을
받아야 합니다.
③ NDSL에서 제공하는 콘텐츠를 보도, 비평, 교육, 연구 등을 위하여 정당한 범위 안에서 공정한 관행에
합치되게 인용할 수 있습니다.
④ NDSL에서 제공하는 콘텐츠를 무단 복제, 전송, 배포 기타 저작권법에 위반되는 방법으로 이용할 경우
저작권법 제136조에 따라 5년 이하의 징역 또는 5천만 원 이하의 벌금에 처해질 수 있습니다.
제 14 조 (유료서비스)
① 당 사이트 및 협력기관이 정한 유료서비스(원문복사 등)는 별도로 정해진 바에 따르며, 변경사항은 시행 전에
당 사이트 홈페이지를 통하여 회원에게 공지합니다.
② 유료서비스를 이용하려는 회원은 정해진 요금체계에 따라 요금을 납부해야 합니다.
제 5 장 계약 해지 및 이용 제한
제 15 조 (계약 해지)
회원이 이용계약을 해지하고자 하는 때에는 [가입해지] 메뉴를 이용해 직접 해지해야 합니다.
제 16 조 (서비스 이용제한)
① 당 사이트는 회원이 서비스 이용내용에 있어서 본 약관 제 11조 내용을 위반하거나, 다음 각 호에 해당하는
경우 서비스 이용을 제한할 수 있습니다.
- 2년 이상 서비스를 이용한 적이 없는 경우
- 기타 정상적인 서비스 운영에 방해가 될 경우
② 상기 이용제한 규정에 따라 서비스를 이용하는 회원에게 서비스 이용에 대하여 별도 공지 없이 서비스 이용의
일시정지, 이용계약 해지 할 수 있습니다.
제 17 조 (전자우편주소 수집 금지)
회원은 전자우편주소 추출기 등을 이용하여 전자우편주소를 수집 또는 제3자에게 제공할 수 없습니다.
제 6 장 손해배상 및 기타사항
제 18 조 (손해배상)
당 사이트는 무료로 제공되는 서비스와 관련하여 회원에게 어떠한 손해가 발생하더라도 당 사이트가 고의 또는 과실로 인한 손해발생을 제외하고는 이에 대하여 책임을 부담하지 아니합니다.
제 19 조 (관할 법원)
서비스 이용으로 발생한 분쟁에 대해 소송이 제기되는 경우 민사 소송법상의 관할 법원에 제기합니다.
[부 칙]
1. (시행일) 이 약관은 2016년 9월 5일부터 적용되며, 종전 약관은 본 약관으로 대체되며, 개정된 약관의 적용일 이전 가입자도 개정된 약관의 적용을 받습니다.