Apparatus for seat allocation and program therefor

The seating arrangement device addresses complex theater layouts by using a layout code and processing unit to allocate seats efficiently, reducing empty seats and ensuring group seating, thus enhancing seating efficiency.

JP2025155080APending Publication Date: 2025-10-14NIPPON HOSO KYOKAI
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024058423
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-01
Publication Date
2025-10-14

AI Technical Summary

Technical Problem

Existing seating arrangement systems struggle to handle complex movie theater layouts with staggered rows and columns, leading to inefficient seating and difficulty in securing adjacent seats for multiple groups with one ticket.

Method used

A seating arrangement device that uses a layout code input unit, seating arrangement processing unit, and image generation unit to accommodate complex layouts by allocating seats efficiently, minimizing empty seats through random allocation and seat extraction processes.

Benefits of technology

Enables efficient seating arrangements in venues with complex layouts by minimizing vacant seats and ensuring groups are seated together, improving seating efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025155080000001_ABST
    Figure 2025155080000001_ABST
Patent Text Reader

Abstract

To make possible efficient seat allocation to cope with a venue complicated in layout.SOLUTION: An apparatus for seat allocation 2 comprises a layout-code input section 11 that a layout code is to be inputted and a seat-allocation processing section 12 that generates a seat-allocated layout code in which each group is assigned to an allocatable seat. The seat-allocation processing section 12 extracts an allocatable seat from the layout code, assigns in random an extracted seat in an order of from a group greater in the number of persons, repeats processing to aggregate the number of vacant seats to which no assignment could have been done by the number of times set previously, and generates a result of seat assignment the number of vacant seats becomes the least as a seat-allocated layout code.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a seating arrangement device and a program therefor that determine seating arrangements in a venue. [Background technology]

[0002] Conventionally, a method has been proposed for creating a seating layout image used when reserving seats in a movie theater over the Internet, thereby reducing the workload on both the movie theater side and the system provider side (Patent Document 1).

[0003] The technique described in Patent Document 1 involves inputting seating layout data that defines seat attributes for each element of a movie theater seating matrix into a client terminal device.The technique described in Patent Document 1 then generates a seating layout image by converting predetermined values ​​defined as seat attributes for each element of the seating matrix into pre-associated images based on the seating layout data. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2012-98920 Summary of the Invention [Problem to be solved by the invention]

[0005] However, the method described in Patent Document 1 has a problem in that it cannot handle movie theaters with complex layouts. Specifically, the method described in Patent Document 1 can handle movie theaters where seats are arranged vertically and horizontally because the seat layout data manages seats by row numbers and column numbers, but cannot handle movie theaters where seats are arranged in staggered rows and columns and the front and back seats are not aligned.

[0006] Furthermore, the method described in Patent Document 1 only generates a seating layout image and does not allocate seats, which can result in inefficient seating arrangements. For example, if multiple groups can enter with one ticket, and spectators freely choose their seats, there will be fewer adjacent empty seats, making it difficult for other groups to secure seats.

[0007] In view of the above-mentioned problems, an object of the present invention is to provide a seating arrangement device and a program therefor that can accommodate venues with complex layouts and enable efficient seating arrangements. [Means for solving the problem]

[0008] In order to solve the above problem, the seating arrangement device of the present invention is a seating arrangement device that determines the seating arrangement at a venue where an event is held, and is configured to include a layout code input unit, a seating arrangement processing unit, and an image generation unit.

[0009] The layout code input section inputs a layout code that includes the seating layout and type of the venue. This layout code can be set to any width, such as 1.5 seats, so it can accommodate venues with complex layouts, such as venues with staggered seating.

[0010] The seating allocation processing unit pre-sets the number of groups participating in the event for each number of people per group, and generates an allocated layout code that allocates each group to an available seat based on the layout code and the number of groups. The image generating unit generates a layout image of the hall from the layout code, and generates a seated layout image showing the seating arrangement of each group from the seated layout code.

[0011] The seat allocation processing unit then extracts available seats from the layout code, randomly allocates the extracted seats in descending order of the number of people in the group, and repeats the process of counting the number of vacant seats that could not be allocated a preset number of times.Furthermore, the seat allocation processing unit generates the seat allocation result that minimizes the number of vacant seats as the allocated layout code. In this way, the seating arrangement device repeats seat allocation and generates an allocated layout code that minimizes the number of empty seats, thereby enabling efficient seating arrangement.

[0012] The present invention can also be realized by a program for causing a computer to function as the seating arrangement device. [Effects of the Invention]

[0013] According to the present invention, it is possible to accommodate venues with complex layouts and enable efficient seating arrangements. [Brief explanation of the drawings]

