Sumários

Construction of navigation algorithms.

8 Março 2024, 15:00 Luis Manuel Ferreira Fernandes Moniz


Using the HillClimbing program build alternative navigation algorithms for the scenario. The map is covered by a grid of hexagons and the paths are calculated between the midpoints of two hexagons.

Exercises:

  • Test the operation of the program.
  • Modify the algorithm to only take cost so far of the path under consideration (UCS).
  • Extend the algorithm to use a bidirectional strategy (BIDI / UCS)
  • Modify the algorithm to use a global perspective (BFS).

Movement and Navigation

8 Março 2024, 13:00 Luis Manuel Ferreira Fernandes Moniz


Path  planning algorithms; Path optimization; Hierarchical and continuous  planning of journeys; Simple movement; Steering Behaviors; Moving avoiding collisions; Prediction of physical effects; Movement in formation; Driving a Vehicle

Representation of scenarios using regular grids.

1 Março 2024, 15:00 Luis Manuel Ferreira Fernandes Moniz


Using the PathFinder program, construct alternative representations for the scenario

The Pathfinder program allows you to automatically build scenarios from a map and use this information to determine the best path between two points. There are three elements on the map:

  • Road: passable at cost 1
  • Grass: passable with cost 2
  • Water: obstacle

The map is covered by a grid of hexagons and the paths are calculated between two hexagons.

  1. Test the operation of the program.
  2. Modify the map (can use Paint/Gimp) to include new obstacles.
  3. Use different grids: squares and circles. In these cases, remember to conveniently redefine the functions neighbour, hex_to_pix, and pix_to_hex .

Representing scenarios

1 Março 2024, 13:00 Luis Manuel Ferreira Fernandes Moniz


Structures for representing the environment; Static and dynamic characteristics; Objects and autonomous entities; 2D and 3D environments; Tactics and Strategies

PyGame introduction

23 Fevereiro 2024, 15:00 Luis Manuel Ferreira Fernandes Moniz


  1. Install PyGame on the machine.
  2. Put the pong game to work.
  3. Change the code so that the opponent behaves more intelligently.
  4. Play the game.
  5. Conclusions and results? Impossible to play?
  6. Change the code so that the opponent behaves more real