welcome to alumni.media.mit.edu - 유전알고리즘을이용한...

28
유전 알고리즘을 이용한 지수 귀문도 풀이 속도 개선 (Improvements in the Performance of the Hexagonal Tortoise Problem using the Hybrid Genetic Algorithms) 지도교수 문병로 : 이 논문을 공학학사 학위 논문으로 제출함. 2005 12 26 서울대학교 공과대학 컴퓨터공학부 이준기 2006 2

Upload: others

Post on 06-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

유전 알고리즘을 이용한

지수 귀문도 풀이 속도 개선

(Improvements in the Performance

of the Hexagonal Tortoise Problem

using the Hybrid Genetic Algorithms)

지도교수 문병로:

이 논문을 공학학사 학위 논문으로 제출함.

년 월 일2005 12 26

서울대학교 공과대학

컴 퓨 터 공 학 부

이 준 기

년 월2006 2

Page 2: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

차례< >

서론1. 1

연구 내용2. 2

가 유전자 표현법. 2

나 안정 상태 유전알고리즘과 세대형 유전알고리즘. (Steady State) (Generaltional) 3

다 교차 연산. 3

라 변이 연산. 4

마 선택. 6

바 교체. 7

사 종료조건. 7

아 지역 최적화. 7

자 지역 최적화 이웃 탐색. 2 : (Nearby - Search) 13

결과3. 14

가 실행 환경. 14

나 차 실험 결과. 1 14

다 발견한 크기의 지수귀문도. 24, 54 15

라 차 실험 결과. 2 16

마 발견한 의 지수귀문도와 차 실험까지 발견한 최대 적합도를 가지는 크. 80, 110 2 224

기의 지수귀문도 18

바 차 실험 결과. 3 19

사 발견한 크기의 지수귀문도. 144, 182 22

아 육각형의 평균 합과 적합도 그리고 최적해와의 관계. 23

결론4. 25

참고 문헌5.

Page 3: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 1 -

1. 서론

지수귀문도는 조선시대 학자인 최석정에 의해 고안된 육각형 모양의 마방진 퍼즐이다.

퍼즐은 전체적으로 육각형 모양이 서로 맞물려 있는 형태이다 이 육각형 각 모서리에 숫.

자가 배치되어 육각형들의 모서리 숫자들의 합이 모두 같아야 한다는 조건이 있다 모서리.

개수가 인 지수귀문도의 경우 까지의 숫자가 배치된다 육각형의 합을 최대화하는N 1~N .

것이 문제의 목적이다 지수귀문도 문제는 다항시간 내에 풀 수 없는 알고리즘 으로 알. (NP)

려져 있다 따라서 해공간을 제한적으로 탐색하는 효과적인 유전알고리즘이 존재한다 지. .

수귀문도 문제를 유전알고리즘으로 이 문제를 풀기 위한 적합도는 아래와 같이 주어진다.

육각형의 총수:

번째 육각형의 합: i

본 논문에서는 위의 적합도 함수를 그대로 이용하면서 계산 속도를 개선할 수 있는 수식

을 통해 속도를 개선하였으며 혼합형 유전 알고리즘을 사용하기 위해 와 근(hybrid) 2-Opt

접 변환 등을 적용하였다 총 차에 걸쳐 실험하였으며 시험을 거(consecutive Exchange) . 3

치면서 성능을 점차적으로 개선하였다.

차 실험에서는 이 크기의 지수귀문도에 대해서 최희만의 논문에서 제시된 근1 N 24,54

접 변환 의 변형 을 이용하여 프로그램을 수행하여 보았다 이 인 크기에서는 답(2-Opt ) . N 24

을 잘 구했으나 이 인 경우에 대해서는 평균 초의 수행시간이 걸렸다 이러한 속도N 54 51 .

로는 더 큰 크기의 해를 구하는데 한계가 있으므로 속도 개선이 필요했다.

차 실험에서는 최적화 수행시 적합도 재계산을 최소화하는 식을 고안하였다 이 식을2 .

적용한 결과 최적화 속도가 현저하게 빨라져 큰 크기의 문제를 풀 수 있는 시작점을 제공

하였다 속도 제한으로 한계를 두었던 지역 최적화 적용 회수도 기존 회로 제한되었. 20~30

던 것을 회 이상 두어도 될 정도로 속도가 개선되었으며 이를 바탕으로 이 의400 N 54, 80

크기의 해를 쉽게 찾을 수 있었다 하지만 이 인 해를 구하는 문제에 있어서는 여전. N 110

히 한계점이 노출되었고 이를 해결하기 위해서 최희만 씨 논문에서 제시된 두 번째 수리

알고리즘을 적용하였다 이 인 크기의 문제에서 매 실행 시 최적해를 얻도록 수행 성. N 80

능이 개선되었으며 이 인 문제에서도 최적해를 간혹 찾을 수 있었다 이 외에 다양한N 110 .

실험을 통해 최적화 반복 허용 회수와 적합도 최고값 평균과의 관계 변이율과 적합도 최,

고값 평균과의 관계 등을 알아보았다.

차 실험에서는 차 실험에서도 여전히 해를 찾는 빈도수가 현저히 낮았던 의 해 구3 2 110

Page 4: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 2 -

하는 과정의 성능을 전반적으로 계선하고 이를 바탕으로 이 이상 크기의 해를 찾는N 110

방법을 모색하였다 룰렛 선택 알고리즘에 이진 탐색을 도입하여 속도. (roulette Selection)

를 에서 으로 획기적으로 개선하였고 기법을 도입하여 실험해 보았Aging

다 이 기법은 지역 최적해 빠져서 수렴 상태로 갔을 때 다시 빠져나오는 방법을 모. Aging

색해 주었다 또한 세대의 후반 부 수렴으로 가는 단계에서 해에 좀 더 가깝게 하기위해. ,

