Predicting And Optimizing The End Price Computer Science Essay

Print   

02 Nov 2017

Disclaimer:
This essay has been written and submitted by students and is not an example of our work. Please click this link to view samples of our professional work witten by our professional essay writers. Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of EssayCompany.

ABSTRACT

Online auction has now been a popular mechanism in setting bid price by online users, which is being estimated to account for 30% electronic commerce. Auction price prediction, involving the modeling of uncertainty regarding the bidding process, is a challenging task primarily due to the variety of factors changing in auction environment including human behavior. Thus, this paper focuses on predicting the end price in an online auction using a combination of Fuzzy Logic and Hybrid Genetic Algorithm (HGA). The prediction of final prices of the English auctions is by using real-world online auction data, which is collected from eBay Auction. The Fuzzy system is used to predict the imprecise value from the data set and then the predicted value along with the latest bid values is given to the hybrid genetic algorithm to result the optimized end-price value. This approach provides computer simulated experiments to evaluate the performance of the proposed approach.

INTRODUCTION

The internet started revolutionized the commercial world in 90’s, which paved the way for the online auctions. In mid 90’s, the auctions on internet have grown at a tremendous rate. They are been considered as a best way of trading used items for scrap value and new items for profit. Online auction is being estimated to account for 30% electronic commerce by 2010.[1] It has now been a popular process in setting bid price for online users. Auction price prediction involves in the structuring of improbability regarding the bidding process. It is a challenging task first and foremost due to the variety of factors that happens to change in auction settings. Even if all the factors were accounted for, there is still the uncertainty in human behavior while bidding at auctions.

The prediction of the end price in an online auction is by using a combination of algorithms and logics. The consideration of the psychology determines the varying nature of the human mind with respect to the auction environment. It makes the patterns in the bidding process to be non-linear and so the linear prediction systems are not enough to predict the end price in an online auction. Hence, non-linear logic is used to bring in variables in auction that cannot be expressed in numerical terms otherwise. These factors have a profound effect on the auction bids and hence a suitable logic is used to represent these factors.

The system is constructed to predict the final prices of the auctions, using real-world online auction data, collected from eBay Auction. The observed results show that a non-linear system can catch the complicated relationship among the variables accurately much better than the others, which is of great help for the buyers to avoid overpricing and for the sellers to facilitate the auction.

RELATED WORKS

The economists have special interests on online auction and bidding process, several logics and techniques were proposed by researchers for predicting end bid prices. In such way, researchers proposed the prediction logic using the concepts of Data Mining, Fuzzy Logic, Genetic Algorithm, Neuro Fuzzy, Grey System Theory, etc.

Data Mining Concepts

Data Mining [3] technique are being approached using Neural Network and Bayesian Network. To forecast the winning bid prices, this progresses four processes. They are Data Collection, Variable Selection, Data Transformation and Data Mining. Data Collection is for identifying the available data from sources and to extract the data. The strategy of data collection process will be varying with respect to the objectives. In Variable Selection, the variables selected for data mining are known as active variables. They are actively used to differentiate segments, make predictions, perform some other data mining operations. To select the variables for input variables, regression analysis, stepwise regression, discrimination analysis and decision tree are used, based on selected variables and subjective judgment, input variables are selected. During Data Transformation, the original value of data will be transformed for Data Mining. This is an important step for accuracy and validity of the result which also depends on how the data analyst decides to form and present the input variable. Finally, actual Data Mining phase takes place to apply the selected data mining technique to transformed data. However, it has disadvantages at neural network process like it requires input variables in the range from 0 to 1, it cannot explain the results and also it may converge prematurely to an inferior solution.

Fuzzy Logic

Fuzzy logic [1] utilizes fuzzy sets defined by membership functions in logical expressions to deal with the extent to which the object belongs to the set. Basically the construction of a fuzzy logic system consists of three major steps: fuzzification, construction of knowledge base and defuzzificaiton. Fuzzification is the process of converting crisp values to fuzzy values (e.g., low, medium, high) Each linguistic variable after mapping can have difference membership function values for different linguistic term, it breaks traditional binary logic that a case can only belong to or not belong to a category. This process is what we call Fuzzification. Knowledge Base is constructed by a series of "IF-THEN" rules. After Fuzzification and fuzzy inference, each input value will have a corresponding value for each linguistic term of the output variable. The process to convert fuzzy values to the corresponding crisp value is called Defuzzification. Basically it consists of two main steps. In the first step, a representative value is determined for each term in the linguistic variable. In the second step, the best crisp value for the linguistic result is computed. However, it gives only the predicted values at random, thus it cannot be considered as optimized values.

Genetic Algorithm concepts

