WO2023176171A1 - サーバ装置、スキル値導出方法、グループ分け方法および情報提供方法 - Google Patents

サーバ装置、スキル値導出方法、グループ分け方法および情報提供方法 Download PDF

Info

Publication number
WO2023176171A1
WO2023176171A1 PCT/JP2023/002820 JP2023002820W WO2023176171A1 WO 2023176171 A1 WO2023176171 A1 WO 2023176171A1 JP 2023002820 W JP2023002820 W JP 2023002820W WO 2023176171 A1 WO2023176171 A1 WO 2023176171A1
Authority
WO
WIPO (PCT)
Prior art keywords
activity
user
skill
activities
group
Prior art date
Application number
PCT/JP2023/002820
Other languages
English (en)
French (fr)
Inventor
達紀 網本
Original Assignee
株式会社ソニー・インタラクティブエンタテインメント
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社ソニー・インタラクティブエンタテインメント filed Critical 株式会社ソニー・インタラクティブエンタテインメント
Publication of WO2023176171A1 publication Critical patent/WO2023176171A1/ja

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • A63F13/798Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for assessing skills or for ranking players, e.g. for generating a hall of fame

Definitions

  • the present disclosure relates to technology for processing event data related to game activities performed by a user.
  • cloud game services have become popular in which operation information input by a player is sent to a game server, and the game server generates game images and game sounds according to the operation information and sends them to the player's terminal device.
  • the game server manages all game play, so the play status of activities performed by players can be analyzed and used to improve game scenarios.
  • console games do not output information indicating the game play situation to the outside, so the server side cannot analyze the play situation by the player. Therefore, even in console games, it is preferable to send various information regarding game play to the server so that the server can analyze the play status of the activity.
  • the server By constructing an environment in which the server can collect the play status of activities by multiple players, it is possible to statistically process the playing time of activities by players. Therefore, it is desired to construct a mechanism for providing useful information regarding playing time to users who have not yet performed an activity.
  • the present disclosure aims to realize a mechanism for providing information regarding the playing time of an activity.
  • a server device that derives a skill value related to a user's game play, and includes event data that records event data related to activities performed by a plurality of users.
  • a play time acquisition unit that acquires the play time of a plurality of users of the activity from event data indicating the start of the activity and event data indicating the end of the activity recorded in the recording unit and the event data recording unit;
  • a statistical processing unit that generates a distribution of play time for each activity based on multiple play times played by the user;
  • the skill value derivation unit derives a player skill value related to the user's game play for each activity group based on the plurality of skill values derived for the plurality of activities.
  • a server device is a server device that groups a plurality of activities, and includes an event data recording unit that records event data regarding activities performed by a plurality of users, and a server device that records event data in the event data recording unit.
  • a play time acquisition unit that acquires the play time of the activity of multiple users from the event data indicating the start of the activity and the event data indicating the end of the activity;
  • a statistical processing unit that generates a distribution of play time for each activity, and a skill value derivation unit that derives a skill value of the user for the activity based on the play time of the activity by the user and the distribution of play time of the activity.
  • a classification unit that groups a plurality of activities.
  • the skill value derivation unit derives a player skill value related to the user's game play based on the plurality of skill values derived for the plurality of activities.
  • the classification unit calculates the difference between the skill values of multiple users derived for each activity and the player skill values of the multiple users, and groups the multiple activities based on the multiple differences calculated for each activity. do.
  • a server device is a server device that provides information regarding expected play time to a user, and includes a classification unit that groups a plurality of activities, and a classifier that classifies a user's skill value for an activity that the user has played. and a skill value derivation unit for deriving the skill value.
  • the skill value derivation unit derives a player skill value related to the user's game play for each activity group based on the plurality of skill values derived for the plurality of activities.
  • the server device further includes a class allocation unit that sets a user's class for each activity group based on the player skill value derived for each activity group, and a class allocation unit that sends information to the user regarding expected play time associated with the user's class. and a notification section for notifying.
  • a skill value deriving method is a method for deriving skill values related to game play of a user, the skill value being derived from a plurality of users from event data indicating the start of an activity and event data indicating the end of the activity. a step of obtaining the play time of the activity, a step of generating a play time distribution for each activity based on the plurality of obtained play times, and a distribution of the play time of the activity by the user and the play time of the activity.
  • a step of deriving the user's skill value for the activity based on the activity a step of grouping the multiple activities; and a step of deriving the user's skill value for each activity group based on the multiple skill values derived for the multiple activities. and deriving player skill values related to game play.
  • a grouping method is a method of grouping a plurality of activities, in which event data indicating the start of the activity and event data indicating the end of the activity are used to group the activities of the plurality of users. a step of obtaining play time; a step of generating a play time distribution for each activity based on the plurality of obtained play times; and a step of generating a play time distribution for each activity based on the play time of the activity by the user and the play time distribution of the activity.
  • a step of deriving a skill value of the user regarding the activity a step of deriving a player skill value regarding the user's game play based on the multiple skill values derived for the multiple activities;
  • the method includes a step of calculating a difference between a user's skill value and a player skill value of the plurality of users, and a step of dividing the plurality of activities into groups based on the plurality of differences calculated for each activity.
  • An information providing method is a method of providing information regarding expected playing time to a user, which includes the steps of grouping a plurality of activities, and determining the user's skill value for the activity played by the user. a step of deriving a player skill value related to gameplay of the user for each activity group based on the plurality of skill values derived for the plurality of activities; The method includes a step of setting a user's class for each activity group, and a step of notifying the user of information regarding expected play time associated with the user's class.
  • FIG. 1 is a diagram showing an information processing system according to an embodiment.
  • 1 is a diagram showing a hardware configuration of an information processing device.
  • FIG. 2 is a diagram showing functional blocks of an information processing device.
  • FIG. 3 is a diagram showing functional blocks of a server device.
  • FIG. 3 is a diagram showing a procedure for analyzing collected event data. It is a figure for explaining the calculation method of play time.
  • FIG. 7 is a diagram showing a distribution curve expressing the relationship between the play time of an activity and the number of players who have executed the activity. It is a figure showing distribution of play time.
  • FIG. 3 is a diagram showing a graph in which players are plotted for each class.
  • FIG. 3 is a diagram showing an example of a system screen.
  • FIG. 3 is a diagram showing a flowchart of clustering processing.
  • 3 is a diagram showing an example of skill values derived for a plurality of activities belonging to activity group 1.
  • FIG. 3 is a diagram showing an example of player skill values derived for a plurality of users.
  • FIG. 7 is a diagram showing the absolute difference value between the skill value of each activity and the player skill value.
  • FIG. 3 is a diagram for explaining a method of calculating the center of gravity of a group.
  • FIG. 3 is a diagram showing the center of gravity of group 1 and the center of gravity of activity N.
  • 7 is a diagram showing the results of comparing the distance to the center of gravity of group 1 and the distance to the center of gravity of activity N.
  • FIG. 3 is a diagram showing an example of skill values derived for a plurality of activities belonging to activity group 2.
  • FIG. FIG. 3 is a diagram showing the center of gravity of group 1 and the center of gravity of group 2 calculated for a plurality of users. It is a diagram showing the center of gravity of activity N.
  • FIG. 3 is a diagram showing the results of comparing the distance to the center of gravity of group 1 and the distance to the center of gravity of group 2; 3 is a diagram showing an example of skill values derived for a plurality of activities belonging to activity group 3.
  • FIG. FIG. 3 is a diagram showing the center of gravity of group 1 and the center of gravity of group 3 calculated for a plurality of users.
  • FIG. 3 is an image diagram of groups into which a plurality of activities are classified.
  • an information processing device that is a user terminal device executes game software.
  • the game software starts an activity, it outputs event information including an activity identifier (activity ID) that identifies the activity and information indicating the start of the activity to the system software.
  • An activity is a unit of game play, and may be a stage, a quest, a mission, etc. provided to the user as the game progresses.
  • the game software ends the activity, it outputs event information including the activity ID and information indicating the end of the activity to the system software.
  • the gaming software may include the outcome of the activity (success or failure) in the event information.
  • the system software generates event data by adding a game identifier (game ID) that identifies the game and time information (time stamp) to the event information output from the game software, and transmits the event data to the server device.
  • game ID game identifier
  • time information time stamp
  • the server device collects event data transmitted from a plurality of information processing devices operated by a plurality of players, and analyzes play trends regarding activities.
  • the server device of the embodiment statistically processes the play time of an activity by a plurality of players based on event data transmitted from a plurality of information processing devices.
  • the server device has a function of notifying users who have not yet played the activity of the expected play time based on the results of statistical processing.
  • FIG. 1 shows an information processing system 1 according to an embodiment of the present disclosure.
  • the information processing system 1 of the embodiment is a play time analysis system that analyzes the play time of an activity, and includes an information processing device 10 operated by a user, who is a player, and a server device 5.
  • An access point (hereinafter referred to as "AP") 8 has the functions of a wireless access point and a router, and the information processing device 10 connects to the AP 8 wirelessly or via a wire to communicate with the server device 5 on the network 3. Connect for communication.
  • AP access point
  • the information processing device 10 is connected wirelessly or wired to an input device 6 operated by a user, and the input device 6 outputs information operated by the user to the information processing device 10.
  • the information processing device 10 receives the operation information from the input device 6, it reflects it in the processing of system software and game software, and outputs the processing result from the output device 4.
  • the information processing device 10 is a game device (game console) that executes a game
  • the input device 6 may be a device such as a game controller that supplies user operation information to the information processing device 10.
  • the input device 6 may be an input interface such as a keyboard or a mouse.
  • the auxiliary storage device 2 is a large-capacity storage device such as an HDD (hard disk drive) or an SSD (solid state drive), and may be a built-in storage device. It may also be an external recording device to be connected.
  • the output device 4 may be a television having a display for outputting images and a speaker for outputting sound.
  • the output device 4 may be connected to the information processing device 10 by a wired cable, or may be connected wirelessly.
  • FIG. 1 shows an example in which the camera 7 is attached to the top of the output device 4, it may be placed on the side or bottom of the output device 4, and in any case, it is located in front of the output device 4. It is placed in a position where it can image the user.
  • Camera 7 may be a stereo camera.
  • the server device 5 provides network services to users of the information processing system 1.
  • the server device 5 manages a network account that identifies each user, and each user uses the network account to sign in to the network service provided by the server device 5.
  • the user can register game save data and trophies, which are virtual rewards obtained during game play, in the server device 5.
  • game save data and trophies which are virtual rewards obtained during game play, in the server device 5.
  • the server device 5 of the embodiment collects event data from a plurality of information processing devices 10 operated by a plurality of players.
  • the server device 5 performs statistical processing on the play time of the activity based on the collected event data, and evaluates the play time corresponding to the player skill value representing the game play skill for each activity.
  • the server device 5 also derives the user's player skill value from the collected event data.
  • the server device 5 instructs the user who has not yet performed the activity the play time corresponding to the player skill value of the user. , can be notified as expected play time.
  • the user is notified of the expected play time, he or she can decide whether or not to play the activity based on his/her own situation (for example, he has to go out in one hour, etc.).
  • FIG. 2 shows the hardware configuration of the information processing device 10.
  • the information processing device 10 includes a main power button 20, a power ON LED 21, a standby LED 22, a system controller 24, a clock 26, a device controller 30, a media drive 32, a USB module 34, a flash memory 36, a wireless communication module 38, and a wired communication
  • the system includes a module 40, a subsystem 50, and a main system 60.
  • the main system 60 includes a main CPU (Central Processing Unit), a memory serving as a main storage device, a memory controller, a GPU (Graphics Processing Unit), and the like.
  • the GPU is mainly used for arithmetic processing of game programs.
  • the main CPU has the function of starting the system software and executing the game program installed in the auxiliary storage device 2 under the environment provided by the system software.
  • the subsystem 50 includes a sub-CPU, a memory serving as a main storage device, a memory controller, and the like, but does not include a GPU.
  • the sub CPU While the main CPU has the function of executing the game program installed in the auxiliary storage device 2, the sub CPU does not have such a function. However, the sub CPU has a function of accessing the auxiliary storage device 2 and a function of transmitting and receiving data to and from the server device 5.
  • the sub CPU is configured to have only such limited processing functions, and therefore can operate with lower power consumption compared to the main CPU. The functions of these sub CPUs are executed when the main CPU is in a standby state.
  • the main power button 20 is an input unit through which a user inputs an operation, is provided on the front of the casing of the information processing device 10, and turns on or off the power supply to the main system 60 of the information processing device 10. be manipulated for.
  • the power ON LED 21 lights up when the main power button 20 is turned on, and the standby LED 22 lights up when the main power button 20 is turned off.
  • the system controller 24 detects depression of the main power button 20 by the user.
  • the clock 26 is a real-time clock that generates current date and time information and supplies it to the system controller 24, subsystem 50, and main system 60.
  • the device controller 30 is configured as an LSI (Large-Scale Integrated Circuit) that transfers information between devices like a south bridge. As illustrated, devices such as a system controller 24, a media drive 32, a USB module 34, a flash memory 36, a wireless communication module 38, a wired communication module 40, a subsystem 50, and a main system 60 are connected to the device controller 30. Ru.
  • the device controller 30 absorbs differences in electrical characteristics and data transfer speeds of each device, and controls data transfer timing.
  • the media drive 32 is a drive device that loads and drives a ROM medium 44 in which application software such as games and license information are recorded, and reads programs, data, etc. from the ROM medium 44.
  • the ROM medium 44 is a read-only recording medium such as an optical disk, a magneto-optical disk, or a Blu-ray disk.
  • the USB module 34 is a module that connects to an external device using a USB cable.
  • the USB module 34 may be connected to the auxiliary storage device 2 and the camera 7 using a USB cable.
  • the flash memory 36 is an auxiliary storage device that constitutes internal storage.
  • the wireless communication module 38 wirelessly communicates with the input device 6 using a communication protocol such as the Bluetooth (registered trademark) protocol or the IEEE802.11 protocol.
  • the wired communication module 40 performs wired communication with external devices and connects to the network 3 via the AP 8.
  • FIG. 3 shows functional blocks of the information processing device 10.
  • the information processing device 10 includes a processing section 100 and a communication section 102.
  • the processing section 100 includes game software 110, an event information acquisition section 120, an event data transmission section 122, a game image generation section 130, a display processing section 140, and an activity information acquisition section 150.
  • the information processing device 10 includes a computer, and various functions shown in FIG. 3 are realized by the computer executing programs.
  • a computer includes a memory for loading a program, one or more processors for executing the loaded program, an auxiliary storage device, other LSI, and the like as hardware.
  • a processor is constituted by a plurality of electronic circuits including a semiconductor integrated circuit and an LSI, and the plurality of electronic circuits may be mounted on one chip or on a plurality of chips.
  • the functional blocks shown in FIG. 3 are realized by the cooperation of hardware and software, and therefore, it will be understood by those skilled in the art that these functional blocks can be realized in various ways by only hardware, only software, or a combination thereof. It is understood.
  • the game software 110 includes at least a game program, image data, and sound data.
  • the game program receives operation information from the input device 6 by the user and performs arithmetic processing to move the game character in the virtual space.
  • the game image generation unit 130 includes a GPU (Graphics Processing Unit) that performs rendering processing and the like, and generates game image data.
  • the display processing unit 140 outputs the generated game image from the output device 4. Note that the processing unit 100 includes a game sound generation unit that generates game sound data and a sound output unit that outputs game sound, but illustration thereof is omitted in FIG. 3.
  • the game program When the game program starts an activity while the game is in progress, it outputs event information indicating the occurrence of an activity start event, and when it ends the activity, it outputs event information indicating the occurrence of an activity end event.
  • the event information acquisition unit 120 acquires the event information from the game software 110, the event information acquisition unit 120 generates event data by adding a game ID and time information (time stamp) indicating the time when the event occurred to the event information, and sends the event data. 122.
  • the game program may output event information including a game ID and/or a time stamp to the event information acquisition unit 120.
  • the event data transmitting unit 122 transmits the generated event data to the server device 5 via the communication unit 102.
  • Game developers may incorporate various activities into the game. For example, if a battle activity with an enemy boss is included in the game, the game program outputs event information including an activity ID that identifies the battle activity and information indicating the start of the battle activity at the start of the battle. When the player wins the battle against the enemy boss, the game program outputs event information including an activity ID that identifies the battle activity, information indicating the end of the battle activity, and information indicating the success of the activity.
  • the event data transmitting unit 122 transmits event data related to activities performed by the player to the server device 5 via the communication unit 102.
  • the event data transmission process is performed by all the information processing devices 10 connected to the server device 5, and the server device 5 transmits various data of various games from the plurality of information processing devices 10. Collect event data about your activity.
  • the event information acquisition section 120 upon acquiring event information from the game software 110, the event information acquisition section 120 immediately generates event data with a time stamp added, and the event data transmission section 122 transmits the event data to the server device 5.
  • FIG. 4 shows functional blocks of the server device 5 of the embodiment.
  • the server device 5 includes a processing section 200, a communication section 202, an event data recording section 250, a play time recording section 252, a play time distribution recording section 254, a skill value recording section 256, a representative value recording section 258, and an activity description recording section 260. and an activity group recording section 262.
  • the processing section 200 includes an event data acquisition section 210, a play time acquisition section 212, a skill value derivation section 214, a statistical processing section 220, and an information provision section 240.
  • the statistical processing section 220 includes a distribution generation section 222, a class distribution section 224, a representative value determination section 226, and a classification section 228.
  • the information providing section 240 includes a class acquisition section 242, a play time extraction section 244, and a notification section 246.
  • the server device 5 includes a computer, and the various functions shown in FIG. 4 are realized by the computer executing programs.
  • a computer includes a memory for loading a program, one or more processors for executing the loaded program, an auxiliary storage device, other LSI, and the like as hardware.
  • a processor is constituted by a plurality of electronic circuits including a semiconductor integrated circuit and an LSI, and the plurality of electronic circuits may be mounted on one chip or on a plurality of chips.
  • the functional blocks shown in FIG. 4 are realized by cooperation of hardware and software, and therefore, it will be understood by those skilled in the art that these functional blocks can be realized in various ways by only hardware, only software, or a combination thereof. It is understood.
  • the event data acquisition unit 210 acquires event data regarding activities performed by multiple players from the multiple information processing devices 10 and records it in the event data recording unit 250.
  • the event data recording unit 250 records event data for each game title in association with the player's network account.
  • the event data includes at least a game ID, an activity ID, information indicating the start or end of the activity, and a timestamp.
  • FIG. 5 shows the procedure for analyzing collected event data.
  • the analysis of event data includes a play time calculation process (S10) by the play time acquisition unit 212, a skill value derivation process (S12) by the skill value derivation unit 214, and a representative value determination process (S14) by the representative value determination unit 226.
  • the play time acquisition unit 212 acquires the play time of the activity.
  • the play time acquisition unit 212 acquires a plurality of event data from event data (start event data) including activity start event information and event data (end event data) including activity end event information recorded in the event data recording unit 250. Obtain the playing time of the player in the activity.
  • the play time of the activity is calculated based on the time stamp included in the start event data and the time stamp included in the end event data.
  • FIG. 6 is a diagram for explaining the play time calculation method.
  • FIG. 6 shows the start event and end event of activity A by one player. Specifically, "A start” indicates the start event of activity A, and "A end” indicates the end event of activity A.
  • the start event data includes the start time t1 of the activity A
  • the end event data includes the end time t2 of the activity A
  • the play time acquisition unit 212 calculates the play time of the activity A by the player. , (t2-t1).
  • the play time acquisition unit 212 associates the calculated play time of the activity with the player's network account and records it in the play time recording unit 252 together with the game ID and the activity ID.
  • the play time acquisition unit 212 analyzes the event data of the plurality of players, acquires the play time of each of the plurality of activities for each player, and records it in the play time recording unit 252.
  • the distribution generation unit 222 In the statistical processing unit 220, the distribution generation unit 222 generates a distribution of play time for each activity based on the plurality of play times acquired by the play time acquisition unit 212. The distribution generation unit 222 records the play time distribution generated for each activity in the play time distribution recording unit 254.
  • FIGS. 7(a) and 7(b) each show a distribution curve expressing the relationship between the playing time of one activity and the number of players who performed the activity.
  • the horizontal axis shows the playing time
  • the vertical axis shows the number of players.
  • FIG. 7(a) shows the relationship between the playing time of activity A and the number of players
  • FIG. 7(b) shows the relationship between the playing time of activity B and the number of players.
  • the server device 5 derives a skill value that evaluates the user's skill based on the knowledge that the playing time of the activity is correlated with the user's game skill (skill), and calculates the playing time corresponding to the derived skill value. Realize technology that notifies users. In this finding, users with high gaming skill complete an activity in a relatively short play time, while users with low gaming skill complete an activity in a relatively long play time. Therefore, if the user's game skill is high, both Activity A and Activity B can be completed in a short play time, and if the user's game skill is low, both Activity A and Activity B can be completed in a long play time. is expected.
  • FIGS. 8(a) and 8(b) each show the distribution of play times.
  • the distribution generation unit 222 arranges all the players in descending order of play time for each activity, and divides all the players into a plurality of groups so that the number of players included in each group is equal. In the embodiment, the distribution generation unit 222 divides all the players into ten groups 1 to 10, and the number of players included in each group is the same. If the number of players who played activity A is 1 million, each group includes 100,000 players, group 1 is the group with the shortest playing time, and group 10 is the group with the longest playing time. A group of players.
  • the distribution generation unit 222 records the play time distribution generated for each activity in the play time distribution recording unit 254. For example, the play time distribution recording unit 254 may associate the group numbers 1 to 10 with the shortest play time and longest play time included in each group and record them as a play time distribution.
  • the skill value derivation unit 214 derives the user's skill value for the activity based on the play time of the activity by the user and the distribution of the play time of the activity.
  • the skill value deriving unit 214 refers to the play time distribution recorded in the play time distribution recording unit 254 and identifies the group number of the group in which the user's play time is included, thereby determining the user's skill value for the activity. Derive.
  • the group number may directly represent the skill value. Therefore, if the play time of the user who executed activity A is included in the group with group number 3, the skill value derivation unit 214 derives the skill value of the user for the activity A as "3" and executes activity B.
  • the user's skill value for the activity B is derived as “5”.
  • a skill value of 1 indicates the highest skill level
  • a skill value of 10 indicates the lowest skill level.
  • the skill value derivation unit 214 records the skill values derived for all activities played by the user in the skill value recording unit 256 in association with the user's (player) network account.
  • the skill value derivation unit 214 derives a skill value related to the user's game play based on a plurality of skill values derived for a plurality of activities. Specifically, the skill value derivation unit 214 derives the user's skill values for a plurality of activities that the user has most recently played, averages the derived plurality of skill values, and derives a skill value related to the user's game play. In the embodiment, the skill value derivation unit 214 averages the ten skill values derived for the most recent ten activities to derive the skill value related to the user's game play.
  • the skill value related to the user's game play may be referred to as a "player skill value.”
  • the group numbers of the groups including the play times of the 10 activities that user X most recently played are as follows. Activity A Group number 3 Activity B Group number 5 Activity C Group number 1 Activity D Group number 2 Activity E Group number 4 Activity F Group number 7 Activity G Group number 5 Activity H Group number 5 Activity I Group number 8 Activity J Group number 10
  • the skill value derivation unit 214 averages the skill values derived for the ten activities to derive the player skill value of user X.
  • the player skill value of user X is derived as "5" by averaging the skill values derived for the most recent 10 activities.
  • the skill value deriving unit 214 derives the player skill values of all users and records them in the skill value recording unit 256.
  • the player skill value takes a value within a range with a minimum value of 1 and a maximum value of 10. It can be said that a user with a smaller player skill value has a higher game skill, and a user with a larger player skill value has a lower game skill.
  • the skill value derivation unit 214 derives the player skill value based on the skill values derived for the most recent predetermined number of activities.
  • the skill value deriving unit 214 may update the player skill value of the user every time the user performs an activity, but may also update the player skill value periodically, for example, once a day.
  • the class distribution section 224 sets a plurality of classes, and distributes the player into one of the plurality of classes according to the player's player skill value.
  • the class distribution unit 224 sets nine classes and performs user distribution processing according to the following rules.
  • PS represents a player skill value. 1 ⁇ PS ⁇ 2 Class 1 2 ⁇ PS ⁇ 3 Class 2 3 ⁇ PS ⁇ 4 Class 3 4 ⁇ PS ⁇ 5 Class 4 5 ⁇ PS ⁇ 6 Class 5 6 ⁇ PS ⁇ 7 Class 6 7 ⁇ PS ⁇ 8 Class 7 8 ⁇ PS ⁇ 9 Class 8 9 ⁇ PS ⁇ 10 Class 9
  • the class distribution unit 224 distributes all users participating in the information processing system 1 into one of classes 1 to 9 according to the player skill value, and assigns each user's class to the skill value recording unit 256. to be recorded.
  • FIG. 9 shows a graph in which players are plotted for each class in a distribution curve showing the relationship between the playing time of activity S and the number of players.
  • the graph for class 1 shows the relationship between the playing time of a plurality of players belonging to class 1 and the number of players
  • the graph for class 2 shows the relationship between the playing time of a plurality of players belonging to class 2 and the number of players.
  • the graph for class N (1 to 9) expresses the relationship between the playing time of a plurality of players belonging to class N and the number of players. Therefore, by adding up the graphs for all classes 1 to 9, a distribution curve representing the relationship between the play time of all users of activity S and the number of players is obtained. Note that the number of players belonging to each class may be different.
  • the representative value determination unit 226 determines the representative value of the play time in each class for each activity based on the play time of a plurality of players in each class.
  • the representative value determination unit 226 may derive the median value of the plural play times in each class as the representative value of each class.
  • the representative value determination unit 226 determines the representative value (medN) of play time in each class as follows. class 1 med1 class 2 med2 class 3 med3 class 4 med4 class 5 med5 class 6 med6 class 7 med7 class 8 med8 class 9 med9
  • the representative value of play time determined for each class may be provided as an expected play time to users who have not yet performed the activity. If user X belonging to class 4 has not yet performed activity S, server device 5 notifies user X that the expected playing time when playing activity S is "med4". can.
  • the representative value determining unit 226 determines representative values for each of classes 1 to 9 for all activities, associates the classes and representative values, and records them in the representative value recording unit 258.
  • the representative value is the median value, but it may also be the average value or the mode.
  • the representative value determination unit 226 may perform the representative value determination process periodically, for example, once a day. The above is the explanation of the event data analysis process in the embodiment.
  • the information providing unit 240 notifies the user operating the information processing device 10 of the expected play time of an activity that the user has not yet performed. Specifically, the information providing unit 240 notifies the user of the representative value of the play time associated with the user's class or the time based on the representative value as the expected play time. The information providing unit 240 may notify the expected play time at any timing.
  • the class acquisition unit 242 acquires the class to which the user operating the information processing device 10 belongs from the skill value recording unit 256. For example, when user X logs in to the information processing device 10, the class acquisition unit 242 may acquire the class to which the logged-in user X belongs from the skill value recording unit 256.
  • the play time extracting unit 244 extracts, from the representative value recording unit 258, a representative value of the play time associated with the class of the user X regarding the activities that the user X can perform.
  • the notification unit 246 notifies the information processing device 10 of the user X of information regarding the expected play time based on the extracted representative value of the play time.
  • the expected play time based on the representative value of the play time may be the representative value of the play time itself, or may be a time obtained by slightly adjusting the representative value of the play time. For example, if the representative value of the play time is 4.9 minutes, the notification unit 246 may set a suitable time (for example, 5 minutes) as the expected play time. The notification unit 246 may notify the information processing device 10 of the user X of information regarding expected play times of a plurality of activities.
  • the activity information acquisition unit 150 acquires information regarding the expected play time of the activity from the server device 5.
  • the display processing unit 140 displays the information acquired by the activity information acquisition unit 150.
  • FIG. 10 shows an example of a system screen displayed on the output device 4.
  • the display processing unit 140 generates system images 180, 182, 184, and 186 from the information acquired by the activity information acquisition unit 150, and displays them on the output device 4.
  • the four system images 180, 182, 184, 186 each display the expected play time of an activity for a different game title. This allows user X to decide which game to play based on the expected play time of each activity.
  • the system images 180, 182, 184, and 186 displayed in card format may be GUIs (graphical user interfaces); for example, when user X selects one of the system images, the game corresponding to the system image automatically starts. may be activated automatically.
  • GUIs graphical user interfaces
  • the skill value deriving unit 214 averages the skill values derived for the most recent predetermined number of activities to derive the player skill value. This player skill value represents the user's skill regarding the most recent game play.
  • the game provides activities with various characteristics. Even in a single game title, there are various activities with different characteristics, such as defeating enemy characters, searching for items, reaching the goal without falling, and solving puzzles, and each activity requires different skills from the user. different. Therefore, if user A skill value is derived, and therefore user X is assigned to a higher level class.
  • the play time extraction unit 244 When presenting User X with the expected play time of an activity that has not been played yet, the play time extraction unit 244 records the representative value of the play time associated with the class of User Extract from. Since the user X is assigned to a high-level class, the play time extraction unit 244 extracts a representative play time value for highly skilled players regarding the activity. In this case, there is no problem if the activity is combat-based, but if the activity is exploration-based, the representative play time for a highly skilled player is will be extracted. Therefore, the expected play time that is too short will be presented to the user X, and the user X will not be able to complete the search-based activity within the presented expected play time.
  • the statistical processing unit 220 of the embodiment has a function of grouping a plurality of activities according to the play tendencies of a plurality of players.
  • the skill value derivation unit 214 derives a player skill value for each activity group, and the class distribution unit 224 sets a user class for each activity group based on the player skill value derived for each activity group. . Therefore, when presenting the expected play time of an activity that user X has not yet played, the play time extraction unit 244 identifies the activity group to which the activity belongs, and identifies the user class set for the identified activity group. By doing this, it is possible to extract a representative value of the appropriate playing time that matches the user's skill.
  • the classification unit 228 has a function of classifying a plurality of activities into groups.
  • the classification unit 228 of the embodiment has a function of clustering a plurality of activities using natural language and a function of clustering a plurality of activities using the skill values derived by the skill value derivation unit 214. Two types of clustering functions will be described below.
  • the activity description recording unit 260 records an activity description created by a game developer.
  • the description of the activity is a natural language expression of the content of the activity, and is usually prepared for the purpose of being presented to the user. Therefore, the description is created as a text message for the user to confirm the content of the activity, such as "Defeat Boss P,”"Solve the puzzle and clear the stage,” or "Defeat 10 enemy characters.” has been done.
  • the classification unit 228 has a function of grouping explanatory texts prepared for each of a plurality of activities using natural language processing. For example, if the explanatory text is in Japanese, the classification unit 228 may perform morphological analysis to divide the explanatory text into words, count the number of times the words appear, and generate a vector whose length is the number of vocabulary words. The classification unit 228 vectorizes all explanatory sentences, evaluates the degree of similarity between sentence vectors, and performs grouping. The classification unit 228 may vectorize the activity description using Sentence2vec, for example. Various methods have been proposed for evaluating the similarity of sentences, and the classification unit 228 may use the K-means method as a clustering method.
  • Activity A “Defeat Boss A”
  • Activity B “Defeat Boss B”
  • Activity C “Defeat Boss C”
  • Activity D “Solving Puzzle D”
  • Activity E “Defeat Boss E”
  • Activity F “Defeat 10 Characters F”
  • Activity G “Defeat 5 Characters G”
  • Activity H “Solving Puzzle H”
  • Activity I “Defeat 15 Characters I”
  • Activity J “Solving Puzzle J”
  • the classification unit 228 may perform natural language processing to classify activities A to C, E to G, and I, and activities D, H, and J into different groups. In other words, the classification unit 228 may classify the seven activities A to C, E to G, and I into the first group, and the three activities D, H, and J into the second group.
  • the above grouping is just an example, and the classification unit 228 may classify a plurality of activities into three or more groups using natural language processing.
  • the classification unit 228 may group multiple activities using activity descriptions in multiple languages. If the game developer has created activity descriptions in two or more languages, the classification unit 228 performs natural language processing on the activity descriptions in each language to group them, and derives the activity descriptions from the activity descriptions in each language. The accuracy of grouping a plurality of activities may be improved by statistically processing the grouping results.
  • the game developer may generate the activity ID using natural language. For example, when the activity ID of activity A is generated as "Defeat_A_boss". If there is an activity for which an explanatory text is not prepared, the classification unit 228 may extract a natural language corresponding to the activity explanatory text from the activity ID and use it for clustering processing. The classification unit 228 records the results of grouping the plurality of activities in the activity group recording unit 262.
  • the activity group recording unit 262 may record activity IDs of activities belonging to each group in association with information (group number) that identifies each group.
  • the classification unit 228 has a function of grouping a plurality of activities using the skill values of the plurality of users derived by the skill value derivation unit 214.
  • the grouping process a process of searching for an outcast activity from a plurality of activities that make up a group will be described.
  • FIG. 11 shows a flowchart of skill value-based clustering processing.
  • the classification unit 228 acquires skill values derived for a plurality of users for a plurality of activities belonging to one group from the skill value recording unit 256 (S10).
  • the classification unit 228 may randomly select a predetermined sampling number (for example, 1000 users) of users and obtain skill values derived for the selected predetermined number of users.
  • the classification unit 228 may classify multiple activities belonging to one group that have already been classified into multiple users. Obtain the skill value derived for the target.
  • the classification unit 228 uses the natural language-based clustering function for grouping in the first stage, and uses the skill value-based clustering function in the second stage to improve the accuracy of each activity group classified in the first stage. Used for grouping.
  • FIG. 12 shows an example of skill values derived for multiple activities belonging to activity group 1.
  • activity group 1 is composed of ten activities K to T
  • the activity group recording unit 262 records the activity IDs of activities K to T in association with activity group 1.
  • the classification unit 228 refers to the activity group recording unit 262, identifies activities K to T that constitute activity group 1, and converts the skill values derived for users A to D for activities K to T into skill values. It is being read from the recording section 256.
  • activity group 1 is composed of all activities included in the game.
  • the classification unit 228 preferably performs skill value-based clustering processing using the skill values of several hundred or more users.
  • FIG. 13 shows an example of player skill values derived for multiple users.
  • the classification unit 228 acquires the player skill values derived for the users A to D from the skill value recording unit 256 (S12).
  • the player skill value is a value obtained by averaging the skill values of a predetermined number of recently played activities, and has a meaning as an index expressing the user's recent skill.
  • the player skill value is derived as the average of the skill values of the 10 most recently played activities, but in the following explanation, the player skill value is derived as the average of the skill values of the 10 most recently played activities. Treat the skill values of a number of activities as an average.
  • the classification unit 228 calculates the difference (deviation) between the skill values of the plurality of users derived for each activity and the player skill values of the plurality of users, and derives the absolute value of the difference (S14).
  • FIG. 14 shows the absolute difference value between the skill value of each activity and the player skill value.
  • the skill value of each activity represents the user's skill (prowess) in that activity, and the player skill value represents the user's average skill in the most recent predetermined number of activities. Therefore, if the absolute value of the difference between the skill value of one activity and the player skill value is large, it means that the user played that one activity very well compared to other activities in the group, or It means either you played poorly. This leads us to infer that the nature or characteristics of this one activity are different from the nature or characteristics of the remaining activities.
  • the classification unit 228 calculates the average of a plurality of absolute difference values (hereinafter also simply referred to as "average error value") for each activity (S16). At the bottom of the table shown in FIG. 14, the average error value calculated for each activity is shown.
  • the classification unit 228 performs a process of identifying activities to be excluded from the group based on the average error value (S18). If there is no activity to be excluded in the group (N in S18), the classification unit 228 ends the clustering process for the group and performs the clustering process for another group.
  • the classification unit 228 identifies, among the plurality of activities belonging to activity group 1, an activity with a relatively large error average value as a candidate to be excluded from activity group 1. Specifically, the classification unit 228 identifies the activity with the largest average error value as an exclusion candidate. Referring to the bottom row of the table shown in FIG. 14, the activity with the largest average error value is activity N. The classification unit 228 compares the average error value of the activity N with a predetermined threshold, and determines that the activity N belongs to the group 1 if the average error value is less than or equal to the predetermined threshold.
  • the predetermined threshold may be, for example, 2.0.
  • the classification unit 228 determines that activity N is an activity to be excluded from this group 1 (Y in S18).
  • the classification unit 228 checks whether there is any activity other than activity N that should be excluded from this group. For this confirmation, the classification unit 228 calculates the center of gravity (average of skill values) of group 1 excluding activity N for each user.
  • FIG. 15 is a diagram for explaining a method for calculating the center of gravity of group 1 for user A.
  • the classification unit 228 calculates the average of the skill values of the nine activities excluding activity N as the center of gravity of group 1.
  • the center of gravity of group 1 excluding activity N is calculated as 3.56.
  • the center of gravity of activity N is the skill value itself, which is 1.
  • FIG. 16 shows the center of gravity of group 1 and the center of gravity of activity N calculated for multiple users.
  • the classification unit 228 calculates the average of the skill values of nine activities excluding activity N for each of the plurality of users as the center of gravity of group 1.
  • the classification unit 228 calculates the distance from the center of gravity of group 1 and the distance from the center of gravity of activity N for each skill value of the nine activities K to M and O to T (S20), and calculates the distance from the center of gravity of group 1 and the distance from the center of gravity of activity N. It is investigated to which center of gravity the center of gravity is closer (S22).
  • the fact that the center of gravity of the activity to be investigated is close to the center of gravity of group 1 indicates that the activity has properties similar to group 1, while the center of gravity of the activity to be investigated is close to the center of gravity of group 1.
  • the activity to be investigated has properties closer to the group to which activity N belongs (to which only activity N belongs at this point) than to group 1.
  • FIG. 17 shows the results of comparing the distance to the center of gravity of group 1 and the distance to the center of gravity of activity N.
  • the classification unit 228 calculates, for each user, the absolute value of the difference between (the center of gravity of activity P) and (the center of gravity of group 1 excluding activity N), and the difference between (the center of gravity of activity P) and (the center of gravity of activity N).
  • the absolute value of the difference is calculated, and the average of each absolute difference value is calculated.
  • the bottom row of the table shown in FIG. 17 shows the average distance between the center of gravity of activity P and the center of gravity of group 1, and the average distance between the center of gravity of activity P and the center of gravity of activity N.
  • the classification unit 228 determines that activity P belongs to group 1.
  • the classification unit 228 performs this investigation on all nine activities and determines whether there is an activity that is closer to activity N than group 1 (S22). If there is an activity closer to activity N than group 1 (Y in S22), the classification unit 228 determines to exclude the activity from group 1, and excludes the activity from group 1 together with activity N (S24). . On the other hand, if there is no activity closer to activity N than group 1 (N in S22), the classification unit 228 determines that only activity N is to be excluded, and excludes activity N from group 1. (S24). As described above, the classification unit 228 can identify outcasts in group 1 and make group 1 a collection of activities in which individual users have similar play tendencies (play time).
  • FIG. 18 shows an example of skill values derived for a plurality of activities belonging to activity group 2.
  • activity group 2 is composed of four activities U to X
  • the activity group recording unit 262 records the activity IDs of activities U to X in association with activity group 2.
  • the classification unit 228 refers to the activity group recording unit 262, identifies activities U to X that constitute activity group 2, and classifies the skill values derived for users A to D for activities U to X as skill values. It is being read from the recording section 256.
  • FIG. 19 shows the center of gravity of group 1 and the center of gravity of group 2 calculated for multiple users.
  • the classification unit 228 calculates the average skill value of activity group 1 excluding activity N for each of the plurality of users A to D as the center of gravity of group 1.
  • the center of gravity of this group 1 is the same as that shown in FIG.
  • the classification unit 228 also calculates the average skill value of activity group 2 for each of the plurality of users A to D as the center of gravity of group 2.
  • FIG. 20 shows the center of gravity of activity N.
  • the classification unit 228 investigates whether the center of gravity of activity N is closer to the center of gravity of group 1 or the center of gravity of group 2.
  • FIG. 21 shows the results of comparing the distance to the center of gravity of group 1 and the distance to the center of gravity of group 2.
  • the classification unit 228 calculates, for each user, the absolute value of the difference between (the center of gravity of activity N) and (the center of gravity of group 1 excluding activity N), and the difference between (the center of gravity of activity N) and (the center of gravity of group 2).
  • the absolute value of the difference is calculated, and the average of each absolute difference value is calculated.
  • the bottom row of the table shown in FIG. 21 shows the average distance between the center of gravity of activity N and the center of gravity of group 1, and the average distance between the center of gravity of activity N and the center of gravity of group 2.
  • the classification unit 228 sets the activity N on the condition that the average of the absolute difference values (distance) between (the center of gravity of activity N) and (the center of gravity of group 2) is less than or equal to a predetermined threshold (for example, 1.5). It is determined that belongs to group 2. As a result of this determination, activity N is added to group 2.
  • the classification unit 228 also investigates other groups when the average of the absolute difference values is larger than a predetermined threshold. As a result of investigating all the groups, if there is no group in which the average absolute difference value is less than or equal to a predetermined threshold, the classification unit 228 may create a new group that includes activity N. The classification unit 228 records the grouping results in the activity group recording unit 262.
  • FIG. 22 shows an example of skill values derived for a plurality of activities belonging to activity group 3.
  • activity group 3 is composed of five activities ⁇ to ⁇
  • the activity group recording unit 262 records the activity IDs of activities ⁇ to ⁇ in association with activity group 3.
  • the classification unit 228 refers to the activity group recording unit 262, identifies the activities ⁇ to ⁇ that constitute the activity group 3, and converts the skill values derived for the users A to D for the activities ⁇ to ⁇ into skill values. It is being read from the recording section 256.
  • FIG. 23 shows the center of gravity of group 1 and the center of gravity of group 3 calculated for multiple users.
  • the classification unit 228 calculates the average skill value of activity group 1 excluding activity N for each of the plurality of users A to D as the center of gravity of group 1. Furthermore, the classification unit 228 calculates the average skill value of the activity group 3 for each of the plurality of users A to D as the center of gravity of the group 3.
  • the classification unit 228 calculates the absolute difference value (distance) between the center of gravity of group 1 and the center of gravity of group 3 for each user, and calculates the average of the absolute difference values.
  • the average of the absolute difference values expresses the closeness of the two groups.
  • the classification unit 228 may merge the two groups on condition that the average of the absolute difference values is less than or equal to a predetermined threshold (for example, 0.5). For example, the classification unit 228 erases group 3 and causes activities ⁇ to ⁇ that belonged to group 3 to belong to group 1. Note that the classification unit 228 may delete group 1 and cause activities K to M and OT that belonged to group 1 to belong to group 3.
  • the classification unit 228 records the latest grouped status in the activity group recording unit 262.
  • the classification unit 228 can group multiple activities with high precision.
  • the classification unit 228 first performs grouping using a natural language-based clustering function, and uses a skill value-based clustering function to improve the accuracy of each activity group generated by the natural language-based clustering function. This makes it possible to generate multiple activity groups quickly and with high precision.
  • FIG. 24 is an image diagram of groups into which multiple activities are classified.
  • the classification unit 228 classifies the plurality of activities into four groups. (Group 3 has disappeared because it was absorbed into Group 1).
  • the grouping process by the classification unit 228 reflects the play tendency (play time) of each user, so for example, group 1 includes many combat-related activities, and group 2 contains many exploration-related activities. A situation arises in which
  • the skill value derivation unit 214 derives a player skill value for each activity group, and the class distribution unit 224 divides the user's class into each activity group based on the player skill value derived for each activity group. Set to . Therefore, when presenting the expected play time of an activity that user X has not yet played, the play time extraction unit 244 identifies the activity group to which the activity belongs, and identifies the user class set for the identified activity group. By doing this, it is possible to extract a representative value of the appropriate playing time that matches the user's skill.
  • a server device for deriving skill values related to game play of a user comprising one or more processors having hardware,
  • the one or more processors include: Group multiple activities, Obtain the playing time of the activity of multiple users from the event data indicating the start of the activity and the event data indicating the end of the activity, Generates a play time distribution for each activity based on the multiple play times obtained, Deriving the user's skill value for the activity based on the user's playing time of the activity and the distribution of the playing time of the activity, Deriving a player skill value regarding the user's game play for each activity group based on the plurality of skill values derived for the plurality of activities; server equipment.
  • the one or more processors include: Deriving a player skill value of the user for each activity group based on a plurality of skill values derived for a plurality of activities belonging to each activity group; The server device described in item 1.
  • the one or more processors include: calculating the difference between the skill values of the plurality of users derived for each activity and the player skill values of the plurality of users, and grouping the plurality of activities based on the plurality of differences calculated for each activity; The server device described in item 1.
  • the one or more processors include: Grouping the plurality of activities based on the absolute value of the plurality of differences calculated for each activity, The server device described in item 3.
  • the one or more processors include: Among the activities in one group, an activity in which the absolute value of the difference is relatively large is excluded from the group; The server device according to item 4.
  • a server device for grouping a plurality of activities comprising one or more processors having hardware, The one or more processors include: Obtain the playing time of the activity of multiple users from the event data indicating the start of the activity and the event data indicating the end of the activity, Generates a play time distribution for each activity based on the multiple play times obtained, Deriving the user's skill value for the activity based on the user's playing time of the activity and the distribution of the playing time of the activity, Deriving a player skill value regarding the user's game play based on the multiple skill values derived for the multiple activities, Calculate the difference between the skill values of the plurality of users derived for each activity and the player skill values of the plurality of users, Grouping the plurality of activities based on the plurality of differences calculated for each activity, server equipment.
  • a server device that provides information regarding expected play time to a user, the server device comprising one or more processors having hardware, The one or more processors include: Group multiple activities, Derive the user's skill value for the activity played by the user, Based on the multiple skill values derived for the multiple activities, a player skill value regarding the user's game play is derived for each activity group, Set the user class for each activity group based on the player skill value derived for each activity group, informing the user of information regarding expected play time associated with the user's class; server device.
  • a method for deriving a skill value related to a user's game play comprising: Obtain the playing time of the activity of multiple users from the event data indicating the start of the activity and the event data indicating the end of the activity, Generates a play time distribution for each activity based on the multiple play times obtained, Deriving the user's skill value for the activity based on the user's playing time of the activity and the distribution of the playing time of the activity, Group multiple activities, Deriving a player skill value regarding the user's game play for each activity group based on the plurality of skill values derived for the plurality of activities; Skill value derivation method.
  • a method of grouping multiple activities Obtain the playing time of the activity of multiple users from the event data indicating the start of the activity and the event data indicating the end of the activity, Generates a play time distribution for each activity based on the multiple play times obtained, Deriving the user's skill value for the activity based on the user's playing time of the activity and the distribution of the playing time of the activity, Deriving a player skill value regarding the user's game play based on the multiple skill values derived for the multiple activities, Calculate the difference between the skill values of the plurality of users derived for each activity and the player skill values of the plurality of users, Grouping the plurality of activities based on the plurality of differences calculated for each activity, Grouping method.
  • a method of providing information to a user regarding expected play time comprising: Group multiple activities, Derive the user's skill value for the activity played by the user, Based on the multiple skill values derived for the multiple activities, a player skill value regarding the user's game play is derived for each activity group, Set the user class for each activity group based on the player skill value derived for each activity group, informing the user of information regarding expected play time associated with the user's class; Information provision method.
  • [Item 13] to the computer Ability to group multiple activities, the ability to derive a user's skill value for activities played by the user; A function of deriving a player skill value related to the user's game play for each activity group based on the multiple skill values derived for the multiple activities; A function to set a user class for each activity group based on the player skill value derived for each activity group, a function of notifying the user of information regarding expected play time associated with the user's class; A recording medium that records a program to realize a goal.
  • the present disclosure can be used in the technical field of processing event data related to game activities performed by users.
  • SYMBOLS 1 Information processing system, 5... Server device, 10... Information processing device, 100... Processing part, 102... Communication part, 110... Game software, 120... Event information Acquisition unit, 122... Event data transmission unit, 130... Game image generation unit, 140... Display processing unit, 150... Activity information acquisition unit, 200... Processing unit, 202... Communication Part, 210...Event data acquisition unit, 212...Play time acquisition unit, 214...Skill value derivation unit, 220...Statistical processing unit, 222...Distribution generation unit, 224...Class Sorting unit, 226... Representative value determining unit, 228... Classifying unit, 240... Information providing unit, 242... Class acquisition unit, 244... Play time extraction unit, 246... Notification Part, 250...
  • Event data recording unit 252... Play time recording unit, 254... Play time distribution recording unit, 256... Skill value recording unit, 258... Representative value recording unit, 260. . . . Activity description recording section, 262 . . . Activity group recording section.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

プレイ時間取得部212は、アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得する。統計処理部220は、取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する。スキル値導出部214は、ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出する。分類部228は、複数のアクティビティをグループ分けする。スキル値導出部214は、複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する。

Description

サーバ装置、スキル値導出方法、グループ分け方法および情報提供方法
 本開示は、ユーザが実行したゲームアクティビティに関するイベントデータを処理する技術に関する。
 近年、プレイヤが入力した操作情報をゲームサーバに送信し、ゲームサーバが操作情報に応じたゲーム映像およびゲーム音を生成してプレイヤの端末装置に送信するクラウドゲームサービスが普及している。クラウドゲームサービスでは、ゲームサーバがゲームプレイを全て管理するため、プレイヤが実行したアクティビティのプレイ状況を分析して、ゲームシナリオの改善等に役立てることができる。
 一方、現在のコンソールゲームは、ゲームプレイの状況を示す情報を外部に出力しないため、サーバ側でプレイヤによるプレイ状況を分析できない。そこでコンソールゲームにおいても、ゲームプレイに関する様々な情報をサーバに送信して、サーバがアクティビティのプレイ状況を分析できるようにすることが好ましい。
 サーバが複数のプレイヤによるアクティビティのプレイ状況を収集できる環境を構築することで、プレイヤによるアクティビティのプレイ時間を統計的に処理できる。そこで、まだアクティビティを実行していないユーザに対して、プレイ時間に関する有用な情報を提供するための仕組みを構築することが望まれている。
 本開示は、アクティビティのプレイ時間に関する情報を提供するための仕組みを実現することを目的とする。
 上記課題を解決するために、本開示のある態様のサーバ装置は、ユーザのゲームプレイに関するスキル値を導出するサーバ装置であって、複数のユーザにより実行されたアクティビティに関するイベントデータを記録するイベントデータ記録部と、イベントデータ記録部に記録された、アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得するプレイ時間取得部と、取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する統計処理部と、ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出するスキル値導出部と、複数のアクティビティをグループ分けする分類部とを備える。スキル値導出部は、複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する。
 本開示の別の態様のサーバ装置は、複数のアクティビティをグループ分けするサーバ装置であって、複数のユーザにより実行されたアクティビティに関するイベントデータを記録するイベントデータ記録部と、イベントデータ記録部に記録された、アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得するプレイ時間取得部と、取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する統計処理部と、ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出するスキル値導出部と、複数のアクティビティをグループ分けする分類部とを備える。スキル値導出部は、複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するプレイヤスキル値を導出する。分類部は、各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出し、アクティビティごとに算出した複数の差分にもとづいて、複数のアクティビティをグループ分けする。
 本開示の別の態様のサーバ装置は、予想プレイ時間に関する情報をユーザに提供するサーバ装置であって、複数のアクティビティをグループ分けする分類部と、ユーザがプレイしたアクティビティについてのユーザのスキル値を導出するスキル値導出部とを備える。スキル値導出部は、複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する。サーバ装置は、さらに、アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定するクラス振分部と、ユーザのクラスに対応付けられる予想プレイ時間に関する情報をユーザに通知する通知部とを備える。
 本開示のさらに別の態様のスキル値導出方法は、ユーザのゲームプレイに関するスキル値を導出する方法であって、アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得するステップと、取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成するステップと、ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出するステップと、複数のアクティビティをグループ分けするステップと、複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出するステップとを有する。
 本開示のさらに別の態様のグループ分け方法は、複数のアクティビティをグループ分けする方法であって、アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得するステップと、取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成するステップと、ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出するステップと、複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するプレイヤスキル値を導出するステップと、各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出するステップと、アクティビティごとに算出した複数の差分にもとづいて、複数のアクティビティをグループ分けするステップとを有する。
  本開示のさらに別の態様の情報提供方法は、予想プレイ時間に関する情報をユーザに提供する方法であって、複数のアクティビティをグループ分けするステップと、ユーザがプレイしたアクティビティについてのユーザのスキル値を導出するステップと、複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出するステップと、アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定するステップと、ユーザのクラスに対応付けられる予想プレイ時間に関する情報をユーザに通知するステップとを有する。
 なお、以上の構成要素の任意の組合せ、本開示の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本開示の態様として有効である。
