Commit 51c441b
Feature/kalman (#101)
* Added extracted vision data with varying degrees of vanishing and noise
* Attempt to store past raw game frames; starting work on test cases
* added Andrew's filter
* Integrated filters into position refiner
* bad example test
* Refined filter weights, added vision data for testing
* Updated test data
* Noise now added manually, updated test data
* Amended test cases to address CI failure due to changes to PositionRefiner's constructor
* Refinements to filters based on empirical data
* Added some references for building tests
* First pass unit tests
* Some issues with unit tests. Working on fix
* Added live testing utilities, conducted analytics for filters, refactored classes, added new datasets
* Finalised analysis of filters, unit tests are working, added more live testing utilities
* Deleted redundant files
* Minor refinements to the live testing utilities
* fixed formatting issues
* Commented out utilities for testing and exporting data
* Analysed vanishing problem, created sample datasets
* Position refiner now has access to the last game frame and command map. Imputing feature is coming along , but there are unexplained spikes that are preventing it from working properly
* Fixed issues, now imputes correctly based on last gameframe
* Completed work on vanishing
* Incorporated some suggestions from copilot regardign style
* Addressed comments on PR
* Removed redundant utility function
* Factored out static method into global utility
* cleanup
* Added back error handling for imports when run from Jupyter
* Renamed datasets to include the control mode, filtering only turned on during run mode together with vanishing
* Fixed bug in tests due to renaming of files
* Created working Kalman filter. Working on analytics
* Working on analytics
* Implemented a flag to add Gaussian noise in rsim. Added another more hackish implementation for comparison.
* Analysing Kalman filter performance; need to merge new rsim utilities first
* Cleaned up implementation, removed hackish alternative
* Working on adding noise to each component independently
* Completed implementation of noise addition
* Addressed comments on PR, got orientation to work
* Performed benchmarking on kalman filters
* Performed benchmarking on kalman filters
* More benchmarking
* Kalman filter performance validated
* Kalman filters now handle vanishing
* Removed non-performing implementations
* Rejigged analytics for Kalman filter
* Addressed comments in PR, added vanishing, added support for ball
* Minor linting
* Merge branch 'feature/rsim_noise' into feature/kalman
* Added filter for ball, added support for orientation
* Now able to run analytics for orientation
* Moved utility functions for adding Gaussian noise from classes representing balls/robots to the SSLStdenv class. Learned about this best practice in this week's lecture
* Turned off a flag used for testing
* Minor bug fix
* Analysing data for orientation, plus some minor fixes
* Completed work with Kalman filters, will now work on PR
* Removed some redundant files
* Renamed folder to ease merging with testing
* Renamed folder to ease merging with testing
* Cleanup, getting ready for PR
* Small fix to satisfy linter
* Final cleanup after reviewing PR diff
* Improved filter docs
* add docstring to math_utils.py
* remove unused get_displacement_vector
* remove unused import
* [chore] formatting
* chore: formatting
* fix matrix inversion numerical instability and formatting of class name
* remove improper static method use
* improper use of tuple[float] type hint and mix bug referencing self.covariance_mat_xy instead of self.covariance_mat in KalmanFilterBall
* removed references of .cmd_map not used position.py
* fix test failure
* Made non-global constant variable lower-cased
* Using matrix transpose attribute instead of function call
* update test cases
* Removed redundant last_game_frame attribute
* separate my and opp refiners
* update running attribute for opposite refiner too
* Minor formatting and naming changes to Kalman filter
* fix incorrect assumption about robot id numbering in position refiner tests
* corrected direct imputation of None values into vision data. Fix bug causing test fail
* improve reset functionaity of position refiner
* Fixed bugs introduced when removing assumption about numbering
* fix dictionary logic in position refiner
* update optional typing for KalmanFilterBall filter
* fix typing in KalmanFilterBall
* fix point cycle strat
* Fixed issues in test due to filters no longer having ids, and now taking Robot instead of Dict[Int, Robot]
* Kalman filter now has id attribute
* label vision data using kalman id instead of last frame id
* add comment about treating substitution as vanishing
* remove unncessary imports
* add authors
---------
Co-authored-by: Fred Huang <fredhuang122106@gmail.com>
Co-authored-by: Joel <nzmjoel@gmail.com>1 parent c0228ae commit 51c441b
File tree
13 files changed
+2521
-1394
lines changed- utama_core
- global_utils
- rsoccer_simulator/src/ssl/envs
- run
- refiners
- strategy/examples
- tests
- entities
- refiners
13 files changed
+2521
-1394
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
113 | 113 | | |
114 | 114 | | |
115 | 115 | | |
| 116 | + | |
116 | 117 | | |
117 | 118 | | |
118 | 119 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
8 | 9 | | |
9 | 10 | | |
10 | 11 | | |
| |||
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
20 | | - | |
| 21 | + | |
21 | 22 | | |
22 | 23 | | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
28 | | - | |
| 29 | + | |
29 | 30 | | |
30 | 31 | | |
31 | 32 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | | - | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
14 | 18 | | |
15 | 19 | | |
16 | 20 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
59 | | - | |
| 59 | + | |
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
| |||
Lines changed: 29 additions & 26 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
3 | 2 | | |
4 | 3 | | |
5 | 4 | | |
| 5 | + | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
16 | | - | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
17 | 22 | | |
18 | 23 | | |
19 | | - | |
20 | 24 | | |
| 25 | + | |
21 | 26 | | |
22 | 27 | | |
23 | 28 | | |
| |||
38 | 43 | | |
39 | 44 | | |
40 | 45 | | |
41 | | - | |
| 46 | + | |
42 | 47 | | |
43 | 48 | | |
44 | 49 | | |
45 | 50 | | |
46 | 51 | | |
47 | 52 | | |
48 | | - | |
| 53 | + | |
49 | 54 | | |
50 | 55 | | |
51 | 56 | | |
52 | 57 | | |
53 | | - | |
| 58 | + | |
54 | 59 | | |
55 | 60 | | |
56 | 61 | | |
| |||
78 | 83 | | |
79 | 84 | | |
80 | 85 | | |
81 | | - | |
| 86 | + | |
82 | 87 | | |
83 | 88 | | |
84 | 89 | | |
| |||
108 | 113 | | |
109 | 114 | | |
110 | 115 | | |
111 | | - | |
| 116 | + | |
112 | 117 | | |
113 | 118 | | |
114 | | - | |
115 | | - | |
| 119 | + | |
| 120 | + | |
116 | 121 | | |
117 | 122 | | |
118 | 123 | | |
| |||
172 | 177 | | |
173 | 178 | | |
174 | 179 | | |
175 | | - | |
| 180 | + | |
176 | 181 | | |
177 | 182 | | |
178 | 183 | | |
| |||
189 | 194 | | |
190 | 195 | | |
191 | 196 | | |
192 | | - | |
| 197 | + | |
193 | 198 | | |
194 | 199 | | |
195 | 200 | | |
| |||
200 | 205 | | |
201 | 206 | | |
202 | 207 | | |
203 | | - | |
| 208 | + | |
204 | 209 | | |
205 | 210 | | |
206 | 211 | | |
| |||
221 | 226 | | |
222 | 227 | | |
223 | 228 | | |
224 | | - | |
| 229 | + | |
225 | 230 | | |
226 | 231 | | |
227 | 232 | | |
| |||
415 | 420 | | |
416 | 421 | | |
417 | 422 | | |
418 | | - | |
419 | 423 | | |
420 | 424 | | |
421 | 425 | | |
422 | 426 | | |
423 | | - | |
424 | 427 | | |
425 | 428 | | |
426 | 429 | | |
427 | 430 | | |
428 | 431 | | |
429 | | - | |
| 432 | + | |
430 | 433 | | |
431 | 434 | | |
432 | 435 | | |
433 | 436 | | |
434 | | - | |
| 437 | + | |
435 | 438 | | |
436 | 439 | | |
437 | | - | |
| 440 | + | |
438 | 441 | | |
439 | 442 | | |
440 | | - | |
| 443 | + | |
441 | 444 | | |
442 | | - | |
| 445 | + | |
443 | 446 | | |
444 | 447 | | |
445 | 448 | | |
446 | 449 | | |
447 | 450 | | |
448 | | - | |
| 451 | + | |
449 | 452 | | |
450 | 453 | | |
451 | 454 | | |
452 | 455 | | |
453 | | - | |
| 456 | + | |
454 | 457 | | |
455 | 458 | | |
456 | | - | |
| 459 | + | |
457 | 460 | | |
458 | 461 | | |
459 | | - | |
| 462 | + | |
460 | 463 | | |
461 | | - | |
| 464 | + | |
0 commit comments