[로보코드] 라운드 별 전략 구상
이제 IBM 대회가 2주 반 정도 밖에 남지 않았다. 이 대회에 참석이 가능할 지 모르겠다. 한 사람이 3개의 로봇을 올릴 수 있다고 한다. 1개를 만들면 나머지 두 개를 상수 값을 잘 변경해서 내 놓아도 될 것 같다. (여기서 상수값이란, 예를 들어 Bullet 의 power 를 결정할 때 적의 거리에 따라 값을 달리 주기도 한다. 그럴 때 그 값을 조금 바꾸어 출전해도 될 것 같다는 말이다. 조그마한 차이겠지만, 이렇게 쌓이면 엄청난 차이를 유발할 것이다. 때론 같은 로봇을 그대로 제출한다고 해도 운이 좋아 살아남는 로봇이 있을 지도 모른다. )
Melee 의 경우 10로봇 10 라운드. OneOnOne 의 경우 5 라운드이다. 이 라운드별 전력을 생각해 보자.

첫 라운드 : 상대방에 대한 인식이 필요한다. 상대방 로봇에 대한 정보를 최대한 확보한다. Melee 의 경우 10 개의 로봇 모드 인식해 두어야 한다.

경기 초반 (Melee 의 경우, 1~3 라운드) : 상대방에 대한 전략을 분석해 둔다. 그리고 로봇을 분리해 둔다. 내 경우, 내 점수를 올리기 좋은 로봇, 나에게 매우 적대적인 로봇(나를 너무 자주 공격하는 로봇 , 특히 거리가 먼 데도 나를 공격하는 로봇이 있다면 그 로봇에게 내 로봇이 찍힐 것 아닌가. ), 그리고 진출가능성이 있는 로봇(진출가능성이 있다는 말은 이 경기에서 1~2 등이 될 가능성이 있다는 말이다. 이를 위해, 상대방 로봇에 대해 부정확하게라도 점수를 계산해 두어야 한다. ) 경기 초반 너무 잘 싸워도 상대방에게 집중 공격을 당할 우려도 있다. (만약 나와 같은 전략을 사용한다. ) 적당히 해 두어야 할 지도 모른다.

경기 중반 (Melee 의 경우 4~6라운드) : 분석해둔 전략대로 싸운다. 우선 라운드가 시작할 때는 내 주의에 가장 가까이 있는 점수 따기 좋은 로봇위주로 공격한다. 현재까지 점수가 높은 로봇의 에너지가 낮아질 때 빨리 죽여야 한다. 특히 한 방을 남겨 놓고 기사회상 하는 일이 없도록해야 한다. Bullet 하나로 16점을 가진 로봇을 날려버릴 수 있다. 점수 높은 로봇은 빨리 제거해 주어야 Survival 점수를 높게 가져 가는 것을 막을 수 있다. 그리고 Bullet 을 맞기 전까지 내가 공격하는 거 모른다. 그래서 더 더욱 뒤에서 처야 한다. (다시 말해, 남하고 열심히 싸우고 있을 때 몰래 때려야 한다. )

경기 후반 (Melee 의 경우 7~9 라운드) : 미리 점수를 계산해 두었다면 어느 정도 진출 가능성을 점쳐볼 수 있다. 내가 많이 밀리고 있다면, 라운드 초반이라도 나 보다 점수 높은 로봇은 과감히 공격해야 한다. 그냥 똑같이 경기하다가는 그대로 탈락이 확정될 수 있다. 급격한 변화가 필요하다. 내가 꽤 유리하게 경기하고 있다면 큰 변화없이 이대로의 틀을 유지한다.

마지막 라운드 : 미리 계산해둔 점수로 내가 탈락 가능성이 높다면 계속 이상한 짓을 하여 변화를 모색한다. 내가 2위 로봇보다 꽤 높은 점수로 앞서고 있지만, 여기서 2위 로봇에게 크게 당하면 떨어질 가능성이 있다면, 경기를 잘 지켜보다가 자폭을 한다. (여기서 자폭이란, 상대방에게 더 이상의 Bullet 점수와 마지막 bonus 점수를 낮게 빼길려는 전략으로, Bullet 을 낭비하는 전략인다. ) 이왕 자폭할려고 Bullet 을 발사 할 때는 그냥 죽지 말고, 2위 로봇에게 발사 한다. 2위 로봇에게 발사해서 2위 로봇에너지를 많이 낮추어, Last Survival 점수도 못 올리게 만들어야 한다. (이 전략을 Melee 에서 사용하는 것은 꽤 위험하다. 2위 로봇과 많은 점수 차이로 앞서고 있어 진출이 확정적이라도 안심할 수 없다. Melee 에서는 점수 계산에는 어려움이 있기 때문이다. 또, Melee 에서는 Last Survival 점수가 많이 높기 때문이다. )

별 새로운 전략은 없을 것 같다. 그냥 있던 전략을 정리하던 수준 같다.
by 한밀 | 2004/06/14 02:13 | 프로젝트
<< 이전 다음 >>