다양한 방법을 고안하고 실험해 보았다 먼저 세대가 일정 이상 커진 경우 변이율을 바꿀.

수 있도록 했고 서로 차이가 나는 수에 대해서만 교체했던 인접 변환을 바꾸어 그 이상에1

대해서도 점진적으로 적용될 수 있게 프로그램을 수정하였다 이 두 방법으로 크기의. 110

문제의 해 찾는 능력을 획기적으로 개선하였으며 수렴율이 떨어지고 높은 확률로 해( 380

를 찾을 수 있게 되었고 간혹 도 찾을 수 있었다 이 인 크기의 문제에 대해서도381 .) N 144

해를 찾을 수 있었다 마지막으로 적용한 방법은 이웃 탐색 이다492, 493 . (nearby-Search) .

크기의 실험에 대해서는 해는 찾으나 만족하지 못한 성능을 보였던 방법이 오히려144 182

크기에서는 해를 찾는데 도움을 주었다 이 방법으로 값의 해를 크기에서 찾을 수. 616 182

있었다.

2. 연구 내용

가. 유전자 표현법

유전자 표현법은 아래의 그림과 같이 번호를 매겨서 일반적인 차원 위치 기반 인코딩1

법을 사용하였으며 대칭을 고려하지 않을시 개의 순열이 존재(locus-based encoding) 24!

한다.

차 실험에서 크기의 최적해를 관찰 해 본 결과 가장 자리의 꼭지점들은 개1 24, 54 1, 2

의 육각형에 속해 있고 안쪽 꼭지점 들은 항상 개의 육각형이 서로 접해 있다 즉 안쪽 꼭3 .

지점에 높은 숫자가 올 수록 유리하다 이를 이용하여 차 실험에서 바깥쪽에 낮은 숫자를. 2

우선 배치하고 안쪽에 큰 숫자를 분리하여 배치하는 방법으로 초기해를 생성해 보았지만

이는 속도 개선에 거의 영향을 주지 못했으며 오히려 해의 다양성이 떨어져서 최적해에 접

근하는데 방해 요인이 된 것을 발견할 수 있었다.

그림 1 유전자 표현법

0th row

1st row

2nd row

3rd row

01 3

42

5

12

19

Page 5: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 3 -

표 1 크기 인 문제 공간에서의 탐색80

해공간 만들기 방법간의 비교-

분리된 해공간

만들기

기존 해공간

만들기

최적해 평균

분산( )

279.5438

(0.6136)

280.0425

(0.7596)

나. 안정 상태 유전알고리즘과 세대형 유전알고리즘(Steady State) (Generaltional)

초기해를 개로 두고 개의 해를 교체하는 방법을 사용했다 전체 해를 교체하지500 150 .

않으므로 안정 상태 유전 알고리즘 에 가깝다 실험에서는 교체 대상이 되는(steady GA) .

나쁜 해에서 최하위 해를 살려두는 방법을 택하지 않고 균등하게 뽑아내는 방법을 사용하

였다 즉 최하위 개를 선택하는 것이 아니라 개 중 개를 균등하게 뽑아서 이를 보. , 50 150 50

존하였다 이는 단순히 해를 보존하는 방법보다 교체되는 해를 골고루 남겨두어 후에 연산.

적용 시 더 다양한 해를 생성토록 하기 위함이다.

다. 교차 연산

교차연산은 최희만씨의 논문을 참고하여 교차 연산 후 수정하는 두 번째 알고리즘을 적

용하였다 실제 이 알고리즘의 성능은 아주 우수했다 특히 후반부에 꾸준히 새로운 최적해. .

를 찾아내는 능력이 기존 기본적인 알고리즘 최희만씨patch_gene1( patch ), patch_gene2(

의 첫 번째 알고리즘 에 비해 우수하였다) .

void patch_gene3(gene *child) {

series check = {0,};

int i, j, k;

for (i=0; i<Number_of_Points; i++)

check[child->genes[i]]++;

for (i=1, j=1; i<=Number_of_Points; i++)

if (check[i]) {

k = check[i];

check[i] = j;

j += k;

}

for (i=0; i<Number_of_Points; i++) {

j = child->genes[i];

child->genes[i] = check[j];

check[j]++;

Page 6: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 4 -

}

}

그림 2 새로 도입한 알고리즘의 성능 비교patch_gene3

255

260

265

270

275

280

1 31

patch_gene3

patch_gene2

의 경우 후반부에 지역 최적해에서 수렴하는 경향을 보이는데 반해patch_gene2

는 꾸준히 최적해로 진행하는 모습을 보여줬다 도 한계는 있으patch_gene3 . patch_gene3

나 후반부 해를 찾는 능력이 상대적으로 에 비해 우수하였다patch_gene2 .

라. 변이 연산

변이의 경우 임의의 두 위치를 서로 바꾸어 주는 작업을 교차연산 후 수행하였다 변이.

율과 임의의 두 위치를 몇 번 연속으로 바꾸어주는 회수를 인자로 정해 실험해 보았다 결.

과만 놓고 단순 판단하기에는 변이율을 높이는 것은 오히려 해에 도움이 안되고 변이 회술

는 거의 영향을 미치지 않는 것으로 나온다 아래의 표와 그래프를 비교해보면 변이율이.

올라가는 것에 대한 것은 실이 많고 반복회수는 오히려 많을 수록 해를 골구루 퍼지게 하

여 유리한 것으로 나타났다.

표 2 총 회 한 결과입니다100 test .

변이율 0.1

반복 4

변이율 0.3

반복 4

변이율 0.6

반복 4

변이율 0.3

반복 10

최적해 평균 280.155 279.5438 279.3224 279.7281

분산 0.76671 0.610071 0.846266 0.787192

Page 7: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 5 -

그림 3 크기가 인 지수귀문도에 대해서 변이율과 변이회수를 달리한 실험80

240

245

250

255

260

265

270

275

280

285

1 31

0.3 4

0.6 4

0.3 10

0.1 4

그림 4 변이율과 최적해 평균과의 상관관계

279.2279.3279.4279.5279.6279.7279.8279.9

280280.1280.2280.3

0 0.2 0.4 0.6 0.8

위의 그래프 상에서도 인자를 가진 그래프가 비교적 조금 높은 해를 찾는 것을0.3, 10

확인할 수 있었다 또한 변이율이 낮을수록 높은 해를 찾는 비용이 높다는 것도 알 수 있었.

다 실험에서는 의 변이율을 적용하였고 이를 균등하게 유지하였다 세대 후반부 예를. 0.1 . (

들어 세대 후 에 변이율을 높여주는 방법을 고안하고 이를 실험해 보았으나 이미 어1000 )

느 정도 수렴해서 지역 최적해의 정점에 있는 해를 적정 수준으로 교란해도 해의 개선은

쉽게 이루어지지 않았다 변이는 해의 설익은 수렴을 막아주는 효과가 있으나 이에 대해.

쉽게 증명해 내기 어려웠으며 후반부 교란 을 주는 방법은 해가 계속 다양해(perturbation)

지는 효과가 있어 해 공간 탐색에 유리할 것으로 생각 되었지만 그 지역에서 최적 해를 찾

는 것을 방해하는 효과도 같이 가지고 있었다.

Page 8: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 6 -

마. 선택

선택 방법은 수렴도가 높고 좀 더 가파르게 최적해를 찾아나가는 룰렛 선택 방식을 사용

했다 차 실험에서는 룰렛 선택의 단점인 수행 속도. 3 ( 를 극복하기 위해 미리 조정된)

적합도 값 을 저장하고 또한 이 값의 누적 합 값도 저장해 두어 이진 탐(re-scaled fitness)

색을 이용한 룰렛 탐색을 사용할 수 있게 하였다 수행속도가. ( 으로 개선되었으)

며 개의 표본을 가질 때 최악의 경우 선택 회수가 번 반복하였지만 번 반복으로500 500 9

반복 횟수가 현저하게 줄어들어 전체적인 실행 속도를 개선해주었다 알고리즘은 아래와.

같다.

int roulette_wheel_selection() {

double point = ((double)rand())/((double)RAND_MAX) * rescaled_sum_of_fitness;

int s, e, m;

s = 0;

e = Number_of_Population - 1;

이진 탐색을 을 이용하여 구현// while-loop

이를 위해 미리 누적합이 저장되어 있어야 한다// .

에 이 값을 저장// pool[i].added_value .

while (s<e) {

m = (s + e) / 2;

if (point < pool[m].added_value)

e = m - 1;

else if (point > pool[m].added_value)

s = m + 1;

else

break;

}

if (m >= 0 && m <Number_of_Population) return m;

탐색 실패시 오류시 랜덤값 반환// ( )

return rand() % Number_of_Population;

}

이 문제에서는 적합도 값의 분포가 몰려있게 되어 룰렛 선택고유의 취지가 사라지는 단

점이 있다 특히 최저 적합도의 해를 남겨두는 방식으로 인해 전체 표본 중 적합도 최저 값.

이 현저하게 낮아져서 전체적인 적합도 값이 상부에 모이는 결과를 낳게 하며 이러한 이유

로 인해 기존의 알려진 선택 압 을 사용할 경우 원래 의도하던 압력보(selection Pressure)

다 현저하게 낮은 압력을 적용하게 된다는 사실을 알게 되었다 이러한 부분을 개성하기.

위해 순위 기반 선택 방법도 실험해 보았지만 룰렛 선택 방식에 비(rank-based Selection)

하여 최고 적합도 평균값이 많이 떨어졌다 그래서 선택압을 로 두어 적용치 않거나. 1

의 값으로 높이는 방법 모두를 적용해 보았다 선택압을 높였을 때 일어나는 설익은10~20 .

Page 9: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 7 -

수렴이 거의 일어나지 않은 것으로 보아 위의 실험들이 유의미하며 선택압의 적정값에 대

한 논의 룰렛 선택에 알맞은 새로운 적합도 조정 함수의 필요성에 대한 논의가 필요하다,

는 것을 알 수 있었다.

바. 교체

가장 낮은 적합도를 가지는 하위 해들을 일정 부분 남겨두고 아래서부터 개를 새로150

생성한 해와 교체하는 방법을 사용하였다 하위 해를 개 중 개 정도를 남겨 두었다. 500 50 .

차 실험에서는 위에서 설명한 바와 같이 하위 해는 교체되는 개 중 균등하게 뽑아 남3 150

겨두었다 또한 유전자에 나이 를 적용하여 오래된 유전자를 교체해주는 알고리즘을. (age)

최희만 씨의 논문을 참고하여 추가하였다 최희만 씨의 논문과 달리 나이 적용 은 뚜. (aging)

렷한 성능 개선 효과를 보여주지는 않았다 이는 적합도 함수 값의 차이 최희만씨 논문은. (

사용 에서 기인하는 것인지 정확한 원인은 알 수 없다 실제로 근접) . , 1- (1-consecutive)

만 적용시 나이 적용 은 어느정도 효과가 있었으나 근접 적용 후(aging) n- (n-consecutive)

큰 효과를 보지못했으며 이러한 원인을 좀 더 연구해 봐야할 것 같다 나이 적용을 위한 변.

환된 적합도 함수는 아래와 같다.

수식 11 으로 변환된 적합도 함수Aging

× ×

사. 종료조건

적합도 를 측정하는 시점을 두고 그 시점이 지날 동안 적합도의 변화가 없으면(fitness)

프로그램을 종료 시켰다 계속 변화가 있을 시 최대 반복 회수 를 수행하. (maximum epoch)

고 종료하도록 했다 시간 제한은 없었으며 이미 구해진 최적해와 답이 일치될 경우도 종.

료하도록 했다 해가 의 경우 에서 수렴되면 로 가는 경우는 거의 존재하. 381, 380 380 381

지 않아서 에서 바로 종료시키도록 했다 이는 다른 경우도 마찬가지다380 . .

아. 지역 최적화

첫번째 실험의 인접 변환 방법은 전체 최적 인접 변환(Neighbor Exchange 2-Opt) (Full

보다는 비교 횟수가 적으면서 같은 효과를 볼 수 있는 우수한 방법이었다 하지만2-Opt) .

여전히 큰 크기의 문제 공간을 탐색하기에는 여러운 속도를 보여주었다 회 바꾸는 것을. 30

한도 값으로 정해서 실험했을 때도 크기에 대해서 초 크기에 대해서 매번 초24 10 , 54 50

이상의 시간을 소요하였다 그러한 이유로 두 번째 실험의 가장 큰 목표를 지수귀문도 문.

제에서 일반적인 최적 교체 시 적합도 재계산 속도를 최적화 하는 것으로 정했2- (2-Op)

다 기존에는 매번 전체 적합도를 다시 계산하는 방법을 사용해 속도가 매우 느렸다 다음. .

은 재계산 시 꼭 필요한 식 만을 유도하는 과정이다.

Page 10: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 8 -

일반적인 적합도 의 변화량은 아래와 같다(fitness) .

한 점은 개의 육각형에 걸쳐 있게 된다 다음과 같은1~3 . 를 정의하자.

는 각각 개의 육각형에 걸쳐 있게 되는데 서로 같은 육각형에 겹칠 수도 있(i+1), (i) 1~3

다 이 수를. 라고 하면

의 숫자가 위치하는 꼭지점이 포함된 육각형의 수(i+1) -

의 숫자가 위치하는 꼭지점이 포함된 육각형의 수(i+1) -

로 를 정의한다.

는 각각 가 속해있는 육각형 번호의 집합이라고 하자(i+1), (i) .

로 를 정의한다.

바뀐 육각형 합의 평균 은 아래와 같다.

육각형 개수:

∇ 두 꼭지점의 숫자 차이 여기서는: 이 된다.

만약① 인 경우

가 되어 ∇ 이 된다.

∇가 증가하는 지를 알아보려면 즉 교체할 필요가 있는지 알아보려면, 만

있으면 되며 ∇도 쉽게 계산되므로 바뀐 적합도값 도 쉽게 계산할 수 있다( ) .

When ≠

∊∪

은 부호 결정시 고려하지 않는다, .

∊∪

∇ ∇ when ∇

Page 11: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 9 -

∇ ∇ ∊

∇ ∇ when ∇

∇ ∇ ∇

∇ ∇

이렇게 되면 가 속하는 육각형의 합의 차를 구해 위식에 대입하면(i+1), (i) 를 구할 수

있고 이 부호와 ∇의 부호가 같아진다.

또 가 같으므로 ∇ 으로 구할 수 있다.

만약① ≠인 경우

위 수식 또한 몇 가지 정보만 사전에 가지고 있으면 적합도 자체를 다시 계산하는 것 보

다는 훨씬 짧은 시간 내에 그 차이를 계산할 수 있다 이를 위해 가지고 있어야할 정보는.

아래와 같다.

원 적합도 원 평균값 평균과의 차의 제곱의 합 합, , ,

이 경우는 인 경우와 달리 ∇를 구해서 증감을 안 후 교체를 시도해야 한

다.

다음은 지역 최적화에서 반복 회수에 관련된 조사이다.

Page 12: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 10 -

찾은 적합도

최고값

적합도

최고값 평균

적합도

최고값

표준편차

실행시간

평균

초( )

실행시간

표준편차실행회수

크기80

20max281 279.8782 0.7441 3.8062 0.7125 100

크기80

40max281 280.2081 0.7980 6.3998 1.1925 100

크기80

60max281 280.3255 0.770811 7.09626 1.32908 100

크기80

500max281 280.6713 0.6288 11.5943 2.2921 100

반복 회수가 높을수록 최적해를 찾는 비중이 더 높아짐을 확인할 수 있다 즉 최적해에. ,

가까이 가는데 있어 지역 최적화 반복 허용 회수가 매우 중요한 역할을 담당함을 알 수 있

다 또한 첫 번째 실험에서 에 해를 찾는 비중이 에서 로 높아진 것으로 볼 때. , 54 4% 100%

속도 개선으로 반복 회수와 지역 최적화 반복 회수 양쪽에서 모두 이득을 얻는 것으로 나

타났다 다음의 그래프를 보자.

그림 5 로그 크기로 비례하는 최적해 평균과 지역 최적화 허

용회수

279.8279.9

280280.1280.2280.3

280.4280.5280.6

280.7280.8

0 100 200 300 400 500 600

Page 13: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 11 -

그림 6 로그 크기로 비례하는 평균 수행시간과 지역 최적화허용회수

0

4

8

12

16

0 100 200 300 400 500 600

이 그래프에서 허용 횟수가 증가함에 따라 최적해 평균이 크기 형태로 증가하는 것을log

나타내었다 즉 허용 횟수가 늘어남에 따라 최적해 평균이 올라가지만 그 비율이 로그에. ,

비례한다는 것이다 그림 에서는 수행 시간 또한 지수 함수에 비례하는 것을 보여준다. 6 .

표 4 크기 문제에서 크기와 최적화 허용 회수를 서로 달리한 실험 회 실험110 Candiate (100 )

최적해 평균 분산 해의 수381 해의 수380 실행시간

Candidates 150

Maximum Optimizing 500378.7831 0.769685 5 3

35.7198

(6.5629)

Candidates 300

Maximum Optimizing 50378.972 0.773642 4 19