Genetic Algorithm [4] is search algorithm based on the technicalities of natural selection process and genetics and they combine the fittest survival among string structures to structure a search algorithm. Genetic Algorithm is particularly suitable for multi-parameter optimization problems with an objective function subject to numerous hard and soft constraints. The main idea of GA is to start with a population of solutions to a problem, and attempt to produce new generations of solutions which are better than the previous ones. Genetic Algorithm operates through a simple cycle consisting of the following four stages: initialization, selection, crossover, and mutation. In the initialization stage, a population of genetic structures (called chromosomes) that are randomly distributed in the solution space is selected as the starting point of the search. These chromosomes can be encoded using a variety of schemes including binary strings, real numbers or rules. After the initialization stage, each chromosome is evaluated using a user-defined fitness function. The goal of the fitness function is to numerically encode the performance of the chromosome. For real- world applications of optimization methods such as GA, the choice of the fitness function is the most critical step. The mating convention for reproduction is such that only the high scoring members will preserve and propagate their worthy characteristics from generations to generation and thereby help in continuing the search for an optimal solution. The chromosomes with high performance may be chosen for replication several times whereas poor-performing structures may not be chosen at all. Such a selective process causes the best-performing chromosomes in the population to occupy an increasingly larger proportion of the population over time. Crossover causes to form a new offspring between two randomly selected ‘good parents'. Crossover operates by swapping corresponding segments of a string representation of the parents and extends the search for new solution in far-reaching direction. The crossover occurs only with some probability (the crossover rate). There are many different types of crossover that can be performed: the one-point, the two-point, and the uniform type. Mutation is a GA mechanism where we randomly choose a member of the population and change one randomly chosen bit in its bit string representation. Although the reproduction and crossover produce many new strings, they do not introduce any new information into the population at the bit level. If the mutant member is feasible, it replaces the member which was mutated in the population. The presence of mutation ensures that the probability of reaching any point in the search space is never zero. But the value cannot be assured as perfect, since it just gives the selected value from the unpredicted value range.

Neuro Fuzzy technique

Neural networks [1] impersonate biological information processing mechanisms which are designed to perform a nonlinear mapping from a set of inputs to a set of outputs. The mapping is carried out by the processing elements, called artificial neurons, which are interconnected to form a network divided into layers (usually three): the input layer receives inputs from outside, the output layer sends outputs to the outside and one or more intermediate layers (hidden layer) connect the input and output layers. Basically a neuro-fuzzy system is a fuzzy logic system with a learning algorithm derived from the neural network theory to determine its parameters, including the parameters of the membership function and the relative importance of each fuzzy rule. The most common approach used to combine the two techniques is so-called Fuzzy Associative Memory. It attempts to use neural networks to implement the desired mapping for fuzzy systems by applying fuzzy rules to a set of inputs, combining the consequents of each rule, and producing a value for the output variable. Each rule is associated with a weight that represents the importance of the rule in relevance to the other rules in the system. The errors between the results computed by the Fuzzy Associative Memory system and the desired output are used to modify the weights. The training process will stop until the error is less than a certain threshold value. A fuzzy logic system is constructed by using the complete knowledge base to describe the relationship among independent and dependent variables. Then the knowledge base is fine-tuned by using the learning ability of neural network based on the training data set. Finally we use the testing data set to validate the obtained model. However, the fuzzy prediction is not so accurate and the process involved in neural network to bring out the solutions is not transparent.

GENETIC- FUZZY APPROACH

Introduction

Online auctions are making its own popularity among the economists and consumers. At this trend, a system that predicts the end price of these online auctions in an unbiased manner will be a necessary tool. Prediction should be unbiased and should not have human intervention which may bias the results. Using the Genetic Algorithm and Fuzzy Logic capabilities we can design a system that can satisfy the unbiased criteria.

The proposed work is to predict the end bid value of an online auction using the previous bids and other factors that affect an auction. The genetic approach used here is well suited for auctions but they can also be used to predict similar environments like the stock market. The test results show that the Genetic Fuzzy works well in predicting and optimizing the final bid. The Fuzzy logic makes the prediction closer to the actual bid thus justifying its use here. Output of Fuzzy logic is given as input to the genetic algorithm and the predicted end price is optimized. Future work can be done on adjusting the system in order for it to work for other type of auctions as now it can work only on the English auction.

Optimized Price

Last 10 of auction data values

Selection

Crossover & Mutation

Checking Fitness value

Existing Auction data

Fuzzy Logic

Predicted Price

Initial Population

Evaluation of Fitness

The proposed system can also be adjusted to get inputs from databases with the bid details. Another way of getting the bids as input is to enter each one manually. The system does not need inputs other than the bids. Unlike in linear prediction systems which need inputs other than the bids, there is no need for such information to be provided and hence the system is independent of the user view and thus is unbiased and finally the predicted end price is optimized.