[0014] [Figure 1] 1 is a block diagram showing a configuration of a seating arrangement system according to an embodiment. [Figure 2] FIG. 2 is an explanatory diagram illustrating a layout code in the embodiment. [Figure 3] 1 is a table showing an example of seat types in an embodiment. [Figure 4] In the embodiment, (a) shows the layout code of a certain venue, and (b) shows the venue corresponding to the layout code of (a). [Figure 5] 1A to 1D are explanatory diagrams illustrating an outline of seating arrangement processing in an embodiment. [Figure 6] In the embodiment, (a) shows a layout code for a certain venue for which seats have already been allocated, and (b) shows the venue corresponding to the layout code in (a). [Figure 7] FIG. 2 is an explanatory diagram illustrating seat information in the embodiment. [Figure 8]FIG. 10 is an explanatory diagram illustrating hashing of seat information in the embodiment. [Figure 9] FIG. 10 is a diagram showing venues corresponding to check-in data in an embodiment. [Figure 10] 10 is a flowchart illustrating seating arrangement processing in an embodiment. [Figure 11] 10 is a flowchart showing a seating arrangement A generation routine in the embodiment. [Figure 12] 10 is a flowchart illustrating a random seating routine in an embodiment. [Figure 13] 4(b), FIG. 6(b), and FIG. 9 show examples of hatching types. DETAILED DESCRIPTION OF THE INVENTION

[0015] Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, each embodiment described below is intended to embody the technical concept of the present invention, and unless otherwise specified, the present invention is not limited to the following. Furthermore, the same means are given the same reference numerals, and their description may be omitted.

[0016] [Seating system overview] An overview of a seating arrangement system 1 according to an embodiment will be described with reference to FIG. The seating arrangement system 1 is a system for allocating seats in a venue where an event is held. As shown in FIG. 1, the seating arrangement system 1 includes a seating arrangement device 2 and a check-in terminal 3.

[0017] Here, there are no particular limitations on the events that the seating arrangement system 1 can accommodate. For example, events include concerts, plays, lectures, preview screenings, and matches. Furthermore, there are no particular limitations on the venues that the seating arrangement system 1 can accommodate, whether they are indoors or outdoors, as long as there are seats that can be assigned to each audience member. In this embodiment, the venue is assumed to be a ceremony venue (hall) equipped with a large screen, sound equipment, and a large number of audience seats (FIG. 4(b)). Note that although seats are described, it is sufficient that there is space that each audience member can occupy, and for example, standing room is also acceptable. Furthermore, it is assumed that an identifier (event ID) is assigned to each event in advance so that each event can be uniquely identified.

[0018] In this embodiment, participation in an event is assumed to be registered in groups of a predetermined number of people. For example, each group may consist of 1 to 5 spectators. Furthermore, each group is assigned an identifier (group ID) in advance so that it can be uniquely identified.

[0019] Furthermore, the organizer will assign seats to groups that can participate in the event and mail a postcard (ticket) to the representative in advance. This postcard will include the representative's name, address, and contact information, the number of people in the group, seating information reserved for the group (seating arrangement information), and a QR code (registered trademark). Instead of mailing a postcard to the representative, electronic data (e.g., email) containing the same information as the postcard may be sent.

[0020] The seating arrangement device 2 determines the seating arrangement in the venue where an event is held. In other words, the seating arrangement device 2 allocates seats in the venue to each group of spectators for each event. The seating arrangement device 2 also performs check-in processing based on the QR code read by the check-in terminal 3 described below.

[0021] The check-in terminal 3 is a terminal for checking in, and is located, for example, at the reception desk of the venue. For example, the check-in terminal 3 may be a smartphone or tablet terminal with a built-in camera, as long as it can read QR codes. The check-in terminal 3 is also connected to the seating arrangement device 2 via the Internet. The check-in terminal 3 reads the QR code presented by the spectator and transmits the read result to the seating arrangement device 2.

[0022] [Seating arrangement configuration] The seating arrangement device 2 includes a layout processing unit 10, a check-in processing unit 20, an image processing unit 30, a layout database 40, and a check-in database 50. The layout processing unit 10 performs processing related to the input layout code based on the layout code and allocation information described below. The layout processing unit 10 includes a layout code input unit 11 and a seating arrangement processing unit 12.

[0023] The layout code input unit 11 is used to input a layout code that includes the seating layout and seat type of the venue. For example, an event organizer inputs a layout code into the layout code input unit 11. Even if the venue is the same, when different events are held, the seating arrangement may be changed due to reasons such as broadcasting. For this reason, a layout code is input for each event. The layout code input unit 11 stores the input layout code in the layout database 40.