実施形態にかかる情報処理システムを示す図である。 情報処理装置のハードウェア構成を示す図である。 情報処理装置の機能ブロックを示す図である。 サーバ装置の機能ブロックを示す図である。 収集したイベントデータを分析する手順を示す図である。 プレイ時間の算出手法を説明するための図である。 アクティビティのプレイ時間と、当該アクティビティを実行したプレイヤ数との関係を表現する分布曲線を示す図である。 プレイ時間の分布を示す図である。 クラスごとにプレイヤをプロットしたグラフを示す図である。 システム画面の例を示す図である。 クラスタリング処理のフローチャートを示す図である。 アクティビティグループ1に属する複数のアクティビティについて導出されたスキル値の例を示す図である。 複数のユーザについて導出されたプレイヤスキル値の例を示す図である。 各アクティビティのスキル値とプレイヤスキル値との差分絶対値を示す図である。 グループの重心を算出する手法を説明するための図である。 グループ1の重心とアクティビティNの重心を示す図である。 グループ1の重心との距離と、アクティビティNの重心との距離を比較した結果を示す図である。 アクティビティグループ2に属する複数のアクティビティについて導出されたスキル値の例を示す図である。 複数のユーザについて算出されるグループ1の重心とグループ2の重心を示す図である。 アクティビティNの重心を示す図である。 グループ1の重心との距離と、グループ2の重心との距離を比較した結果を示す図である。 アクティビティグループ3に属する複数のアクティビティについて導出されたスキル値の例を示す図である。 複数のユーザについて算出されるグループ1の重心とグループ3の重心を示す図である。 複数のアクティビティが分類されるグループのイメージ図である。
 本開示の概要を説明する。実施形態では、ユーザ端末装置である情報処理装置がゲームソフトウェアを実行する。ゲームソフトウェアは、アクティビティを開始すると、アクティビティを識別するアクティビティ識別子(アクティビティID)と、アクティビティの開始を示す情報を含むイベント情報をシステムソフトウェアに出力する。アクティビティはゲームプレイの一単位であり、ゲーム進行においてユーザに提供されるステージや、クエスト、ミッション等であってよい。ゲームソフトウェアは、アクティビティを終了すると、アクティビティIDと、アクティビティの終了を示す情報を含むイベント情報をシステムソフトウェアに出力する。アクティビティの終了時、ゲームソフトウェアは、イベント情報に、アクティビティの結果(成功または失敗)を含ませてよい。システムソフトウェアは、ゲームソフトウェアから出力されたイベント情報に、ゲームを識別するゲーム識別子(ゲームID)および時間情報(タイムスタンプ)を付加したイベントデータを生成し、サーバ装置に送信する。
 サーバ装置は、複数のプレイヤが操作する複数の情報処理装置から送信されるイベントデータを収集して、アクティビティに関するプレイ動向を分析する。特に実施形態のサーバ装置は、複数の情報処理装置から送信されるイベントデータにもとづいて、複数のプレイヤによるアクティビティのプレイ時間を統計的に処理する。サーバ装置は、統計処理した結果に基づいて、まだアクティビティをプレイしていないユーザに対して、予想されるプレイ時間を通知する機能をもつ。
 図1は、本開示の実施形態にかかる情報処理システム1を示す。実施形態の情報処理システム1は、アクティビティのプレイ時間を分析するプレイ時間分析システムであり、プレイヤであるユーザが操作する情報処理装置10とサーバ装置5とを備える。アクセスポイント(以下、「AP」とよぶ)8は、無線アクセスポイントおよびルータの機能を有し、情報処理装置10は、無線または有線経由でAP8に接続して、ネットワーク3上のサーバ装置5と通信可能に接続する。図1には、1人のユーザおよび1台の情報処理装置10が示されているが、情報処理システム1では、複数のユーザが操作する複数の情報処理装置10とサーバ装置5とがネットワーク3を介して接続していることを前提とする。
 情報処理装置10は、ユーザが操作する入力装置6と無線または有線で接続し、入力装置6はユーザが操作した情報を情報処理装置10に出力する。情報処理装置10は入力装置6から操作情報を受け付けるとシステムソフトウェアやゲームソフトウェアの処理に反映し、出力装置4から処理結果を出力させる。情報処理システム1において情報処理装置10はゲームを実行するゲーム装置(ゲームコンソール)であり、入力装置6はゲームコントローラなど情報処理装置10に対してユーザの操作情報を供給する機器であってよい。なお入力装置6は、キーボードやマウスなどの入力インタフェースであってもよい。
 補助記憶装置2は、HDD(ハードディスクドライブ)やSSD(ソリッドステートドライブ)などの大容量記録装置であり、内蔵型記録装置であってよく、またUSB(Universal Serial Bus)などによって情報処理装置10と接続する外部記録装置であってもよい。出力装置4は画像を出力するディスプレイおよび音を出力するスピーカを有するテレビであってよい。出力装置4は、情報処理装置10に有線ケーブルで接続されてよく、また無線接続されてもよい。
 撮像装置であるカメラ7は出力装置4の近傍に設けられ、出力装置4周辺の空間を撮像する。図1ではカメラ7が出力装置4の上部に取り付けられている例を示しているが、出力装置4の側部または下部に配置されてもよく、いずれにしても出力装置4の前方に位置するユーザを撮像できる位置に配置される。カメラ7はステレオカメラであってもよい。
 サーバ装置5は、情報処理システム1のユーザに対してネットワークサービスを提供する。サーバ装置5は、各ユーザを識別するネットワークアカウントを管理しており、各ユーザは、ネットワークアカウントを用いて、サーバ装置5が提供するネットワークサービスにサインインする。ユーザは情報処理装置10からネットワークサービスにサインインすることで、サーバ装置5に、ゲームのセーブデータや、ゲームプレイ中に獲得した仮想的な褒賞であるトロフィを登録できる。サーバ装置5にセーブデータやトロフィが登録されることで、ユーザが情報処理装置10とは別の情報処理装置を使用しても、セーブデータやトロフィを同期できるようになる。
 実施形態のサーバ装置5は、複数のプレイヤが操作する複数の情報処理装置10からイベントデータを収集する。サーバ装置5は、収集したイベントデータから、アクティビティのプレイ時間を統計処理して、ゲームプレイの腕前を表現するプレイヤスキル値に対応するプレイ時間をアクティビティごとに評価する。またサーバ装置5は、収集したイベントデータから、ユーザのプレイヤスキル値を導出する。サーバ装置5は、アクティビティのプレイヤスキル値に対応するプレイ時間と、ユーザのプレイヤスキル値とにもとづいて、まだアクティビティを実行していない当該ユーザに、当該ユーザのプレイヤスキル値に対応するプレイ時間を、予想プレイ時間として通知できる。ユーザは、予想プレイ時間を通知されると、自身の状況(たとえば1時間後に外出しなければならない、等)から、当該アクティビティをプレイするか否かを判断できるようになる。
 図2は、情報処理装置10のハードウェア構成を示す。情報処理装置10は、メイン電源ボタン20、電源ON用LED21、スタンバイ用LED22、システムコントローラ24、クロック26、デバイスコントローラ30、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60を有して構成される。
 メインシステム60は、メインCPU(Central Processing Unit)、主記憶装置であるメモリおよびメモリコントローラ、GPU(Graphics Processing Unit)などを備える。GPUはゲームプログラムの演算処理に主として利用される。メインCPUはシステムソフトウェアを起動し、システムソフトウェアが提供する環境下において、補助記憶装置2にインストールされたゲームプログラムを実行する機能をもつ。サブシステム50は、サブCPU、主記憶装置であるメモリおよびメモリコントローラなどを備え、GPUを備えない。
 メインCPUは補助記憶装置2にインストールされているゲームプログラムを実行する機能をもつ一方で、サブCPUはそのような機能をもたない。しかしながらサブCPUは補助記憶装置2にアクセスする機能や、サーバ装置5との間でデータを送受信する機能を有している。サブCPUは、このような制限された処理機能のみを有して構成されており、したがってメインCPUと比較して小さい消費電力で動作できる。これらのサブCPUの機能は、メインCPUがスタンバイ状態にある際に実行される。
 メイン電源ボタン20は、ユーザからの操作入力が行われる入力部であって、情報処理装置10の筐体の前面に設けられ、情報処理装置10のメインシステム60への電源供給をオンまたはオフするために操作される。電源ON用LED21は、メイン電源ボタン20がオンされたときに点灯し、スタンバイ用LED22は、メイン電源ボタン20がオフされたときに点灯する。システムコントローラ24は、ユーザによるメイン電源ボタン20の押下を検出する。
 クロック26はリアルタイムクロックであって、現在の日時情報を生成し、システムコントローラ24やサブシステム50およびメインシステム60に供給する。
 デバイスコントローラ30は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ30には、システムコントローラ24、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60などのデバイスが接続される。デバイスコントローラ30は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。
 メディアドライブ32は、ゲームなどのアプリケーションソフトウェア、およびライセンス情報を記録したROM媒体44を装着して駆動し、ROM媒体44からプログラムやデータなどを読み出すドライブ装置である。ROM媒体44は、光ディスクや光磁気ディスク、ブルーレイディスクなどの読出専用の記録メディアである。
 USBモジュール34は、外部機器とUSBケーブルで接続するモジュールである。USBモジュール34は補助記憶装置2およびカメラ7とUSBケーブルで接続してもよい。フラッシュメモリ36は、内部ストレージを構成する補助記憶装置である。無線通信モジュール38は、Bluetooth(登録商標)プロトコルやIEEE802.11プロトコルなどの通信プロトコルで、入力装置6と無線通信する。有線通信モジュール40は、外部機器と有線通信し、AP8を介してネットワーク3に接続する。
 図3は、情報処理装置10の機能ブロックを示す。情報処理装置10は、処理部100および通信部102を備える。処理部100は、ゲームソフトウェア110、イベント情報取得部120、イベントデータ送信部122、ゲーム画像生成部130、表示処理部140およびアクティビティ情報取得部150を備える。
 情報処理装置10はコンピュータを備え、コンピュータがプログラムを実行することによって、図3に示す様々な機能が実現される。コンピュータは、プログラムをロードするメモリ、ロードされたプログラムを実行する1つ以上のプロセッサ、補助記憶装置、その他のLSIなどをハードウェアとして備える。プロセッサは、半導体集積回路やLSIを含む複数の電子回路により構成され、複数の電子回路は、1つのチップ上に搭載されてよく、または複数のチップ上に搭載されてもよい。図3に示す機能ブロックは、ハードウェアとソフトウェアとの連携によって実現され、したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
 ゲームソフトウェア110は、少なくともゲームプログラム、画像データおよび音データを含む。ゲームプログラムは、ユーザによる入力装置6の操作情報を受け、仮想空間においてゲームキャラクタを動かす演算処理を行う。ゲーム画像生成部130は、レンダリング処理などを実行するGPU(Graphics Processing Unit)を含んで、ゲームの画像データを生成する。表示処理部140は、生成されたゲーム画像を出力装置4から出力する。なお処理部100は、ゲーム音データを生成するゲーム音生成部およびゲーム音を出力する音出力部を備えるが、図3では図示を省略している。
 ゲームプログラムは、ゲーム進行中にアクティビティを開始すると、アクティビティの開始イベントの発生を示すイベント情報を出力し、アクティビティを終了すると、アクティビティの終了イベントの発生を示すイベント情報を出力する。イベント情報取得部120は、ゲームソフトウェア110からイベント情報を取得すると、イベント情報に、ゲームIDおよびイベントが発生した時間を示す時間情報(タイムスタンプ)を付加したイベントデータを生成して、イベントデータ送信部122に提供する。なおゲームプログラムは、ゲームIDおよび/またはタイムスタンプを含むイベント情報をイベント情報取得部120に出力してもよい。イベントデータ送信部122は、生成されたイベントデータを、通信部102を介してサーバ装置5に送信する。
 ゲーム開発者は様々なアクティビティをゲームに仕込んでよい。たとえば、敵ボスとの戦闘アクティビティがゲームに組み入れられている場合、ゲームプログラムは、戦闘開始時に、戦闘アクティビティを識別するアクティビティIDと、戦闘アクティビティの開始を示す情報を含むイベント情報を出力する。プレイヤが敵ボスとの戦闘に勝利すると、ゲームプログラムは、戦闘アクティビティを識別するアクティビィティIDと、戦闘アクティビティの終了を示す情報と、アクティビティの成功を示す情報を含むイベント情報を出力する。
 イベントデータ送信部122は、プレイヤにより実行されたアクティビティに関するイベントデータを、通信部102を介してサーバ装置5に送信する。情報処理システム1において、イベントデータの送信処理は、サーバ装置5に接続している全ての情報処理装置10により実施され、サーバ装置5は、複数の情報処理装置10から、様々なゲームの様々なアクティビティに関するイベントデータを収集する。イベント情報取得部120は、イベント情報をゲームソフトウェア110から取得すると、すぐにタイムスタンプを付加したイベントデータを生成し、イベントデータ送信部122がサーバ装置5に送信することが好ましい。
 図4は、実施形態のサーバ装置5の機能ブロックを示す。サーバ装置5は、処理部200、通信部202、イベントデータ記録部250、プレイ時間記録部252、プレイ時間分布記録部254、スキル値記録部256、代表値記録部258、アクティビティデスクリプション記録部260およびアクティビティグループ記録部262を備える。処理部200は、イベントデータ取得部210、プレイ時間取得部212、スキル値導出部214、統計処理部220および情報提供部240を備える。統計処理部220は、分布生成部222、クラス振分部224、代表値決定部226および分類部228を有する。情報提供部240は、クラス取得部242、プレイ時間抽出部244および通知部246を有する。
 サーバ装置5はコンピュータを備え、コンピュータがプログラムを実行することによって、図4に示す様々な機能が実現される。コンピュータは、プログラムをロードするメモリ、ロードされたプログラムを実行する1つ以上のプロセッサ、補助記憶装置、その他のLSIなどをハードウェアとして備える。プロセッサは、半導体集積回路やLSIを含む複数の電子回路により構成され、複数の電子回路は、1つのチップ上に搭載されてよく、または複数のチップ上に搭載されてもよい。図4に示す機能ブロックは、ハードウェアとソフトウェアとの連携によって実現され、したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
 イベントデータ取得部210は、複数の情報処理装置10から、複数のプレイヤにより実行されたアクティビティに関するイベントデータを取得し、イベントデータ記録部250に記録する。イベントデータ記録部250は、プレイヤのネットワークアカウントに紐付けて、ゲームタイトルごとにイベントデータを記録する。既述したように、イベントデータには、ゲームID、アクティビティID、アクティビティの開始または終了を示す情報、およびタイムスタンプが少なくとも含まれる。以下、サーバ装置5が、収集したイベントデータを分析する手順について説明する。
 図5は、収集したイベントデータを分析する手順を示す。イベントデータの分析は、プレイ時間取得部212によるプレイ時間算出処理(S10)、スキル値導出部214によるスキル値導出処理(S12)、代表値決定部226による代表値決定処理(S14)を含む。
