Abstract 컴퓨터 기술의 발달로 분산 인공지능 분야의 다중 에이전트 시스템(MAS Multi-agent System)에 대한 이론 및 응용 연구가 인공지능 연구의 핫스팟이 되고 있다. Cup), 로봇 월드컵 축구 선수권 대회는 비동기적이고 시끄러운 대결 환경에서 다중 에이전트 의사 결정과 협력을 연구하는 문제입니다. 이 기사에서는 컴퓨터 시뮬레이션 축구 로봇 대회에서 공격과 방어의 설계 및 구현을 자세히 소개합니다.
키워드 공격, 정확성, 수비
RoboCup(로봇 월드컵) 관련 분야의 교육 및 연구 수준을 향상시키기 위해 개최되는 국제 대규모 공모전 및 학술 활동으로, 표준 과제를 제시하여 분산형 인공지능, 지능형 로봇공학 및 관련 분야의 연구 개발을 촉진합니다. 축구 경기용 로봇 훈련 및 제조는 인공 지능 및 로봇 공학 분야의 현재 연구 핫스팟 중 하나입니다. 게임 중 팀 구성이 결정된 후 각 플레이어는 해당 역할을 할당받고 팀의 전체적, 지역적 공격 및 수비 전술에 대해 논의하기 시작합니다.
전체팀 공격 전술
전체팀 공격 전술은 경기 중 한 쪽이 패스 후 선수 간 협력을 통해 슈팅의 목표를 달성하기 위해 사용하는 조정 방식을 말한다. 공을 받고. 지역적 공격 전술에 비해 팀 전체의 공격 전술은 공격 참여, 빠른 반격 등 공격 범위가 더 넓다. 주로 측면 공격, 중앙 공격, 빠른 반격 등이 있습니다.
1. 측면 공격: 코트 양쪽의 영역을 이용하여 공격을 가하는 방식을 측면 공격이라고 합니다. 측면 공격은 팀 공격 전술의 주요 형태 중 하나이며, 공격 속도를 발휘하고 상대 수비를 무너뜨려 틈을 만드는 데 도움이 되는 것이 주요 특징이다.
2. 중앙 공격 : 중앙 공격은 코트 중앙을 중심으로 구성된 공격으로 직접 슛을 날릴 수 있지만 중앙 수비가 가장 빡빡하고 허술하기 때문에 가장 어렵다. 전방 공격수는 예리하고, 인지하고, 숙련되고, 위험을 감수할 의지가 있고, 빠르고, 포지셔닝에 능숙한 플레이어여야 합니다.
3. 빠른 역습 : 경기 중 공격팀이 공격할 때 수비라인이 미드필더 가까이 압박하는 경우가 많으며, 이때 공격과 어시스트로 인해 수비수도 상대적으로 줄어든다. , 상대 수비 지역의 틈새를 잡는 것이 더 편리합니다. 야마토는 수비 복귀가 느릴 때 공을 잃었을 때 빠른 반격을 시작하여 좋은 결과를 얻을 수 있는 경우가 많습니다. 빠른 반격을 효과적으로 시작할 수 있습니다. 효과적으로 득점할 수 있지만 다소 위험합니다. 그러므로 우리는 정확성과 속도의 원칙을 숙지해야 합니다. 협력은 조직화되어야 하며 암묵적인 이해가 있어야 하며 이를 위해서는 다양한 실천이 필요합니다. 그렇지 않으면 경쟁에서 구현하기 어려울 것입니다.
팀 수비 전술
수비 전술은 기본적으로 맨투맨 압박 수비(맨투맨 수비), 즉 맨투맨 수비의 두 가지 유형으로 나눌 수 있다. 지정된 범위 내에서 사람 압박, 가드 교체 없음: 구역 압박 수비(마킹과 구역의 결합), 즉 오늘날 인기 있는 종합 수비로 압박과 수비를 결합하고, 자신의 방어 구역에서 압박하고 가드를 교대합니다. 맨투맨 수비에서 각 플레이어는 방어해야 할 명확한 목표를 가지고 있습니다. 방어의 가장 기본적인 원칙은 압박과 보호이다. 압박만이 효과적으로 주도권을 잡고 상대방의 기술적인 우위를 제압하고 주도권을 얻을 수 있습니다. 보호는 더 나은 압박과 격차를 통제하고 게임에서 승리할 수 있는 기회를 준비하는 것입니다. 방어는 준비된 이벤트로 해석될 수 있습니다. Tsinghua 디자인 팀에서는 상황에 따른 일종의 전략적 레이아웃 이론을 사용합니다. 가장 중요한 배치 지점은 기본 포메이션으로, 표준 역할 할당, 볼 위치 및 볼 컨트롤 상태를 통해 선수의 위치를 결정합니다. 본 방어 문제에서는 역할 할당, 업무 평가와 동일한 기본 정보, 명명, 역할을 기준으로 제공합니다. 또 다른 중요한 사실은 수비에서의 위치 유연성입니다. 이는 상대가 주어진 위치에 서 있을 때 얼마나 위험한지를 측정합니다. 필드의 모든 지점이 이전에 모든 팀원에게 알려져 있기 때문에 수비 위치 유연성이 있습니다.
네 가지 수비 행동 유형:
1. 잠금(방해): 골대 바깥쪽에서 상대의 공을 가로질러 상대가 전진하는 것을 막습니다.
2. 누르기(압력): 달려가세요. 상대가 공을 갖고 있고 우리 골대 근처에 있으면 그에게 위협이 됩니다.
3. 마크(마킹): 집중 공이 없어 팀원이 공을 패스할 수 없는 상대
4. 포인트 디펜드(위치 수비): 기본 정보 위치에 서서 근처에 있는 A 팀원이 실패할 때 유리합니다. 1vs1 또는 팀이 공의 제어권을 다시 얻었을 때.
이 문제를 단순화하기 위해 우리는 수비 선수가 두 명의 상대를 동시에 수비할 수 없으며, 두 명의 수비 팀원이 같은 상대를 수비하면 안 된다는 규칙을 세웠습니다. 이 상호 배타적 작업은 동일한 조건에서 제공됩니다. 이 충돌 작업은 여기서 사용되지 않습니다. 거기에는 대안이 있다. 즉, 블록과 언론이 상호 배제가 아닌 갈등을 설정해 다른 수비 전략을 제시하는 것이다. 따라서 다른 하나도 가능하므로 이에 대해서는 더 이상 논의하지 않겠습니다. 방어과제를 각각의 공격대상 방어로 세분화하고, 기본정보점 위에 선 후, 각 방어선수를 각 하위과제로 연결하여 일정을 생성한다. 이때 이 절차는 개인을 평가하는 기능에 도달한다.
각 행동 유형에 대한 평가 함수를 정의합니다. 이러한 변수는 각 평가 함수의 입력으로 사용됩니다. 선수의 현재 위치에서 수비 위치까지의 시간 간격을 측정하는 Intensity, 수비 지점에서 선수의 기본 포메이션 위치까지의 거리를 측정하는 Deviation, 이 방어 위치의 유연성 성적 라이벌의 현재 위치입니다. 이 기능의 출력은 위협에 따라 증가하고 거리와 이탈에 따라 감소합니다. 포인트 방어의 경우 위협만 입력으로 사용됩니다. 각 함수의 실제 값을 얻기 위해 몇 가지 일반적인 시나리오를 설정하고 그로부터 입력 값을 추출한 다음 출력 값을 함수에 할당합니다. 이 값은 약간의 변화를 보존하기 위해 신중하게 로드됩니다. 이러한 방식으로 입력 및 출력 데이터 목록이 생성됩니다.
Tsinghua Design에서는 BP 네트워크 신경망을 사용하여 평가 기능을 인코딩합니다. 이 목록은 신경망 훈련을 위한 설정으로 사용하기 위해 생성됩니다. 훈련 후 네트워크가 이전 섹션의 요구 사항에 적합한지 테스트하여 평가 기능이 결정되지만 우리 팀에서는 여전히 개선 중입니다. 표준 절차에 대한 나머지 계획은 이제 위에 설명되어 있으며 더 이상 논의할 필요가 없습니다. 또한 교정 계획 수립도 남겨둡니다. 때로는 팀이 일관성을 유지하지 못하는 경우도 있습니다. 예를 들어, 상대가 두 명의 수비수와 같은 거리에 동시에 위치해 있는 경우입니다. 형성 지점. 두 가지 합의는 비슷한 등급을 가지며 두 수비수는 충돌할 수 있습니다. 우리의 설계는 이러한 절대적인 피드백을 시스템에 활용합니다. 이 게임에서는 공이 계속 움직이고 상대방이 공격하려면 앞으로 이동해야 하기 때문에 추가로 이 기본 정보 위치나 수비 지점은 다음 사이클에서 변경됩니다. 두 계약 모두 여전히 동일한 등급을 유지할 수 있도록 하는 작은 변경 사항이 있습니다. 두 가지 배치가 다르면 두 수비수 모두 차이점을 알 수 있을 만큼 분명합니다. 선 수비수는 상대에게 더 가까이 다가가서 이러한 방어 행동을 수행합니다. 그러면 다른 하나가 다른 방향으로 움직일 것입니다. 따라서 대비가 증가하고 시스템은 이전 딜레마에서 상태 분리를 추출합니다. 따라서 일관성을 다시 얻을 수 있습니다.
수비 알고리즘 구현
1. 수비 알고리즘의 초기 아이디어
1단계: 공의 위치를 찾아 실시간으로 업데이트
2단계: 공이 킥 가능한 범위 내에 있는지 확인:
킥 가능한 경우 위치에 따라 해당 조치를 취합니다. 특히:
다음과 같습니다. 자유투가 안쪽으로 들어가고, 즉시 공을 차서 팀원들에게 패스하도록 시도하세요. 페널티 에어리어 밖에 있으면 공을 적절하게 드리블하여 미드필더로 보내면 됩니다.
그렇다면
킥할 수 없는 경우 세 번째 단계로 들어갑니다.
p>
3단계: 공을 훔칠 책임이 있는지 확인합니다.
그렇다면 공을 훔칩니다. 공을 빼앗는 것도 구역별로 나누어야 하며, 공을 빼앗기 위해 전력을 다해 달려야 한다. 뒤에 동료가 있다면 태클도 고려할 수 있다. (그가 나를 지나쳤다) 즉시 뒤에서 태클해야 한다;
그렇지 않다면 수비를 지원하고 4단계로 진입해야 한다.
4단계: 수비에 도움을 준다. 이런 상황이 너무 많고 지금은 몇 가지 일반적인 상황만 있기 때문에 이 단계가 가장 어렵다고 생각합니다. 생각: 여전히 후반부를 나누어 각 영역에 대한 다양한 마크 전략을 채택해야 합니다
5단계: 포메이션에 따라 위치를 조정합니다.
2. 수비 알고리즘 구현 과정:
|--gt; /p>
| |--gt; 우리 팀의 킥오프이고 선수가 9번이라면:
| 그런 다음 최대 힘으로 공을 걷어차십시오.
| |-gt; 공을 찰 수 없는 경우: 현재 포메이션이 다음과 같습니다. 초기화 포메이션이 아니거나 플레이어의 실제 위치가 포메이션의 지정된 위치(이하 전략 위치라고 함)에서 1m 이상 벗어나는 경우: 초기 포메이션을 가져오고 플레이어가 자신의 전략 위치로 직접 이동합니다. p>| |--gt; 7번 또는 8번인 경우: 9번의 킥토 지점으로 이동하여 공을 향해 머리를 돌립니다.
| ; 다른 경우: 그런 다음 몸을 (0, 0)으로 향하고 머리를 공으로 돌립니다.
|--gt; 공이 킥 아웃된 경우: 먼저 수비 433 포메이션으로 들어갑니다.
| |--gt; 공 정보가 최신이 아닌 경우: 공을 검색하여 찾으세요.
| 공이 킥 가능한 범위 내에 있는 경우:
| >
| |--gt; 자신의 페널티 지역: 전방 5m에 (-80, 80) 각도의 부채꼴 지역에 상대 선수가 있는 경우: 최대의 힘을 가진 공, 즉 클리어볼;
| -80, 80): 작은 힘으로 공을 걷어차기;
| | 기타: 공을 앞으로 드리블하기;
| p>
| |--gt; 선수 자신이 팀원 중 가장 빠르게 공에 도달하는 경우, 즉 공을 가로채는 데 가장 큰 책임이 있는 선수는 다음과 같습니다.
| 상대편이 골대를 향해 공을 가져가고 있는 경우: |--gt; 선수와 공 사이의 거리가 2.5m 미만인 경우: 태클; p>| |--gt; 그렇지 않으면: 공을 향해 가속; 선수 자신의 현재 위치가 그의 전략적 위치에서 벗어났습니다(1.5(선수와 공 사이의 거리)/10.
0) m: 즉시 위치를 조정합니다.
| |--gt; 선수가 자신의 진영에 있으면 마크 상태로 들어갑니다.
| gt ; 선수가 자신의 페널티 지역에 있는 경우: MARK_GOAL의 표시 방법을 사용하여(수비하는 선수가 공을 잡아서 슛하는 것을 방지)
| 자신의 페널티 지역 양쪽에 있는 경우: MARK_BISECTOR의 표시 방법을 사용하여(다른 지역에서 수비되는 선수를 방지)
| MARK_BALL의 마크 방법을 사용합니다(플레이어가 방어되는 것을 방지하기 위해). 플레이어가 공을 잡습니다.
| 플레이어와 공 사이의 상대 각도가 1보다 큰 경우: 그런 다음 몸을 공 쪽으로 돌리고 머리를 공 쪽으로 돌립니다.
| |- -gt; 다른 상황: 돌아서기(관찰);
참고: 위의 프로세스가 반환됩니다. ";"을 만나면 soc(명령)를 얻고 마지막으로 soc를 반환합니다.
참고 자료
[1] 편집자: Li Shi, Xu Xuming, Ye Zhen 및 Sun Zengqi, "검토: 국제 로봇 축구 대회 및 관련 기술", 국가 지능 기술부 1999년 청화대학교 및 시스템 핵심 연구소 컴퓨터공학 박사.
[2] Sun Zengqi 및 Li Shi, "RoboCup 및 지능형 자동화", Tsinghua University, 컴퓨터 과학 기술과, 1999.