[0024] <Layout code> The layout code will be specifically described below. As shown in Figure 2, the seating layout includes the row number, row name, seat type, number of consecutive seats, and the number of the next seat.

[0025] The line number is an integer that indicates the line number in the layout code. The row name is an arbitrary string that represents the row number in which each seat is located within the venue. Seat types are single-letter alphabets that represent each seat type. The number of consecutive seats is an integer or decimal number that represents the number of consecutive seats of the immediately preceding type. The next seat number is an integer number that represents the seat number when the seat is of a different type than the previous seat.

[0026] As shown in FIG. 3, the seat types are represented by a single alphabetical character, such as "O," "X," "A," "W," "C," or "T." Of the following seat types, the seating arrangement device 2 only targets available seats (O) for seating. Note that the seat types are not limited to the example in FIG. 3, and can be set arbitrarily as long as available seats (O) are included.

[0027] Available seats (O) are seats that can be allocated to spectators. Unavailable seats (X) are seats that cannot be allocated to spectators. Aisle (A) represents an aisle. Wheelchair accessible seats (W) are seats provided for spectators who require wheelchairs. The seats for related parties (C) are seats allocated to those involved in the event. Trouble seats (T) are spare seats that the organizers will use at their discretion in the event of any trouble.

[0028] As shown in Figure 2, the seat type and the number of consecutive seats are concatenated. The seat type and the number of consecutive seats may be repeated as necessary. The next seat number is specified only when the seat type is aisle (A), and is concatenated with an underscore '_' after the number of consecutive seats. In the example in Figure 2, the row number "1" and row name "A" are entered. Next, the seat type and number of consecutive seats "O5" are entered. This entry indicates that there are five consecutive available seats (O). Next, the seat type and number of consecutive seats "A1.5" are entered, followed by the next seat number "8". This entry indicates that there are 1.5 aisle (A) seats, and the next seat number is 8.

[0029] A specific example of an event code will be described with reference to FIG. FIG. 4(b) illustrates venue 90. Twelve rows of seats are arranged in venue 90, from the front (top of the drawing) where the stage is located to the back (bottom of the drawing). From the front to the back of venue 90, the rows are designated as row A, row B, ..., row L. Note that the row identification letters vary depending on the venue, and may be "A, B, C, ...," "A, I, U, ...," etc. Furthermore, venue 90 has up to 25 rows of seats arranged horizontally. From the left to the right of venue 90, the rows are designated as row 1, row 2, ..., row 25 (note that row 1 is treated as an aisle). In this way, rows represent the front-to-back arrangement of seats, and columns represent the front-to-back arrangement of seats, so each seat can be identified by its row and column. For example, seat C5 indicates the seat in the third row from the front and the fifth row from the left.

[0030] FIG. 4(a) shows the layout code corresponding to the venue 90 in FIG. 4(b). First, the data on the first line of the layout code, "1, A, A7_8, X3, A1.5, X5, A1.5_17, X3", will be explained. The leading "1" indicates that this is the first line of the layout code. The second "A" indicates that the identifying character for the first line of Venue 90 is "A." The third "A7_8" indicates that there are seven aisle seats (A) and the next seat number is 8. The fourth "X3" indicates that there are three consecutive seats (X) that cannot be assigned, from seats A8 to A10.

[0031] The fifth number, A1.5, indicates that there is an aisle (A) 1.5 seats wide. Venue 90 has a staggered layout, with the center of row A offset 0.5 seats from row B. Therefore, by setting the aisle width to 1.5 seats, it is possible to accommodate the staggered layout.

[0032] The sixth "X5" indicates that there are five consecutive seats (X) that cannot be assigned, from seats A11 to A15. The seventh number, "A1.5_17", indicates that there are 1.5 aisle seats (A) and the next seat number is 17. The eighth "X3" indicates that there are three consecutive seats (X) that cannot be assigned, from seats A17 to A19.

[0033] Next, the data on the second line of the layout code, "2, B, A5_6, O5, A1, O6, A1, O5", will be explained. The "2" at the beginning indicates that this is the second line of the layout code. The second "B" indicates that the identifying character for the second line of venue 90 is "B." The third "A5_6" indicates that there are five aisle seats (A) and the next seat number is 6. The fourth "O5" indicates that there are five consecutive available seats (O) from seats B6 to B10. The fifth "A1" indicates that there is one aisle (A) seat. The sixth "O6" indicates that there are six consecutive available seats (O) from seats B11 to B16. The seventh "A1" indicates that there is one aisle (A) seat. The eighth "O5" indicates that there are five consecutive available seats (O) from seats B17 to B21.