<S10:プレイ時間算出処理>
 プレイ時間取得部212は、アクティビティのプレイ時間を取得する。プレイ時間取得部212は、イベントデータ記録部250に記録された、アクティビティの開始イベント情報を含むイベントデータ(開始イベントデータ)と、アクティビティの終了イベント情報を含むイベントデータ(終了イベントデータ)から、複数のプレイヤの当該アクティビティのプレイ時間を取得する。アクティビティのプレイ時間は、開始イベントデータに含まれるタイムスタンプと、終了イベントデータに含まれるタイムスタンプにもとづいて算出される。
 図6は、プレイ時間の算出手法を説明するための図である。図6は、1人のプレイヤによるアクティビティAの開始イベントおよび終了イベントを示し、具体的に“A開始”はアクティビティAの開始イベントを、“A終了”はアクティビティAの終了イベントを示す。開始イベントデータには、アクティビティAの開始時刻t1が含まれ、終了イベントデータには、アクティビティAの終了時刻t2が含まれており、プレイ時間取得部212は、当該プレイヤによるアクティビティAのプレイ時間を、(t2-t1)と算出する。プレイ時間取得部212は、算出したアクティビティのプレイ時間を、プレイヤのネットワークアカウントに紐付けて、ゲームIDおよびアクティビティIDとともにプレイ時間記録部252に記録する。プレイ時間取得部212は、複数のプレイヤのイベントデータを解析して、複数のアクティビティのそれぞれのプレイ時間をプレイヤごとに取得し、プレイ時間記録部252に記録する。