58.2553

(2.8924)

위의 예는 크기의 크기가 큰 문제애서 해를 구할 때 어떤 인자로 설정하는 것이 좋은110

지 간단히 실험한 데이터이다 으로 감소시켜 속도를 개선한 뒤. Maximum Optimizing 50

표본을 으로 늘려서 성능 개선을 꾀하였다 최적해 평균과 분산은 거의 동일하지만 약300 .

간 개선되었고 좋아진 점은 해를 찾는 회수가 늘어났다는 점이다 해는 거의 같고. (381 ,

에 훨씬 많이 도달하였다 에 월등히 많이 도달하였음에도 전반적인 평균의 차가380 .) 380

크지 않은 것은 그만큼 나쁜 지역 최적해에 빠질 확률이 두 번재 실험에서 높다는 것을 의

미한다 수행 시간은 개의 표본로 실험한 경우가 월등히 높았다. 150 .

세 번째 실험에서는 인접한 수에 대한 교환을 확장하여 점진적으로 더 많은 변환에 대하

여 탐색할 수 있는 방법을 제시하였다 인접한 두 수에 대한 교환만 하는 것을 세대 수 증.

가에 따라 혹은 그 이상 차이가 나는 수에 대해서 교환을 할 수 있도록 인접 교환2,3,4, (

방법을 확장하였다 즉 다음과 같이 상수를 두어 가 증가Consecutive Exchange) . , epoch

하면서 후반부 탐색 능력을 향상시키도록 하였다.

#define On_Two_Consecutive 600

#define On_Three_Consecutive 700

Page 14: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 12 -

#define On_Four_Consecutive 800

#define On_Five_Consecutive 900

#define On_Seven_Consecutive 1000

#define On_Ten_Consecutive 1500

이 방법은 확실히 후반부 탐색능력을 개선시키는데 기존 인접 교환방법으로는 언덕 오르

기가 불가능한 영역에서도 언덕을 오를 수 있는 능력을 보여 주었다 이 방법을 사용하여.

해에 도달하는 능력을 현저히 개선하였다 하지만 더 많은 경우의 수에 대해서 지역 최적. ,

화 을 수행하게 되므로 속도는 떨어지게 된다 종료 조건을 답을 찾은(local optimization) .

경우 종료할 수 있도록 하여 수행 속도가 늘어난 부분을 상쇄시키고자 하였다.

위의 결과에서도 알 수 있듯이 해를 찾는 능력이 현저히 개선되었다 이는 후반부에 계속.

언덕 오르기를 해 설익은 수렴으로 빠지지 않기 때문이다 아래의 그림을 보면 더 자세히.

알 수 있다.

표 5 와 의 성능 비교1-Consecutive Exchange n-Consecutive Exchange

찾은 적합도

최고값

적합도

최고값 평균

적합도

최고값

표준편차

실행시간

평균

초( )

실행시간

표준편차실행회수

1-Consecutive Exchnage

크기80 281 280.6713 0.6288 11.5943 2.2921 100

크기110

(candidate

150)

381 378.7831 0.7697 35.7198 6.5897 100

N-Consecutive Exchnage

크기80 281 281 0 6.7049 1.8360 100

크기110번381(32 )

번380(68 )380.3200 0.4688 42.2018 12.1419 100

크기144번493(7 )

번492(11 )492.2079 0.6736 272.8126 95.6223 21

Page 15: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 13 -

그림 7 의 크기에 대한 해 탐색 과정에서 후반부110 Hill-Climbing

적용했을 때(N-Consecutive )

3 0 0

3 5 0

4 0 0

0 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0

최 고 적 합 도

평 균 적 합 도

그림 8 크기에 대한 해 탐색 과정110

의 예(1-Consecutive )

300

350

400

1 101 201 301 401 501 601 701 801 901

그림 과 그림 을 비교해보면 후반 부 해 탐색 과정에서 언덕 오르기 상황7 8 (hill-climbing)

을 볼 수 있게 해준다 그림 의 근접 적용 예에서는 올라감도 드물게. 8 1- (1-Consecutive)

일어나고 한 번 올라가도 그림 의 근접 처럼 연속적인 적합도 상승으7 n- (n-Consecutive)

로 이어지지 않는다 이에 그림 은 비해 한 번 올라갈 때 연속적인 적합도 상승을 수반하. 8

는 모습으로 볼 때 주변 지역을 탐색해 최역 최적해를 찾는 능력이 훨씬 우수한 것을 알 수

있다 이는 매번 해를 찾는 회수가 늘어난 것에서도 알 수 있었다. .

자. 지역 최적화 이웃 탐색2 : (Nearby - Search)

최희만 씨의 논문을 참고하여 또다른 지역 최적화 방법을 적용하여 보았다 이는.

과 비슷한 방법이다 이 방법은 모든 노드에 대해서 다LSMC(Large Step Markov Chain) .

음 값을 구한 뒤 이 값을 최소 최대로 하는 두 값을 찾는다, .

Page 16: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 14 -

즉 위의 값을 최소로 하는 값은 결국 숫자가 가장 부적당하게 적어서 전체 평균을 낮추면,

서 분산을 해치는 값이고 최대로 하는 값은 이와는 반대로 전체 평균을 높이면서 분산을

해치는 값이다 각각 일정 정도에 따라 최대로 하는 값은 최소로 하는 값은 를 해준. -, +

뒤 를 사용하여 재 정렬 해주면 기존 방법과 다르게 어느 정도 지역 최적화를patch_gene3

해줄 수 있는 단서를 제공해 줄 수 있다 이 알고리즘 적용 결과는 결과 장에 분석되어 있.

지만 전반적으로 언덕 오르기 능력을 개선시켜주기는 하나 상대적으로 좀 더 작은 지역,

최적해에 안착할 확률 또한 늘려주는 것으로 조사되었다 크기의 문제의 경우. 144 491,

