overallPV: Calcultes the overall prospect values using PT (prospect...

Description Usage Arguments Details Value References See Also Examples

Description

(1) It calculates the normalized gain and loss matrices, (2) with both matrices the value matrix is then calculated and finally (3) the prospect value for each alternative/round/row. From step (2) to (3) this function uses prospect theory's (PT) value function[1,2] and a method proposed by [3]. Its equivalent function for multi-reference point approaches are overallDRP and overallTRP.

Usage

1
2
3
4
overallPV(dataset, userid = NULL, attr = NULL, rounds = NULL,
  refps = NULL, cost_ids = NULL, weight = NULL,
  weightFUN = "differenceToIdeal", alpha = 0.88, beta = 0.88,
  lambda = 2.25, gamma)

Arguments

dataset

a data.frame with the user generated data from a product configurator. See Details of decisionMatrix for more information about which data should included in this argument.

userid

an integer vector indicating for which user the output of this function should be calculated. This functions is vectorised in this argument, i.e. you may enter more userIDs simultaneously.

attr

attribute IDs, vector of integer numbers corresponding to the attributes (columns) you desire to use.

rounds

integer vector, text option or a list of integer vectors. Which steps of the configuration process should be shown? Defaults are first and last step. Text options are all, first, last. Alternatively, a vector of arbitrarily chosen rounds can be entered as well.

refps

a list of numeric vectors, one for each user. Reference Points: each point corresponds to one attribute, therefore the amount of attributes and of refps entered, should be equal. Default assumes the refps as the default values of the initial product configuration for each user. You may fully or partially enter your own reference points, check below for more info.

cost_ids

argument used to convert selected cost attributes into benefit attributes. Integer vector. Cost type attributes have the characteristic, that a lower value means the user is better off than with a higher value. E.g. price is often considered a cost type attribute. Should be equal to attr input or a subset of it.

weight

numeric vector. Represents the importance or relevance that an attribute has and the weight it should have in the calculation of the prospect value. Alternatively, you can enter a list of numeric vectors, each element of the list corresponding to one user in userid.

weightFUN

indicated which weight function should be used to calculate the weight vector, the options are "differenceToIdeal", "entropy", "highAndStandard", "standard". Default ist differencetoIdeal.

alpha

numeric between [0, 1]. Determines the concativity of the value function and has a default value of 0.88 as given by Reference[1].

beta

numeric between [0, 1]. Determines the convexity of the value function and has a default value of 0.88 as given by Reference[1].

lambda

lambda > 1. Parameter of loss aversion for the value function as and has a default value of 2.25 given by Reference[1].

gamma

numeric and between 0 and 1. It is a parameter used for the function weight.highAndStandard and highAndStandard, please the former to know its use.

Details

In the context of data stemming from product configurators, the highest overall value returned by this function, means that specific product configuration represented the highest value for the user. This depends mainly on three important factors: (1) What theoretical framework you choose to use (PT, DRP, TRP), (2) which decision weights you assign to each attribute, and (3) the reference point(s) you input.

This function is vectorized in the userid parameter. The function does not sort attributes or user IDs. Order of the output is generated as given through the arguments.

The 3 step calculation of the prospect values comes from one specific paper Reference[1]. (1) For the noramlized gain and loss matrices we use the function norm.gainLoss from this package. (2) The value matrix is calculated with a series of auxiliary functions. (3) The prospect value works with a simple additive weighting method from overall_pv_extend.

dataset We assume the input data.frame has following columns usid = User IDs, round = integers indicating which round the user is in (0-index works best for 'round'), atid = integer column for referring the attribute ID (1 indexed), selected = numeric value of the attribute for a specific, given round, selectable = amount of options the user can chose at a given round, with the current configuration. This is a necessary parameter.

userid is a necessary parameter.

weight default orders each attribute a weight <= 1 according to the the weight function differenceToIdeal. Ideally the sum of all weights equals 1.

alpha Default value as given by Reference [1] is 0.88

beta Default value as given by Reference [1] is 0.88

lambda Default value as given by Reference [1] is 2.25

Value

overall prospect values for each attribute

References

[1]Kahneman, D., & Tversky, A. (1979). Prospect theory: An analysis of decision under risk. Econometrica: Journal of the Econometric Society, 263-291.

[2] Tversky, A., & Kahneman, D. (1992). Advances in prospect theory: Cumulative representation of uncertainty. Journal of Risk and uncertainty, 5(4), 297-323.

[3] Fan, Z. P., Zhang, X., Chen, F. D., & Liu, Y. (2013). Multiple attribute decision making considering aspiration-levels: A method based on prospect theory. Computers & Industrial Engineering, 65(2), 341-350.

See Also

decisionMatrix, overallTRP, overallDRP, weight.differenceToIdeal, weight.entropy, weight.highAndStandard

Examples

1
2
3
4
#Not runnable yet
overallPV(data_camera, 2)
overallPV(data_pc, userid = 1, weight=c(0.1,0.4,0.3,0.2))
overallPV(full_data, 6 ,attr = c(1,2,3), rounds="all", alpha = 0.95, beta = 0.78)

avilesd/productConfig documentation built on May 11, 2019, 4:08 p.m.