Fig 1 Flow Chart Of GENETIC FUZZY approach

THE WORKING OF A GENETIC FUZZY SYSTEM

Since genetic fuzzy is basically a fuzzy logic system combined with the learning ability of genetic algorithm, the fuzzy logic, genetic algorithm and finally the Genetic Fuzzy system has been introduced in the following.

FUZZY LOGIC SYSTEM

The fuzzy logic [1] is a process to predict the value from a set. The fuzzy process results a predicted value which will be always a unprecised one. The process involves in creation of member functions. When the member function is created, the fuzzification process can be applied. Certain fuzzy rules shall be applied on fuzzified sets. This appliction of fuzzy rules on fuzzification is the mechanism of Inference mechanism.

Fuzzy Rule Base

Fuzzfication

Defuzzfication

Fuzzy Inference

Engine

Existing Bid Values

Predicted Price

Fuzzy Input Subsets

Fuzzy Output Subsets

For understanding the fuzzy process, we shall work on an illustration. Let us consider 1 to 10 as bid values in price and .0 to .60 as time in seconds. By creating member function, the bid values from 1 to 3 be low, 2 to 8 be medium, 7 to 10 be high, and for time values, from 0 to 25 be low, 15 to 45 be medium, 40 to 60 be high.

Let the input variables be Ps, Pm, Pf, which is low, medium, high respectively. Now the process of fuzzification is implemented on the fuzzy values. Fuzzification is the process of converting crisp values to fuzzy values (e.g., low, medium, high). For example, we use low, medium, and high to describe the extent of starting price (Ps) and external reference price (Pm). For every linguistic variable, each term is defined by its membership function. If the figures of one data are {Ps , Pm}= {6,9}, for example, then the corresponding values of each term are described as follows.

Ps: μlow (6) = 0.6,μ medium (6) = 0.4,μhigh (6) = 0

Pm:μlow (9) = 0.34,μ medium (9) = 0.66,μ high (9) = 0

In other words, the corresponding values can be written as follows.

Ps: {low, medium, high} = {0.60, 0.40, 0.00}

Pm: {low, medium, high} = {0.34, 0.66, 0.00}

As Ps equal to 6, its membership function values for low, medium, and high are 0.60, 0.40, and 0.00 respectively. Since each linguistic variable after mapping can have different membership function values for different linguistic term, it breaks traditional binary logic that a case can only belong to or not belong to a category. This process is called as Fuzzification.

Fig2 Fuzzy Logic Overview

After fuzzification and fuzzy inference, each input value will have a corresponding vlaue for each linguistic term of the output variable. For example the corresponding value of the linguisitc term "the Pf is medium" is 0.6. Assume taht the corresponding values for the other linguistic terms are "the Pf is very low" is 0, "the Pf is low" is 0.1, "the Pf is high" 0.35, and "the Pf is very high" is 0. The process to convert fuzzy values to the corresponding crisp value is called defuzzification. This process is carried out using centre of gravity method in which we are using weighted average method which is one of the most commonly used defuzzification method. The Fuzzy system has a characteristic to represent human knowledge or experiences using fuzzy rules.

MODIFIED GENETIC ALGORITHM

Genetic Algorithm [2] is started with a set of solutions (represented by chromosomes) called population. Solutions from one population are taken and used to form a new population. This is motivated by a hope, that the new population will be better than the old one. Solutions which are selected to form new solutions (offspring) are selected according to their fitness - the more suitable they are the more chances they have to reproduce. This is repeated until some condition (for example number of populations or improvement of the best solution) is satisfied.

The Modified Genetic Algorithm procedure consists of selecting a parent pair of chromosomes and then performing crossover and mutation operators (generating the offspring chromosomes – the new population) until the termination condition is reached; then the best individual in the population is selected as a solution to the problem. The crossover operator is used for exchanging information from two parents (vectors p1 and p2) obtained in the selection process by a roulette wheel approach. The recombination process to generate the offsprings (vectors C1, C2, C3 and C4) is done by four crossover operators, which are defined by the following equations:

C1= p1+p2

2

C2=Pmax(1-w)+max(p1,p2)w,

C3=Pmin(1-w)+min(p1,p2)w,

C4= (Pmax+Pmin)(1-w)+(p1+p2)w

2

where w 2 [0, 1] denotes the crossover weight (the closer w is to 1, the greater is the direct contribution from parents), max(p1,p2) and min(p1,p2) denote the vector whose elements are the maximum and the minimum, respectively, between the gene values of p1 and p2. The terms pmax and pmin denote a vector with the maximum and minimum possible gene values, respectively. After offspring generation by crossover operators, the offspring with the best evaluation (greater fitness value) will be chosen as the offspring generated by the crossover process and will be denoted by Cbest. After the crossover operator, Cbest is selected to have a mutation process, where three new mutated offsprings are generated and defined by the following equation:

