There's more...

We need to implement our own member functions by overriding the member functions from the Expert class. It's important to note that it's up to each expert to read and write the blackboard entries in the GetInsistence function. Then, it's time to execute actions during the Run member function. If the experts' Run member functions are computationally expensive, it's better to handle them via coroutines.

Finally, this could be revisited on each project by defining the blackboard as the game state, on which each expert is able to read and write data. Just keep in mind the priority part of the algorithm for it to run as expected.

Get Unity 2018 Artificial Intelligence Cookbook - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.