---
# System prepended metadata

title: AIBG agentić

---

AIBG agentić
===

port:
8081 1234 front

## Beleške iz dokumentacije

#### Mapa

- Heksagonalna, 29 polja u dijagonali.

#### Koordinatni sistem

![](https://i.imgur.com/GtsPEfl.png)

#### Polja

- ***Normal*** i ***Full***

```json
{
"q": 0,
"r": -14,
"entity": {
"type": "EMPTY"
},
"tileType": "NORMAL"
},
{
"q": 1,
"r": -14,
"entity": {
"type": "EMPTY"
},
"tileType": "NORMAL"
},
{
"q": 2,
"r": -14,
"entity": {
"type": "EMPTY"
},
"tileType": "NORMAL"
}
...
{
"q": 11,
"r": -11,
"entity": {
"type": "ASTEROID",
"health": 350
},
"tileType": "FULL"
}
```

- Igrači su zasebni objekti

#### Zone

- Prva, boss uvek napada
- Druga, boss napada u šablonima
- Treća, boss ne napada

#### Boss napad

1. Direktni napada, u prvoj zoni.
2. Šablon napada.
    - Pauza od 3-7 rundi.

#### Igrač

## Ideje

### Automatsko rezonovanje; Programiranje ograničenja

$$
\max_x a_1 x_1 + a_2 x_2 + \ldots + a_n x_n = \max_x f(x),\\
\text{td.} \sum_i x_i = 1,\\
0 \leq a_i \leq 1
$$

Neka $x_1, x_2, \ldots, x_n$ su indikatori za cilj (boss, health, drugi igrač).
Parametri $a_1, a_2, \ldots, a_n$ treba odrediti tako da što bolje opisuju trenutno stanje.

Ovo radi gramzivu tehnikom. Ali heuristika može da se unapredi.

- Problem određivanja funkcije cilja $f$.
- Biblioteka, z3

### Učenje potkrepljivanjem

- Nemamo ciljnu funkciju.
- Brzina API komunikacije.

### Neki monte karlo

- Pravimo mnogo nasumičnih partija i gledamo mnogo poteza u dubinu.
- 

### Duboko učenje

- Odustajemo, trenira se predugo

## TODO

- Funkcije koje računaju parametre
- Teorija igre (D i A)
- postaviti kordinate iz gamestata

## Korisni linkovi

[Zadatak i uputstvo](https://docs.google.com/document/d/1Hzd8a_7vitzrEeYSqI4JnaniQxMH6KeH/edit?usp=share_link&ouid=113170352868777460831&rtpof=true&sd=true)

[Kod <-----](https://colab.research.google.com/drive/133LYn3IieT_LDGSIhpYqXsT_xrWpfmNJ#scrollTo=nfE6VrPxBgBX)

https://www.guru99.com/postman-tutorial.html

"token": "eyJhbGciOiJIUzUxMiJ9.eyJ1c2VybmFtZSI6IlNyZWNuaUxqdWRpMSIsInBhc3N3b3JkIjoiVTNxWWg1aFBUJCJ9.P_58cTTLcK6sjBM402iUDqai2N0ttqXrrW1qqsrXdgDzykJKJ66TO50oVQLFruN3RiBQYBodbX4XYDT-kW6DAQ"