Mj=ci best +¥i∆Mi, j=1, 2… NG,

where ci can only take the values 0 or 1, DMi are randomly generated numbers such that pmin < Cbest i + DMi < pmax and NG denotes the number of genes in the chromosome. The first mutated offspring (M1) is obtained according to (43) using only one term ci set to 1 (i is randomly selected within the range [1,NG]) and the remaining terms ci are set to 0. The second mutated offspring (M2) is obtained according to (43) using some ci, randomly chosen, set to 1 and the remaining terms ci are set to 0. The third mutated offspring (M3) is obtained according to (43) using all ci set to 1.

Outline of the Modified Genetic Algorithm

Begin MGA

T=0;

Initialize population;

Evaluate f(population);

While not termination condition do

T=T+1;

Select a parent pair of chromosomes (p1, p2) from population;

Begin crossover operator

Generate the offspring c1, c2, c3 and c4y equations (39)-(42);

The offspring with the best fitness function is denoted Cbest;

End

Begin mutation operator with Cbest

Generate the mutated offsprings m1, m2and m3by equation (43);

End

//generate a new population

Insert Cbest in the population;

If random number < Pmut then

The one among M1, M2 and M3 with largest fitness value replaces the individual of

The population with the smallest fitness value;

Else

If f(M1)> smallest fitness value in the population then

M1 replaces the individual of the population with the smallest fitness value;

End

If f(M2)> smallest fitness value in the population then

M2 replaces the individual of the population with the smallest fitness value;

End

If f(M3)> smallest fitness value in the population then

M3 replaces the individual of the population with the smallest fitness value;

End

End

Evaluate f(population);

End

End

OBJECT ORIENTED (PROJECT) DESIGN

ARCHITECTURAL DESIGN

The architectural design describes the layers used in this project. The Interface layer, Business layer and Database layer are integrated to perform the technical task for our problem.

The Fig 6.1 explains the overall design of the "Optimization and Bidding" application. The website mainly consist of three important layers,

Presentation layer.

Business layer.

Database layer.

Figure 6.1 Architectural Design

Presentation layer

In the application layer the user can access and interact with application and application can provide information to user. The administrator, who has already accessed in, takes in the request and sends it to the processing layer.

Business layer

In the business layer, the user who has already accessed in with the Auction id is provided with the information from the database. Based on the values, the user is provided with the required results.

DataBase layer

The data layer is responsible for maintaining the data about the different bidded values and the various bidding information and updates.

CONCLUSION

The proposed system is trying to propose a final price prediction model for online auction based on the real world data with the help of genetic fuzzy technique to catch the complicated relationship among the final price and key factors involved in an auction. The empirical results show that genetic fuzzy performs the best no matter in the training data sets or testing data sets. In addition to the better prediction accuracy, genetic fuzzy system also provides the knowledge base obtained from the data set which describes the delicate relationship among the variables. This knowledge can not only provide practitioners some insights in understanding the bidding process but also provide the academia the basis for constructing hypotheses for further investigation. This proposed genetic fuzzy system will show a promising perspective to explore the online auction.

APPLICATIONS

The ability to predict the final price of online auction items can be of great help for both the buyers and sellers, the following applications are recommended for buyers and sellers.

Buyers

Being able to make predictions about the likely closing prices of the various auction items, the buyer can determine which auction is more close to his/her willingness-to-pay to place a bid. In doing so, the bidder can make bidding decision with the aid of the predicting model and diminish the uncertainty with respect to winning the item in the auction.

Sellers

The model of the final-price based on the attributes of the auction can also be used to help sellers to set the auction rules of their items to facilitate the completion of the auction. When the seller enters the information of the item they want to sell, our model would give suggestions for the auction attributes to maximize the final price and enhance the efficiency of the transaction.



rev

Our Service Portfolio

jb

Want To Place An Order Quickly?

Then shoot us a message on Whatsapp, WeChat or Gmail. We are available 24/7 to assist you.

whatsapp

Do not panic, you are at the right place

jb

Visit Our essay writting help page to get all the details and guidence on availing our assiatance service.

Get 20% Discount, Now
£19 £14/ Per Page
14 days delivery time

Our writting assistance service is undoubtedly one of the most affordable writting assistance services and we have highly qualified professionls to help you with your work. So what are you waiting for, click below to order now.

Get An Instant Quote

ORDER TODAY!

Our experts are ready to assist you, call us to get a free quote or order now to get succeed in your academics writing.

Get a Free Quote Order Now