Transcript
Page 1: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

Environmentally Conscious AI Improving Spatial Analysis and Reasoning

Clodéric Mars MASA LIFE Lead [email protected] @clodericmars

Page 2: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

What is Spatial Reasoning?•Spatial objects

• POIs • Areas/zones • Influence map • ...

• Relationships • Distance • Visibility • Accessibility • ...

!2

Page 3: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

“What is the closest bone that is not too old,

out of the cat likely position and that I can chew while observing

the street?”

!3

Page 4: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

How?•List of points of interests •Query several sources

• “closest” ➡ pathfinding • “not too old” ➡ metadata • “likely position” ➡ influence map • “observing” ➡ visibility mesh, pvs

•Add some custom logic !➥ A little complex for “just” a dog!

!4

Page 5: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

Wouldn’t it be cool if...•Behavior designers can focus on using

• “One stop” gateway • Expressive query

•Developers can extend and optimize !➥ Handle the “technical” complexity for the benefit of both

!5

Page 6: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

Inspirations•Game industry

• Environment Tactical Querying (ETQ) [Zielinsky 2013]

• Tactical Position Selection (TPS) [Jack 2013]

•GIS • PostGIS (postgis.net)

!6

Page 7: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

!7

Page 8: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

Let’s study a practical example!

!8

Page 9: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

Tactical behaviors in VBS2•Tactical groups... • ...navigating in a “hostile” environment

•Behaviors that don’t depend on the environment

!9

Page 10: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

!10

Page 11: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

“select cover” query

SELECT p FROM interest_points WHERE p.metadata.type == 2

AND (p.metadata.assignee == NULL OR p.metadata.assignee == $.id)

AND p.geometry.x > $.position.x - 10 AND p.geometry.x < $.position.x + 10 AND p.geometry.y > $.position.y - 10 AND p.geometry.y < $.position.y + 10

ORDERED BY distance(p.geometry, $.position) LIMIT 10

collectiontype (2 is cover points)

free or already assigned to me

no farther than 10 m

order by distance to metake the first 10

!12

Page 12: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

Reach a zone and take cover•“select cover”

• SpatialDB query • Distance • Protected direction • Availability

•“assign cover” • SpatialDB update • Transactional

goto cover

goto zone

close to zone?

select cover

assign

cover!13

Page 13: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

Technical stuffs•SQLite (www.sqlite.org)

• Easy to integrate • Public Domain • Mature • Fast • Geospatial index (r-tree) • Functions • In-Memory

•peg/leg (piumarta.com/software/peg/)

!14

Page 14: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

!15

Page 15: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

How? … with this implementation•List of points of interests (bones) !•Query several sources(navmesh, visibility, …) !•Add some custom logic

!16

‣SQLite Tables • metadata • spatial index

‣SQLite Functions • Signature • Callback to subsystem • Metadata access/index

‣SQLite ‘arithmetic’ and custom parser

Page 16: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

What worked•Fast implementation of first version

•Data driven behaviors

•Familiar query language

•OK performances!17

"select cover" duration

0,08 ms

0,15 ms

0,23 ms

0,30 ms

0 1250 2500 3750 5000

Core i7 @ 2Ghz // 8Go of RAM

Total size

3 000 kb

6 000 kb

9 000 kb

12 000 kb

0 1250 2500 3750 5000

Page 17: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

What needs to be improved•Easy-to-use assignment •Tools

• inspection • sandbox

•Performances • grouping/ordering evaluators • time slicing • multithreading

!18

Page 18: Environmentally Conscious AI: Improving Spatial Analysis and Reasoning

Takeaways

!19

1.Decouple (designer/developer)

2.Use existing tech (eg. SQLite)

3.Create a familiar language Meet us at booth #1743

@masalife_ai


Top Related