등의 해를 찾을 확률은 늘어나고 해도 더 빨리 구한다 대신 의 해를 구할 확률492 ( .) , 493

은 현저하게 줄어 들었다.

표 6 해 찾는 비율 회 실험(21 )

490 491 492 493

사용 안함nearby 11 7

사용함nearby 2 5 14

3. 결과

가. 실행 환경

사용 CPU : pentium 2.8 Mhz processor

사용 OS : windows 2000 Professional

사용 Compiler : Visual C++ 6.0

나. 차 실험 결과1

찾은 적합도

최고값

적합도

최고값 평균

적합도

최고값

표준편차

실행시간

평균

초( )

실행시간

표준편차실행회수

크기24

순수 GA80.86 76.36788 2.14649 1.1703 0.0439 100

크기24

Neighbor

2-Opt

85 85 0 9.1819 1.5926 100

크기54

Neighbor190 187.1729 1.2045 51.7 10.3476 75

Page 17: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 15 -

그림 9 크기에 대한 해답 찾기24

0

10

20

30

40

50

60

70

80

90

0 50 100 150 200 250 300 350 400 450 1.7

평균값

최고값

그림 10 해를 찾아가는 과정54

70

90

110

130

150

170

190

210

0 50 100 150 200 250 300 350 400 450 10.1

평균값

최고값

다. 발견한 크기의 지수귀문도24, 54

육각형의 합 = 85

13 10 22 15 5

16 19 12 9 14 20 8

4 23 11 21 18 24 1

표 7 차 실험 결과 해집단 크기 교체 해집단 수 최악의 해 남겨두는 수1 500, 200, 20

2-Opt

Page 18: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 16 -

7 6 17 2 3

크기 의 경우24

육각형의 합 = 190

19 9 35 1 53 8 11

6 48 42 37 20 44 28 46 17

2 31 45 18 33 40 34 24 54 21 14

26 36 50 12 32 29 22 15 41 47 13

10 39 43 51 23 49 52 30 5

3 16 38 4 25 27 7

크기 의 경우54

라. 차 실험 결과2

찾은 적합도

최고값

적합도

최고값 평균

적합도

최고값

표준편차

실행시간

평균

초( )

실행시간

표준편차실행회수

크기24 85 85 0 0.1234 0.0089 100

크기54 190 190 0 2.2365 0.4342 100

크기80 281 280.6713 0.6288 11.5943 2.2921 100

크기110

(candidate

150)

381 378.7831 0.7697 35.7198 6.5897 100

크기224 748.996 747.8422 0.5048 107.9565 6.3243 100

Page 19: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 17 -

그림 11 크기에 대한 해 적합 회에 해를 찾음80 74 281

0

50

100

150

200

250

300

1 11 21 31 41 51 61 71 81 91 101

그림 12 크기에 대한 해 적합 회에 해를 찾음110 836 381

0

50

100

150

200

250

300

350

400

450

1 101 201 301 401 501 601 701 801 901

그림 13 크기에 대해 가장 높은 최적해를 찾는 과정224

0

100

200

300

400

500

600

700

800

1 101 201 301 401

Page 20: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 18 -

마. 발견한 의 지수귀문도와 차 실험까지 발견한 최대 적합도를 가지는 크기80, 110 2 224

의 지수귀문도

9 17 53 12 50 24 19

1 58 77 67 30 69 72 47 10

6 37 79 29 52 26 41 43 75 34 5

20 39 78 42 25 54 57 51 35 36 63 68 2

21 59 64 49 23 62 60 45 33 40 74 61 13

7 31 71 44 32 27 55 38 70 28 8

11 48 76 80 22 73 66 65 14

16 15 46 4 56 3 18

육각형의 합 = 281

크기 인 경우80

25 8 79 17 63 26 22

6 70 106 93 38 91 102 77 4

14 51 98 50 52 42 62 46 94 58 3 9

45 97 76 32 73 88 64 29 86 99 41 2 11

87 100 43 49 84 65 39 80 81 33 53 103 83 7 19

72 92 60 37 78 68 44 85 74 28 54 110 57 21 13

36 108 71 27 75 89 59 30 90 105 31 24 15

47 104 48 56 35 67 40 95 55 5 12

69 101 107 34 96 109 66 16

23 20 61 1 82 10 18

육각형의 합 = 381

크기 인 경우110

26 38 114 19 141 32 31

16 145 214 217 53 210 204 136 3

24 63 189 127 59 84 103 100 198 113 6

1 85 224 169 42 168 181 160 46 147 221 69 17

23 74 207 164 45 110 176 77 158 132 54 154 213 80 28

27 86 193 171 47 120 187 115 71 157 130 124 56 153 219 61 12

18 64 201 183 55 104 202 94 107 180 68 148 194 102 52 172 218 72 30

9 178 206 87 91 137 186 70 142 139 97 163 82 99 190 117 49 146 212 76 33

13 149 199 131 40 174 126 118 112 108 156 123 133 73 177 182 39 96 211 188 34

2 81 192 159 58 135 143 121 152 93 122 134 170 109 43 191 203 51 5

25 101 196 140 66 116 173 125 90 150 165 111 65 151 195 79 35

10 92 215 167 50 105 185 75 129 155 44 161 222 78 29

14 62 205 179 48 166 175 184 36 162 197 89 7

11 88 209 95 57 106 67 98 208 83 15

4 138 220 216 60 223 200 144 21

41 20 119 8 128 22 37

Page 21: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 19 -

육각형의 합 평균 = 754.053

적합도 = 748.996

크기 224에 대한 현재 찾은 가장 높은 최적값

바. 차 실험 결과3

각종 실험 값들 정리

#define Number_of_Points 182

#define Number_of_Hexagons 75

#define Number_of_Population 500

#define Number_of_Candidates 150