[0034] In the above example, the layout codes for rows A and B of the venue 90 were explained, but the same applies to rows C and onwards. In addition, in Figure 4(b), the types of seats are illustrated with different hatching (see Figure 13). A legend for the types of hatching is shown in Figure 13. In practice, the types of seats may be distinguished by color rather than by the type of hatching.

[0035] Returning to FIG. 1, the description of the seating arrangement device 2 will continue. The seating arrangement processing unit 12 presets the number of groups participating in the event for each number of people per group. Then, the seating arrangement processing unit 12 generates an allocated layout code that allocates each group to an available seat based on the layout code and the number of groups. The seating arrangement processing unit 12 writes the seating arrangement layout code into the layout database 40.

[0036] In this embodiment, the event organizer inputs allocation information to the seating arrangement processing unit 12. The allocation information is information that indicates the number of groups participating in the event for each number of people per group. For example, the allocation information indicates information such as the number of groups with 5 people being 20, the number of groups with 4 people being 50, the number of groups with 3 people being 30, the number of groups with 2 people being 20, and the number of groups with 1 person being 10.

[0037] The seating arrangement processing unit 12 also reads out a layout code from the layout database 40. Then, the seating arrangement processing unit 12 executes the seating arrangement processing described below based on the layout code and the allocation information.

[0038] <Seating arrangement> The seating arrangement process will be described with reference to FIGS. In this seating allocation process, the seating allocation processing unit 12 extracts available seats from the layout code, randomly allocates the extracted seats in descending order of the number of people in the group, and counts the number of vacant seats that could not be allocated, repeating this process a preset number of times.Then, the seating allocation processing unit 12 generates the seating allocation result that minimizes the number of vacant seats as the allocated layout code.

[0039] For ease of explanation, the example in Figure 5 only covers row B of venue 90. In row B, there are five consecutive available seats (O) from B6 to B10, 14 consecutive available seats (O) from B11 to B24, and five consecutive available seats (O) from B25 to B29.

[0040] First, the seating arrangement processing unit 12 extracts seats whose type is "available seats (O)" as shown in Fig. 5(a). In this example, five seats B6 to B10, fourteen seats B11 to B24, and five seats B25 to B29 are extracted.

[0041] Next, the seating arrangement processing unit 12 randomly allocates the extracted seats in descending order of the number of people in the group. Figure 5(b) shows two patterns of random seat allocation in descending order of the number of people in the group, so as not to exceed the number of seats extracted in Figure 5(a).

[0042] The top row of Figure 5(b) shows a pattern in which five groups of four are assigned to the seats in Figure 5(a). In this case, the first group of four is assigned to seats B6 to B9, the second group of four is assigned to seats B11 to B14, the third group of four is assigned to seats B15 to B18, the fourth group of four is assigned to seats B19 to B22, and the fifth group of four is assigned to seats B25 to B28. Therefore, seats B10, B23, B24, and B29 are left vacant.

[0043] In this embodiment, the seating arrangement processor 12 arranges the seats so that all spectators in each group line up side by side. Therefore, the seating arrangement processor 12 does not arrange the seats so that an aisle (A) is located between spectators in a certain group. Furthermore, the seating arrangement processor 12 does not arrange the seats so that spectators in a certain group are separated into front and back rows.

[0044] The bottom row of Figure 5(b) shows a pattern in which three groups of four and three groups of three are assigned to the seats in Figure 5(a). In this case, the first group of four is assigned to seats B6 to B9, the second group of four to seats B11 to B14, and the third group of four to seats B15 to B18. The first group of three is assigned to seats B19 to B21, the second group of three to seats B22 to B24, and the third group of three to seats B25 to B27. Therefore, seats B10 and B28 to B29 are left vacant.

[0045] Next, the seating allocation processing unit 12 counts the number of vacant seats that could not be allocated, as shown in Fig. 5(c). If allocation is performed using the pattern in the upper row of Fig. 5(b), the number of vacant seats will be 4. If allocation is performed using the pattern in the lower row of Fig. 5(b), the number of vacant seats will be 3.

[0046] Next, as shown in Fig. 5(d), the seating allocation processing unit 12 repeats the processes of Fig. 5(b) and Fig. 5(c) a preset number of times. In this example, the processes of Fig. 5(b) and Fig. 5(c) are repeated twice. Also, it is assumed that allocation is performed using the pattern in the upper row of Fig. 5(b) in the first repeated process, and allocation is performed using the pattern in the lower row of Fig. 5(b) in the second repeated process. In this case, the number of vacant seats is smaller in the second repeated process than in the first repeated process, so the pattern in the lower row of Fig. 5(b) is selected as the seat allocation result.