<S12:スキル値導出処理>
 統計処理部220において、分布生成部222は、プレイ時間取得部212により取得された複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する。分布生成部222は、アクティビティごとに生成したプレイ時間の分布を、プレイ時間分布記録部254に記録する。
 図7(a)および図7(b)は、それぞれ1つのアクティビティのプレイ時間と、当該アクティビティを実行したプレイヤ数との関係を表現する分布曲線を示す。横軸がプレイ時間を示し、縦軸がプレイヤ数を示す。図7(a)は、アクティビティAのプレイ時間とプレイヤ数との関係を示し、図7(b)は、アクティビティBのプレイ時間とプレイヤ数との関係を示す。
 サーバ装置5は、アクティビティのプレイ時間がユーザのゲームのスキル(腕前)に相関があるという知見を前提に、ユーザのスキルを評価したスキル値を導出して、導出したスキル値に対応するプレイ時間をユーザに通知する技術を実現する。この知見においては、ゲームのスキルが高いユーザは、アクティビティを相対的に短いプレイ時間で完了し、一方、ゲームのスキルが低いユーザは、アクティビティを相対的に長いプレイ時間で完了する。そのためユーザのゲームのスキルが高ければ、アクティビティAおよびアクティビティBの双方を短いプレイ時間で完了し、ユーザのゲームのスキルが低ければ、アクティビティAおよびアクティビティBの双方を長いプレイ時間で完了することが予測される。
 図8(a)および図8(b)は、それぞれプレイ時間の分布を示す。分布生成部222は、アクティビティごとに、全てのプレイヤをプレイ時間の短い順に並べて、各グループに含まれるプレイヤ数が等しくなるように、全てのプレイヤを複数のグループに分ける。実施形態で分布生成部222は、全てのプレイヤを10個のグループ1~10に分け、各グループに含まれるプレイヤ数は同一である。アクティビティAをプレイしたプレイヤ数が100万人である場合、各グループは、10万人のプレイヤを含み、グループ1が、最も短いプレイ時間のプレイヤを集めたグループ、グループ10が、最も長いプレイ時間のプレイヤを集めたグループとなる。分布生成部222は、アクティビティごとに生成したプレイ時間の分布を、プレイ時間分布記録部254に記録する。たとえばプレイ時間分布記録部254は、1から10までのグループ番号と、各グループに含まれる最短プレイ時間と最長プレイ時間とを対応付けて、プレイ時間の分布として記録してよい。
 スキル値導出部214は、ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出する。スキル値導出部214は、プレイ時間分布記録部254に記録されたプレイ時間分布を参照し、ユーザのプレイ時間が含まれるグループのグループ番号を特定することで、当該アクティビティについてのユーザのスキル値を導出する。実施形態において、グループ番号は、そのままスキル値を表現してよい。したがってスキル値導出部214は、アクティビティAを実行したユーザのプレイ時間がグループ番号3のグループに含まれれば、当該アクティビティAについてのユーザのスキル値を“3”と導出し、アクティビティBを実行したユーザのプレイ時間がグループ番号5のグループに含まれれば、当該アクティビティBについてのユーザのスキル値を“5”と導出する。実施形態においてスキル値1は、スキルレベルが最も高いことを示し、スキル値10は、スキルレベルが最も低いことを示す。スキル値導出部214は、ユーザがプレイした全てのアクティビティについて導出したスキル値を、ユーザ(プレイヤ)のネットワークアカウントに紐付けて、スキル値記録部256に記録する。
 スキル値導出部214は、複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するスキル値を導出する。具体的にスキル値導出部214は、ユーザが直近でプレイした複数のアクティビティについてユーザのスキル値を導出し、導出した複数のスキル値を平均化して、ユーザのゲームプレイに関するスキル値を導出する。実施形態でスキル値導出部214は、直近の10個のアクティビティについて導出した10個のスキル値を平均化して、ユーザのゲームプレイに関するスキル値を導出する。以下、ユーザのゲームプレイに関するスキル値を、「プレイヤスキル値」と呼ぶこともある。
 以下、ユーザXのプレイヤスキル値を導出する具体例を示す。具体例において示す数値は、上記した知見から外れた数値を含むこともあるが、あくまでも実施形態を説明するための数値を例示したものであることに留意されたい。
 ユーザXが直近でプレイした10個のアクティビティのプレイ時間を含むグループのグループ番号は、以下のとおりである。
 アクティビティA  グループ番号3
 アクティビティB  グループ番号5
 アクティビティC  グループ番号1
 アクティビティD  グループ番号2
 アクティビティE  グループ番号4
 アクティビティF  グループ番号7
 アクティビティG  グループ番号5
 アクティビティH  グループ番号5
 アクティビティI  グループ番号8
 アクティビティJ  グループ番号10
 スキル値は、グループ番号により表現されるため、各アクティビティについてのユーザのスキル値は、以下のように導出される。
 アクティビティA  スキル値3
 アクティビティB  スキル値5
 アクティビティC  スキル値1
 アクティビティD  スキル値2
 アクティビティE  スキル値4
 アクティビティF  スキル値7
 アクティビティG  スキル値5
 アクティビティH  スキル値5
 アクティビティI  スキル値8
 アクティビティJ  スキル値10
 スキル値導出部214は、10個のアクティビティについて導出したスキル値を平均化して、ユーザXのプレイヤスキル値を導出する。
 (プレイヤスキル値)=(3+5+1+2+4+7+5+5+8+10)/10=5
 このように、ユーザXのプレイヤスキル値は、直近の10個のアクティビティについて導出されたスキル値を平均して、“5”と導出される。
 スキル値導出部214は、全てのユーザのプレイヤスキル値を導出して、スキル値記録部256に記録する。プレイヤスキル値は、最小値を1、最大値を10とする範囲内の値をとる。プレイヤスキル値が小さいユーザほど、ゲームスキルが高く、プレイヤスキル値が大きいユーザほど、ゲームスキルが低いと言える。
 上記したようにスキル値導出部214は、直近の所定数のアクティビティについて導出したスキル値にもとづいて、プレイヤスキル値を導出する。スキル値導出部214は、ユーザがアクティビティを実行するたびに、ユーザのプレイヤスキル値を更新してよいが、定期的に、たとえば1日1回、プレイヤスキル値を更新してもよい。
<S14:代表値決定処理>
 統計処理部220において、クラス振分部224は複数のクラスを設定し、プレイヤのプレイヤスキル値に応じて、当該プレイヤを複数のクラスのいずれかに振り分ける。実施形態でクラス振分部224は9個のクラスを設定し、以下のルールにしたがって、ユーザの振分処理を実施する。PSは、プレイヤスキル値を表現する。
 1≦PS≦2  クラス1
 2<PS≦3  クラス2
 3<PS≦4  クラス3
 4<PS≦5  クラス4
 5<PS≦6  クラス5
 6<PS≦7  クラス6
 7<PS≦8  クラス7
 8<PS≦9  クラス8
 9<PS≦10 クラス9
 上記したプレイヤスキル値が“5”であるユーザXは、クラス振分部224により、クラス4に振り分けられる。クラス振分部224は、情報処理システム1に参加する全てのユーザを、プレイヤスキル値に応じてクラス1~9のうちのいずれかのクラスに振り分けて、各ユーザのクラスをスキル値記録部256に記録する。
 図9は、アクティビティSのプレイ時間とプレイヤ数との関係を示す分布曲線において、クラスごとにプレイヤをプロットしたグラフを示す。クラス1のグラフは、クラス1に属する複数のプレイヤのプレイ時間とプレイヤ数の関係を示し、クラス2のグラフは、クラス2に属する複数のプレイヤのプレイ時間とプレイヤ数の関係を示す。つまりクラスN(1~9)のグラフは、クラスNに属する複数のプレイヤのプレイ時間とプレイヤ数の関係を表現している。したがって全てのクラス1~9のグラフを足し合わせると、アクティビティSの全ユーザのプレイ時間とプレイヤ数との関係を示す分布曲線となる。なお各クラスに属するプレイヤ数は異なっていてよい。
 代表値決定部226は、アクティビティごとに、各クラスにおける複数のプレイヤのプレイ時間にもとづいて、各クラスにおけるプレイ時間の代表値を決定する。代表値決定部226は、各クラスの代表値として、各クラスにおける複数のプレイ時間の中央値を導出してよい。代表値決定部226は、各クラスにおけるプレイ時間の代表値(medN)を、以下のように決定する。
 クラス1 med1
 クラス2 med2
 クラス3 med3
 クラス4 med4
 クラス5 med5
 クラス6 med6
 クラス7 med7
 クラス8 med8
 クラス9 med9
 各クラスに対して決定されたプレイ時間の代表値は、まだアクティビティを実行していないユーザに対して、プレイの予想時間として提供されてよい。クラス4に属するユーザXが、まだアクティビティSを実行していない場合、サーバ装置5は、ユーザXに対して、アクティビティSをプレイしたときに予想されるプレイ時間が“med4”であることを通知できる。
 代表値決定部226は、全てのアクティビティについて、クラス1~9のそれぞれの代表値を決定し、クラスと代表値とを対応付けて代表値記録部258に記録する。実施形態において、代表値は中央値であるが、平均値または最頻値であってもよい。代表値決定部226は、定期的に、たとえば1日1回、代表値決定処理を実施してよい。以上が、実施形態におけるイベントデータの分析処理の説明である。
 情報提供部240は、情報処理装置10を操作しているユーザに対し、当該ユーザがまだ実行していないアクティビティの予想プレイ時間を通知する。具体的に情報提供部240は、当該ユーザのクラスに対応付けられたプレイ時間の代表値または当該代表値にもとづく時間を、予想プレイ時間として当該ユーザに通知する。情報提供部240は、任意のタイミングで、予想プレイ時間を通知してよい。
 クラス取得部242は、情報処理装置10を操作しているユーザが属するクラスをスキル値記録部256から取得する。たとえばユーザXが情報処理装置10にログインしたとき、クラス取得部242は、ログインしたユーザXが属するクラスを、スキル値記録部256から取得してよい。プレイ時間抽出部244は、ユーザXが実行可能なアクティビティに関して、ユーザXのクラスに対応付けられたプレイ時間の代表値を、代表値記録部258から抽出する。通知部246は、抽出したプレイ時間の代表値にもとづく予想プレイ時間に関する情報を、ユーザXの情報処理装置10に通知する。なおプレイ時間の代表値にもとづく予想プレイ時間は、プレイ時間の代表値そのものであってよいが、プレイ時間の代表値をわずかに調整した時間であってもよい。たとえばプレイ時間の代表値が、4.9分である場合、通知部246は、きりの良い時間(たとえば5分)を予想プレイ時間としてよい。通知部246は、複数のアクティビティの予想プレイ時間に関する情報を、ユーザXの情報処理装置10に通知してよい。
 情報処理装置10において、アクティビティ情報取得部150が、サーバ装置5から、アクティビティの予想プレイ時間に関する情報を取得する。表示処理部140は、アクティビティ情報取得部150が取得した情報を表示する。
 図10は、出力装置4に表示されるシステム画面の例を示す。表示処理部140は、アクティビティ情報取得部150が取得した情報からシステム画像180、182、184、186を生成し、出力装置4に表示する。4つのシステム画像180、182、184、186は、それぞれ異なるゲームタイトルのアクティビティの予想プレイ時間を表示する。これによりユーザXは、各アクティビティの予想プレイ時間から、どのゲームをプレイするか決定することができる。
 カード形式で表示されるシステム画像180、182、184、186は、GUI(グラフィカルユーザインタフェース)であってよく、たとえばユーザXがいずれかのシステム画像を選択すると、当該システム画像に対応するゲームが自動的に起動されてよい。
 以上の実施形態では、ゲームのスキルが高いユーザは、アクティビティを相対的に短いプレイ時間で完了し、一方、ゲームのスキルが低いユーザは、アクティビティを相対的に長いプレイ時間で完了することを前提に、スキル値導出部214が、直近の所定数のアクティビティについて導出したスキル値を平均化して、プレイヤスキル値を導出している。このプレイヤスキル値は、直近のゲームプレイに関するユーザのスキルを表現する。
 しかしながら、ゲームには様々な特徴をもつアクティビティが用意されている。1つのゲームタイトルにおいても、たとえば敵キャラクタを倒す、アイテムを探索する、落下せずにゴールに到達する、パズルを解くなど、異なる特徴をもつ様々なアクティビティが存在し、それぞれユーザに要求するスキルも異なる。そのため、戦闘系のクエストを得意とし、探索系のクエストを苦手とするユーザXが、直近で10個の戦闘系アクティビティを連続してプレイした場合、スキル値導出部214は、高いスキルを示すプレイヤスキル値を導出し、したがってユーザXは、レベルの高いクラスに振り分けられる。
 ユーザXに、まだプレイしていないアクティビティの予想プレイ時間を提示する際、プレイ時間抽出部244は、当該アクティビティに関し、ユーザXのクラスに対応付けられたプレイ時間の代表値を代表値記録部258から抽出する。ユーザXはレベルの高いクラスに振り分けられているため、プレイ時間抽出部244は、当該アクティビティに関し、スキルの高いプレイヤ向けのプレイ時間代表値を抽出する。このとき、当該アクティビティが戦闘系であれば問題ないが、当該アクティビティが探索系である場合は、ユーザXが探索系クエストを苦手としているにもかかわらず、スキルの高いプレイヤ向けのプレイ時間代表値が抽出されることになる。このためユーザXに対して、短すぎる予想プレイ時間が提示されることになり、ユーザXは、提示された予想プレイ時間内に探索系アクティビティを完了できない。
 そこで実施形態の統計処理部220は、複数のアクティビティを複数のプレイヤのプレイ傾向に応じてグループ分けする機能を有する。スキル値導出部214は、アクティビティのグループごとにプレイヤスキル値を導出し、クラス振分部224は、アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定する。したがってユーザXがまだプレイしていないアクティビティの予想プレイ時間を提示する際、プレイ時間抽出部244は、当該アクティビティが属するアクティビティグループを特定し、特定したアクティビティグループについて設定されたユーザのクラスを特定することで、ユーザのスキルにマッチした適切なプレイ時間の代表値を抽出できる。
 統計処理部220において、分類部228が、複数のアクティビティをグループ分けする機能をもつ。実施形態の分類部228は、自然言語を用いて複数のアクティビティをクラスタリングする機能と、スキル値導出部214が導出したスキル値を用いて複数のアクティビティをクラスタリングする機能とを備える。以下、2つのタイプのクラスタリング機能について説明する。
<自然言語ベースのクラスタリング機能>
 アクティビティデスクリプション記録部260は、ゲーム開発者が作成したアクティビティの説明文(デスクリプション)を記録する。アクティビティの説明文は、アクティビティの内容を自然言語で表現したものであり、通常、ユーザに提示される目的で用意される。そのため説明文は、「ボスPを倒す」、「パズルを解いてステージをクリアする」、「敵キャラクタを10体倒す」などのように、ユーザがアクティビティの内容を確認するためのテキストメッセージとして作成されている。
 分類部228は、複数のアクティビティのそれぞれに用意された説明文を、自然言語処理によりグループ分けする機能を備える。たとえば説明文が日本語の場合、分類部228は、形態素解析を行って説明文を単語単位で分割し、単語の出現回数を数えて、長さが語彙数となるベクトルを生成してよい。分類部228は、全ての説明文をベクトル化し、文章ベクトル同士の類似度を評価して、グループ分けを行う。分類部228は、たとえばSentence2vecを使用してアクティビティ説明文をベクトル化してよい。また文章の類似度を評価する手法は様々提案されており、分類部228は、クラスタリング手法として、K-means法を利用してもよい。
 以下、アクティビティA~Jの説明文の例を示す。
 アクティビティA:「ボスAを倒す」
 アクティビティB:「ボスBを倒す」
 アクティビティC:「ボスCを倒す」
 アクティビティD:「パズルDを解く」
 アクティビティE:「ボスEを倒す」
 アクティビティF:「キャラクタFを10体倒す」
 アクティビティG:「キャラクタGを5体倒す」
 アクティビティH:「パズルHを解く」
 アクティビティI:「キャラクタIを15体倒す」
 アクティビティJ:「パズルJを解く」
 アクティビティA~Jに関し、分類部228は自然言語処理を実施して、アクティビティA~C、E~G、Iと、アクティビティD、H、Jとを、異なるグループに振り分けてよい。つまり分類部228は、7個のアクティビティA~C、E~G、Iを第1グループに振り分け、3つのアクティビティD、H、Jを第2グループに振り分けてよい。以上のグループ分けは例示であり、分類部228は、自然言語処理により、複数のアクティビティを、3つ以上のグループに振り分けてよい。
 ゲームが多言語対応している場合、分類部228は、複数の言語のアクティビティ説明文を用いて、複数のアクティビティをグループ分けしてよい。ゲーム開発者が2つ以上の言語のアクティビティ説明文を作成している場合、分類部228は、各言語のアクティビティ説明文を自然言語処理してグループ分けを行い、各言語のアクティビティ説明文から導出されたグループ分けの結果を統計処理することで、複数のアクティビティのグループ分けの精度を向上させてもよい。
 なおゲーム開発者は、アクティビティIDを、自然言語的に生成することがある。たとえばアクティビティAのアクティビティIDを、"Defeat_A_boss"のように生成する場合である。説明文が用意されていないアクティビティが存在する場合、分類部228はアクティビティIDから、アクティビティ説明文に対応する自然言語を抽出して、クラスタリング処理に使用してもよい。分類部228は、複数のアクティビティをグループ分けした結果を、アクティビティグループ記録部262に記録する。アクティビティグループ記録部262には、各グループを特定する情報(グループ番号)に紐付けて、各グループに属するアクティビティのアクティビティIDが記録されてよい。
