Agent -AI Architecture for prisoners.

General chit-chat and minor questions about just about anything

Moderator: NBJeff

User avatar
keithxm23
level0
Posts: 1
Joined: Sat Sep 21, 2013 10:57 pm
Location: Boston
Contact:

Agent -AI Architecture for prisoners.

Postby keithxm23 » Sun Oct 06, 2013 2:43 am

Hey guys,

So I'm writing this short paper for my Game AI course which compares the Agent Architecture of prisoners in Prison Architect and a Sim in The Sims franchise [their free-will mode]. I've managed to find extensive documentation on how the AI for the Sims use. It seems they use the paradigm of 'Smart Objects' where the objects (bed, toilet) broadcast their benefits/the-needs-they-serve as opposed to having all this knowledge programmed inside each Sim.

I've been looking for similar matter for the prisoners in Prison Architect. I've searched high and low and can't find any low-level technical details.

It would be really helpful if any of you who've come across this type of material, could point me to the same. Or if you have a fair idea about how things work, I'd really appreciate it if you could briefly explain the same.

Thanks people!


EDIT: This article does a great job of explain the AI in The Sims, specifically the parts of Smart Objects http://aigamedev.com/open/review/the-sims-ai/
Dichotomy
level1
level1
Posts: 30
Joined: Fri Jul 05, 2013 4:10 am

Re: Agent -AI Architecture for prisoners.

Postby Dichotomy » Sun Oct 06, 2013 7:10 am

Broadcasting is a relatively common method, generally because it is more efficient resources (CPU) wise (particularly as the number of SIMS increases).

Have you had a troll through the LUA. From a quick look at the WIKIA it seems the NEEDS system is exposed and understood so I would suggest unpacking the .DAT files and having a look yourself. If the code is there then it will not be hard to work out what is going on.

Of course perhaps the underlying implementation may be in C/C++ and therefor unavailable, but that said the implementation could still be deduced from the LUA if you are lucky.

Check out this link : http://devwiki.introversion.co.uk/pa/index.php/Modding (You will need to have PURCHASED PA and ACTIVATED your account, for this link to work).
User avatar
paktsardines
level5
level5
Posts: 1752
Joined: Mon Oct 01, 2012 11:10 am
Location: Australia

Re: Agent -AI Architecture for prisoners.

Postby paktsardines » Sun Oct 06, 2013 10:54 am

I know objects like the laundry card actually issue tasks to the prisoners to complete.. eg: 'pick me up, move me over there..'

I think it's in one of the sketches from Chris' notebook.
Daiky
level1
level1
Posts: 22
Joined: Sat Jul 13, 2013 10:01 pm

Re: Agent -AI Architecture for prisoners.

Postby Daiky » Sat Oct 19, 2013 12:24 pm

In PA, the AI can be split up in two distinct systems that drives entity actions: needs (only prisoners) and jobs (both prisoners and staff).

Every update cycle of the prisoner, the needs are updated, if a need crosses a certain treshold (time to action) they will try and satisfy that need by looking for an object closest to them that can satisfy the need and is not busy and is reachable. If a need crosses a second treshold (time to failure), the need will be in failure mode (hunger, tired, dirty,...) which will make the prisoners temperature rise.

Jobs are generated externally by all sorts of triggers, and are always linked to an object. Arrival of ingredients in the deliveries zone creates a job request "move ingredients to kitchen". A person blocked by a locked door generates "open locked door" job request for this door. A cooker filled with ingredients creates a job "operate cooker", etc... Whenever a job request is created it ends up in the queue, a list of jobs globally in the game. Whenever an entity is idle, it will pick up a job in the queue, depending on the type of job, priority and distance to the object. If there is a valid path to the object, the job gets assigned to this entity and the job goes to In Progress state (so it isn't picked up by another entity).

Return to “General”

Who is online

Users browsing this forum: No registered users and 9 guests