[0047] Next, the seating arrangement processing unit 12 shuffles the seating arrangement results as shown in FIG. 5(e). Here, the seating arrangement processing unit 12 performs a process of switching the seats of small groups and large groups to avoid unnatural seating arrangements, since groups with larger numbers are placed on the left side of the venue (those with smaller seat numbers). For example, in FIG. 5(b), the seats of the three-person group in seats B22 to B24 are switched with the four-person group in seats B15 to B18. Furthermore, the seating arrangement processing unit 12 also performs a process of placing empty seats between groups. For example, an empty seat is placed between seats B24 and B25 to prevent two groups from being adjacent to each other. The seating arrangement processing unit 12 then generates the allocation result of FIG. 5(e) as an assigned seating layout code.

[0048] The seating arrangement processing unit 12 does not have to perform the shuffling shown in Fig. 5(e). In the example of Fig. 5, only the Bth row of the venue 90 is the processing target, but the entire venue 90 may be the processing target.

[0049] Fig. 6(b) illustrates the venue 90 after the seating arrangement process has been performed, and Fig. 6(b) also illustrates the seating arrangement layout code corresponding to the venue 90 in Fig. 6(a).

[0050] As shown in Figure 6(a), the allocated layout code is data in which the seat allocation result is added to the layout code in Figure 4(a). Specifically, in the allocated layout code, the number of seats allocated to each group is concatenated with an underscore '_' after "Available seats (O)". In other words, in the allocated layout code, the notation other than "Available seats (O)" is the same as the layout code.

[0051] Let's take the data "2, B, A5_6, O5_4_1, A1, O6_3_3, A1, O5_1_4" on the second line of the assigned layout code in Figure 6(a) as an example. The fourth data, "O5_4_1," represents available seats (O), so we'll focus on this. The initial "O5" indicates that there are five consecutive available seats (O), just like the layout code in Figure 4(a). The next "_4" indicates that four seats have been assigned to a certain group. The next "_1" indicates that one seat has been assigned to another group. In other words, "O5_4_1" indicates that there are five consecutive available seats (O), from seats B6 to B10, and that these five seats are assigned to a group of four and a group of one.

[0052] As shown in Figure 6(b), the sixth "O6_3_3" indicates that there are six consecutive available seats (O) from seats B11 to B16, and these six seats have been assigned to two groups of three people. The eighth "O5_1_4" indicates that there are five consecutive available seats (O) from seats B17 to B21, and these five seats have been assigned to a group of one person and a group of four people.

[0053] In Figure 6(b), seats assigned to groups of different sizes are shown with different hatching (see Figure 13). In practice, seats assigned to groups of different sizes may be distinguished by color rather than by type of hatching.

[0054] Here, the drawing of the groups to participate in the event may be performed by the seating arrangement device 2 or may be performed by a device other than the seating arrangement device 2. The method of drawing the groups is arbitrary, and for example, the groups may be drawn by lottery in the order of application or randomly.

[0055] Furthermore, the method of reserving seats for the winning groups is also arbitrary. In other words, the seats to be assigned to the groups selected by lottery can be determined arbitrarily, as long as the audience members are grouped together (for example, in the order of application or randomly).

[0056] Returning to FIG. 1, the description of the seating arrangement device 2 will continue. The check-in processing unit 20 performs processing related to check-in by referring to the layout database 40 and the check-in database 50. The check-in processing unit 20 includes a check-in data generating unit 21 and a collating unit 22.

[0057] The check-in data generating unit 21 generates a hash value based on the seat information and event ID assigned to the group, and records the hash value in the check-in database 50 together with the check-in information described below.

[0058] As mentioned above, a postcard with a QR code printed on it for check-in is mailed to the representative of each group. If the seating information (seating allocation information) reserved for each group were written as is on this QR code, it could be subject to fraud such as tampering. Therefore, as shown in Figure 8, the seating information assigned to each group is hashed to prevent fraud such as tampering.

[0059] First, the check-in data generating unit 21 extracts the seats assigned to each group from the seated layout code in the check-in database 50 as an intermediate file, as shown in FIG.

[0060] Next, the check-in data generator 21 applies a hash function to the character string obtained by concatenating the event ID and the intermediate file to generate a hash value for the seating arrangement information. For example, the hash function may be SHA (Secure Hash Algorithm)-256. The reason for using the character string obtained by concatenating the event ID in addition to the intermediate file is that even if the same intermediate file is extracted by chance when events are held in the same venue layout, a unique hash value can be generated by concatenating the event ID.

[0061] Then, the check-in data generation unit 21 generates check-in data by associating the hash value of the seating arrangement information with the check-in information. For example, if the check-in information is 0, it indicates that the person has not checked in, and if the check-in information is 1, it indicates that the person has checked in. Check-in data generation unit 21 writes the generated check-in data into check-in database 50.

[0062] A QR code of the hash value is printed on the postcard to be mailed to the group representative. Therefore, after check-in data generation unit 21 generates check-in data, the QR code is printed on the postcard.

[0063] The verification unit 22 receives the read result of the two-dimensional code of the hash value that has been distributed to the group in advance from the check-in terminal 3. The verification unit 22 then verifies whether or not the read result matches the hash value of the check-in data, and if the read result matches, updates the check-in information.

[0064] Specifically, if the hash value obtained by the check-in terminal 3 matches the hash value of the check-in data stored in the check-in database 50, the collating unit 22 updates the check-in information to 1. On the other hand, if the hash value obtained by the check-in terminal 3 does not match the hash value of the check-in data stored in the check-in database 50, the collating unit 22 leaves the check-in information as 0.

[0065] FIG. 9 illustrates a venue 90 where check-in is taking place. In the example of FIG. 9, a group of four people checked in to seats C7 to C10, so the collation unit 22 updates the check-in information to 1. Also, a group of two people checked in to seats F9 and F10, so the collation unit 22 updates the check-in information to 1. Furthermore, the collation unit 22 similarly updates the check-in information to 1 for seat G11, seats H23 to H25, seats J4 to J7, and seats L11 to L15.

[0066] In Fig. 9, checked-in seats are shown with different hatching (see Fig. 13). In practice, checked-in seats may be distinguished by color instead of by type of hatching.

[0067] Returning to FIG. 1, the description of the seating arrangement device 2 will continue. The image processing unit 30 performs processing related to the generation and display of images, and includes an image generation unit 31. The image generation unit 31 generates a layout image of the venue from the layout code, and generates a seated layout image showing the seating arrangement of each group from the seated layout code. For example, the image generation unit 31 references the layout code in the layout database 40 to generate a layout image such as that shown in FIG. 4(b). Also, for example, the image generation unit 31 references the seated layout code in the layout database 40 to generate a seated layout image such as that shown in FIG. 6(b). Also, the image generation unit 31 references the check-in data in the check-in database 50 to generate a checked-in layout image such as that shown in FIG.

[0068] Furthermore, the image generating unit 31 may display a layout image, a seated layout image, or a checked-in layout image on a display (not shown). For example, the event organizer operates the seating arrangement device 2 with an operating means such as a mouse or a keyboard to display any one of the layout image, seated layout image, or checked-in layout image on the display. Furthermore, the image generating unit 31 may transmit the layout image, the seated layout image, and the checked-in layout image to the check-in terminal 3.

[0069] The layout database 40 is a database that stores the layout codes and allocated layout codes. The check-in database 50 is a database that stores the above-mentioned check-in data and seat reservation information. Although the layout database 40 and the check-in database 50 are shown as separate databases in FIG. 1, the layout database 40 and the check-in database 50 may be integrated.

[0070] [Check-in terminal configuration] As shown in FIG. 1, the check-in terminal 3 includes a check-in processing unit 60 and an image processing unit .

[0071] The check-in processing unit 60 performs check-in related processing, and includes a QR code reading unit 61 . The QR code reading unit 61 reads the QR code printed on a postcard. For example, the QR code reading unit 61 photographs the QR code with a camera (not shown) provided in the check-in terminal 3 and decodes the QR code included in the photographed image. The QR code reading unit 61 then transmits the hash value decoded from the QR code to the seating arrangement device 2 as the reading result.

[0072] The image processing unit 70 performs processing related to image display, and includes an image display unit 71 . The image display unit 71 displays on a touch panel display (not shown) the layout image, seated layout image, or checked-in layout image received from the seating arrangement device 2. For example, a user of the check-in terminal 3 operates the check-in terminal 3 using the touch panel display to display any one of the layout image, seated layout image, or checked-in layout image.

[0073] [Seating arrangement device in motion] <Seating arrangement> The seating arrangement process performed by the seating arrangement device 2 will be described with reference to FIGS. 10, in step S1, the organizer of the event inputs a layout code and the number of processing times K to the layout code input unit 11. Then, the layout code input unit 11 stores the input layout code in the layout database 40.

[0074] In step S2, the seating arrangement processing unit 12 reads out the layout code from the layout database 40. Then, the seating arrangement processing unit 12 extracts seats whose type is "available seats (O)" and calculates the total number of seats to the minimum number of vacant seats (O). SMIN is the initial value of