<スキル値ベースのクラスタリング機能>
 自然言語ベースのクラスタリング機能に加えて、分類部228は、スキル値導出部214が導出した複数のユーザのスキル値を用いて、複数のアクティビティをグループ分けする機能を備える。以下においては、グループ分け処理の代表的な機能の一つとして、グループを構成している複数のアクティビティから、仲間外れとなるアクティビティを探し出す処理について説明する。
 図11は、スキル値ベースのクラスタリング処理のフローチャートを示す。分類部228は、スキル値記録部256から、1つのグループに属する複数のアクティビティについて、複数のユーザに対して導出されたスキル値を取得する(S10)。分類部228は、所定のサンプリング数(たとえば1000人)のユーザをランダムに選択して、選択した所定数のユーザに対して導出されたスキル値を取得してよい。
 なおクラスタリング処理を実施する前の初期状態において、ゲームに含まれる全てのアクティビティはグループ分けされていないため、1つのグループに属している。したがって分類部228が最初にスキル値ベースのクラスタリング処理を実施する場合、全てのアクティビティについて、複数のユーザに対して導出されたスキル値を取得してよい。
 なお自然言語ベースのクラスタリング処理が既に実施されて、複数のアクティビティがグループ分けされている場合には、分類部228は、既に分類されている1つのグループに属する複数のアクティビティについて、複数のユーザに対して導出されたスキル値を取得する。この場合、分類部228は、自然言語ベースのクラスタリング機能を第1段階のグループ分けに利用し、スキル値ベースのクラスタリング機能を、第1段階で分類された各アクティビティグループの精度を高める第2段階のグループ分けに利用する。
 図12は、アクティビティグループ1に属する複数のアクティビティについて導出されたスキル値の例を示す。この例では、アクティビティグループ1が10個のアクティビティK~Tにより構成されており、アクティビティグループ記録部262は、アクティビティグループ1に紐付けて、アクティビティK~TのアクティビティIDを記録している。分類部228は、アクティビティグループ記録部262を参照して、アクティビティグループ1を構成するアクティビティK~Tを特定し、アクティビティK~TについてユーザA~Dに対して導出されたスキル値を、スキル値記録部256から読み出している。上記したように、グループ分けが実施されていない初期状態では、アクティビティグループ1は、ゲームに含まれる全てのアクティビティによって構成される。実際のクラスタリング処理では、分類部228は数百人以上のユーザのスキル値を用いて、スキル値ベースのクラスタリング処理を実施することが好ましい。
 図13は、複数のユーザについて導出されたプレイヤスキル値の例を示す。分類部228は、スキル値記録部256から、ユーザA~Dに対して導出されているプレイヤスキル値を取得する(S12)。プレイヤスキル値は、直近にプレイした所定数のアクティビティのスキル値を平均した値であり、最近のユーザのスキルを表現した指標としての意味をもつ。なお以上の説明では、プレイヤスキル値を、直近にプレイした10個のアクティビティのスキル値の平均として導出しているが、以下の説明においては、10個という数に拘らず、直近にプレイした所定数のアクティビティのスキル値を平均したものとして扱う。分類部228は、各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分(偏差)を算出し、その差分の絶対値を導出する(S14)。
 図14は、各アクティビティのスキル値とプレイヤスキル値との差分絶対値を示す。各アクティビティのスキル値は、そのアクティビティにおけるユーザのスキル(腕前)を表現し、プレイヤスキル値は、直近の所定数のアクティビティにおけるユーザの平均的なスキルを表現する。したがって、1つのアクティビティのスキル値とプレイヤスキル値の差分の絶対値が大きいことは、ユーザが、当該1つのアクティビティを、グループ内の他のアクティビティと比べて非常に上手くプレイしたか、または非常に下手にプレイしたかのいずれかを意味する。このことは、当該1つのアクティビティの性質ないしは特徴が、残りのアクティビティの性質ないしは特徴と異なることを推測させる材料となる。
 分類部228は、アクティビティごとに、複数の差分絶対値の平均(以下、単に「誤差平均値」とも言う)を算出する(S16)。図14に示す表の最下段に、アクティビティごとに算出された誤差平均値を示す。分類部228は、誤差平均値をもとに、グループから除外するアクティビティを特定する処理を実施する(S18)。グループ内に、除外するアクティビティがなければ(S18のN)、分類部228は、当該グループのクラスタリング処理を終了して、別のグループのクラスタリング処理を実施する。
 S18において、分類部228は、アクティビティグループ1に属する複数のアクティビティのうち、誤差平均値が相対的に大きいアクティビティを、アクティビティグループ1から除外する候補として特定する。具体的に分類部228は、誤差平均値が最も大きいアクティビティを除外候補として特定する。図14に示す表の最下段を参照すると、誤差平均値が最大となるアクティビティは、アクティビティNである。分類部228は、アクティビティNの誤差平均値を所定の閾値と比較し、誤差平均値が所定の閾値以下であれば、アクティビティNが当該グループ1に属することを判断する。所定の閾値は、たとえば2.0であってよい。ここで、アクティビティNの誤差平均値は3.15であるため、分類部228は、アクティビティNが、このグループ1から除外されるアクティビティであることを判定する(S18のY)。
 続いて分類部228は、アクティビティN以外に、このグループから除外されるべきアクティビティが存在するか否かを確認する。この確認のため、分類部228は、ユーザごとに、アクティビティNを除外したグループ1の重心(スキル値の平均)を算出する。
 図15は、ユーザAについてのグループ1の重心を算出する手法を説明するための図である。分類部228は、アクティビティNを除いた9個のアクティビティのスキル値の平均を、グループ1の重心として算出する。この例で、アクティビティNを除いたグループ1の重心は、3.56と算出される。一方、アクティビティNの重心はスキル値そのものであり、1である。
 図16は、複数のユーザについて算出されるグループ1の重心とアクティビティNの重心を示す。分類部228は、複数のユーザのそれぞれについて、アクティビティNを除いた9個のアクティビティのスキル値の平均を、グループ1の重心として算出する。
 それから分類部228は、9個のアクティビティK~M、O~Tのそれぞれのスキル値について、グループ1の重心からの距離と、アクティビティNの重心からの距離とを算出し(S20)、各アクティビティの重心が、どちらの重心に近いかを調査する(S22)。ここで、調査対象のアクティビティの重心がグループ1の重心に近いことは、当該アクティビティが、グループ1に近い性質を有することを示し、一方で、調査対象のアクティビティの重心が除外対象アクティビティ(アクティビティN)の重心に近いことは、調査対象のアクティビティが、グループ1よりも、アクティビティNが属するグループ(この時点では、アクティビティNのみが属している)に近い性質を有することを示す。
 以下に、分類部228が、9個のアクティビティのうち、差分絶対値が最も大きいアクティビティPの重心について調査した結果を示す。
 図17は、グループ1の重心との距離と、アクティビティNの重心との距離を比較した結果を示す。分類部228は、ユーザごとに、(アクティビティPの重心)と(アクティビティNを除外したグループ1の重心)との差分の絶対値と、(アクティビティPの重心)と(アクティビティNの重心)との差分の絶対値を算出し、それぞれの差分絶対値の平均を算出する。図17に示す表の最下段に、アクティビティPの重心とグループ1の重心との距離の平均と、アクティビティPの重心とアクティビティNの重心との距離の平均を示す。
 この調査結果から、アクティビティPの重心は、アクティビティNの重心よりも、グループ1の重心に近い位置にあることが分かる。したがって分類部228は、アクティビティPがグループ1に属することを判定する。分類部228は、この調査を、9個のアクティビティの全てについて実施して、グループ1よりもアクティビティNに近いアクティビティが存在するか否かを判定する(S22)。グループ1よりもアクティビティNに近いアクティビティが存在する場合(S22のY)、分類部228は、当該アクティビティを、グループ1から除外することを決定し、アクティビティNとともに、グループ1から除外する(S24)。一方、グループ1よりもアクティビティNに近いアクティビティが存在しなければ(S22のN)、分類部228は、アクティビティNのみが除外対象であることを決定して、アクティビティNを、グループ1から除外する(S24)。以上のようにして、分類部228は、グループ1における仲間はずれを特定し、グループ1を、個々のユーザによるプレイ傾向(プレイ時間)が類似するアクティビティの集合体とすることができる。
 分類部228は、アクティビティNをグループ1から除外することを決定した後、アクティビティNの新しい所属先となるグループを探索する。
 図18は、アクティビティグループ2に属する複数のアクティビティについて導出されたスキル値の例を示す。この例では、アクティビティグループ2が4個のアクティビティU~Xにより構成されており、アクティビティグループ記録部262は、アクティビティグループ2に紐付けて、アクティビティU~XのアクティビティIDを記録している。分類部228は、アクティビティグループ記録部262を参照して、アクティビティグループ2を構成するアクティビティU~Xを特定し、アクティビティU~XについてユーザA~Dに対して導出されたスキル値を、スキル値記録部256から読み出している。
 図19は、複数のユーザについて算出されるグループ1の重心とグループ2の重心を示す。分類部228は、複数のユーザA~Dのそれぞれについて、アクティビティNを除いたアクティビティグループ1のスキル値の平均を、グループ1の重心として算出する。このグループ1の重心は、図16に示したものと同じである。また分類部228は、複数のユーザA~Dのそれぞれについて、アクティビティグループ2のスキル値の平均を、グループ2の重心として算出する。
 図20は、アクティビティNの重心を示す。分類部228は、アクティビティNの重心が、グループ1の重心とグループ2の重心のいずれに近いか調査する。
 図21は、グループ1の重心との距離と、グループ2の重心との距離を比較した結果を示す。分類部228は、ユーザごとに、(アクティビティNの重心)と(アクティビティNを除外したグループ1の重心)との差分の絶対値と、(アクティビティNの重心)と(グループ2の重心)との差分の絶対値を算出し、それぞれの差分絶対値の平均を算出する。図21に示す表の最下段に、アクティビティNの重心とグループ1の重心との距離の平均と、アクティビティNの重心とグループ2の重心との距離の平均を示す。
 この調査結果から、アクティビティNの重心は、グループ1の重心よりも、グループ2の重心に近い位置にあることが分かる。このとき分類部228は、(アクティビティNの重心)と(グループ2の重心)との差分絶対値(距離)の平均が所定の閾値(たとえば1.5)以下であることを条件として、アクティビティNがグループ2に属することを判定する。この判定により、グループ2には、アクティビティNが追加される。
 分類部228は、絶対差分値の平均が所定の閾値より大きい場合に、他のグループについても調査する。全てのグループについて調査した結果、絶対差分値の平均が所定の閾値以下となるグループが存在しなければ、分類部228は、アクティビティNを含む新しいグループを作成してよい。分類部228は、グループ分けした結果を、アクティビティグループ記録部262に記録する。
 分類部228がグループ分けした時点では、グループ間の距離は所定値以上離れているが、イベントデータが蓄積されるにつれて、グループ間の距離が変動することが想定される。
 図22は、アクティビティグループ3に属する複数のアクティビティについて導出されたスキル値の例を示す。この例では、アクティビティグループ3が5個のアクティビティα~εにより構成されており、アクティビティグループ記録部262は、アクティビティグループ3に紐付けて、アクティビティα~εのアクティビティIDを記録している。分類部228は、アクティビティグループ記録部262を参照して、アクティビティグループ3を構成するアクティビティα~εを特定し、アクティビティα~εについてユーザA~Dに対して導出されたスキル値を、スキル値記録部256から読み出している。
 図23は、複数のユーザについて算出されるグループ1の重心とグループ3の重心を示す。分類部228は、複数のユーザA~Dのそれぞれについて、アクティビティNを除いたアクティビティグループ1のスキル値の平均を、グループ1の重心として算出する。また分類部228は、複数のユーザA~Dのそれぞれについて、アクティビティグループ3のスキル値の平均を、グループ3の重心として算出する。
 分類部228は、ユーザごとに、グループ1の重心とグループ3の重心の差分絶対値(距離)を算出し、差分絶対値の平均を求める。この差分絶対値の平均は、2つのグループの近さを表現する。分類部228は、差分絶対値の平均が所定の閾値(たとえば0.5)以下であることを条件として、2つのグループをマージしてよい。たとえば分類部228は、グループ3を消滅させて、グループ3に属していたアクティビティα~εを、グループ1に所属させるようにする。なお分類部228は、グループ1を消滅させて、グループ1に属していたアクティビティK~M、O~Tを、グループ3に所属させるようにしてもよい。分類部228は、グループ分けした最新の状態を、アクティビティグループ記録部262に記録する。
 分類部228が、スキル値ベースのクラスタリング処理を定期的に実施することで、複数のアクティビティを高精度にグループ分けすることができる。分類部228が、最初に自然言語ベースのクラスタリング機能を用いてグループ分けを行い、スキル値ベースのクラスタリング機能を、自然言語ベースのクラスタリング機能により生成された各アクティビティグループの精度を高めるために利用することで、複数のアクティビティグループを迅速且つ高精度に生成することが可能となる。
 図24は、複数のアクティビティが分類されるグループのイメージ図である。この例では、分類部228により、複数のアクティビティが4つのグループに分類されている。(グループ3はグループ1に吸収されたため、消滅している)。分類部228によるグループ化処理は、ユーザ個々のプレイ傾向(プレイ時間)を反映するため、たとえばグループ1には、戦闘系のアクティビティが多く含まれ、グループ2には、探索系のアクティビティが多く含まれるような状況が成立する。
 実施形態において、スキル値導出部214は、アクティビティグループごとにプレイヤスキル値を導出し、クラス振分部224は、アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、ユーザのクラスをアクティビティグループごとに設定する。したがってユーザXがまだプレイしていないアクティビティの予想プレイ時間を提示する際、プレイ時間抽出部244は、当該アクティビティが属するアクティビティグループを特定し、特定したアクティビティグループについて設定されたユーザのクラスを特定することで、ユーザのスキルにマッチした適切なプレイ時間の代表値を抽出できる。
 以上、本開示を実施形態をもとに説明した。この実施形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本開示の範囲にあることは当業者に理解されるところである。実施形態では、1つのゲームタイトルにおいて、複数のアクティビティをクラスタリング処理する例を示したが、複数のゲームタイトルにまたがって複数のアクティビティをクラスタリング処理することも可能である。
 本開示は、以下の態様を含んでよい。
[項目1]
 ユーザのゲームプレイに関するスキル値を導出するサーバ装置であって、ハードウェアを有する1つ以上のプロセッサを備え、
 前記1つ以上のプロセッサは、
 複数のアクティビティをグループ分けし、
 アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得し、
 取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成し、
 ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出し、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する、
 サーバ装置。