#define Number_of_Alive 50

#define Maximum_Epoch 2000

#define Tournament_Size 32

#define Tournament_Selection 0.8f

int Selection_Pressure = 1;

#define After_Selection_Pressure 10

#define Selection_Change 1000

#define Aging_Applied 1

double Mutation_Rate = 0.05f;

#define Epoch_For_Mutation_Change 2000

#define Changed_Mut_Rate 0.20f

#define Mutation_Repetition 10

#define Local_Opt_Adapted 1

int Enable_Opt_Coverage = 1;

#define On_Two_Consecutive 600

#define On_Three_Consecutive 700

#define On_Four_Consecutive 800

#define On_Five_Consecutive 900

#define On_Seven_Consecutive 1000

#define On_Ten_Consecutive 1500

#define Best_One_Local_Opt 50

#define Local_Opt_Max_Swap 150

#define After_Process 0

// Termination Policy

#define Sampling_Freq 1000

Page 22: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 20 -

해의 크기가 인 경우 모두 각각 이상 찾는 비율이 각각* 110, 144 380, 492 100%, 86%

였다.

차 실험에서는 크기에 대해서 답을 찾는 비율이 가 되지 못했지만 차 실* 2 80, 110 100% 3

험에서는 인접 교환 를 사용 에 대해서 항상 같은 해를 찾N- (n-consecutive exchange) 80

는 비율이 에 대해서는 이상 지수귀문도 자체를 찾는 비율 이 이100%, 110 380 ( ) 100% 381

상이 였다 또 크기에 대해 지수귀문도를 찾는 비율은 최적해 을 찾는32% . 144 86%, 493

비율은 였다 크기의 경우 번 중 번을 찾아 를 기록했다 최고해 은33% . 182 12 5 41.7% . 616

총 의 비중으로 찾아내었다16.7% .

그림 14 의 크기에 대해 가장 높은 해 찾는 과정110

300

350

400

0 100 200 300 400 500

최고 적합도

평균 적합도

차 실험에서 다시 이웃 탐색 를 사용하여 크기 문제에 대해 도전하* 3 (nearby-search) 182

여 답을 찾아내었다 그 값은 이다 이웃 탐색은 크기에 대해서는 더 나쁜 성능을. 616 . 144

나타내었는데 에 대해선 개선된 성능을 보였다 어떠한 차이가 존재하는지에 대해서는182 .

아직 충분히 알지 못한다.

찾은 적합도

최고값

적합도

최고값 평균

적합도

최고값

표준편차

실행시간

평균

초( )

실행시간

표준편차실행회수

이하는 사용N-Consecutive Exchange

크기80 281 281 0 6.7049 1.8360 100

크기110번381(32 )

번380(68 )380.3200 0.4688 42.2018 12.1419 100

크기144번493(7 )

번492(11 )492.2079 0.6736 272.8126 95.6223 21

이하는 사용Nearby-Search

크기182

번616(2 )

번615(2 )

번614(1 )

614.3018 0.9817 1475.2600 502.7877 12

크기224 749.320 749.320 0 1019.5020 0 1

Page 23: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 21 -

그림 15 의 크기에 대해 가장 높은 해 찾는 과정144

430

450

470

490

0 200 400 600 800 1000 1200 1400 1600

최고 적합도

평균 적합도

그림 16 크기에 대해 가장 높은 해 찾는 과정182

500

520

540

560

580

600

620

640

0 200 400 600 800 1000

최고 적합도

평균 적합도

그림 17 크기 해 찾아 가기224

700

710

720

730

740

750

760

0 300 600 900 1200 1500 1800

세대

적합

최고 적합도

육각형 합 평균

적합도 평균

Page 24: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 22 -

사. 발견한 크기의 지수귀문도144, 182

21 20 85 12 99 31 7

3 118 122 125 55 117 126 113 17

27 68 128 53 87 51 77 67 120 50 11

25 45 130 95 41 89 93 96 37 98 123 90 5

30 59 129 105 56 66 100 103 84 80 39 115 131 28 19

18 70 134 71 46 86 106 79 44 83 116 91 35 82 141 92 15

26 112 133 61 48 75 132 63 69 72 109 104 38 73 124 97 24

8 42 137 107 65 57 101 78 110 64 34 108 136 52 10

16 49 144 88 32 111 114 94 33 119 135 40 22

13 60 139 47 76 36 62 58 127 43 29

1 102 142 138 54 143 140 121 6

23 9 81 4 74 14 2

육각형의 합 평균 = 493.0

적합도 = 493.0

크기 인 경우144

26 22 122 25 90 42 7

2 118 171 158 54 167 166 144 15

11 89 141 95 56 82 70 77 173 41 30

12 107 139 129 69 126 150 132 34 130 182 60 23

6 83 177 98 71 110 103 58 134 108 48 114 176 61 13

32 53 149 147 45 78 137 117 81 123 128 75 76 127 175 63 9

27 153 163 66 50 159 145 52 135 94 105 85 155 97 84 57 174 138 5

33 67 172 121 44 106 112 100 72 91 119 73 79 154 47 74 180 111 8

20 65 169 140 36 101 161 59 133 40 160 104 46 125 170 64 17

21 43 179 109 51 120 124 96 164 80 68 116 157 99 1

29 88 168 131 37 87 152 86 38 136 178 39 28

18 55 156 92 113 35 143 62 151 93 19

3 148 162 165 49 181 146 142 24

16 10 115 4 102 31 14

육각형의 합 평균 = 616.0

적합도 = 616.0

크기 인 경우188

38 33 141 11 130 26 42

22 171 178 190 94 187 194 173 10

29 52 206 123 98 66 122 89 181 105 31

Page 25: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 23 -

9 115 201 148 65 109 191 162 47 151 203 82 37

30 81 211 134 69 135 152 100 80 172 71 108 199 126 35