[0075] The seating arrangement processing unit 12 repeats steps S3 to S8 K times. At this time, the seating arrangement processing unit 12 sets a counter C1 to 0. In step S4, the seating arrangement processing unit 12 executes the seating arrangement A generation routine shown in Fig. 11. In this seating arrangement A generation routine, the seating arrangement A and the total number of vacant seats O are calculated. SSUM will be output.

[0076] In step S5, the seating arrangement processing unit 12 SMIN is the total of all vacant seats SSUM It is determined whether or not it exceeds the limit. O SMIN The total is OSSUM If it exceeds (YES in step S5), the seating arrangement processing unit 12 proceeds to the process of step S6. O SMIN The total is O SSUM If it does not exceed (NO in step S5), the seating arrangement processing unit 12 proceeds to the process of step S7.

[0077] In step S6, the seating arrangement processing unit 12 calculates the total number of seats. SSUM Minimum vacant seats SMIN and seat arrangement A is maintained. MIN Substitute into

[0078] In step S7, the seating arrangement processing unit 12 determines whether the counter C1 is less than the number of processing times K or not. If the counter C1 is less than the number of processing times K (YES in step S7), the seating arrangement processing unit 12 returns to the processing in step S4. If the counter C1 is not less than the number of processing times K (NO in step S7), the seating arrangement processing unit 12 ends the seating arrangement processing.

[0079] <Seating arrangement A generation routine> As shown in FIG. 11, in step S10, the seating arrangement processing unit 12 extracts consecutive seats whose type is available seats (O) from the layout code, and calculates the number of extracted seats O. N is stored in seat arrangement A.

[0080] The seating arrangement processing unit 12 repeats the process of allocating seats in order from the group with the largest number of people per group during steps S11 to S19. At this time, the seating arrangement processing unit 12 sets the number of people P per group to 5.

[0081] In step S12, the seating arrangement processing unit 12 determines whether the number of people P is 0 or not. If the number of people P is 0 (YES in step S12), the seating arrangement processing unit 12 proceeds to the process of step S19. If the number of people P is not 0 (NO in step S12), the seating arrangement processing unit 12 proceeds to the process of step S3.

[0082] The seating arrangement processing unit 12 repeats the process of seating groups of P people per group during steps S13 to S17. A variable T indicating the number of the group is set to 1.

[0083] In step S14, the seating arrangement processing unit 12 determines whether the variable T is less than the number of groups of P people. If the variable T is less than the number of groups of P people (YES in step S14), the seating arrangement processing unit 12 proceeds to the process of step S15. If the variable T is not less than the number of groups of P people (NO in step S14), the seating arrangement processing unit 12 proceeds to the process of step S17.

[0084] In step S15, the seating arrangement processing unit 12 executes the random seating arrangement routine of Fig. 12. In this random seating arrangement routine, seating arrangement A is output. In step S16, the seating arrangement processing unit 12 increments the variable T to process the next group, and returns to the processing of step S14.

[0085] In step S18, the seating arrangement processing unit 12 decrements the variable P to reduce the number of people per group. In step S20, the seating arrangement processing unit 12 calculates the number of consecutive seats O N and the seat frame O NA The difference between the total and the vacant seats is O NS Assign as.

[0086] In step S21, the seating arrangement processing unit 12 calculates the seat frame O NA Number of seats and vacant seats NS At this time, the seating arrangement processing unit 12 may rearrange the empty seats so that the empty seats are located between the groups.

[0087] In step S22, the seating arrangement processing unit 12 calculates the seat frame O NA Here, the seating arrangement processing unit 12 randomly interchanges the seats of the small number of groups and the large number of groups.

[0088] In step S23, the seating arrangement processing unit 12 calculates the allocated seating arrangement A and all the vacant seat slots O NS Total of O SSUM and then the seating arrangement A generation routine is completed.

[0089] <Random seating routine> As shown in FIG. 12, in step S30, the seating arrangement processing unit 12 sets a counter C2 to 0.

[0090] In step S31, the seating arrangement processing unit 12 generates a random number R (for example, a pseudo-random number). The random number R is a value ranging from 1 to the number of elements in the seating arrangement A. In step S32, the seating arrangement processing unit 12 calculates the number of seats O of the Rth element of the seating arrangement A. R and total number of seats allocated RA Extract.

[0091] In step S33, the seating arrangement processing unit 12 determines the number of seats O R The total is O RA and the sum O of variable P RA Determine whether it is greater than or equal to +P. Number of seats O R is the added value O RA If the number is equal to or greater than +P (YES in step S33), the seating arrangement processing unit 12 proceeds to the process of step S34. Number of seats O R is the added value O RA If the number is not equal to or greater than +P (NO in step S33), the seating arrangement processing unit 12 proceeds to the process of step S35.

