메인 컨텐츠로 가기

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

Robocode 마스터의 비밀: 로보코드 마스터들이 주는 힌트, 팁, 조언 (한글)

IBM developerWorks, IBM developerWorks, IBM
이 기술자료는 IBM developerWorks 편집부에서 제작하였다.

요약:  로보코드 전문가들이 자신들이 로봇 전투에서의 성공의 비밀을 나눕니다.

원문 게재일:  2007 년 4 월 24 일
난이도:  초급
페이지뷰:  1896 회
의견:  


Factored wall avoidance (한글)
코너에 갇히거나 원하는 이동 방향에서 너무 많이 벗어나지 않으면서, 로봇과 벽 사이의 간격을 유지하는 알고리즘을 만드는 것은 어려운 일입니다. 이에 대한 한 가지 간단한 솔루션으로, factored wall avoidance가 있습니다. 이 글에서, David McCoy가 이 기술을 구현하는 방법을 설명합니다.

반 중력 움직임 (한글)
반 중력 움직임(Anti-gravity movement)은, 여러 가지 변형된 형태들 중에, 대부분의 로보코더(Robocoder) 전문가들이 선택하는 움직임 유형입니다. 이것을 사용하면 지도상에서 피할 위치들을 정의하고, 움직임 패턴들을 쉽게 만들며, 적의 총알을 피할 수 있습니다. Alisdair Owens가 이 유용한 기술을 구현하는 방법을 설명합니다.

예상 타겟팅(targeting)
성공적으로 상대편 로봇의 위치를 찾아내고 슈팅 하기 위해서는 상대편이 있을 것이라고 예상되는 특정한 지점에 총알을 발사하는 알고리즘이 필요합니다. 이 글에서, Simon Parker는 직선형(linear), 원형(circular), 진동(oscillating) 예상 타겟팅에 사용될 수 있는 알고리즘을 설명합니다.

적의 움직임 추적하기 (한글)
적의 움직임은 예상하기가 어려운 패턴을 가지고 있기 때문에 모든 타겟팅 알고리즘에는 한계가 있습니다. 각각의 상대편 로봇에 따라 최상의 움직임 알고리즘을 선택할 수 있는 방법을 배워봅시다.

원형(circular) 타겟팅
원형(circular) 타겟팅은 직선형 타겟팅을 터득한 후 취할 수 있는 다음 단계입니다. 고급 수학을 사용하면, 이 타겟팅은 정확히 원을 도는 로봇들을 공격하여 맞출 수 있습니다. 그러면서, 직선형으로 움직이는 로봇을 공격하는데도 효과를 발휘합니다. Alisdair Owens가 이 기술을 구현하는 방법을 설명하고 테스트 할 수 있는 예제 로봇도 제공합니다.

총알 피하기
승리하는 로보코드 로봇을 만들려면, 상대편이 여러분을 공격하는 것 보다 더 많이 여러분이 상대편을 공격해야 합니다. 자신의 로봇이 상대편 로봇을 타겟팅 하도록 하는 것은 더할 나위 없는 기술이지만, 상대편이 여러분 로봇을 타겟팅 할 수 없다면 어떻게 될까요? 간단한 트릭과 추측을 통해, DodgeBot은 총알을 피하는 방법을 보여줍니다.

레이더 스위프(Radar Sweep)
로봇의 레이더(radar)를 가장 효율적으로 사용하여 상대편의 위치에 대한 최신 정보를 얻는 방법을 설명합니다.

Roboleague
로보코드 플레이어들을 위한 리그를 만드는 것에 관심 있으십니까? 이 글에서, Christian Schnell이 그가 어떻게 그의 Roboleague을 만들었는지에 대한 방법을 설명합니다.

Polymorphic enemy cache
성공적인 로봇들은 전투 시 중요한 결정을 내릴 때 언제라도 액세스 할 수 있는 축적된 정보를 관리하고 있습니다. 적들의 움직임 패턴 분석부터, 적들이 얼마나 접근해 있느냐와 힘에 따라서 누구를 공격할지를 결정하는 방법까지 다양한 면에서 유용합니다. 이 글에서는 다형성을 이용하는 최신 객체의 편의성을 가지면서 효율적이고, 빠른 에너미 캐시(Enemy Cache)를 구현하는 방법을 설명합니다.

확장 가능하며, 재사용 가능한 로봇
Ray Vermette은 그의 로보코드 로봇을 모듈과, 재사용 가능한 조각으로 나누어서, 로봇들의 다양한 행동 패턴들을 관리하는 방법을 설명합니다.

로보코드 전략 (한글)
로보코드 전략 가이드에서는 Gladiatorial League의 역사를 설명하고, 움직임, 슈팅, 정보 모으기 등의 다양한 전략 레벨을 설명합니다.

총알 추적하기
상대편을 조준하는 가장 적절한 기술을 사용하기 위해서는 어떤 기술이 작동하고, 어떤 기술이 작동하지 않는지에 대한 정확한 통계가 있어야 합니다. 이 글에서 Ray Vermette은 BulletTracker 클래스를 구현하여 이 기술을 사용하는 방법을 설명합니다.

기사의 원문보기


참고자료

  • 한국 developerWorks: 자바 프로그래밍에 대한 모든 것이 들어있는 다양한 기술자료를 제공합니다.

필자소개

이 기술자료는 IBM developerWorks 편집부에서 제작하였다.

잘못된 도움말 신고

부정사용 신고

감사합니다. 이 항목은 운영자가 관심을 표시했습니다.


잘못된 도움말 신고

부정사용 신고

제출실패 신고. 나중에 다시 실행해주세요.


디벨로퍼웍스 로그인


IBM ID가 필요하세요?
IBM ID를 잊으셨습니까?


비밀번호를 잊으셨습니까?
비밀번호 변경

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

화면상에 보여지는 닉네임을 정하세요.

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

3개의 &이나 대쉬를 포함해주시고 31글자내로 제한해주세요.


developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


아티클 순위

의견

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=20
Zone=자바
ArticleID=211787
ArticleTitle=Robocode 마스터의 비밀: 로보코드 마스터들이 주는 힌트, 팁, 조언 (한글)
publish-date=04242007
author1-email=
author1-email-cc=

태그

Help
검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오.

태그를 더 많이 보거나 적게 보기 위해 슬라이더 막대를 사용하십시오.

인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다.

내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.

검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오. 인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다. 내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.