17 79 212 139 62 137 153 106 150 164 95 170 57 149 184 59 23

16 72 209 163 70 104 197 102 127 117 110 116 195 120 63 179 215 92 1

8 182 200 74 75 160 161 60 114 157 87 154 97 78 169 125 85 83 193 168 4

24 138 202 146 55 121 180 119 118 84 192 131 91 158 159 166 48 136 210 142 32

20 41 205 175 50 86 196 124 111 129 107 112 155 58 56 132 214 36 14

34 77 218 174 49 99 198 147 43 177 186 53 188 96 219 145 6

25 51 207 183 40 64 204 68 113 167 54 140 216 61 15

13 90 208 156 101 93 222 143 39 133 220 88 27

18 67 213 144 45 73 176 44 217 76 19

2 103 223 221 46 189 224 185 7

12 28 165 3 128 21 5

육각형의 합 평균 = 751.909

적합도 = 749.320

크기 인 경우224

아. 육각형의 평균 합과 적합도 그리고 최적해와의 관계

그림 18 육각형 합 평균으로 알아본 최적해의 위치

470

475

480

485

490

495

0 200 400 600 800 1000 1200 1400

최고 적합도

육각형 합 평균

위의 그래프에서 알 수 있듯이 육각형의 합 평균은 최고 적합도가 도달해야할 위치에 대

한 실마리를 제공한다 비록 조금 흔들리는 경향을 보이기는 하지만 그래프의 모양에서 최. ,

적해가 어디에 위치해야할지를 보여주는 값은 최고 적합도를 가질 때 육각형 합의 평균이

다 마지막에 해를 구하는 과정은 결국 최고 적합도가 육각형 합 평균 값에 도달함으로서.

이루어진다 위는 에 대해서 해를 찾아가는 과정을 보여주는 예이며 육각형 합 평균 값. 144

은 꽤 빠르게 혹은 에 도달하여 적합도가 그에 도달하기를 기다리는 것을 관찰할492 493

수 있다 이와 같은 추론 결과를 바탕으로 예측한 의 해의 값의 위치는 이었. 182 615, 616

으며 실제 도달한 적합도의 최고값 도 이와 같았다 그렇다면 의 위치는 어느 곳일(616) . 224

Page 26: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 24 -

까 현재까지 실행 결과로는 에서 까지에 존재하는 것으로 추측되지만 정확한 값? 752 755

은 아직 알 수 없다 아직 도달한 적합도 최고값이 에 위치하므로 기존 알고리즘을. 749.xxx

적용한 방법으로는 해와의 괴리가 매우 크며 획기적인 성능 개선을 위한 (Consecutive

로 이어지는 알고리즘 개발Exchange -> n-Consecutive Exchange -> Nearby Search )

없이는 크기의 해를 구하는 것이 어렵다는 사실을 알 수 있다 그렇다면 과연 이러한224 .

값이 최적 값이라고 말할 수 있는 근거는 있을까 사실 육각형 합 평균의 최고값은 상식적? ,

으로 생각할 때 최적 해에 가까울 것이라고 생각은 할 수 있다 여러 가지 교란.

작업과 지역 최적화 를 통해 그 값에 도달하였기 때문에(perturbation) (local optimization)

더 큰 값이 존재하기는 어려울 것이기 때문이다 하지만 이를 확신할 근거는 어디에도 없. ,

으며 모든 해공간 탐색 에 의해 더 높은 값이 존재하여 찾아질 가능성(exhaustive search)

을 배제할 수는 없다.

Page 27: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 25 -

4. 결론

마지막 실험에서는 두 번째 실험 후 정한 목표인 크기 문제에 대한 성능 개선과 이를110

통한 상위 문제 접근을 이룰 수 있었다 하지만 크기의 해는 구할 수 없었다 실제로. , 224 .

최적해 최고값과 추정한 최적해의 위치와의 괴리가 매우 크므로 새로운 접근법을 개발할

필요가 있다 크기가 인 문제의 대한 수행 결과는 지금까지 모든 밥법을 동원해도 해가. 224

평균 를 맴돈다 최적해로 생각되는 까지는 거리 정도 가 멀다 이748~749 . 752~755 (3~7 ) .

는 회 세대를 거듭한 결과로 적은 크기의 해에서 세대 안에 거리를 로 좁히는2000 500 1~2

경우와는 크게 차이를 보인다 와 상당히 근접해 있다는 의 결과도 세대. 224 188 500~1000

안에 사이로 좁히고 세대 안에 답을 구하는 것과 비교해 봐도 답을 구하지 않아1~2 2000 (

도 최적해와의 거리는 정도사이다 차이는 크다 또한 이하 크기 문제에서 현격1~3 .) . , 188

한 성능 개선을 보인 알고리즘들도 에서는 소용이 없었다 최고 적합도 값을 정도224 . 1~2

증가시켰을 뿐이다 대부분 프로그램을 개선하면 거의 최적해에 차이로 다다르는데. 1~2

문제에 대해선 그러지 못했다 더욱 개선된 지역 최적화 방법 이 필224 . (local optimization)

요하다.

Page 28: Welcome to alumni.media.mit.edu - 유전알고리즘을이용한 ...alumni.media.mit.edu/~joon/thesis.pdf · 2007-12-06 · -3-표1크기 인문제공간에서의탐색80-해공간만들기방법간의비교

- 26 -

5. 참고 문헌

문병로, 유전알고리즘 다성출판사, , 2001.

H. M. Choe, S. S. Choi, and B. R. Moon. A Hybrid Genetic Algorithm for the

Hexagonal Tortoise Problem, pages 850-861. GECCO, 2003.

김동민 유전알고리즘을 이용한 지수귀문도 풀이 학사논문, “ ”, , 2002

최희만 유전알고리즘을 이용한 지수귀문도의 해법 학사논문, “ ”, , 2003