[項目2]
 前記1つ以上のプロセッサは、
 各アクティビティグループに属する複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのプレイヤスキル値を導出する、
 項目1に記載のサーバ装置。
[項目3]
 前記1つ以上のプロセッサは、
 各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出し、アクティビティごとに算出した複数の前記差分にもとづいて、複数のアクティビティをグループ分けする、
 項目1に記載のサーバ装置。
[項目4]
 前記1つ以上のプロセッサは、
 アクティビティごとに算出した複数の前記差分の絶対値にもとづいて、複数のアクティビティをグループ分けする、
 項目3に記載のサーバ装置。
[項目5]
 前記1つ以上のプロセッサは、
 1つのグループにおけるアクティビティのうち、前記差分の絶対値が相対的に大きいアクティビティを、当該グループから除外する、
 項目4に記載のサーバ装置。
[項目6]
 複数のアクティビティをグループ分けするサーバ装置であって、ハードウェアを有する1つ以上のプロセッサを備え、
 前記1つ以上のプロセッサは、
 アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得し、
 取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成し、
 ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出し、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するプレイヤスキル値を導出し、
 各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出し、
 アクティビティごとに算出した複数の前記差分にもとづいて、複数のアクティビティをグループ分けする、
 サーバ装置。
[項目7]
 予想プレイ時間に関する情報をユーザに提供するサーバ装置であって、ハードウェアを有する1つ以上のプロセッサを備え、
 前記1つ以上のプロセッサは、
 複数のアクティビティをグループ分けし、
 ユーザがプレイしたアクティビティについてのユーザのスキル値を導出し、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出し、
 アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定し、
 ユーザのクラスに対応付けられる予想プレイ時間に関する情報をユーザに通知する、
 するサーバ装置。
[項目8]
 ユーザのゲームプレイに関するスキル値を導出する方法であって、
 アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得し、
 取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成し、
 ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出し、
 複数のアクティビティをグループ分けし、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する、
 スキル値導出方法。
[項目9]
 複数のアクティビティをグループ分けする方法であって、
 アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得し、
 取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成し、
 ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出し、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するプレイヤスキル値を導出し、
 各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出し、
 アクティビティごとに算出した複数の前記差分にもとづいて、複数のアクティビティをグループ分けする、
 グループ分け方法。
[項目10]
 予想プレイ時間に関する情報をユーザに提供する方法であって、
 複数のアクティビティをグループ分けし、
 ユーザがプレイしたアクティビティについてのユーザのスキル値を導出し、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出し、
 アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定し、
 ユーザのクラスに対応付けられる予想プレイ時間に関する情報をユーザに通知する、
 情報提供方法。
[項目11]
 コンピュータに、
 アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得する機能と、
 取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する機能と、
 ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出する機能と、
 複数のアクティビティをグループ分けする機能と、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する機能と、
 を実現させるためのプログラムを記録した記録媒体。
[項目12]
 コンピュータに、
 アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得する機能と、
 取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する機能と、
 ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出する機能と、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するプレイヤスキル値を導出する機能と、
 各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出する機能と、
 アクティビティごとに算出した複数の前記差分にもとづいて、複数のアクティビティをグループ分けする機能と、
 を実現させるためのプログラムを記録した記録媒体。
[項目13]
 コンピュータに、
 複数のアクティビティをグループ分けする機能と、
 ユーザがプレイしたアクティビティについてのユーザのスキル値を導出する機能と、
 複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する機能と、
 アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定する機能と、
 ユーザのクラスに対応付けられる予想プレイ時間に関する情報をユーザに通知する機能と、
 を実現させるためのプログラムを記録した記録媒体。
 本開示は、ユーザが実行したゲームアクティビティに関するイベントデータを処理する技術分野に利用できる。
1・・・情報処理システム、5・・・サーバ装置、10・・・情報処理装置、100・・・処理部、102・・・通信部、110・・・ゲームソフトウェア、120・・・イベント情報取得部、122・・・イベントデータ送信部、130・・・ゲーム画像生成部、140・・・表示処理部、150・・・アクティビティ情報取得部、200・・・処理部、202・・・通信部、210・・・イベントデータ取得部、212・・・プレイ時間取得部、214・・・スキル値導出部、220・・・統計処理部、222・・・分布生成部、224・・・クラス振分部、226・・・代表値決定部、228・・・分類部、240・・・情報提供部、242・・・クラス取得部、244・・・プレイ時間抽出部、246・・・通知部、250・・・イベントデータ記録部、252・・・プレイ時間記録部、254・・・プレイ時間分布記録部、256・・・スキル値記録部、258・・・代表値記録部、260・・・アクティビティデスクリプション記録部、262・・・アクティビティグループ記録部。

Claims (13)

  1.  ユーザのゲームプレイに関するスキル値を導出するサーバ装置であって、
     複数のユーザにより実行されたアクティビティに関するイベントデータを記録するイベントデータ記録部と、
     前記イベントデータ記録部に記録された、アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得するプレイ時間取得部と、
     取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する統計処理部と、
     ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出するスキル値導出部と、
     複数のアクティビティをグループ分けする分類部と、を備え、
     前記スキル値導出部は、複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する、
     ことを特徴とするサーバ装置。
  2.  前記スキル値導出部は、各アクティビティグループに属する複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのプレイヤスキル値を導出する、
     ことを特徴とする請求項1に記載のサーバ装置。
  3.  前記分類部は、各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出し、アクティビティごとに算出した複数の前記差分にもとづいて、複数のアクティビティをグループ分けする、
     ことを特徴とする請求項1に記載のサーバ装置。
  4.  前記分類部は、アクティビティごとに算出した複数の前記差分の絶対値にもとづいて、複数のアクティビティをグループ分けする、
     ことを特徴とする請求項3に記載のサーバ装置。
  5.  前記分類部は、1つのグループにおけるアクティビティのうち、前記差分の絶対値が相対的に大きいアクティビティを、当該グループから除外する、
     ことを特徴とする請求項4に記載のサーバ装置。
  6.  複数のアクティビティをグループ分けするサーバ装置であって、
     複数のユーザにより実行されたアクティビティに関するイベントデータを記録するイベントデータ記録部と、
     前記イベントデータ記録部に記録された、アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得するプレイ時間取得部と、
     取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する統計処理部と、
     ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出するスキル値導出部と、
     複数のアクティビティをグループ分けする分類部と、を備え、
     前記スキル値導出部は、複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するプレイヤスキル値を導出し、
     前記分類部は、各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出し、アクティビティごとに算出した複数の前記差分にもとづいて、複数のアクティビティをグループ分けする、
     ことを特徴とするサーバ装置。
  7.  予想プレイ時間に関する情報をユーザに提供するサーバ装置であって、
     複数のアクティビティをグループ分けする分類部と、
     ユーザがプレイしたアクティビティについてのユーザのスキル値を導出するスキル値導出部と、を備え、前記スキル値導出部は、複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出し、
     アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定するクラス振分部と、
     ユーザのクラスに対応付けられる予想プレイ時間に関する情報をユーザに通知する通知部と、をさらに備える、
     ことを特徴とするサーバ装置。
  8.  ユーザのゲームプレイに関するスキル値を導出する方法であって、
     アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得するステップと、
     取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成するステップと、
     ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出するステップと、
     複数のアクティビティをグループ分けするステップと、
     複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出するステップと、
     を有するスキル値導出方法。
  9.  複数のアクティビティをグループ分けする方法であって、
     アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得するステップと、
     取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成するステップと、
     ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出するステップと、
     複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するプレイヤスキル値を導出するステップと、
     各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出するステップと、
     アクティビティごとに算出した複数の前記差分にもとづいて、複数のアクティビティをグループ分けするステップと、
     を有するグループ分け方法。
  10.  予想プレイ時間に関する情報をユーザに提供する方法であって、
     複数のアクティビティをグループ分けするステップと、
     ユーザがプレイしたアクティビティについてのユーザのスキル値を導出するステップと、
     複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出するステップと、
     アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定するステップと、
     ユーザのクラスに対応付けられる予想プレイ時間に関する情報をユーザに通知するステップと、
     を有する情報提供方法。
  11.  コンピュータに、
     アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得する機能と、
     取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する機能と、
     ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出する機能と、
     複数のアクティビティをグループ分けする機能と、
     複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する機能と、
     を実現させるためのプログラム。
  12.  コンピュータに、
     アクティビティの開始を示すイベントデータと、アクティビティの終了を示すイベントデータから、複数のユーザの当該アクティビティのプレイ時間を取得する機能と、
     取得した複数のプレイ時間にもとづいて、アクティビティごとにプレイ時間の分布を生成する機能と、
     ユーザによるアクティビティのプレイ時間と、当該アクティビティのプレイ時間の分布とにもとづいて、当該アクティビティについてのユーザのスキル値を導出する機能と、
     複数のアクティビティについて導出した複数のスキル値にもとづいて、ユーザのゲームプレイに関するプレイヤスキル値を導出する機能と、
     各アクティビティについて導出した複数のユーザのスキル値と、当該複数のユーザのプレイヤスキル値との差分を算出する機能と、
     アクティビティごとに算出した複数の前記差分にもとづいて、複数のアクティビティをグループ分けする機能と、
     を実現させるためのプログラム。
  13.  コンピュータに、
     複数のアクティビティをグループ分けする機能と、
     ユーザがプレイしたアクティビティについてのユーザのスキル値を導出する機能と、
     複数のアクティビティについて導出した複数のスキル値にもとづいて、アクティビティグループごとに、ユーザのゲームプレイに関するプレイヤスキル値を導出する機能と、
     アクティビティグループごとに導出されるプレイヤスキル値にもとづいて、アクティビティグループごとにユーザのクラスを設定する機能と、
     ユーザのクラスに対応付けられる予想プレイ時間に関する情報をユーザに通知する機能と、
     を実現させるためのプログラム。
PCT/JP2023/002820 2022-03-14 2023-01-30 サーバ装置、スキル値導出方法、グループ分け方法および情報提供方法 WO2023176171A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022039353 2022-03-14
JP2022-039353 2022-03-14

Publications (1)

Publication Number Publication Date
WO2023176171A1 true WO2023176171A1 (ja) 2023-09-21

Family

ID=88022773

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/002820 WO2023176171A1 (ja) 2022-03-14 2023-01-30 サーバ装置、スキル値導出方法、グループ分け方法および情報提供方法

Country Status (1)

Country Link
WO (1) WO2023176171A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010154931A (ja) * 2008-12-26 2010-07-15 Namco Bandai Games Inc プログラム、情報記憶媒体及びゲームシステム
JP2011218102A (ja) * 2010-04-14 2011-11-04 Sony Computer Entertainment Inc ゲーム支援サーバ、ゲーム装置、ゲーム支援システム及びゲーム支援方法
US20210146261A1 (en) * 2019-11-18 2021-05-20 Sony Interactive Entertainment Inc. Server-based individual playtime estimation for game activity
WO2022080177A1 (ja) * 2020-10-12 2022-04-21 株式会社ソニー・インタラクティブエンタテインメント サーバ装置、スキル値導出方法および情報処理装置
WO2022080176A1 (ja) * 2020-10-12 2022-04-21 株式会社ソニー・インタラクティブエンタテインメント サーバ装置およびイベントデータ処理方法
WO2022080178A1 (ja) * 2020-10-12 2022-04-21 株式会社ソニー・インタラクティブエンタテインメント サーバ装置、イベントデータ処理方法および情報処理装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010154931A (ja) * 2008-12-26 2010-07-15 Namco Bandai Games Inc プログラム、情報記憶媒体及びゲームシステム
JP2011218102A (ja) * 2010-04-14 2011-11-04 Sony Computer Entertainment Inc ゲーム支援サーバ、ゲーム装置、ゲーム支援システム及びゲーム支援方法
US20210146261A1 (en) * 2019-11-18 2021-05-20 Sony Interactive Entertainment Inc. Server-based individual playtime estimation for game activity
WO2022080177A1 (ja) * 2020-10-12 2022-04-21 株式会社ソニー・インタラクティブエンタテインメント サーバ装置、スキル値導出方法および情報処理装置
WO2022080176A1 (ja) * 2020-10-12 2022-04-21 株式会社ソニー・インタラクティブエンタテインメント サーバ装置およびイベントデータ処理方法
WO2022080178A1 (ja) * 2020-10-12 2022-04-21 株式会社ソニー・インタラクティブエンタテインメント サーバ装置、イベントデータ処理方法および情報処理装置

Similar Documents

Publication Publication Date Title
US11093802B2 (en) Method and apparatus for categorizing images of mobile device software
US20110202530A1 (en) Information processing device, method and program
US20150217198A1 (en) Player model
CN104144731A (zh) 游戏系统、游戏装置、游戏控制方法、以及程序
JP2021037060A (ja) 所定のゲームを提供するためのシステム、方法、及びプログラム、並びに、デッキの分類を作成するための方法
WO2023176171A1 (ja) サーバ装置、スキル値導出方法、グループ分け方法および情報提供方法
JP7365313B2 (ja) サーバ装置、スキル値導出方法および情報処理装置
JP7365312B2 (ja) サーバ装置、イベントデータ処理方法および情報処理装置
JP7365314B2 (ja) サーバ装置、イベントデータ処理方法および情報処理装置
US11040280B2 (en) Game processing method and information processing device
JP7194509B2 (ja) サーバシステム、ゲームシステムおよびマッチング処理方法
CN106470743B (zh) 游戏系统、用于该游戏系统的控制方法
JP2023181652A (ja) サーバ装置、情報処理装置および情報提供方法
JP6911258B2 (ja) スポーツゲームの選手のポジションおよびトレーナーに対する自動推奨を利用したチーム管理方法およびシステム
CN110574066B (zh) 服务器装置以及记录介质
JP7449835B2 (ja) 情報処理装置、情報表示方法およびサーバ装置
JP6252659B2 (ja) 情報処理装置及びゲームプログラム
JP2023182124A (ja) サーバ装置、情報処理装置および情報提供方法
US20240001235A1 (en) Server device and information providing method
WO2023199819A1 (ja) 形勢評価装置、形勢評価方法、およびプログラム
US20240024770A1 (en) Server device, information processing device, and information providing method
JP2021111123A (ja) 情報処理装置、情報処理方法及びプログラム
KR20220117980A (ko) 게임 플레이어의 군집화 방법
CN113975820A (zh) 一种数据分析方法、装置、计算机设备以及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23770133

Country of ref document: EP

Kind code of ref document: A1