I n t e l l i g
e n t
E - B u s i n e s s
A Multi-agent Framework for Automated Online Bargaining
Fu-ren Lin and Kuang-yi Chang, National Sun Yat-sen University
T
he rapid development of Internet technologies is making online shopping and business-to-business purchasing an increasingly attractive option. For example,
search engines and electronic catalogs are useful for researching products and vendors. More advanced still are automated bargaining agents—such as eMediator, AuctionBot,
Automated online bargaining is currently limited by fixed price-issuing capabilities. The authors propose a multiagent framework for automated bargaining that uses pattern matching and a dynamic price- issuing agent to better serve customers and the sellerrsquo;s bottom line.
Tete-a-Tete, and Kasbah—which facilitate price negotiations between buyers and sellers.1,2 Research shows that people might actually prefer shopping online at e-stores that offer the chance to negotiate prices, even if they donrsquo;t end up with the lowest price.3 Despite this clear opportunity, few electronic stores and online business-to-business operations currently offer automated bargaining.
There are several reasons for this. First, the mar- ket determines pricing for products currently sold at e-stores, and sellers see no benefit to bargaining. Sec- ond, e-stores that let buyers bargain without auto- mated support for the process are likely to be over- whelmed by numerous simultaneous transactions. Finally, existing automated support lacks the intelli- gence required to handle real-world situations. To meet demands, software agents must be capable of learning from experiences. Also, existing bargain- ing agents use simple, fixed strategies to issue prices and cannot handle complex situations.
To address this, wersquo;re developing a multiagent framework to support a dynamic, online bargaining process. Our online dynamic bargaining (ODB) sys- tem uses three agents: one that uses data mining tech- niques to generalize bargaining patterns, one that matches the current transaction to an existing pat- tern to facilitate the best vendor response, and a third that dynamically issues prices based on utility theory. Wersquo;ve prototyped the ODB system as a bargain- ing system for various applications, such as online used-car trading. We also use it as a reference in our ongoing development of intelligent bargaining sys- tems, comparing it against different intelligent bar-
gaining approaches, including neural networks and persuasive mechanisms. Here, we describe how the ODB system works and show results from a field experiment in which we compared its performance to that of a similar system in terms of the sellerrsquo;s profit and customer satisfaction.
ODB system framework
A bargaining process consists of a series of price shifts by both sellers and buyers. A deal is made when both sides agree on a proposed price. An auto- mated bargaining system supports this process first by issuing prices according to updates from both sides, then by deciding to accept an offered price.
The ODB system works on the seller side using a multiagent framework to bargain prices with buyers. Figure 1 shows the ODB system architecture. The system consists of three agents: a dynamic price- issuing agent, a pattern generalization agent, and a pattern-matching agent. The dynamic price-issuing and pattern-matching agents execute in front-end settings, interacting with buyers in real time. The pat- tern generalization agent executes in back-end set- tings, processing transaction data periodically to generate bargaining patterns in batch mode.
We define the bargaining pattern as follows: The sellerrsquo;s price series is denoted as S = {S0, S1, S2, ...., Sn} and the buyerrsquo;s is denoted as B = {B0, B1, B2, ...., Bn}. Si and Bi indicate prices issued at the ith step by a seller and a buyer, respectively. Figure 2 shows an example of a bargaining process, including gain and premium, which we describe in more detail later. A bargaining pattern generalizes both price series (S and
JULY/AUGUST 2001 1094-7167/01/$10.00 copy; 2001 IEEE 41
Figure 1. The ODB system architecture consists of three agents: a dynamic price-issuing agent, a matching agent, and a pattern generalization agent that generates bargaining patterns.
B). Formally, the slope list of selling prices is denoted as SoS = {K0, K1, K2, ...., Kn}, where K0 = (B0 S0) / S0; K1 = (S0 S1) / S0; K2 = (S1
S2) / S0, ....; and Kn = (Sn1 Sn)/ S0. The slope list of buying prices is denoted as SoB =
Pattern database
Back end
Generalization agent
Transactions database
Front end
Dynamic Matching price- agent issuing
agent
Buyer
Web interface
Seller
{A0, A1, A2, ...., An}, where A0 = (B0 S0) / S0;
A1 = (B1 lt;
全文共32356字,剩余内容已隐藏,支付完成后下载完整资料
互联网技术的快速发展使网上购物和B2B购物成为一个越来越有吸引力的选择。例如,搜索引擎和电子目录对于研究产品和供应商是很有用的。更先进的仍然是自动化的谈判代理——比如eMediator,AuctionBot,Tete-a-Tete和Kasbah,它们为买方和卖方之间提供了价格谈判。研究表明人们可能更喜欢在电子商店里面购物,这些电子商店提供了谈判的机会,即使买卖双方最终协商的价格并没有达到最低。虽然有这种谈判的机会,但目前很少有电子商店和在线B2B业务提供自动化的议价。
有几个原因导致这种情况的发生。第一,市场决定目前在电子商店销售的产品价格,而且卖家认为议价不能得到任何好处。 第二,让买家在没有自动化支持的情况下进行议价的电子商店可能会被大量的并发事务所淹没。最后,现有的自动化支持缺乏处理真实情况的智能。为了满足需求,软件代理必须能够从经验中学习。而且,现有的议价代理商使用简单,固定的策略来发行价格,这样无法处理复杂的情况。
为了解决这个问题,我们正在开发一个多主体框架来支持动态的在线议价过程。我们的在线动态议价(Online Dynamic Bargaining ODB)系统使用三种代理:一种是使用数据挖掘技术归纳出议价模式;一种是将当前交易与现有模式匹配来促进产生最佳供应商响应;第三个是根据实用理论动态定价的。
我们将ODB系统作为议价的工具用于各种应用程序的系统,例如在线二手车交易。我们也把ODB系统作为我们的智能议价系统持续发展的一个参考,将其与不同的智能谈判方法相比较,包括神经网络和有说服力的机制。这里,我们将描述ODB系统如何工作并显示来自一个领域实验的结果,实验中我们将ODB系统的性能和一个类似的系统就卖家的利润和顾客的满意度作了比较。
ODB系统架构:
议价的过程包括一系列买卖双方之间的价格转变。当双方都同意一个提议的价格时,一笔交易也就完成了。一个自动化的议价系统支持这一过程,这个过程首先根据双方的最新情况发布价格,然后,决定接受一个报价。
ODB系统在卖方这边使用一个多代理框架与买方议价。图1表示ODB系统结构。该系统由三种代理组成:动态价格发行代理、模式泛化代理和模式匹配代理。动态的价格发行和模式匹配代理在前端设置中执行,实时与买方交互。模式泛化代理在后端设置中执行,定期处理交易数据,以在批处理模式下产生议价模式。
图1 ODB系统架构由三个代理组成:
一个动态的价格发行代理,一个匹配的代理,
以及一个生成讨价还价模式的模式泛化代理。
我们定义了交易模式如下:卖方的价格序列表示为S = {S0, S1, S2, ....,Sn}而买方则表示为B = {B0, B1, B2, ....,Bn}.。Si和 Bi指示卖方和买方在第i步发布的价格。图2显示了一个议价过程的例子,包括收益和保险费,我们稍后将对此进行更详细的描述。议价模式概括了价格系列(S和B)。
图2在议价过程中,价格随时间变化的一个例子,包括收益和额外费用。
形式上,销售价格的斜率列表表示为SoS = {K0, K1, K2, ...., Kn}, 其中K0 = (B0 minus;S0) / S0; K1= (S0minus; S1) / S0; K2= (S1minus; S2) / S0, ....; Kn = (Snminus;1 minus; Sn) / S0 . 购买价格的斜率表表示为SoB ={A0, A1, A2, ...., An}, 其中 A0= (B0 minus; S0) / S0; A1= (B1 minus; B0) / S0; A2= (B2 minus; B1) / S0, ....; An = (Bn minus; Bnminus;1) / S0.
一旦我们定义了交易模式,我们将ODB操作场景划分为学习和执行阶段。
学习阶段:谈判模式概括
在学习阶段,模式泛化代理会产生议价模式,这是由买卖双方的价格变化的斜率所代表的。在交易完成后,ODB系统将交易过程,包括卖方和买方的一系列价格,存储在数据库中。在批处理中,模式泛化代理总结了这些价格变化,生成了共同的价格变化斜率,然后将这些斜率存储在模式库中。
基于这一历史交易数据,模式泛化代理发现了议价模式。使用顺序模式算法,将谈判过程看作是离散状态的序列,使得算法更容易有效地生成谈判模式。然而,议价模式代表了从开始到谈判结束的共同价格发行序列,而顺序模式算法则从不同的时间标签中找到了共同的部分。考虑到这一点,我们开发了一种模式泛化方法,将类似的价格序列片段按片段分组,如图3中的伪代码所示。
Assume that there are N transactions (N = n), and each transaction goes through m bargaining states (for example, S0; B0; S1; B1, ...; Sm-2; Bm-1; and Pend).
1. Create m N * N matrices and fill e in each matrix;
2. Calculate E for each fragment and generate m-2 E-matrices;
3. Check all cells in E-matrices and remark the cells that exceed with prop;;
4. Sum up m–2 N * N E-matrices and generate N * N TE-matrix; //TE = E1 E2 ... Em-2 ;
5. Do {
Select a cell of TE-matrix having the minimum TE value; Generate the pattern with m bargaining states;
N = n - 1;
Update m - 2 N * N E-matrices and N * N TE-matrix with the new pattern;
} Until no more new patterns can be merged;
图3 模式泛化方式的伪代码
在交易之后,系统要求系统管理员根据卖方的收益和买方的满意程度来评估议价结果。模式泛化代理使用被分类为成功交易的交易数据来更新议价模式。
我们在四个步骤中概括了常见的谈判模式。
在步骤1中,我们对价格发行系列进行了分割。我们将几个购买价格的斜率列表定义为一个SoB片段,每一个SoB片段有3个连续的购买价格。我们每次计算两个相应的SoB片段之间的距离值。 每个 e代表两个相应的SoB购买价格之间的差别,而En 等于 en minus;1 en en 1。 用sigma;表示E的临界值,如果 E大于 sigma;, 两个 SoB片段被当作两个不同的议价模式。例如,令 SoB1 = {A10, A11, A12, ... , A1n} , SoB2= {A20, A21, A22, ... , A2n}表示购买价格的两个斜率列表。由此,我们得到 E1= [(A10 minus; A20) (A11 minus; A21)] (A12 minus; A22)], E2 = [(A11 minus; A21) (A12 minus; A22)] ((A13 minus;A23)), 而 Enminus;1 = [(A1(nminus;2) minus; A2(nminus;2)) (A1(nminus;1)minus; A2(nminus;1))] (A1n minus; A2n)].如果任何一个 En 超过sigma;,我们断言这两个系列是不同的。我们将同样的碎片化过程应用到SoS中。
在步骤2中,我们比较两个相应的价格谈判状态。如果两个SoB的Esigma;均不超过临界值,我们将这两个购买价格系列视为相同的。此外,我们必须确保两个对应的SoS的E值也是相同的。当两种对应的SoS没有超过临界值时,两个SoB和SoS产生了议价模式。
在步骤3中,我们产生了讨价还价的模式。如果两个相应的SoB之间的误差在sigma;之内,我们就会产生一种议价模式,用相应的斜率值代替两个SoB的斜率。例如,Z表示两个买家的价格发行模式,Z的斜率系列是Z0 Z1 Z2和Z3,其中Z0 = (A10 A20) / 2, Z1 = (A11
A21) / 2, Z2 = (A12 A22) / 2, Z3 = (A13 A23) / 2. 我们以同样的方式生成相应的销售价格模式的斜率列表。两个斜率列表都包含了议价模式,并存储在模式基础中,以匹配未来的交易。
在步骤4中,我们重复步骤2和步骤3,检查买方和卖方发出的所有价格序列,直到我们没有产生新的模式。
我们该如何确定用sigma;表示的E的临界值?如果我们设置了一个高值,那么泛化的模式就会更少,这会导致模式匹配命中率更大。另一方面,如果我们设置的值很低,我们会生成更多泛化模式和更小的命中率。
由此,我们通过几个步骤决定sigma;。首先,我们确定了卖方认为不重要的价格差异。例如,两个买家出价8400美元,然后分别增加到8500美元和8600美元。如果卖方认为在8500美元到8600美元之间没有显著差异,那么他们之间的100美元差价将是微不足道的差价。
接下来,基于标准化的概念,我们通过将价格差异除以S0来获得——在本例中是100/S0。因此,第一位买家的斜率是(8,500 minus; 8,400)/ S0, 第二位买家的斜率是(8,600 minus;8,400) / S0. 通过从第二个斜率中减去第一个斜率,我们得到100/S0.
执行阶段
在执行阶段,当买家个人通过一个Web接口向ODB系统提交价格时,谈判过程就开始了。 这启动两个过程。首先,模式匹配代理检索与模式数据库中的模式匹配的议价模式,以确定接受哪个价格。如果没有模式匹配,系统将调用动态价格发行代理来发布符合价格发行算法的价格。
模式匹配:为了在不同的产品类别中匹配不同的价格等级,我们的匹配算法必须解决价格和时间尺度问题。为了使产品类别之间的价格差异正常化,我们使用价格变化的百分比。
有几种现有的方法可以使时间尺度标准化,包括使用动态时间扭曲技术、semi-Markov和segmental Markov模型,或者简单地插入点来获得对称曲线点。在我们目前的实现中,我们采用了插值方法。我们匹配算法的伪代码如图4所示。ODB系统正在与买方议价。如果买方不接受已发行的价格,谈判匹配代理将根据三个步骤退还其价格。
bull;模式匹配和选择:当买家开始议价时,他或她会读到ODB系统发行的价格S0。当买方返回价格B0时,匹配代理可以立即计算SoB中的A0 (其中 A0 = (B0 minus; S0) / S0).令sigma; 为E的临界值。根据A0,匹配代理根据存储在模式基础中的模式计算Es。匹配代理选择Es不超过sigma;的模式。如果不止一个模式满足条件,匹配的代理会随机选择一个模式,并将其余的选项保存为可选项。
bull;发行价格:匹配代理根据匹配的议价模式的销售价格系列来定价。
bull;连续模式匹配和价格发行:在买方提供价格后,匹配代理可以获得买方的价格系列(例如,A1和A2)。匹配代理然后检查E值(例如e1 e2),如果E值小于(例如e1 e2lt;sigma;),匹配代理在图4中的算法中执行步骤2。如果E等于或大于sigma;(例如e1 e2ge;sigma;),匹配代理会用最小的E搜索另一种模式,并将其作为讨价还价的模式,然后进入第2步。当匹配代理不能分配任何讨价还价的模式时,ODB系统调用动态的价格发行代理来接管在线议价过程。
Assume that there are n candidate patterns, and the matching state m = 1;
1. While (the candidate set is not empty) { If the buyer closes a deal then exit;
Get the price that a buyer issued; Calculate the slope of SoB; Create 1*n matrix;
Calculate the E of all candidate patterns at the m th state and fill them in the 1*n matrix; Remove the patterns that exceed sigma;;
Choose a pattern that has the minimum E, and E lt;sigma;; Issue the price according to the selected pattern;
全文共6785字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[15611],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。