[0092] In step S34, the seating arrangement processing unit 12 adds a group of P people to the seating arrangement of the Rth element of the seating arrangement A that has already been allocated. In step S35, the seating arrangement processing unit 12 outputs seating arrangement A, and ends the random seating arrangement routine.

[0093] In step S36, the seating arrangement processing unit 12 determines whether or not the counter C2 exceeds a preset upper limit number (for example, 500). If the counter C2 exceeds the upper limit number of times (YES in step S36), the seating arrangement processing unit 12 proceeds to the process of step S37. If the counter C2 does not exceed the upper limit number of times (NO in step S36), the seating arrangement processing unit 12 proceeds to the process of step S35.

[0094] If the upper limit is too small, even if there are seats available for allocation, they will not be allocated, and if the upper limit is too large, the seat allocation process will be repeated even if there are no seats available for allocation. Therefore, it is preferable to set the upper limit to an appropriate value.

[0095] In step S37, the seating arrangement processing unit 12 increments the counter C2, and returns to the processing of step S31.

[0096] [Actions and Effects] As described above, the seating arrangement device 2 uses a layout code that can arbitrarily set the aisle width, so it can accommodate venues with complex layouts, such as venues with staggered seating. Furthermore, the seating arrangement device 2 repeatedly allocates seats and generates an allocated layout code with the fewest vacant seats, enabling efficient seating arrangement.

[0097] (Variation) Although the embodiments have been described in detail above, the present invention is not limited to the above-described embodiments, and includes design modifications and the like within the scope of the present invention.

[0098] In the above embodiment, the organizer reserves seats for each group in advance and prints a QR code of the hash value of the seat reservation information on a postcard, but the present invention is not limited to this. Here, the organizer may not reserve seats for each group in advance, but may instead allocate seats to each group at check-in. For example, seats may be allocated to each group randomly or in the order of check-in. In this case, weighting each seat can make it easier to allocate seats from the front. Furthermore, the organizer may manually assign seats, taking into consideration trouble, production, and other circumstances.

[0099] In the above embodiment, the group is described as consisting of 1 to 5 people, but the number of people per group is not particularly limited. In the above embodiment, the two-dimensional code is a QR code, but the two-dimensional code is not limited to this. For example, the two-dimensional code may be a barcode.

[0100] In the above-described embodiment, the seating arrangement device is described as independent hardware, but the present invention is not limited to this. For example, the present invention can also be realized by a program that causes hardware resources such as a CPU, memory, and hard disk of a computer to function as the seating arrangement device. This program may be distributed via a communication line or written to a recording medium such as a CD-ROM or flash memory and distributed. [Explanation of symbols]

[0101] 1. Seating system 2 Seating device 3 Check-in terminal 10 Layout processing section 11 Layout code input section 12 Seating Processing Unit 20 Check-in Processing Section 21 Check-in data generation unit 22 Matching unit 30 Image processing section 31 Image generation unit 40 Layout Database 50 Check-in Database 60 Check-in Processing Unit 61 QR code reader 70 Image processing section 71 Image display unit

Claims

1. A seating arrangement device that determines seating arrangements at a venue where an event is held, a layout code input unit into which a layout code including the seat layout of the venue and the seat type is input; a seating allocation processing unit that presets the number of groups participating in the event for each number of people per group, and generates an allocated layout code that allocates each group to the available seats based on the layout code and the number of groups; an image generating unit that generates a layout image of the venue from the layout code and generates a seated layout image representing the seating arrangement of each group from the seated layout code; The seating arrangement processing unit extracting the seats that can be allocated from the layout code, randomly allocating the extracted seats in order of the group with the largest number of people, and counting the number of vacant seats that could not be allocated, a process that is repeated a preset number of times; The seating arrangement device generates the seat allocation result that minimizes the number of vacant seats as the allocated layout code.

2. a check-in data generation unit that generates a hash value based on seat information assigned to the group and an event ID, and generates check-in data that associates the hash value with check-in information indicating whether the group has checked in; a verification unit that receives a read result of the two-dimensional code of the hash value that has been distributed to the group in advance, verifies whether the read result matches the hash value of the check-in data, and updates the check-in information if the read result matches; The seating arrangement device according to claim 1, further comprising:

3. The type of seat represents an available seat, an unavailable seat, an aisle, a wheelchair seat, a seat for a related person, a trouble seat, or a manually allocated group seat; 2. The seating arrangement device according to claim 1, wherein the seating arrangement processing unit extracts seats whose type is an available seat.

4. The seating arrangement device according to claim 1 , wherein the image generation unit displays the layout image and the seated layout image.

5. A program for causing a computer to function as the seating arrangement device according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Seat layout creation device, system, method and program

    JP2012098920A