WO2015029512A1 - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
WO2015029512A1
WO2015029512A1 PCT/JP2014/063516 JP2014063516W WO2015029512A1 WO 2015029512 A1 WO2015029512 A1 WO 2015029512A1 JP 2014063516 W JP2014063516 W JP 2014063516W WO 2015029512 A1 WO2015029512 A1 WO 2015029512A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
users
target
evaluation value
user group
Prior art date
Application number
PCT/JP2014/063516
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 株式会社ソニー・コンピュータエンタテインメント
Priority to CN201480047046.7A priority Critical patent/CN105474254A/zh
Priority to JP2015534026A priority patent/JP6313310B2/ja
Priority to EP14840286.0A priority patent/EP3043311B1/en
Priority to US14/912,552 priority patent/US20160199739A1/en
Publication of WO2015029512A1 publication Critical patent/WO2015029512A1/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/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/795Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for finding other players; for building a team; for providing a buddy list
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
    • 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/45Controlling the progress of the video game
    • A63F13/46Computing the game score
    • 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/45Controlling the progress of the video game
    • A63F13/47Controlling the progress of the video game involving branching, e.g. choosing one of several possible scenarios at a given point in time
    • 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 invention relates to an information processing apparatus, an information processing method, a program, and an information storage medium that evaluate an action performed between a plurality of users or user groups.
  • a technique called an Elo rating system used in chess or the like evaluates the strength of each player as follows. That is, each player has a score (rate), and when the players play against each other, the losing player loses the score, and the winning player acquires the same number of points. At this time, the number of points to move from the losing player to the winning player changes according to the rate difference before the battle between the two. Specifically, if you win a player with a lower rate than you (that is, a player who is lower than you), you get a small score, but if you win a player with a higher rate than you (a player with a higher rating) Can get a big score. If the players repeat the battle in this way, each player will get a rate that matches the ability, so by comparing the rates, it is possible to evaluate the ability difference even between players who have never directly competed become.
  • the present invention has been made in consideration of the above circumstances, and one of its purposes is to evaluate users and user groups based on the results of actions performed between users or user groups by a novel method.
  • An information processing apparatus, an information processing method, a program, and an information storage medium are provided.
  • An information processing apparatus includes, for a plurality of users or user groups, an action result acquisition unit that acquires action result data indicating a result of actions performed between the plurality of users or user groups, and the plurality of users.
  • a starting point selection process for randomly selecting one user or user group as a target from among user groups, and the action performed by the user or user group selected as the current target based on the action result data.
  • a plurality of users or users are executed by executing a plurality of trace processes including a target selection process that repeats a process of newly selecting a partner user or a partner user group as a next target as a next target until a predetermined condition is satisfied.
  • the user or user group in the tracing process several times, characterized in that it comprises an evaluation value calculation unit for calculating an evaluation value of the user or user group according to the number chosen as a target, a.
  • An information processing method includes, for a plurality of users or user groups, obtaining action result data indicating a result of actions performed between the plurality of users or user groups, and the plurality of users or user groups.
  • a starting point selection process that randomly selects one user or user group as a target from among user groups, and a user who is selected as a current target based on the action result data or a partner of actions performed by the user group
  • the plurality of users or user groups are executed a plurality of times by performing a trace process including a target selection process that repeats the process of newly selecting the other user or the other user group as the next target until a predetermined condition is satisfied.
  • the user or user group in the tracing process several times, characterized in that it comprises a step of calculating an evaluation value of the user or user group according to the number chosen as a target, a.
  • the program according to the present invention includes, for a plurality of users or user groups, an action result acquisition unit that acquires action result data indicating a result of actions performed between the plurality of users or user groups, and the plurality of the plurality of users or user groups.
  • a starting point selection process for randomly selecting one user or user group as a target from among users or user groups, and an action performed by the user or user group selected as the current target based on the action result data A process of newly selecting a partner user or a partner user group that is a partner of the partner as a next target, a target selection process that is repeated until a predetermined condition is satisfied, and a plurality of trace processes including a plurality of users or For each user group A program for causing a computer to function as an evaluation value calculation unit that calculates an evaluation value of the user or user group according to the number of times the user or user group is selected as a target in the plurality of times of the trace processing. .
  • This program may be stored in a computer-readable information storage medium.
  • FIG. 1 is an overall configuration diagram of an information processing system according to an embodiment of the present invention. It is a functional block diagram of an information processor concerning an embodiment of the invention. It is a graph which shows an example of the contents of action result data. It is a flowchart which shows the flow of a trace process. It is a figure which shows the example of a display of ranking information. It is a figure which shows the example of a display of an opponent candidate.
  • FIG. 1 is a configuration diagram of an information processing system 1 including an information processing apparatus according to an embodiment of the present invention.
  • the information processing system 1 includes an aggregation server 2, a plurality of user terminals 3, and a game server 4.
  • the user terminal 3 is a terminal device used by a user who participates in the game platform realized by the information processing system 1 and may be, for example, a home game machine, a portable game machine, a smartphone, a personal computer, or the like.
  • Each user terminal 3 includes an operation device used by the user for operation input, and a display screen for displaying various information.
  • the aggregation server 2 is a specific example of the information processing apparatus according to the embodiment of the present invention, and includes a control unit 11, a storage unit 12, and a communication unit 13, as shown in FIG. Yes.
  • the control unit 11 is a CPU or the like, and performs various types of information processing according to programs stored in the storage unit 12.
  • the storage unit 12 includes a memory element such as a RAM, and stores a program executed by the control unit 11 and data to be processed by the program.
  • the communication unit 13 is a communication interface such as a LAN card, and the aggregation server 2 transmits / receives data to / from each of the plurality of user terminals 3 and the game server 4 via the communication unit 13.
  • the game server 4 is a server computer that provides a play function for a competitive game, and executes a process of a game played by the user of each user terminal 3.
  • each user can play a game provided by the game server 4 via the user terminal 3 and can play against other users.
  • the game server 4 transmits action result data indicating the result of the battle play to the counting server 2.
  • the aggregation server 2 is functionally configured to include an action result acquisition unit 21, an evaluation value calculation unit 22, and an evaluation information providing unit 23. These functions are realized when the control unit 11 executes a program stored in the storage unit 12. This program may be stored in various information storage media such as an optical disk and provided to the aggregation server 2, or may be provided to the aggregation server 2 via a communication network such as the Internet.
  • the behavior result acquisition unit 21 acquires behavior result data indicating a result of a behavior performed between users.
  • the action result data since the action between the users to be evaluated is a game match, the action result data includes information indicating the result of the game match performed between the users. Such information is acquired from the game server 4.
  • the action result data includes at least information for identifying the two users for each combination of the two users who actually played the game, and information indicating which of the results of the match has won.
  • the information included in the action result data constitutes a directed graph in which the user is a node and the battle is an edge (link).
  • the action result data may include information related to the result of a battle other than winning or losing, such as a score of a battle performed between users. Further, information regarding the characteristics of the game played (eg, easy mode or hard mode) may be included.
  • the action result acquisition unit 21 may acquire information obtained by counting the wins and losses of the plurality of matches as action result data. For example, when the user A battles with the user B five times and leaves a score of 3 wins and 2 losses, the action result acquisition unit 21 may acquire information indicating the result of 3 wins and 2 losses (win rate 60%). . Or when the score of each battle
  • the action result acquisition unit 21 may acquire information indicating the score of 4 to 6 Good. Moreover, you may acquire the information which combined both.
  • the action result acquisition unit 21 may acquire the totaled action result data by calculating the competition results by itself, or may acquire the already calculated action result data from the game server 4. .
  • the evaluation value calculation unit 22 analyzes the action result data acquired by the action result acquisition unit 21, thereby executing an evaluation value calculation process for calculating an evaluation value of each of a plurality of users who use the information processing system 1.
  • This evaluation value is an index value indicating how strong each user is in the game.
  • the evaluation value calculation process in the present embodiment is based on a kind of random method (Monte Carlo method), and statistically evaluates each user by executing a trial using a random number (hereinafter referred to as a trace process) a plurality of times. Calculate the value. Therefore, even if the evaluation value calculation process is performed a plurality of times on the same action result data, the same result is not always obtained. However, the accuracy of analysis can be improved by performing a sufficient number of trials. A specific example of the evaluation value calculation process will be described later.
  • the evaluation information providing unit 23 transmits various information based on the evaluation value calculated by the evaluation value calculating unit 22 to the requesting user terminal 3 in response to a request from the user terminal 3.
  • the requesting user terminal 3 can display various information related to the user's strength, such as user ranking information, on the screen and provide the information to the user.
  • FIG. 3 is a directed graph showing the battle results of these four users. Edges (arrows) in FIG. 3 connect users who have actually competed, and represent users who have won the user indicated by the arrow.
  • the user A has lost against both the users B and C, and the user D has won against the user B.
  • the user A and the user D, the user B and the user C, and the user C and the user D do not face each other directly.
  • one random tracer moves on a directed graph as shown in FIG. 3 according to a predetermined rule. More specifically, the random tracer newly selects one of the users who has won the selected user from the node of one of the randomly selected users (hereinafter referred to as the “originating user”) ( That is, it moves on the graph in order (along the arrow of the directed graph). As will be described later, the movement of the random tracer is ended when there is no destination node or a predetermined end condition is satisfied.
  • the movement of a random tracer from one node to the next node on the directed graph is expressed as a hop.
  • a user corresponding to the node to which the random tracer is moved is called a target user.
  • One trace process corresponds to a series of processes in which one random tracer departs from the origin user's node, performs several hops, and determines a movement route until the movement on the graph is completed.
  • the evaluation value calculation part 22 adds an evaluation value with respect to each target user which exists on the path
  • the random tracer selects a user who has won the target user (that is, a user stronger than the target user) as a new target user, the stronger user is selected as the target user many times. Therefore, the evaluation value corresponding to the number of times the random tracer passes represents the strength of the user.
  • the evaluation value calculation unit 22 selects the first target user (starting user) serving as the starting point of the random tracer (S1). This starting user is randomly selected from all users included in the action result data. That is, all users have a chance to be selected equally as starting users.
  • starting user serving as the starting point of the random tracer
  • This starting user is randomly selected from all users included in the action result data. That is, all users have a chance to be selected equally as starting users.
  • user A is selected as a starting user from among four users.
  • the evaluation value calculation unit 22 adds 1 point to the evaluation value of the selected starting user (here, user A) (S2).
  • the evaluation value calculation unit 22 determines whether there is a user (winning user) who has a history of winning against the target user (S3). If it is determined in S3 that the winning user does not exist, the next movement destination of the random tracer does not exist, so the evaluation value calculation unit 22 ends the tracing process. On the other hand, if there is a winning user, the evaluation value calculation unit 22 selects one user as the next target user from the winning users based on a predetermined rule (S4). For example, when the target user is the user A, according to the action result data, the user B and the user C win the user A as shown in FIG. Therefore, the evaluation value calculation unit 22 selects one of these two winning users as the next target user. Specifically, for example, the evaluation value calculation unit 22 may randomly select the next target user. In this case, both users B and C are selected as the next target users with a probability of 50%.
  • the evaluation value calculation unit 22 determines whether the user's node selected in S4 actually hops the random tracer or ends the movement of the random tracer based on a predetermined end condition (S5). Specifically, the evaluation value calculation unit 22 continues the movement of the random tracer based on a certain probability. For example, the evaluation value calculation unit 22 hops the random tracer to the next destination with a probability of 85%, and ends the hop of the random tracer with a probability of 15%. The reason why such a process is introduced is to avoid a situation in which a random tracer keeps moving infinitely between a plurality of users who have a relationship such as a three-way mechanism of Janken.
  • the evaluation value calculation unit 22 unconditionally terminates further movement of the random tracer that has repeated a certain number of hops from the starting user's node. Also good. Alternatively, as the number of hops of the random tracer increases, the probability of terminating the movement of the random tracer may be increased in the determination of S5. In addition, when a node once passed by one random tracer is selected again, the movement path is looped, and the movement of the random tracer may be terminated there. Alternatively, when one random tracer selects the same user as the target user a predetermined number of times, the movement of the random tracer may be terminated.
  • the evaluation value calculation unit 22 actually hops the random tracer to the node of the next target user selected in S4, and adds 1 point to the evaluation value of the user. Add (S6).
  • the evaluation value may be added only for the first time and the evaluation value may not be added for the second and subsequent times. Thereafter, the evaluation value calculation unit 22 returns to S3 and continues the process of hopping the random tracer to the next destination. For example, it is assumed that one random tracer selects the user A as a starting user, the user B, and the user D as target users in order by the tracing process described above, and ends the movement there. In that case, one evaluation value is added to each of the three users A, B, and D.
  • the evaluation value calculation unit 22 repeatedly executes the trace processing shown in the flow of FIG. 4 for N random tracers.
  • the evaluation value accumulated for each user as a result of the N times of trace processing is used as an index indicating the strength of each user.
  • the evaluation value since the user A has not won anybody, the evaluation value is added only when the user A is selected as the starting user.
  • the evaluation values may be added to the users B and C not only when they are selected as the starting user but also when the user A is selected as the starting user.
  • the evaluation value may be added when each of the users A and B is selected as the origin user. For this reason, when the trace processing is repeatedly performed a sufficient number of times, the evaluation values of the users B and C are higher than those of the user A, and the user D is higher than the user C.
  • the magnitude relationship of the evaluation values reflects the actual battle results between users.
  • the number N of trace processes executed in one evaluation value calculation process is determined according to the total number of users, for example.
  • the evaluation value calculation unit 22 may use an evaluation value normalized by the number of executions N of the trace processing for user evaluation.
  • the final evaluation value is calculated by dividing the evaluation value obtained for each user as the total of N times of the trace processing by N.
  • the evaluation value calculation process is executed using the action result data indicating the battle history so far every day, the number of executions N of the trace process between the previous day's evaluation value calculation process and today's evaluation value calculation process. Even if they are different, the evaluation value obtained the previous day can be compared with the evaluation value obtained today. Therefore, it is not necessary to execute the same number of times of trace processing every time.
  • the number of executions N of the trace process can be changed according to the processing load and the required time.
  • the evaluation value may be normalized by the cumulative number of hops in all N times of trace processing. Since the cumulative number of hops coincides with the cumulative number of points added to all users, normalization can be performed so that the total evaluation value of all users becomes 1.0 by using this numerical value. .
  • the evaluation value calculation unit 22 executes the evaluation value calculation process at a certain point in time, with the action result data related to the past user behavior accumulated up to that point as a processing target. According to such a method, it is possible to avoid some problems that occur in a method such as ilo rating in which a rate is exchanged every time a battle is performed. For example, in ilo rating, it is known that when three users having the same ability compete, there is an order effect that a difference occurs in the ratings of the three persons depending on the order of the fight. Since this is a problem that occurs due to the exchange of rates each time a battle is performed, the evaluation value of the present embodiment in which analysis is performed using action result data after a plurality of battles are performed It does not occur in the calculation process.
  • a local problem may also occur.
  • a plurality of players belonging to a certain group A compete with each other, and a rating corresponding to the result is given to each.
  • a plurality of players belonging to another grape B are also in the group B.
  • a rating is given based on the match result.
  • the result of the battle is reflected in the ratings of the players A1 and B1 who directly faced each other. It will not be reflected in other players who belong to it.
  • This problem also does not occur in the evaluation value calculation process of the present embodiment in which analysis is performed on a directed graph that reflects all the results of battles within and between groups.
  • the evaluation value calculation unit 22 selects the next target user with an equal probability, but the evaluation value calculation unit 22
  • the next target user may be selected according to the information on the competition results indicating how each winning user has won against the target user. Specifically, the probability of selecting each winning user is determined so as to increase the probability of moving to the winning user estimated to be stronger in consideration of the winning rate and the difference in points. Then, the next target user is determined by a random number according to the determined probability.
  • the score difference is Accordingly, the user B is selected as the next target user of the user A with the probability of 6/7 and the user C with the probability of 1/7.
  • the user B may be selected with a probability of 7/9 and the user C may be selected with a probability of 2/9, paying attention only to the number of points acquired.
  • user B wins three times against user A and user C wins two times against user A user B has a probability of 3/5 and user C has a probability of 2/5. select.
  • a random tracer can be used to increase the rating value of those users who are estimated to be relatively stronger in relation to User A. You can hop.
  • the evaluation value calculation unit 22 may determine which user is to be the next target user and whether to move the random tracer to the next target user according to the number of wins or losses.
  • the match score of user A vs. user B is 2 wins and 4 losses (user B wins over)
  • the match score of user A vs. user C is 2 wins and 2 losses (match).
  • the movement of the random tracer is terminated without causing any user to hop with a probability of 4/10 corresponding to the total number of wins 4 of the user A.
  • the competition results of the user A vs. the user C are a total draw, but since the user C wins the user A twice, the user A may hop to the user C.
  • user A is defeating user B, he has two wins over user B, so user B may hop to user A. Note that the same processing may be performed not on the number of wins and losses but on the total score.
  • the evaluation value calculation unit 22 may evaluate the reliability of the battle history and select the next destination of the random tracer using the evaluation result. Even if the number of wins for user A by user B is greater than the number of wins for user A by user C, if the absolute sample number is small, such a match result may have been obtained by chance, Data reliability is low compared to the case with a large number of samples. For this reason, in selecting a destination to move the random tracer according to the number of wins, if the total number of wins is small, the probability is randomly changed. As a specific example, when the user B wins the user A and the user C wins the user A, the win ratio is 1: 2.
  • 1/3 The user B is selected with a probability of 2 and the user C is selected with a probability of 2/3.
  • the win ratio is also 1: 2, so either user B or C can be Will choose.
  • the evaluation value calculation unit 22 randomly varies the probability in consideration of the reliability, and selects the user B with the probability of 1/3 + ⁇ and the user C with the probability of 2 / 3 ⁇ . .
  • is a numerical value determined at random according to the reliability of the action result data, and can take a positive or negative value centering on 0.
  • the evaluation value calculation unit 22 decreases the fluctuation width of ⁇ as the reliability of the action result data is higher, and increases the possibility of becoming a value close to 0.
  • the amplitude of ⁇ is increased to increase the possibility that the absolute value thereof is increased.
  • the data reliability is low, it is possible to add a random element when determining the next target user.
  • winning percentage, etc. instead of the number of wins, the number of data samples is small because the reliability is considered to be low if the number of data samples is small.
  • the value of ⁇ may be increased.
  • the reliability may be increased as the number of users A who have played so far increases. Further, the reliability may be increased as the user A has played a game recently, and the reliability may be decreased when time has elapsed since the last play. Further, when there is a bias such as extremely high or low win rate of the user A, there is a possibility that the game is not a result of normal game play. Therefore, in such a case, the next target user may be determined as having low reliability.
  • the evaluation value calculation unit 22 changes the point to be added to the evaluation value of the user corresponding to the node, depending on what travel route the random tracer has traveled before reaching the node. May be.
  • the evaluation value calculation unit 22 changes the points to be added to the user corresponding to the node according to the number of hops until the random tracer arrives at a certain node. Specifically, the evaluation value calculation unit 22 may make the point added to each user arriving after the random tracer hops one or more times in S6 larger than the point added to the starting user in S2. Also, as the number of hops to reach a node increases (ie, the greater the number of target users selected so far), the more points are added to the user corresponding to that node. In addition, an addition point may be determined.
  • the evaluation value calculation unit 22 determines the user of interest according to the action content (the number of battles, etc.) of the previous user who hops to the node of the user of interest with a random tracer (that is, the defeated user who has lost the user of interest).
  • the point to be added may be changed. Specifically, if the total number of matches of the defeated user is small, it is assumed that the user has just started the game, and even if such a user is won, there is a possibility that it is not a proof of high ability. is there.
  • the number of points added is less than when hopping from a defeated user who has a predetermined number of matches or more. Also good.
  • the evaluation value calculation unit 22 may change the point added to the target user according to the attribute of the action result data corresponding to the edge traced when the random tracer hops to the node of the target user. For example, when the random tracer hops from the user A to the user B, the points to be added to the user B are changed according to when the battle between the user A and the user B is performed. If the battle history between the two is that of an old battle, the battle history may not reflect the current ability. Therefore, when a random tracer hops by following an edge corresponding to an old battle, the points added to the user after the hop are reduced. By doing so, it is possible to perform an analysis with an emphasis on a newer battle history. Note that the evaluation value calculation unit 22 may perform the evaluation value calculation process while ignoring the past battle history for a predetermined time or more. Thereby, for example, a ranking based on the competition results of the most recent one week or one month can be generated.
  • each match result included in the action result data indicates a result of a one-on-one game match by two users.
  • the evaluation value calculation unit 22 may use a team battle result as an evaluation target. For example, when team A, to which team A to which users A1 and A2 belong, and team B to which users B1 and B2 belong, competes and team A wins, user A1 wins each of users B1 and B2, and user A2 also has user B1 and If a directed graph is generated on the assumption that each of B2 has been won, the strength of each user can be evaluated in the same manner as in the individual battle.
  • the destination of the random tracer may be selected according to the degree of contribution.
  • the degree of contribution of each user belonging to the winning team may be evaluated according to the degree of contribution.
  • the evaluation value is calculated for each user using a directed graph with the user as a node.
  • a user group composed of a plurality of users is used as a node for team battles.
  • An analysis of the result may be performed to calculate an evaluation value for each group.
  • the action result acquisition unit 21 acquires action result data indicating a result of an action (here, a team battle) performed between user groups.
  • the evaluation value calculation unit 22 executes an evaluation value calculation process using the user group as a node (evaluation unit) instead of the user described so far, and calculates the evaluation value of each user group.
  • the evaluation information providing unit 23 may sort all the users according to the evaluation values, rank each user, and provide rank information for each user.
  • the ranking for each period may be calculated by setting the current match result, the match result of this month, and all the match results so far to be processed.
  • FIG. 5 shows an example of a screen displaying such ranking information for a certain user.
  • the overall ranking, the current month, and today's ranking are shown.
  • the ranking of the user by region here, ranking in Japan and ranking in Tokyo is also shown.
  • the evaluation information providing unit 23 may provide information on the rank in the virtual region or team. Good. Furthermore, when a plurality of types of games can be played by the information processing system 1, the overall ranking of the plurality of games may be determined by calculating an evaluation value for each type of game and calculating the sum thereof. Further, the evaluation information providing unit 23 may determine a ranking for each team or a ranking for each region by summing evaluation values of users belonging to the same team or the same region for each team or region. The evaluation information providing unit 23 ranks higher than the requesting user who requested the provision of information not only in the ranking information of the requesting user itself but also as a user registered as a friend of the requesting user or in various rankings. Other users' ranking information may be provided.
  • the evaluation information providing unit 23 selects a user (recommended user) who is a candidate for an opponent who will next play the game in response to a request from the requesting user, and requests information on the recommended user. It may be provided to the user. Further, in this case, the evaluation information providing unit 23 may provide the requesting user with information related to actions performed in the past between the recommended user and the requesting user. As a specific example, the evaluation information providing unit 23 selects a user whose evaluation value is close to that of the requesting user as a recommended user. In addition, a user with a higher evaluation value than the requesting user (that is, a user with higher ability) or a user with a lower evaluation value may be selected as the recommended user. FIG.
  • FIG. 6 shows a display example of such a recommended user (competitor candidate), and the evaluation value of the recommended user is displayed as a score in association with the user name of the recommended user.
  • history information indicating whether or not a battle has been held in the past between the recommended user and the requesting user is also displayed. By referring to this score, the requesting user can select an opponent of the game in consideration of the ability of the opponent.
  • the game server 4 performs the game process, but each user terminal 3 executes the game process.
  • the user terminal 3 directly communicates with the game terminal 3 of the opponent. It is good also as giving and receiving.
  • the evaluation value calculation unit 22 selects the user who has won the target user during the execution of the trace process as the next target user. However, not only the winning user but also the user who was the result of the match with the target user may be selected as a new target user. Further, the evaluation value calculation unit 22 may select a user who has lost the target user as a new target user, instead of selecting a winning user. In this case, the evaluation value increases as the user has a match result that is defeated by other users. Therefore, the user ranking can be obtained by sorting the users in ascending order of the evaluation values obtained by the evaluation value calculation process.
  • the aggregation server 2 is not limited to action result data indicating a game match result, and the management server 2 relates to results of actions performed between various users. Data may be processed. As a specific example, each user inputs information for evaluating an opponent when performing a game match, and the aggregation server 2 analyzes action result data indicating evaluation contents obtained by such information input. Then, an evaluation value indicating how each user is evaluated by the opponent may be calculated. In this example, the game server 4 acquires and accumulates information indicating the evaluation of the opponent from each user when the game battle is performed. Then, apart from the action result data indicating the battle result, action result data indicating such evaluation contents is provided to the aggregation server 2.
  • This evaluation may relate to whether the opponent's play was good, whether the opponent was fair or preferred as an opponent, and does not necessarily relate to the ability of the game.
  • a directed graph having an edge from the user A to the user B that represents the result of the action can be generated.
  • the evaluation value calculation unit 22 performs a tracing process similar to the case of the battle result on the directed graph. Specifically, when the user A evaluates each of the users B and C, and the user A is selected as the current target user, the evaluation value calculation unit 22 follows one of the users B and C. As a target user, the selected user's node is made to hop a random tracer, and points are added to the evaluation value. By performing such an analysis, the evaluation value calculation unit 22 increases the evaluation value of the user evaluated by a highly evaluated user so that the evaluation value of the user evaluated by more users becomes high. As described above, the evaluation value of each user can be calculated.
  • the evaluation value calculation unit 22 uses the evaluation content in the same way as the score of the game, so that the user who received a higher evaluation is used.
  • the destination of the random tracer may be selected with a probability that it is easy to select.
  • the destination of the random tracer may be selected with a probability that the number of evaluations is used in the same way as the number of wins of the battle and it becomes easy to select a user with a higher number of evaluations.
  • each user can comment on other users 'comments, or operate buttons on other users' comments to show some positive or negative evaluation. Has been done. Therefore, the evaluation action performed between such users can be set as an analysis target in the same manner as the evaluation of the game battle described above.
  • 1 information processing system 2 aggregation server, 3 user terminal, 4 game server, 11 control unit, 12 storage unit, 13 communication unit, 21 action result acquisition unit, 22 evaluation value calculation unit, 23 evaluation information providing unit.

Abstract

 新規な手法により、ユーザー又はユーザーグループ間で行われた行動の結果に基づいてユーザーを評価することのできる情報処理装置を提供する。 複数のユーザー又はユーザーグループ間で行われた行動の結果を示す行動結果データを取得し、当該複数のユーザー又はユーザーグループの中からランダムに一のターゲットを選択する起点選択処理、及び、行動結果データに基づいて現在のターゲットが行った行動の相手を次のターゲットとして新たに選択する処理を、所定条件を満たすまで繰り返すターゲット選択処理、から構成されるトレース処理を複数回実行し、複数のユーザー又はユーザーグループのそれぞれについて、複数回のトレース処理においてターゲットとして選択される回数に応じて当該ユーザー又はユーザーグループの評価値を算出する情報処理装置である。

Description

情報処理装置
 本発明は、複数のユーザー又はユーザーグループ間で行われた行動に対する評価を行う情報処理装置、情報処理方法、プログラム、及び情報記憶媒体に関する。
 例えばゲームの対戦など、複数のユーザー(又はユーザーグループ)同士の間で何らかの行動が行われた場合に、その行動の結果を評価し、順位付けしたい場合がある。例えばゲームの対戦であれば、様々なユーザー同士で対戦が行われた結果の勝敗に基づいて、全ユーザーのランキングを算出したり、あるユーザーと同程度の強さを持ったユーザーを見つけたりする処理の実現が望まれる。特に参加するユーザーが多数の場合、各ユーザーが他の全てのユーザーと直接関わりあうことはできなくなり、全体のうちの一部のユーザーとしか関わり合わないことになる。このような場合、単に個々のユーザーの行動結果に基づいてユーザーを並べてユーザー全体の順位付けを行うことは困難になる。
 そこで、例えばチェスなどで利用されているイロレーティングシステム(Elo rating system)と呼ばれる手法では、以下のようにして各プレイヤーの強さを評価している。すなわち、各プレイヤーが持ち点(レート)を持っており、プレイヤー同士が対戦した際には、負けたプレイヤーが持ち点を失い、勝ったプレイヤーがこれと同数の持ち点を獲得する。このとき、負けたプレイヤーから勝ったプレイヤーに移動する点数は、両者の対戦前のレート差に応じて変化する。具体的に、自分よりレートの低いプレイヤー(すなわち、自分より格下のプレイヤー)に勝ってもわずかな点数しか得られず、逆に自分よりレートの高いプレイヤー(格上のプレイヤー)に勝った場合には大きな点数を得られる。このようにしてプレイヤー同士が対戦を繰り返すと、それぞれのプレイヤーは実力に見合ったレートを獲得することになるので、レートを比較することで直接対戦したことがないプレイヤー同士でも実力差を評価できるようになる。
 本発明は上記実情を考慮してなされたものであって、その目的の一つは、新規な手法により、ユーザー又はユーザーグループ間で行われた行動の結果に基づいてユーザーやユーザーグループを評価することのできる情報処理装置、情報処理方法、プログラム、及び情報記憶媒体を提供することにある。
 本発明に係る情報処理装置は、複数のユーザー又はユーザーグループについて、当該複数のユーザー又はユーザーグループ間で行われた行動の結果を示す行動結果データを取得する行動結果取得部と、前記複数のユーザー又はユーザーグループの中から、ランダムに一のユーザー又はユーザーグループをターゲットとして選択する起点選択処理、及び、前記行動結果データに基づいて、現在のターゲットとして選択されたユーザー又はユーザーグループが行った行動の相手となった相手ユーザー又は相手ユーザーグループを次のターゲットとして新たに選択する処理を、所定条件を満たすまで繰り返すターゲット選択処理、から構成されるトレース処理を複数回実行し、前記複数のユーザー又はユーザーグループのそれぞれについて、前記複数回のトレース処理において当該ユーザー又はユーザーグループがターゲットとして選択される回数に応じて当該ユーザー又はユーザーグループの評価値を算出する評価値算出部と、を含むことを特徴とする。
 また、本発明に係る情報処理方法は、複数のユーザー又はユーザーグループについて、当該複数のユーザー又はユーザーグループ間で行われた行動の結果を示す行動結果データを取得するステップと、前記複数のユーザー又はユーザーグループの中から、ランダムに一のユーザー又はユーザーグループをターゲットとして選択する起点選択処理、及び、前記行動結果データに基づいて、現在のターゲットとして選択されたユーザー又はユーザーグループが行った行動の相手となった相手ユーザー又は相手ユーザーグループを次のターゲットとして新たに選択する処理を、所定条件を満たすまで繰り返すターゲット選択処理、から構成されるトレース処理を複数回実行し、前記複数のユーザー又はユーザーグループのそれぞれについて、前記複数回のトレース処理において当該ユーザー又はユーザーグループがターゲットとして選択される回数に応じて当該ユーザー又はユーザーグループの評価値を算出するステップと、を含むことを特徴とする。
 また、本発明に係るプログラムは、複数のユーザー又はユーザーグループについて、当該複数のユーザー又はユーザーグループ間で行われた行動の結果を示す行動結果データを取得する行動結果取得部、並びに、前記複数のユーザー又はユーザーグループの中から、ランダムに一のユーザー又はユーザーグループをターゲットとして選択する起点選択処理、及び、前記行動結果データに基づいて、現在のターゲットとして選択されたユーザー又はユーザーグループが行った行動の相手となった相手ユーザー又は相手ユーザーグループを次のターゲットとして新たに選択する処理を、所定条件を満たすまで繰り返すターゲット選択処理、から構成されるトレース処理を複数回実行し、前記複数のユーザー又はユーザーグループのそれぞれについて、前記複数回のトレース処理において当該ユーザー又はユーザーグループがターゲットとして選択される回数に応じて当該ユーザー又はユーザーグループの評価値を算出する評価値算出部、としてコンピュータを機能させるためのプログラムである。このプログラムは、コンピュータ読み取り可能な情報記憶媒体に格納されてよい。
本発明の実施の形態に係る情報処理システムの全体構成図である。 本発明の実施の形態に係る情報処理装置の機能ブロック図である。 行動結果データの内容の一例を示すグラフである。 トレース処理の流れを示すフロー図である。 ランキング情報の表示例を示す図である。 対戦相手候補の表示例を示す図である。
 以下、本発明の実施形態について、図面に基づき詳細に説明する。
 以下では、複数のユーザー又はユーザーグループ間で行われる行動の具体例として、ユーザー同士のゲーム対戦を取り扱う場合について説明する。このゲームは、ユーザー同士の対戦によって勝敗が決せられるものであれば、どのような種類のものであってもよい。図1は、本発明の一実施形態に係る情報処理装置を含んだ情報処理システム1の構成図である。同図に示すように、この情報処理システム1は、集計サーバ2と、複数のユーザー端末3と、ゲームサーバ4と、を含んで構成されている。ユーザー端末3は、本情報処理システム1で実現されるゲームプラットフォームに参加するユーザーが使用する端末装置であって、例えば家庭用ゲーム機や携帯ゲーム機、スマートフォン、パーソナルコンピュータ等であってよい。各ユーザー端末3は、ユーザーが操作入力に使用する操作デバイスと、各種の情報を表示する表示画面と、を備えている。
 集計サーバ2は、本発明の実施形態に係る情報処理装置の具体例であって、図1に示すように、制御部11と、記憶部12と、通信部13と、を含んで構成されている。
 制御部11は、CPU等であって、記憶部12に格納されたプログラムに従って各種の情報処理を行う。記憶部12は、RAM等のメモリ素子を含んで構成され、制御部11が実行するプログラム、及び当該プログラムが処理対象とするデータを記憶する。
 通信部13は、LANカード等の通信インタフェースであって、通信部13を介して集計サーバ2は複数のユーザー端末3、及びゲームサーバ4のそれぞれとデータの送受信を行う。
 ゲームサーバ4は、対戦型ゲームのプレイ機能を提供するサーバコンピュータであって、各ユーザー端末3のユーザーがプレイするゲームの処理を実行する。ユーザー端末3がゲームサーバ4との間で通信を行うことによって、各ユーザーは、ユーザー端末3を介してゲームサーバ4が提供するゲームをプレイし、他のユーザーと対戦することができる。また、ゲームサーバ4は、対戦プレイの結果を示す行動結果データを集計サーバ2に送信する。
 以下、集計サーバ2が実現する機能について、図2の機能ブロック図を用いて説明する。図2に示すように、集計サーバ2は、機能的に、行動結果取得部21と、評価値算出部22と、評価情報提供部23と、を含んで構成される。これらの機能は、制御部11が記憶部12に記憶されたプログラムを実行することにより実現される。このプログラムは、光ディスク等の各種の情報記憶媒体に格納されて集計サーバ2に提供されてもよいし、インターネット等の通信ネットワークを介して集計サーバ2に提供されてもよい。
 行動結果取得部21は、ユーザー間で行われた行動の結果を示す行動結果データを取得する。本実施形態では、評価対象となるユーザー間の行動はゲーム対戦なので、行動結果データはユーザー間で行われたゲーム対戦の結果を示す情報を含む。このような情報は、ゲームサーバ4から取得される。行動結果データは、実際にゲームの対戦を行った二人のユーザーの組み合わせごとに、当該二人のユーザーを特定する情報と、対戦の結果どちらが勝利したかを示す情報とを少なくとも含んでいる。この行動結果データに含まれる情報は、ユーザーをノード、対戦をエッジ(リンク)とする有向グラフを構成することになる。
 さらに行動結果データは、ユーザー間で行われた対戦のスコアなど、勝敗以外の対戦の結果に関する情報を含んでもよい。また、対戦したゲームの特徴に関する情報(イージーモードかハードモードかなど)を含んでもよい。特に同じ二人のユーザーが過去に複数回対戦を行っている場合、行動結果取得部21はその複数回の対戦の勝敗を集計した情報を行動結果データとして取得してもよい。例えばユーザーAがユーザーBと5回対戦して3勝2敗の成績を残した場合、行動結果取得部21はこの3勝2敗(勝率60%)の結果を示す情報を取得してもよい。あるいは、各対戦のスコアが記録される場合、そのスコアの合計値を対戦結果の情報として取得してもよい。例えばユーザーAがユーザーBと3回対戦してそれぞれ3対2、1対0、0対4の結果を残した場合、行動結果取得部21は4対6のスコアを示す情報を取得してもよい。また、両者を組み合わせた情報を取得してもよい。なお、行動結果取得部21は、自身で対戦成績の集計を行うことによって、集計された行動結果データを取得してもよいし、集計済みの行動結果データをゲームサーバ4から取得してもよい。
 評価値算出部22は、行動結果取得部21によって取得された行動結果データを解析することによって、情報処理システム1を利用する複数のユーザーそれぞれの評価値を算出する評価値算出処理を実行する。この評価値は、各ユーザーがそのゲームでどの程度強いかを示す指標値となる。本実施形態における評価値算出処理は、一種のランダム法(モンテカルロ法)に基づいており、乱数を用いた試行(以下、トレース処理という)を複数回実行することによって、統計的に各ユーザーの評価値を算出する。そのため、同じ行動結果データに対して評価値算出処理を複数回行ったとしても必ず同じ結果が得られるとは限らない。しかしながら、十分な回数の試行を行うことによって解析の精度を向上させることができる。評価値算出処理の具体例については、後述する。
 評価情報提供部23は、ユーザー端末3からの要求に応じて、評価値算出部22が算出した評価値に基づく各種の情報を要求元のユーザー端末3に送信する。これにより要求元のユーザー端末3は、例えばユーザーのランキング情報など、ユーザーの強さに関する各種の情報をその画面に表示してユーザーに提供することができる。
 以下、評価値算出部22が実行する評価値算出処理の具体例について説明する。ここでは、4人のユーザーA~Dが情報処理システム1を利用してゲームをプレイしたと想定し、その対戦結果を示す行動結果データを対象とした場合を例として、評価値算出処理の内容を説明する。図3は、この4人のユーザーの対戦結果を示す有向グラフである。図3におけるエッジ(矢印)は実際に対戦を行ったユーザー同士を結びつけており、矢印が指し示すユーザーが勝利したユーザーを表している。この図3の例では、ユーザーAはユーザーB及びCの双方と対戦して負けており、ユーザーDはユーザーBと対戦して勝利している。一方、ユーザーAとユーザーD、ユーザーBとユーザーC、またユーザーCとユーザーDは互いに直接対戦していない。
 また、以下ではトレース処理の内容を説明するために、ランダムトレーサーという概念を導入する。トレース処理においては、1つのランダムトレーサーが図3に示すような有向グラフ上を所定のルールに従って移動する。より具体的に、ランダムトレーサーは、ランダムに選択されたいずれかのユーザー(以下、起点ユーザーという)のノードを起点として、選択されたユーザーに勝利したユーザーのいずれかを新たに選択するように(すなわち、有向グラフの矢印に沿って)グラフ上を順に移動する。このランダムトレーサーの移動は、後述するように、移動先のノードがなくなるか所定の終了条件が満たされた場合に終了する。なお、以下ではランダムトレーサーが有向グラフ上においてあるノードから次のノードへ移動することをホップと表現する。また、ランダムトレーサーの移動先となったノードに対応するユーザーをターゲットユーザーという。1回のトレース処理は、1つのランダムトレーサーが起点ユーザーのノードを出発して何回かのホップを行い、グラフ上を移動し終えるまでの移動経路を決定する一連の処理に相当する。そして、評価値算出部22は、ランダムトレーサーが移動した経路上に存在する各ターゲットユーザーに対して、評価値を加算する。このようなトレース処理を十分大きな回数繰り返して実行することにより、評価値算出部22は、各ユーザーについて、ランダムトレーサーが通過した回数に応じた評価値を算出することになる。ランダムトレーサーはターゲットユーザーに勝利したユーザー(すなわち、ターゲットユーザーよりも強いユーザー)を新たなターゲットユーザーとして選択するので、より強いユーザーほど、何度もターゲットユーザーとして選択されることになる。そのため、このランダムトレーサーの通過回数に対応した評価値が、そのユーザーの強さを表すことになる。
 ここで、1回のトレース処理の流れについて、図4のフロー図を用いて説明する。
 まず評価値算出部22は、ランダムトレーサーの起点となる最初のターゲットユーザー(起点ユーザー)を選択する(S1)。この起点ユーザーは、行動結果データに含まれている全てのユーザーの中からランダムに選択される。すなわち、全てのユーザーが平等に起点ユーザーとして選択されるチャンスを持っている。ここでは具体例として、4人のユーザーの中からユーザーAが起点ユーザーとして選択されたものとする。評価値算出部22は、選択された起点ユーザー(ここではユーザーA)の評価値に1ポイントを加算する(S2)。
 続いて評価値算出部22は、ターゲットユーザーに対して勝利したとの履歴があるユーザー(勝利ユーザー)が存在するか否かを判定する(S3)。S3で勝利ユーザーが存在しないと判定された場合、ランダムトレーサーの次の移動先は存在しないことになるので、評価値算出部22はトレース処理を終了する。一方、勝利ユーザーが存在する場合、評価値算出部22は勝利ユーザーの中から予め定められたルールに基づいて一人のユーザーを次のターゲットユーザーとして選択する(S4)。例えばターゲットユーザーがユーザーAの場合、行動結果データによれば、図3に示すようにユーザーB及びユーザーCの二人がユーザーAに勝利している。そこで評価値算出部22は、これら二人の勝利ユーザーのいずれかを次のターゲットユーザーとして選択する。具体的に、例えば評価値算出部22は、ランダムに次のターゲットユーザーを選択してもよい。この場合、ユーザーB及びCの双方がそれぞれ50%の確率で次のターゲットユーザーとして選択されることになる。
 さらに評価値算出部22は、S4で選択されたユーザーのノードに実際にランダムトレーサーをホップさせるか、あるいはランダムトレーサーの移動を終了させるかを、所定の終了条件に基づいて判定する(S5)。具体的に、評価値算出部22は、一定の確率に基づいてランダムトレーサーの移動を継続させることとする。例えば評価値算出部22は、85%の確率でランダムトレーサーを次の移動先にホップさせ、15%の確率でランダムトレーサーのホップを終了させる。このような処理を導入しているのは、例えばじゃんけんの三すくみのような関係にある複数ユーザーの間を無限にランダムトレーサーが移動し続けてしまうなどの状態を避けるためである。このS5の処理を導入することにより、一つのランダムトレーサーが無限に移動し続けてしまうことを避け、一定確率でその移動を終了させることができる。なお、上述した確率の条件に代えて、あるいはこれに加えて、評価値算出部22は、起点ユーザーのノードから数えて一定回数ホップを繰り返したランダムトレーサーについて、さらなる移動を無条件で終了させてもよい。あるいは、ランダムトレーサーのホップ回数が増加するにつれて、S5の判定でランダムトレーサーの移動を終了させる確率を増加させてもよい。また、1つのランダムトレーサーが一度通過したノードを再び選択した場合、移動経路がループしたことになるので、そこでランダムトレーサーの移動を終了させてもよい。あるいは、1つのランダムトレーサーが所定回数同じユーザーをターゲットユーザーとして選択した場合に、ランダムトレーサーの移動を終了させてもよい。
 S5でランダムトレーサーの移動を継続させると判定した場合、評価値算出部22は、実際にランダムトレーサーをS4で選択された次のターゲットユーザーのノードにホップさせ、当該ユーザーの評価値に1ポイントを加算する(S6)。なお、1つのランダムトレーサーが同じユーザーのノードを複数回通過した場合、初回のみ評価値への加算を行い、2回目以降には評価値を加算しないこととしてもよい。その後評価値算出部22は、S3に戻ってさらに次の移動先へランダムトレーサーをホップさせる処理を継続する。例えば一つのランダムトレーサーが、以上説明したトレース処理によって、ユーザーAを起点ユーザーとして、ユーザーB、及びユーザーDを順にターゲットユーザーとして選択し、そこで移動を終了したとする。その場合、ユーザーA、ユーザーB、及びユーザーDの3人に対して、それぞれ評価値が1ずつ加算されることになる。
 前述したように、評価値算出部22は図4のフローで示したトレース処理をN個のランダムトレーサーについて繰り返し実行する。このN回のトレース処理の結果として各ユーザーに対して累積された評価値が、各ユーザーの強さを示す指標として用いられる。図3の例では、ユーザーAは誰にも勝利していないため、自身が起点ユーザーとして選択された場合にしか評価値が加算されない。一方でユーザーB及びCは、自身が起点ユーザーとして選択された場合のほか、ユーザーAが起点ユーザーとして選択された場合にも評価値が加算される可能性がある。さらにユーザーDは、自身が起点ユーザーとして選択された場合に加えて、ユーザーA及びBのそれぞれが起点ユーザーとして選択された場合にも評価値が加算される可能性がある。そのため、十分な回数繰り返してトレース処理を実行した場合、ユーザーAよりもユーザーB及びCの方が、またユーザーCよりもユーザーDの方が、評価値が高くなる。この評価値の大小関係は、実際のユーザー同士の対戦結果を反映したものになっている。
 なお、1回の評価値算出処理において実行するトレース処理の回数Nは、例えばユーザーの総数に応じて決定される。この実行回数Nが多ければ多いほど評価値の精度は高くなるので、ユーザー全体の順位表を作りたい場合のように精度が要求される場合には、実行回数Nを増やすことが望ましい。逆にそれほど精度が要求されない場合、処理負荷を軽減するために実行回数Nを減らしてもよい。
 また、評価値算出部22は、トレース処理の実行回数Nで正規化した評価値をユーザーの評価に用いてもよい。この場合、N回のトレース処理の累計としてユーザー毎に得られた評価値をNで割ることによって、最終的な評価値を算出する。こうすれば、例えば毎日それまでの対戦履歴を示す行動結果データを用いて評価値算出処理を実行する場合に、前日の評価値算出処理と今日の評価値算出処理とでトレース処理の実行回数Nが異なったとしても、前日得られた評価値と今日得られた評価値とを比較することができる。そのため、毎回同じ回数のトレース処理を実行する必要はなくなるので、評価値算出処理を実行するごとに、処理負荷や所要時間などに応じてトレース処理の実行回数Nを変化させることができる。また、トレース処理の実行回数Nの代わりに、全N回のトレース処理における累計のホップ回数で評価値を正規化してもよい。この累計のホップ回数は、全ユーザーに加算されたポイントの累計に一致するので、この数値を用いることで、全ユーザーの評価値の合計が1.0になるような正規化を行うことができる。
 以上説明したように、評価値算出部22は、ある時点において、その時点までに蓄積された過去のユーザー間の行動に関する行動結果データを処理対象として、評価値算出処理を実行する。このような手法によれば、対戦が行われるたびにレートのやりとりを行うイロレーティングなどの手法において生じるいくつかの問題を回避することができる。例えばイロレーティングでは、実力が等しい3人のユーザーが対戦する場合、その対戦順序によって3人のレーティングに差が生じてしまうという順序効果があることが知られている。これは、対戦が行われるごとにレートのやりとりを行うことに起因して生じる問題であるため、複数回の対戦が行われた後の行動結果データを用いて解析を行う本実施形態の評価値算出処理では生じない。
 また、イロレーティングでは、局所問題(島問題)という問題も生じ得る。具体例として、あるグループAに属する複数のプレイヤー同士が互いに対戦してその結果に応じたレーティングがそれぞれに付与され、一方で別のグレープBに属する複数のプレイヤーについても同様にグループB内での対戦結果に基づいてレーティングが付与されたとする。その後、グループAに属するプレイヤーA1とグループBに属するプレイヤーB1とが対戦した場合、イロレーティングでは、その対戦結果が直接対戦したプレイヤーA1及びB1のレーティングには反映されるが、グループA及びBに属するその他のプレイヤーには反映されないことになる。この問題についても、グループ内、及びグループ間の対戦結果を全て反映した有向グラフを対象として解析を行う本実施形態の評価値算出処理では生じない。
 以下、トレース処理のいくつかの変形例について説明する。まず、図4のS4で示した次のターゲットユーザーを選択する処理における選択基準の変形例について、説明する。前述の説明では、次のターゲットユーザーの候補となる勝利ユーザーが複数いる場合、評価値算出部22は互いに等しい確率で次のターゲットユーザーを選択することとしたが、評価値算出部22は、現在のターゲットユーザーに対して各勝利ユーザーがどのように勝利したかを示す対戦成績の情報に応じて次のターゲットユーザーを選択してもよい。具体的には、勝率や得失点差などを考慮して、より強いと推定される勝利ユーザーに移動する確率が高くなるように、各勝利ユーザーを選択する確率を決定する。そして、決定された確率に従って、乱数によって次のターゲットユーザーを決定する。具体例として、ユーザーAに対してユーザーBが7対1(得失点差6)で勝利しており、ユーザーCは2対1(得失点差1)でユーザーAに勝利している場合、得失点差に応じて、6/7の確率でユーザーBを、1/7の確率でユーザーCをユーザーAの次のターゲットユーザーとして選択する。あるいは、獲得点数のみに着目し、7/9の確率でユーザーBを、2/9の確率でユーザーCを選択してもよい。また、ユーザーBがユーザーAに対して3勝しており、ユーザーCはユーザーAに対して2勝している場合、3/5の確率でユーザーBを、2/5の確率でユーザーCを選択する。こうすれば、ユーザーAに勝利したユーザーが複数いる場合に、これらの勝利ユーザーのうち、ユーザーAとの関係で相対的により強いと推測されるユーザーの評価値を高くするように、ランダムトレーサーをホップさせることができる。
 あるいは評価値算出部22は、勝敗数に応じて、次のターゲットユーザーをどのユーザーにするか、及び次のターゲットユーザーに実際にランダムトレーサーを移動させるか否かを決定してもよい。具体例として、ユーザーA対ユーザーBの対戦成績が2勝4敗(ユーザーBの勝ち越し)で、ユーザーA対ユーザーCの対戦成績が2勝2敗(互角)であったとする。この場合、ユーザーAのトータルの対戦回数10を分母として、ユーザーBの勝数に応じて4/10の確率でユーザーBにホップし、ユーザーCの勝数2に応じて2/10の確率でユーザーCにホップする。また、ユーザーAのトータルの勝数4に対応する4/10の確率で、いずれのユーザーにもホップさせずにランダムトレーサーの移動を終了する。この例では、ユーザーA対ユーザーCの対戦成績はトータルでは引き分けになっているが、ユーザーCがユーザーAに2勝しているので、ユーザーAからユーザーCにホップする場合も生じることになる。また、ユーザーAはユーザーBに負け越しているが、ユーザーBに対して2勝しているので、ユーザーBからユーザーAにホップすることもあり得る。なお、勝敗数ではなく得失点の合計を対象として同様の処理を行ってもよい。
 また、評価値算出部22は、対戦履歴の信頼性を評価し、その評価結果を用いてランダムトレーサーの次の移動先を選択してもよい。仮にユーザーBのユーザーAに対する勝数がユーザーCのユーザーAに対する勝数よりも大きいとしても、絶対的な標本数が少ない場合には、偶然そのような対戦結果が得られた可能性があり、標本数が多い場合と比較してデータの信頼性は低い。そのため、勝数に応じてどの移動先にランダムトレーサーを移動させるか選択する場合において、トータルの勝数が少ない場合には確率をランダムに変動させることとする。具体例として、ユーザーBがユーザーAに1勝しており、ユーザーCがユーザーAに2勝している場合、両者の勝数の比は1:2なので、前述の例によれば1/3の確率でユーザーBを、2/3の確率でユーザーCをそれぞれ選択することになる。一方、ユーザーBがユーザーAに50勝し、ユーザーCがユーザーAに100勝している場合にも、勝数の比は同じく1:2なので、同様の確率でユーザーB及びCのいずれかを選択することになる。しかし、前者の例ではユーザーB及びユーザーCがユーザーAに勝ったトータルの勝数が3回と少ないため、後者の例と比較して、勝数の比が正しく実力を反映している可能性は低い(つまり、勝数のデータの信頼度が低い)。そこで評価値算出部22は、この信頼度を考慮して確率をランダムに変動させ、1/3+αの確率でユーザーBを、2/3-αの確率でユーザーCを、それぞれ選択することとする。ここでαは行動結果データの信頼度に応じてランダムに決定される数値で、0を中心に正負の値を採り得る。評価値算出部22は、行動結果データの信頼度が高いほどαの振れ幅を小さくし、0に近い値になる可能性を高くする。逆に信頼度が低い場合、αの振れ幅を大きくし、その絶対値が大きくなる可能性を増加させる。こうすれば、データの信頼度が低い場合に、次のターゲットユーザーを決定する際にランダムな要素を加味することができる。勝数ではなく得失点差や勝率などを考慮してランダムトレーサーの移動先を選択する場合にも、同様に、データの標本数が少なければ信頼度が低いと考えられるので、テータの標本数が少ないほどαの値を大きくしてもよい。
 この信頼度を決定するうえでは、データの標本数以外の要素を考慮してもよい。例えば、ユーザーAがこれまで対戦した人数が多いほど信頼度を高くしてもよい。また、ユーザーAが最近ゲームプレイをしているほど信頼度を高くし、最後にプレイしてから時間がたっている場合には信頼度を低くしてもよい。また、ユーザーAの勝率が極端に高い、または低いなどの偏りが存在する場合、通常のゲームプレイによるものではない作為的なものである可能性があり得る。そこで、このような場合には信頼度が低いものとして次のターゲットユーザーを決定してもよい。
 次に、S6の処理でランダムトレーサーの移動先となったターゲットユーザーの評価値に加算されるポイントの変形例について説明する。前述の説明ではランダムトレーサーの通過によって評価値に加算されるポイントは常に1なので、最終的に得られる評価値はランダムトレーサーの通過回数に一致している。しかしながら、評価値算出部22は、あるノードに到着するまでにランダムトレーサーがどのような移動経路をたどって移動したかに応じて、当該ノードに対応するユーザーの評価値に加算するポイントを変化させてもよい。
 例えば評価値算出部22は、ランダムトレーサーがあるノードに到着するまでのホップ回数に応じて、当該ノードに対応するユーザーに加算するポイントを変化させる。具体的に、評価値算出部22は、ランダムトレーサーが1回以上ホップした後に到着する各ユーザーにS6で加算するポイントを、S2で起点ユーザーに加算するポイントよりも大きくしてもよい。また、あるノードに到着するまでのホップ回数が増えれば増えるほど(すなわち、それまでに選択されたターゲットユーザーの数が多ければ多いほど)、当該ノードに対応するユーザーに加算するポイントが大きくなるように、加算ポイントを決定してもよい。
 また、評価値算出部22は、ランダムトレーサーがある注目ユーザーのノードにホップする1つ前のユーザー(すなわち、注目ユーザーに敗北した敗北ユーザー)の行動内容(対戦数など)に応じて、注目ユーザーに加算するポイントを変化させてもよい。具体的に、敗北ユーザーのトータルの対戦回数が少ない場合、そのユーザーはゲームを始めたばかりであると推測され、このようなユーザーに勝利したとしても高い実力があることの証明にはならない可能性がある。そこで、対戦回数が所定数未満の敗北ユーザーからランダムトレーサーがホップして勝利ユーザーのノードに到着した場合には、対戦回数が所定数以上の敗北ユーザーからホップした場合よりも加算ポイントを少なくしてもよい。
 また、評価値算出部22は、ランダムトレーサーが注目ユーザーのノードにホップする際にたどるエッジに対応する行動結果データの属性に応じて、注目ユーザーに加算するポイントを変化させてもよい。例えばユーザーAからユーザーBにランダムトレーサーがホップした場合において、ユーザーAとユーザーBの対戦がいつ行われたかに応じてユーザーBに加算するポイントを変化させる。両者の対戦履歴が時期的に古い対戦のものである場合には、その対戦履歴は現在の実力を反映していない可能性がある。そのため、時期が古い対戦に対応するエッジをたどってランダムトレーサーがホップした場合、当該ホップ後のユーザーに加算するポイントを減少させることとする。こうすれば、より新しい対戦履歴を重視した解析を行うことができる。なお、評価値算出部22は、一定時間以上過去の対戦履歴については無視して評価値算出処理を行ってもよい。これにより、例えば直近1週間や1ヶ月の対戦成績に基づくランキングなどを生成することができる。
 以上の説明では、行動結果データに含まれる各対戦結果は、2人のユーザーによる1対1のゲーム対戦の結果を示していることとした。しかしながら、評価値算出部22はチーム戦の対戦結果を評価対象として用いてもよい。例えばユーザーA1及びA2が所属するチームAとユーザーB1及びB2が所属するチームBが対戦してチームAが勝利した場合、ユーザーA1がユーザーB1及びB2のそれぞれに勝利し、ユーザーA2もユーザーB1及びB2のそれぞれに勝利したとして有向グラフを生成すれば、個人戦の場合と同様にして各ユーザーの強さを評価することができる。このような場合において、勝利チームに属する各ユーザーの勝利への貢献度を評価することができるのであれば、その貢献度に応じてランダムトレーサーの移動先を選択してもよい。具体例として、同じチームに属する各ユーザーが獲得したスコアの累計によってチーム全体の勝敗が決定するようなゲームの場合、各ユーザーが獲得したスコアに応じた確率で、勝利チームに属する複数ユーザーのうちのどのユーザーにランダムトレーサーをホップさせるかを決定してもよい。あるいは、チーム戦における各ユーザーの役割に応じて各ユーザーを移動先として選択する確率を決定してもよい。また、以上の説明ではユーザーをノードとする有向グラフを用いてユーザー単位で評価値を算出することとしたが、これに代えて、複数ユーザーから構成されるユーザーグループ(チーム)をノードとしてチーム対戦の結果に対する解析を行い、グループ単位での評価値を算出してもよい。この場合行動結果取得部21は、ユーザーグループ間で行われた行動(ここではチーム対戦)の結果を示す行動結果データを取得する。そして、評価値算出部22は、これまで説明したユーザーの代わりにユーザーグループをノード(評価単位)として評価値算出処理を実行し、各ユーザーグループの評価値を算出する。
 ここで、評価値算出部22が算出した評価値に基づいて評価情報提供部23が提供する情報の具体例について説明する。例えば評価情報提供部23は、全ユーザーを評価値でソートして各ユーザーの順位付けを行い、ユーザーごとの順位情報を提供してもよい。この場合、今日の対戦結果、今月の対戦結果、及びこれまでの全ての対戦結果をそれぞれ処理対象とすることで、それぞれの期間におけるランキングを算出してもよい。図5はあるユーザーについてこのようなランキング情報を表示する画面の一例を示している。ここでは、ゲームAについて、総合、今月、今日の順位が示されている。また、ユーザーの地域別の順位(ここでは日本国内での順位、及び東京内での順位)も示されている。また、評価情報提供部23は、各ユーザーがゲームシステム内に用意された仮想的な地域やチームに属している場合、このような仮想の地域やチーム内での順位の情報を提供してもよい。さらに、情報処理システム1で複数種類のゲームをプレイ可能な場合、ゲームの種類ごとに評価値を算出し、その合計を算出することによって、複数ゲームの総合ランキングを決定してもよい。また、評価情報提供部23は、チームや地域ごとに、同じチーム、あるいは同じ地域に属するユーザーの評価値を合計することによって、チーム別のランキングや地域別のランキングを決定してもよい。評価情報提供部23は、情報の提供要求を行った要求ユーザーに対して、当該要求ユーザー自身のランキング情報だけでなく、要求ユーザーの友人として登録されたユーザーや、各種のランキングで上位に入っている他のユーザーのランキング情報を提供してもよい。
 また、評価情報提供部23は、要求ユーザーからの要求に応じて、当該要求ユーザーが次にゲーム対戦を行う対戦相手の候補となるユーザー(推薦ユーザー)を選択し、この推薦ユーザーの情報を要求ユーザーに対して提供してもよい。さらにこの場合において評価情報提供部23は、推薦ユーザーと要求ユーザーとの間で過去に行われた行動に関する情報を、要求ユーザーに提供してもよい。具体例として、評価情報提供部23は、要求ユーザーと評価値が近いユーザーを推薦ユーザーとして選択する。また、要求ユーザーよりも評価値が高いユーザー(すなわち、実力が上のユーザー)や評価値が低いユーザーを推薦ユーザーとして選択してもよい。図6はこのような推薦ユーザー(対戦相手候補)の表示例を示しており、推薦ユーザーのユーザー名と関連付けて当該推薦ユーザーの評価値がスコアとして表示されている。また、当該推薦ユーザーと要求ユーザーとの間で過去に対戦が行われたか否かを示す履歴情報も表示されている。要求ユーザーは、このスコアを参照することによって、相手の実力を考慮してゲームの対戦相手を選択することができる。
 本発明の実施の形態は、以上説明したものに限られない。例えば以上の説明では、ゲームサーバ4がゲームの処理を行うこととしたが、各ユーザー端末3がゲームの処理を実行することとし、ゲーム対戦時にはユーザー端末3は対戦相手のゲーム端末3と直接データを授受することとしてもよい。
 また、以上の説明では、評価値算出部22は、トレース処理の実行中にターゲットユーザーに勝利したユーザーを次のターゲットユーザーとして選択することとした。しかしながら、勝利したユーザーだけでなく、ターゲットユーザーとの対戦結果が引き分けだったユーザーについても、新たなターゲットユーザーとして選択可能であることとしてもよい。また、評価値算出部22は、勝利ユーザーを選択するのではなく、ターゲットユーザーに敗北したユーザーを新たなターゲットユーザーとして選択してもよい。この場合には、他のユーザーに負けた対戦結果があるユーザーほど、評価値が大きくなる。そのため、評価値算出処理によって得られた評価値が小さい順にユーザーをソートすることで、ユーザーのランキングを得ることができる。
 また、本発明の実施の形態に係る集計サーバ2が処理対象とするのは、ゲームの対戦結果を示す行動結果データに限られず、管理サーバ2は各種のユーザー間で行われた行動の結果に関するデータを処理対象としてもよい。具体例として、各ユーザーは、ゲーム対戦を行った際に対戦相手を評価する情報を入力することとし、集計サーバ2は、このような情報入力によって得られた評価内容を示す行動結果データを解析して、各ユーザーが対戦相手にどのように評価されたかを示す評価値を算出してもよい。この例においてゲームサーバ4は、ゲーム対戦が行われた際に各ユーザーから対戦相手に対する評価を示す情報を取得して蓄積する。そして、対戦結果を示す行動結果データとは別に、このような評価内容を示す行動結果データを集計サーバ2に提供する。この評価は、相手のプレイがよかったかどうか、相手がフェアだったか、対戦相手として好ましかったかなどに関するものであってよく、必ずしもゲームの実力に関するものである必要はない。例えばユーザーAがユーザーBをポジティブに評価する行動を行った場合、このような行動の結果を表すユーザーAからユーザーBに向かうエッジを持った有向グラフが生成できる。評価値算出部22は、この有向グラフに対して対戦結果の場合と同様のトレース処理を行う。具体的に、ユーザーAがユーザーB及びCのそれぞれを評価しており、ユーザーAが現在のターゲットユーザーとして選択されている場合、評価値算出部22は、ユーザーB及びCのいずれか一方を次のターゲットユーザーとして選択し、選択したユーザーのノードにランダムトレーサーをホップさせ、その評価値にポイントを加算する。このような解析を行うことにより、評価値算出部22は、より多くのユーザーから評価されたユーザーの評価値が高くなるように、また、評価の高いユーザーに評価されたユーザーの評価値が高くなるように、各ユーザーの評価値を算出することができる。
 上記の例において、ユーザーが行った評価の内容が多段階で示される場合、評価値算出部22は、その評価内容をゲームのスコアと同じように用いることによって、より高い評価を受けたユーザーを選択し易くなるような確率で、ランダムトレーサーの移動先を選択してもよい。また、あるユーザーが特定のユーザーと複数回の対戦を行った場合に、その複数回の対戦のつど評価を行うこともあり得る。このような場合、評価回数を対戦の勝数と同じように利用して、より評価された回数の多いユーザーを選択し易くなるような確率で、ランダムトレーサーの移動先を選択してもよい。
 また、ソーシャルネットワーキングサービスなどでも、各ユーザーが、他のユーザーの発言に対してコメントしたり、他のユーザーの発言に対してボタンを操作して何らかのポジティブな、またはネガティブな評価を示したりすることが行われている。そこで、このようなユーザー同士の間で行われた評価行動についても、前述したゲーム対戦の評価と同様にして、解析対象とすることができる。
 1 情報処理システム、2 集計サーバ、3 ユーザー端末、4 ゲームサーバ、11 制御部、12 記憶部、13 通信部、21 行動結果取得部、22 評価値算出部、23 評価情報提供部。

Claims (12)

  1.  複数のユーザー又はユーザーグループについて、当該複数のユーザー又はユーザーグループ間で行われた行動の結果を示す行動結果データを取得する行動結果取得部と、
     前記複数のユーザー又はユーザーグループの中から、ランダムに一のユーザー又はユーザーグループをターゲットとして選択する起点選択処理、及び、
     前記行動結果データに基づいて、現在のターゲットとして選択されたユーザー又はユーザーグループが行った行動の相手となった相手ユーザー又は相手ユーザーグループを次のターゲットとして新たに選択する処理を、所定条件を満たすまで繰り返すターゲット選択処理、
     から構成されるトレース処理を複数回実行し、前記複数のユーザー又はユーザーグループのそれぞれについて、前記複数回のトレース処理において当該ユーザー又はユーザーグループがターゲットとして選択される回数に応じて当該ユーザー又はユーザーグループの評価値を算出する評価値算出部と、
     を含むことを特徴とする情報処理装置。
  2.  請求項1に記載の情報処理装置において、
     前記評価値算出部は、前記ターゲット選択処理において、前記現在のターゲットが行った行動の相手となった相手ユーザー又は相手ユーザーグループが複数いる場合、当該複数の相手ユーザー又は相手ユーザーグループの中からランダムに前記次のターゲットを選択する
     ことを特徴とする情報処理装置。
  3.  請求項2に記載の情報処理装置において、
     前記評価値算出部は、前記ターゲット選択処理において、前記複数の相手ユーザー又は相手ユーザーグループのそれぞれと前記現在のターゲットとの間で行われた行動についての行動結果データの内容に応じて決まる確率で、ランダムに前記次のターゲットを選択する
     ことを特徴とする情報処理装置。
  4.  請求項3に記載の情報処理装置において、
     前記評価値算出部は、前記ターゲット選択処理において、前記行動の内容に対する信頼度を評価し、前記確率を前記信頼度に応じてランダムに変動させたうえで、当該変動された確率に応じて前記次のターゲットを選択する
     ことを特徴とする情報処理装置。
  5.  請求項1に記載の情報処理装置において、
     前記評価値算出部は、前記トレース処理において前記複数のユーザー又はユーザーグループのそれぞれがターゲットとして選択されるごとに、所与のポイントを当該ユーザー又はユーザーグループの評価値に加算することによって、前記複数のユーザー又はユーザーグループそれぞれの評価値を算出する
     ことを特徴とする情報処理装置。
  6.  請求項5に記載の情報処理装置において、
     前記評価値算出部は、前記複数のユーザー又はユーザーグループのそれぞれがターゲットとして選択された場合に、それまでに前記ターゲット選択処理において選択されたターゲットの数が多いほど、大きなポイントを当該ユーザー又はユーザーグループの評価値に加算する
     ことを特徴とする情報処理装置。
  7.  請求項5に記載の情報処理装置において、
     前記評価値算出部は、前記複数のユーザー又はユーザーグループのそれぞれが新たなターゲットとして選択された場合に、当該新たなターゲットの一つ前のターゲットと当該新たなターゲットとの間で行われた行動についての行動結果データに応じて決まるポイントを、当該新たなターゲットとして選択されたユーザー又はユーザーグループの評価値に加算する
     ことを特徴とする情報処理装置。
  8.  請求項1に記載の情報処理装置において、
     前記複数のユーザー又はユーザーグループのそれぞれについて算出された前記評価値を用いて、前記複数のユーザー又はユーザーグループのうちの要求ユーザー又は要求ユーザーグループについて、当該要求ユーザー又は要求ユーザーグループの次の行動の相手として推薦する推薦ユーザー又は推薦ユーザーグループを選択し、当該選択した推薦ユーザー又は推薦ユーザーグループの情報を前記要求ユーザー又は前記要求ユーザーグループに属するユーザーに提供する情報提供部をさらに含む
     ことを特徴とする情報処理装置。
  9.  請求項8に記載の情報処理装置において、
     前記情報提供部は、前記選択した推薦ユーザー又は推薦ユーザーグループについて、当該推薦ユーザー又は推薦ユーザーグループと前記要求ユーザー又は要求ユーザーグループとの間で行われた過去の行動に関する情報を、前記推薦ユーザー又は推薦ユーザーグループの情報とともに前記要求ユーザー又は前記要求ユーザーグループに属するユーザーに提供する
     ことを特徴とする情報処理装置。
  10.  複数のユーザー又はユーザーグループについて、当該複数のユーザー又はユーザーグループ間で行われた行動の結果を示す行動結果データを取得するステップと、
     前記複数のユーザー又はユーザーグループの中から、ランダムに一のユーザー又はユーザーグループをターゲットとして選択する起点選択処理、及び、
     前記行動結果データに基づいて、現在のターゲットとして選択されたユーザー又はユーザーグループが行った行動の相手となった相手ユーザー又は相手ユーザーグループを次のターゲットとして新たに選択する処理を、所定条件を満たすまで繰り返すターゲット選択処理、
     から構成されるトレース処理を複数回実行し、前記複数のユーザー又はユーザーグループのそれぞれについて、前記複数回のトレース処理において当該ユーザー又はユーザーグループがターゲットとして選択される回数に応じて当該ユーザー又はユーザーグループの評価値を算出するステップと、
     を含むことを特徴とする情報処理方法。
  11.  複数のユーザー又はユーザーグループについて、当該複数のユーザー又はユーザーグループ間で行われた行動の結果を示す行動結果データを取得する行動結果取得部、並びに、
     前記複数のユーザー又はユーザーグループの中から、ランダムに一のユーザー又はユーザーグループをターゲットとして選択する起点選択処理、及び、
     前記行動結果データに基づいて、現在のターゲットとして選択されたユーザー又はユーザーグループが行った行動の相手となった相手ユーザー又は相手ユーザーグループを次のターゲットとして新たに選択する処理を、所定条件を満たすまで繰り返すターゲット選択処理、
     から構成されるトレース処理を複数回実行し、前記複数のユーザー又はユーザーグループのそれぞれについて、前記複数回のトレース処理において当該ユーザー又はユーザーグループがターゲットとして選択される回数に応じて当該ユーザー又はユーザーグループの評価値を算出する評価値算出部、
     としてコンピュータを機能させるためのプログラム。
  12.  複数のユーザー又はユーザーグループについて、当該複数のユーザー又はユーザーグループ間で行われた行動の結果を示す行動結果データを取得する行動結果取得部、並びに、
     前記複数のユーザー又はユーザーグループの中から、ランダムに一のユーザー又はユーザーグループをターゲットとして選択する起点選択処理、及び、
     前記行動結果データに基づいて、現在のターゲットとして選択されたユーザー又はユーザーグループが行った行動の相手となった相手ユーザー又は相手ユーザーグループを次のターゲットとして新たに選択する処理を、所定条件を満たすまで繰り返すターゲット選択処理、
     から構成されるトレース処理を複数回実行し、前記複数のユーザー又はユーザーグループのそれぞれについて、前記複数回のトレース処理において当該ユーザー又はユーザーグループがターゲットとして選択される回数に応じて当該ユーザー又はユーザーグループの評価値を算出する評価値算出部、
     としてコンピュータを機能させるためのプログラムを格納した、コンピュータ読み取り可能な情報記憶媒体。
     
PCT/JP2014/063516 2013-09-02 2014-05-21 情報処理装置 WO2015029512A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201480047046.7A CN105474254A (zh) 2013-09-02 2014-05-21 信息处理设备
JP2015534026A JP6313310B2 (ja) 2013-09-02 2014-05-21 情報処理装置
EP14840286.0A EP3043311B1 (en) 2013-09-02 2014-05-21 Information processing device
US14/912,552 US20160199739A1 (en) 2013-09-02 2014-05-21 Information processing apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013181631 2013-09-02
JP2013-181631 2013-09-02

Publications (1)

Publication Number Publication Date
WO2015029512A1 true WO2015029512A1 (ja) 2015-03-05

Family

ID=52586094

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/063516 WO2015029512A1 (ja) 2013-09-02 2014-05-21 情報処理装置

Country Status (5)

Country Link
US (1) US20160199739A1 (ja)
EP (1) EP3043311B1 (ja)
JP (2) JP6313310B2 (ja)
CN (1) CN105474254A (ja)
WO (1) WO2015029512A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017023718A (ja) * 2015-07-22 2017-02-02 Line株式会社 アイテム管理サーバ、その方法及び該コンピュータプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3190550A1 (en) * 2016-01-11 2017-07-12 Nintendo Co., Ltd. Method and device for refining selection of items as a function of a multicomponent score criterion
JP6442061B2 (ja) * 2016-09-01 2018-12-19 任天堂株式会社 ゲームシステム、ゲーム処理方法、ゲームプログラム、およびゲーム装置
JP6957293B2 (ja) * 2017-09-27 2021-11-02 株式会社ユニバーサルエンターテインメント ゲームシステム、ゲームプログラム、及び、ゲーム制御方法
CN108305005A (zh) * 2018-02-01 2018-07-20 深圳市鹰硕技术有限公司 学习竞赛中的竞赛对象匹配方法以及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090093287A1 (en) * 2007-10-09 2009-04-09 Microsoft Corporation Determining Relative Player Skills and Draw Margins
JP2009525807A (ja) * 2006-02-10 2009-07-16 マイクロソフト コーポレーション プレイヤの相対的スキルの決定
JP2009165562A (ja) * 2008-01-11 2009-07-30 Sega Corp ゲームシステム及びゲーム制御方法
JP2011217762A (ja) * 2010-04-02 2011-11-04 Taito Corp マッチングプログラム、マッチングサーバ及びゲームシステム
JP2012106110A (ja) * 2012-03-09 2012-06-07 Dowango:Kk ゲーム装置、ゲーム装置の動作方法、およびプログラム
JP2013168177A (ja) * 2013-05-07 2013-08-29 Fujitsu Ltd 情報提供プログラム、情報提供装置および検索サービスの提供方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7192352B2 (en) * 1996-04-22 2007-03-20 Walker Digital, Llc System and method for facilitating play of a video game via a web site
US7758426B2 (en) * 2003-06-26 2010-07-20 Seung June Song On-line game tournament system the prize money of which is determined by the winning number and the method for the same
JP2005118543A (ja) * 2003-09-24 2005-05-12 Sega Corp ランキングデータ生成プログラム
US7354345B2 (en) * 2004-05-25 2008-04-08 Microsoft Corporation Multilevel online tournament
US7971226B2 (en) * 2005-04-01 2011-06-28 The Upper Deck Company, Llc Interactive game system with computer-animated game pieces
US8346863B2 (en) * 2006-08-15 2013-01-01 International Business Machines Corporation Contact initialization based upon automatic profile sharing between computing devices
US20090325709A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Game Clan Matchmaking
US20140006417A1 (en) * 2012-07-01 2014-01-02 Shubhendu Sekhar Mukherjee Method and Apparatus to Generate Ratings for a Tangible or Non-Tangible Object by Comparing Against Other Tangible or Non-Tangible Objects
US20140274304A1 (en) * 2013-03-13 2014-09-18 Ignite Game Technologies, Inc. Method and apparatus for evaluation of skill level progression and matching of participants in a multi-media interactive environment
US20170282082A1 (en) * 2015-05-29 2017-10-05 ATTAQ Online, Inc. Automated tournament platform for online video games

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009525807A (ja) * 2006-02-10 2009-07-16 マイクロソフト コーポレーション プレイヤの相対的スキルの決定
US20090093287A1 (en) * 2007-10-09 2009-04-09 Microsoft Corporation Determining Relative Player Skills and Draw Margins
JP2009165562A (ja) * 2008-01-11 2009-07-30 Sega Corp ゲームシステム及びゲーム制御方法
JP2011217762A (ja) * 2010-04-02 2011-11-04 Taito Corp マッチングプログラム、マッチングサーバ及びゲームシステム
JP2012106110A (ja) * 2012-03-09 2012-06-07 Dowango:Kk ゲーム装置、ゲーム装置の動作方法、およびプログラム
JP2013168177A (ja) * 2013-05-07 2013-08-29 Fujitsu Ltd 情報提供プログラム、情報提供装置および検索サービスの提供方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3043311A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017023718A (ja) * 2015-07-22 2017-02-02 Line株式会社 アイテム管理サーバ、その方法及び該コンピュータプログラム

Also Published As

Publication number Publication date
JPWO2015029512A1 (ja) 2017-03-02
US20160199739A1 (en) 2016-07-14
JP2018106755A (ja) 2018-07-05
JP6557751B2 (ja) 2019-08-07
CN105474254A (zh) 2016-04-06
EP3043311B1 (en) 2019-01-02
JP6313310B2 (ja) 2018-04-18
EP3043311A1 (en) 2016-07-13
EP3043311A4 (en) 2017-04-19

Similar Documents

Publication Publication Date Title
JP6557751B2 (ja) 情報処理装置
US20190118097A1 (en) Dynamic requirement variation for online game network asset acquisition
US10118101B2 (en) Systems and methods for crowd-sourced game strategy
US11504616B2 (en) Method of controlling a server, server, and non-transitory computer-readable recording medium
US8858314B1 (en) Video game with expedited combat
Hossain et al. Competing matchmakers: an experimental analysis
JP5898103B2 (ja) ゲーム制御装置、プログラム、ゲームシステム
CN107335220B (zh) 一种消极用户的识别方法、装置及服务器
JP5997319B2 (ja) サーバシステム
JP5758438B2 (ja) サーバシステム
US9320973B2 (en) Game server, game controlling method, game program recording medium, and game system
JP6243358B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラム及び情報記憶媒体
Michalski et al. Negative effects of incentivised viral campaigns for activity in social networks
CN107609895B (zh) 一种合并业务区域的处理方法及其设备
JP2016120134A (ja) ゲームサーバ、ゲーム制御方法、ゲームプログラム、記録媒体及び端末装置
US9352234B2 (en) Player rankings based on long term opponent activity
JP2007105071A (ja) ネットワークゲームを実行するネットワークゲームシステム、及びサーバー装置
KR101996034B1 (ko) 게임 프로그램의 친구 추천 방법 및 서버
JP5760288B1 (ja) 端末装置、端末装置のゲーム実行方法、ゲーム実行プログラム、及びゲーム実行プログラム記録媒体
US10471359B2 (en) Game and method of playing the same
JP2016041242A5 (ja)
JP2015008735A (ja) サーバ装置
WO2018000611A1 (zh) 一种用户数据处理方法及电子设备
JP5424433B2 (ja) ゲーム装置、ゲーム装置の動作方法、およびプログラム
JP2016077358A (ja) ゲームサーバ、ゲーム制御方法、ゲームプログラム、ゲームプログラム記録媒体及びゲームシステム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201480047046.7

Country of ref document: CN

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

Ref document number: 14840286

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015534026

Country of ref document: JP

Kind code of ref document: A

REEP Request for entry into the european phase

Ref document number: 2014840286

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014840286

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14912552

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE