Welcome to the Sporkforge.com Event Seating Planner. This tool will help you plan the seating arrangements for your large event by generating a seating assignment which uses a minimal number of seating resources, and which also honors the constraints you provide regarding who should get seated where.
To generate seating assignments for his or her event, the user provides the following:
A list of parties to be seated, where a "party" is a group of one or more people that arrive together and must be seated together. Each party will also belong to a general category, referred to as a "group". This categorization will be used in specifying which parties can be seated in which types of seating units.
A list of seating unit types. A "seating unit" can be a table, aisle, seating section, etc. A "seating unit type" is any collection of seating units with the same number of seats and which allow the same groups to be seated there. So, for example, when planning a wedding you may have 30 round tables that seat 10 people each, and to which you want to assign members of the groom's family as well as any press members needing to be seated. This would be considered a "seating unit type".
Also, the user may optionally make adjustments to the seating by specifying pairs of parties the must be seated together at the same seating unit.
The tool then proceeds to assign the parties to seating units. Their eligibility for being seated at particular seating unit types given their group categorization is honored, as are any specified seating adjustments. The result will be a seating assignment that uses the available seating resources efficiently given the categorized seating scheme desired by the user.
The parties to be seated list is the list of attendee groups ("parties") having the following format for each line:
<Party name> <Number of individuals in the party> <Group name>
"Party name" is the name used to identify the party, for example "Andersons", or "H. R. Johnson & guests".
"Number of individuals in the party", for example you'd write 5 for a party of five.
"Group name" is the general category you wish to place this party under, for the purposes of controlling which seating unit types it may be assigned to. For example, when planning a trade conference, you may wish to seat the representatives of company XYZ to a particular set of tables. So for parties from that company, you can set the group name as "Company XYZ reps". Then, by adding the group "Company XYZ reps" to the eligible groups list of the seating unit type corresponding to the company XYZ tables, you'll ensure that the tool seats those parties at those tables.
Note that both party names and group names must be enclosed in double quotes (" ") unless the name has no spaces or punctuation, in which case the quotes may be omitted.
A seating unit type is a collection of seating units (tables, aisles, etc) having the same number of seats each and the same party group classifications that are eligible to be seated there. This tool allows you to specify up to ten different seating unit types.
To specify a seating unit type, fill in the following fields:
"Name of seating unit type": Provide a name for the seating unit type. In the resulting seating assignment, the individual seating units will be identified by this name and an index number.
"Seats per unit": The number of seats in each table, aisle, etc., of the seating unit type being described.
"Number of units": The maximum number of seating units of this type available. Not all available units will necessarily be used in the final seating assignment.
"Groups eligible to be seated in unit type": The list of party group classifications that may be seated at units of this type. The group names should be separated by commas. Be sure to enclose each group name in double quotes unless it has no spaces or punctuation.
The tool will only seat parties that belong to the specified eligible groups at those seating units. Note: If the list of eligible groups is left blank, however, then all groups are eligible to be seated at those units.
After the initial generation of a seating assignment, the user may wish to make adjustments. The seating adjustments feature allows the user to force the tool to seat parties together at the same seating unit. The syntax of each line is as follows:
<Party 1 name> + <Party 2 name>
which forces the two specified parties to be seated together. Seating adjustments are optional and unlimited, so the user may make as many or as few (including none) as required. And as usual, each party name must be enclosed in double quotes unless it has no spaces or punctuation.
Once you've entered all the data, click the "generate seating assignments" button to submit the data and generate your seating assignment. The tool will attempt to pack the seating as tightly as possible, while also honoring the user's constraints regarding eligible groups, seating adjustments, etc.
If there are errors in the data, for example invalid seat counts or a seating party repeated one or more times in the parties to be seated list, then the error will be displayed instead of any seating results. If not, then the seating assignment results will be displayed, and will be organized into the following sections:
"Summary": A summary of the seating results, including how many parties were seated, how many were potentially unseated in the case of insufficient seating resources or group conflicts, and the seating unit usage. The seating unit usage is reported as a total and also on a type basis. Unit usage counts are provided and compared to the total available, and unit "utilization" is also reported, which is the average percentage of seats occupied over all units which have one or more parties seated at them.
"Unseated parties": Only displayed if there are unseated parties. Parties may remain unseated if the tool was unable to generate a seating arrangement that assigned all parties to seating units. This could happen if there aren't enough seating resources, or if the group eligibility setting of the seating unit types were too restrictive.
"Seating assignments by seating unit": The resulting seating assignments on a seating unit basis. The seating units are displayed in the left column, along with the seat use count (<used>/<total>), and the parties assigned to them in the right. Note that only used seating units (those with one or more parties assigned to them) will be listed, which may be fewer than the total number of units allocated for that seating unit type.
"Seating assignments by party": The resulting seating assignments on a party basis. The parties specified in the parties to be seated list are listed (in the same order as the user submitted), with the resulting seating unit assignment in the last column.
Q: Why should I use this tool?
A: Planning the seating assignments for a large event by hand can be difficult and time consuming, and packing the seating tightly into available seating units can be even more difficult. Furthermore, changes in attendance or seating resources may occur multiple times after having made the initial seating arrangements. This task is therefore well suited to automation. As this tool is powerful, easy to use, free of charge, and available from any web connection, it is a good choice for automating the seating assignments of your event.
Q: The seating results say that not all parties could be seated - what should I do?
A: One reason may be that there's simply more people than there are seats - check the seating resources and compare it to the number of people needing to be seated to see if this is the case. Also, if the parties to be seated are relatively large compared to the size of the available seating units, then you may find that the seating can't be filled even though there are slightly more seats than people - this is simply the result of the difficulty of packing the large parties tightly, and may require you to increase the seating resources.
If there are clearly enough seating resources such that the packing issue above isn't a factor, then perhaps the specified eligible groups for the seating unit types are too restrictive. Check the usage per seating unit type to see if any types are using fewer units than are available, and compare the eligible groups for that type to the groups to which the unseated parties belong. You could make those groups eligible to be seated at that underutilized seating unit type, for example.
It may be the case that there are complex group eligibility constraints, such that a group's eligibility is spread over several seating unit types, in some cases sharing eligibility with other groups, resulting in the tool being unable to find an optimal solution (everybody seated) even though such a seating may exist. If this is the case, you could restructure the seating unit types to isolate group eligibility, therefore simplifying the group eligibility constraints. For example, suppose seating unit type "Front Tables" has 50 tables with 12 seats each, and groups A and B are eligible to be seated there. You could instead define seating unit types "Front Tables A" having 25 tables and group A eligibility, and "Front Tables B" having 25 tables and group B eligibility.
If in this case the number of unseated parties are small, however, you may be able to resolve the seating by making a few strategic seating adjustments instead.
Regarding a seating unit type's eligible group list, remember also that leaving the group list blank allows the tool to seat any group at that seating unit type - in other words, no groups listed implies no constraints on groups seated there.
Q: Certain parties aren't getting seated where I want them to be - how do I fix that?
If the number of parties whose assignments you are dissatisfied with are small, you can modify their placement using seating adjustments.
If, however, there's a relatively large number of parties that aren't getting seated the way you want, you can modify their seating by adjusting their groups and the group eligibility of the available seating types. For example, if you intended for a collection of parties to be seated together, but they end up being spread out in the final assignment, you could reclassify these parties into their own group, and separate from an existing seating unit type a new seating unit type with that group alone being eligible to be seated there. Likewise, if you want certain sets of parties to be seated separately, then assign those parties to separate groups and make them eligible to be seated only in exclusive (separate) seating unit types.
Q: What are the limits of this tool in terms of how many people it can seat, etc.?
As this is a web-based tool requiring quick calculation, and is subject to limited server resources, we unfortunately must place limits on the size of the seating problems submitted.
The following are the limits placed on submitted seating problems: