Hi team,
It started as a bit of an experiment, but we have ended up building our own 'in-house' ticketing management application.
To further the development, we have decided to develop an 'intelligent' seat allocation module and are currently trying to formally define the 'business rules' that apply when we (as humans) allocate seats.
Obviously, when you're a human looking at a paper seating chart, it is easy to see gaps and avoid assigning tickets that are going to cause widowed seats or problems in the future using intuition - it's not so easy to define these as rules for a bit of software! =/
If you were to 'define' the rules you apply when assigning tickets, what would you be looking for?
The types of rules we have so far are pretty basic, including things like:
* Allocations must not 'widow' either a single or group of three seats.
* Allocations must not be made across sections (i.e. avoid seating people over a walk-way or gap)
* If an allocation of 4 or more seats is being made and it is not possible to allocate these in one row, they can be split across two adjacent rows (i.e. assign A1, A2 and B1 and B2 so they're sitting behind each other).
* Where possible, 'convenient' gaps must be filled. In our seating charts, seats are 'ranked' from best to worse to allow easy allocation of seats, but also have a 'ranking category' which is often the same/linked to the tier of seat it is. If a patron requests three seats, and there is a 'gap' on the map of three seats, the system will automatically allocate these as opposed to the 'next best available'. This will only happen for seats in the same 'ranking category', and only for exact number matches.
So - any thoughts? What kind of rules do you think about when allocating seats? Do you have any comments on the above rules that we are building already?
Cheers
Jam.
It started as a bit of an experiment, but we have ended up building our own 'in-house' ticketing management application.
To further the development, we have decided to develop an 'intelligent' seat allocation module and are currently trying to formally define the 'business rules' that apply when we (as humans) allocate seats.
Obviously, when you're a human looking at a paper seating chart, it is easy to see gaps and avoid assigning tickets that are going to cause widowed seats or problems in the future using intuition - it's not so easy to define these as rules for a bit of software! =/
If you were to 'define' the rules you apply when assigning tickets, what would you be looking for?
The types of rules we have so far are pretty basic, including things like:
* Allocations must not 'widow' either a single or group of three seats.
* Allocations must not be made across sections (i.e. avoid seating people over a walk-way or gap)
* If an allocation of 4 or more seats is being made and it is not possible to allocate these in one row, they can be split across two adjacent rows (i.e. assign A1, A2 and B1 and B2 so they're sitting behind each other).
* Where possible, 'convenient' gaps must be filled. In our seating charts, seats are 'ranked' from best to worse to allow easy allocation of seats, but also have a 'ranking category' which is often the same/linked to the tier of seat it is. If a patron requests three seats, and there is a 'gap' on the map of three seats, the system will automatically allocate these as opposed to the 'next best available'. This will only happen for seats in the same 'ranking category', and only for exact number matches.
So - any thoughts? What kind of rules do you think about when allocating seats? Do you have any comments on the above rules that we are building already?
Cheers
Jam.
Last edited: