Requirements to Code
Background:
This project aims to build a software application that will allow criminologists and, or criminal analysts to run agent simulations, simulating a real-world environment where they can observe sexual offenders’ behaviour over a time and space. The simulation will illustrate sexual offender behaviour in a space (Westminster borough) and time (ticks representing 1 hour) that will aim to capture offender behavioural thinking. This includes how likely the offender is to take the risk to commit the offence in the presence of other agents such as citizens and surveillance, as well as space they are in. The simulation will aim to capture the significant impact of the presence of other agents on the risk of the offender committing the sexual offence as well as the time and space that affect the sexual offender’s willingness to take risk and commit the act of sexual violence. The user using the software does not require any previous IT experience to run the agent-based simulation. The software must allow variation of certain parameters through an interface that is available to the user, also known as a GUI (Graphical User Interface), such that the user is able to increase or decrease the crime rate, number of victims and number of offenders in a space and time to explore the hypothetical future of sexual violent crimes in Westminster borough. The user should also be able to select parameters such as a particular time, for example during daylight or night-time, as well as a time period, from a minimum of 1 day to a maximum of 1 year to run the simulation for. Furthermore, the user will also be able to add certain variables/agents (passive agents) such as surveillance and campaigns that will aim to illustrate the interventions to tackle this type of crime and how it will counteract the rise in sexual offences. The output of the simulation must be presented in a manner that is useful to analyse and for research into the behaviour of sexual offenders with various parameter configurations and how interventions present a solution to tackling this type of rising crime.
Modelling Offender and Victim agent over a space and environment of Westminster (London).
Time: In the model 1 tick = 10 minutes so every action has to be proportionate to this (please identify this in the code so can be changed later if
need be)
In 1 day (1 tick = 10 min, 1440 minutes in a day so 144 ticks = 1 day in the simulation)
Agents:
Offender (cognitive active agents)
Citizens (active agents)
Surveillance (passive agents)
Campaigns (passive agents)
Please ensure code quality and object-oriented programming (OOP) is adhered, e.g. using abstraction, inheritance using python
Agents |
States |
Offender |
1. Wake up/start of the day 2. Go to road or stay stationary (at house or the initial location) 3. Travel around space: (can go in between any of these places, to any of these places, does not have to be in the order below) I. Work II. Leisure (Park) III. School, shops, public transport stations IV. Abandoned buildings and alleyways V. Go home 4. Actively roaming to seek victim (can go in between any of these places, to any of these places, does not have to be in the order below) I. Work II. Leisure (Park) III. School, shops, public transport stations IV. Abandoned buildings and alleyways V. Go home 5. Attacking victim agent (both victim and offender agent will be stationary for 10 mins – 1 tick is equal to 10 minutes) I. Attack victim (then after continuing its routine) II. Go home (offender can change mind and go home right before committing the attack – this behaviour is stochastic) 6. Loop around until the simulation is terminated |
Victim |
1. Wake up/start of the day 2. Go to road or stay stationary (at house or the initial location) 3. Travel around space: (can go in between any of these places, to any of these places, does not have to be in the order below) I. Work II. Leisure (Park) III. School, shops, public transport stations IV. Abandoned buildings and alleyways V. Go home 4. Loop around until the simulation is terminated
When the victim is attacked by the offender, the victim will be stationary for 20 minutes (10 minutes both offender and victim, 10 minutes only victim to symbolise the victim recovering). The victim agent will then continue it daily routine from where it left off |
|
|
Citizen |
1. Wake up/start of the day 2. Go to road or stay stationary (at house or the initial location) 3. Travel around space: (can go in between any of these places, to any of these places, does not have to be in the order below) I. Work II. Leisure (Park) III. School, shops, public transport stations IV. Abandoned buildings and alleyways V. Go home 4. Loop around until the simulation is terminated |
Surveillance |
1. Activated 2. Not activated
(the user should be able to increase the number of surveillance agents, however in the original simulation there should be 12 surveillance agents but NOT around alleyways/abandoned buildings – in the centre around schools etc – when the user chooses the enable the surveillance camera it should be placed near alleyways and abandoned buildings with the intention of crime rate decreasing) Minimum 0, simulation starts with 12 without user touching, user can change up until 40 |
Campaigns |
1. Activated 2. Not activated
(the user should be able to increase the number of campaign agents, however in the original simulation there should be 3 campaign agents around schools, work etc – when the user chooses the enable the campaign agents there should be around 2 to 3 campaigns each near work, building, shop, public transport, schools etc.. = in places where there are higher crimes e.g. shops/buildings around abandoned buildings) Minimum 0, simulation starts with 3 without user touching, user can change up until 20 |
Environment:
Map of Westminster
Houses (depends on number of victims + offenders and other citizens)
Parks, rivers
Work buildings
Schools, shops, public transport
Abandoned buildings and alleyways
High level representation of other places on the map (e.g. rivers, land ..)
DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma
Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t
Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th
1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of
1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of