IBM ROBO-CODE2007. 6. 30. 01:32
로보코드 다운로드 사이트(http://robocode.alphaworks.ibm.com/installer/) : 로보코드 프로그램을 다운로드 할 수 있고, 관련 API와 각종 정보를 얻을 수 있음

? Rock ‘em, sock ‘em Robocode, Round 2(http://www-106.ibm.com/ developerworks/java/library/j-robocode2/) : 로보코드 초보 개발자를 위한 좀더 깊이 있는 내용들을 다루고 있음

? Polymorphic enemy cache(http://www-106.ibm.com/developerworks/ library/j-tippoly/) : 적 로봇의 정보를 저장하고 관리하는 방법에 대해 나와 있음

? Radar sweeps(http://www-106.ibm.com/developerworks/library/j-radar.html) : 최적화된 레이더 회전에 관한 내용

? Tracking bullets(http://www-106.ibm.com/developerworks/library/j-tipbullet.html) : 총알을 추적하여 각종 유용한 정보들을 얻어 내는 방법에 관한 내용

? Anti-gravity movement(http://www-903.ibm.com/developerworks/kr/java/ library/j-antigrav.html) : 반중력 움직임 팁에 대한 내용


지난대회 전략 모음
1회 대회 전략


2회 대회 전략

2002년 세계대회 우승자: Yngwie
http://www.ibm.com/developerworks/library/j-robowrap.html

여러가지 전략과 소스
http://www.ibm.com/developerworks/kr/library/j-robotips/

로보코드 전략 팁
반중력 이론
http://www-128.ibm.com/developerworks/kr/library/j-antigrav/

--------------------------------------------------------------------------------

앞부분의 Advanced Robot의 기초부분만 보세요..^^

뒷 부분의 팀플레이는 실제 경기에서 그다지 필요 없을 듯 싶어요..^^

한 경기장에 우리 팀 선수가 여러명 되면 쓸만두 하겠지만..ㅋ

그럴 확률이 적거든요..^^

http://www.ibm.com/developerworks/kr/library/j-robocode2/

Robocode 실전: 일등 로봇

앉아있는 duck을 공격하는 것은 확실히 재미있는 일이지만 가장 나약한 상대편이라도 패배당하기까지 가만히 있는것은 아니다. 움직이는 로봇을 다룰 때 전략을 약간 수정해야한다. 예를 들어 목표 로봇에 다가가기 전에 앞으로 어디에 위치할 것인지를 예견해야한다. 이를 예견 타겟팅(predictive targeting) 이라고 한다. 뒤로 발사하는 로봇의 경우는 총알을 탐지하고 도망가는 것에 대해 생각해야한다.

이는 위대한 로봇을 만들 때 고려되어야 하는 문제들이다. 일반적인 로봇 전략 디자인은 이 글의 범위를 벗어난다. Robocode Rumble Web site (참고자료)에서 뛰어난 Robocode 로봇을 만드는 것을 다룬 자료들을 찾아야한다.


Nicator : Alisdair Owens (영국)

Nicator는 강하게 공격하고 일찍 죽는 공격적인 로봇이라고 Alisdair Owens는 설명한다. 이 로봇은 난전(그룹 전투) 상황에 특화된 로봇이다. 이것의 승리 전략은 "반 중력(anti-gravity)" 운동이다. 로봇을 가장 유리한 코너에 배치시키고 상대를 적극적으로 공격하면서 홀딩(holding) 패턴을 유지한다. Nicator는 전투장의 큰 그림을 스캐닝하고 관리한다. AdvancedRobot 클래스의 비 블로킹 액션을 확대 사용하여 매 tick 마다 결정하고 커스텀 클래스도 사용한다. (참고자료)


Wolverine : Jae Marsh (미국)

Nicator와는 다르게 Wolverine은 일대일 로봇 전투에 맞춘 로봇이다. Wolverine은 Jae Marsh가 만들었다. Wolverine의 전략은 근본적으로는 공격이고 50점의 우위에 있을 때 공격을 강화한다. Wolverine은 전투장의 최신 큰 그림을 구현하지 않는다. 이것 역시 Nicator와는 다른점이다. 대신 일시적인 전투장의 스냅샷을 사용하여 패턴-매칭 알고리즘을 사용한다. Wolverine은 AdvancedRobot 클래스의 커스텀 이벤트 기능을 사용하여 이벤트 로깅 로직을 강화한다.


RayBot : Ray Vermette (캐나다)

RayBot은 예견 타겟팅을 사용하고 전투장의 큰 그림을 관리한다. Nicator와 Wolverine 과는 다르게, RayBot은 기본적으로 방어 로봇이다. 하지만 특성을 바꿔 일대일 시나리오에서 우위에 있다고 결정하면 공격적으로 바꾼다. 스캔 된 데이터와 전추장 정보(큰 그림)는 이 로봇의 차별화 요소라고 RayBot을 만든 Ray Vermette는 설명한다.


JollyNinja : Simon Parker (호주)

JollyNinja 로봇은 혼전과 일대일 플레이 모두에 맞춰 디자인되었다. Simon에 따르면 JollyNinja의 가장 뚜렷한 특징은 움직임 전략이라고 한다. 중급 정도의 공격형 로봇은 JollyNinja를 공격하기가 힘들다. JollyNinja의 핵심은 로봇의 다음 움직임을 결정하는 전략적 평가 함수이다: AdvancedRobot 클래스의 비 블로킹 호출 기능을 사용하여 매 clock tick 마다 결정한다. JollyNinja는 전투장에 단 하나의 상대편이 남아있다고 판단되면 공격레벨을 강화한다. JollyNinja는 큰 그림을 관리하고 전투장 정보를 모아 이 전략을 수행한다. (참고자료)


Tron & Shadow : ABC (포르투갈)

ABC는 두 개의 뛰어난 로봇을 만들었다. Tron은 뚜렷한 움직임 패턴이 있는 로봇이지만 전략을 보면 방어적이다. Shadow는 공격적인 반대편이며 충돌을 피하는 움직임을 사용한다. Shadow의 유일한 점은 혼전과 일대일 플레이에 같은 전략을 사용한다는 것이다. 두 로봇 모두 AdvancedRobot 클래스의 동시적인 움직임을 사용한다.




Posted by BAGE