USF Libraries
USF Digital Collections

Exchanges for complex commodities

MISSING IMAGE

Material Information

Title:
Exchanges for complex commodities toward a general-purpose system for on-line trading
Physical Description:
Book
Language:
English
Creator:
Hershberger, John, 1980-
Publisher:
University of South Florida
Place of Publication:
Tampa, Fla.
Publication Date:

Subjects

Subjects / Keywords:
multi-attribute commodities
complex auctions
e-commerce
electronic trading
exchange markets
Dissertations, Academic -- Computer Science -- Masters -- USF   ( lcsh )
Genre:
government publication (state, provincial, terriorial, dependent)   ( marcgt )
bibliography   ( marcgt )
theses   ( marcgt )
non-fiction   ( marcgt )

Notes

Summary:
ABSTRACT: The modern economy includes a variety of markets, and the Internet has opened opportunities for efficient on-line trading. Researchers have developed algorithms for various auctions, which have become a popular means for on-line sales. They have also designed algorithms for exchange-based markets, similar to the traditional stock exchange, which support fast-paced trading of rigidly standardized securities. In contrast, there has been little work on exchanges for complex nonstandard commodities, such as used cars or collectible stamps. We propose a formal model for trading of complex goods, and present an automated exchange for a limited version of this model. The exchange allows the traders to describe commodities by multiple attributes; for example, a car buyer may specify a model, options, color, and other desirable properties. Furthermore, a trader may enter constraints on the acceptable items rather than a specific item; for example, a buyer may look for any car that satisfies certain constraints, rather than for one particular vehicle. We present an extensive empirical evaluation of the implemented exchange, using artificial data, and then give results for two real-world markets, used cars and commercial paper. The experiments show that the system supports markets with up to 260,000 orders, and generates one hundred to one thousand trades per second.
Thesis:
Thesis (M.S.C.S.)--University of South Florida, 2003.
Bibliography:
Includes bibliographical references.
System Details:
System requirements: World Wide Web browser and PDF reader.
System Details:
Mode of access: World Wide Web.
Statement of Responsibility:
by John Hershberger.
General Note:
Title from PDF of title page.
General Note:
Document formatted into pages; contains 117 pages.

Record Information

Source Institution:
University of South Florida Library
Holding Location:
University of South Florida
Rights Management:
All applicable rights reserved by the source institution and holding location.
Resource Identifier:
aleph - 001437716
oclc - 53404382
notis - AJM1697
usfldc doi - E14-SFE0000127
usfldc handle - e14.127
System ID:
SFS0024823:00001


This item is only available as the following downloads:


Full Text

PAGE 1

ExchangesforComplexCommodities: TowardaGeneral-PurposeSystemforOn-LineTrading by JohnHershberger Athesissubmittedinpartialfulllment oftherequirementsforthedegreeof MasterofScienceinComputerScience DepartmentofComputerScienceandEngineering CollegeofEngineering UniversityofSouthFlorida MajorProfessor:EugeneFink,Ph.D RafaelPerez,Ph.D DmitryB.Goldgof,Ph.D DateofApproval: August20,2003 Keywords:E-commerce,electronictrading,exchangemarkets, multi-attributecommodities,complexauctions. c Copyright2003,JohnHershberger

PAGE 2

Acknowledgements IgratefullyacknowledgethehelpofEugeneFink,whohassupervisedmythesisworkand guidedmethroughallstepsofresearchandwriting.IamalsogratefultoRafaelPerez forhiscontinuoussupportofmystudies,andDmitryGoldgofforhisvaluablecomments andsuggestions. Iamforevergratefultomygirlfriend,MichelleElliott,fortheinexhaustiblecomfort andreassuranceshehasgivenmeoveralltheyearsofmyundergraduateandgraduate studies.Ialsowishtothankmyparents,RichardHershbergerandDianeLynch,forthe constantsupportandfreedomtheyhavegivenme.

PAGE 3

TableofContents ListofFigures......................................iv Abstract..........................................vi Chapter1Introduction1 1.1Motivation....................................1 1.2Example.....................................3 1.3Previouswork..................................5 1.3.1Combinatorialauctions.........................6 1.3.2Advancedsemantics..........................9 1.3.3Exchanges................................12 1.3.4General-purposesystems ........................13 1.3.5Industrialsystems ............................16 1.3.6Contributions..............................18 Chapter2GeneralExchangeModel20 2.1Orders......................................20 2.1.1Buyersandsellers............................20 2.1.2Denitionofanorder..........................21 2.1.3Qualityfunction............................24 2.1.4Ordersizes...............................26 2.1.5Marketattributes ............................28 2.2Orderexecution.................................31 2.2.1Fills ...................................31 2.2.2Multi-lls................................34 2.2.3Equivalenceofmulti-lls........................36 2.2.4Priceaveraging.............................39 2.2.5Fairtrading...............................42 2.3Combinatorialorders..............................43 2.3.1Disjunctiveorders............................43 2.3.2Conjunctiveorders...........................46 2.3.3Chainorders..............................52 Chapter3OrderRepresentation55 3.1Itemsets.....................................55 3.1.1Buyitemsets..............................55 3.1.2Sellitemsets..............................56 i

PAGE 4

3.1.3Cartesianproducts...........................57 3.1.4Unionsandlters............................57 3.1.5Attributesets ..............................58 3.2Price,quality,andsize.............................59 3.2.1Price...................................59 3.2.2Quality.................................60 3.2.3Size...................................61 3.3Cancellationsandinactiveorders.......................61 3.3.1Cancellation...............................61 3.3.2Expirationtime.............................61 3.3.3Inactiveorder..............................62 3.4Modications..................................63 3.5Fairnessheuristics................................64 3.6Conrmations..................................65 3.7Useractions...................................66 Chapter4IndexingStructure70 4.1Architecture...................................70 4.1.1Top-levelcontrol............................70 4.1.2Userinterfaces.............................71 4.1.3Matcherengine.............................72 4.1.4Matchingcycle.............................73 4.1.5Matchingfrequency...........................75 4.2Indexingtrees... ...............................76 4.2.1Multipleselltrees............................76 4.2.2Standardsets..............................77 4.2.3Summarydata.............................78 4.3Basictreeoperations..............................78 4.3.1Addinganeworder...........................79 4.3.2Deletinganorder............................79 4.3.3Modifyinganorder...........................80 Chapter5SearchforMatches87 5.1Additionalsearchinformation.........................87 5.2Depth-rstsearch................................87 5.2.1Depth-rstsearchstrategies......................88 5.2.2Matchingleaves.............................88 5.2.3Bestmatches..............................89 5.3Best-rstsearch.................................90 5.3.1Qualityestimates............................91 5.3.2Searchsteps...............................91 5.4Fairnessheuristics................................92 5.5Trade-os....................................92 ii

PAGE 5

Chapter6ConcludingRemarks99 References.........................................100 iii

PAGE 6

ListofFigures 1.1Matchingordersandtheresultingtrade.....................4 1.2Choosingthematchwiththebestprice......................4 1.3Exampleofordersizes...............................5 2.1Anexampleofabuyorderandamatch.....................23 2.2Exampleofabulkdiscount............................28 2.3Computingthepriceandsizeofallfortwomatchingorders.........33 2.4Examplesoforderexecution............................34 2.5Examplesofmulti-ordertransactions.......................34 2.6Exampleofatransactionthatinvolvesmultiplebuyandsellorders......36 2.7Exampleofpriceaveraging.............................39 2.8Examplesofdisjunctiveorders...........................44 2.9Exampleofatransactionthatinvolvesadisjunctiveorder...........47 2.10Examplesofconjunctiveorders..........................47 2.11Exampletransactionsthatinvolveconjunctiveorders..............48 2.12Examplesofnesteddisjunctionsandconjunctions................49 2.13Examplesofsizespecicationsinconjunctiveorders...............49 2.14Conjunctiveorderswithasizespecicationandpaymentlimit.........50 2.15Exampleofachainorder..............................52 2.16Chainorderwithtwosimpleorders,twodisjunctions,andaconjunction...53 2.17Activeandinactiveelementsofachainorder..................54 3.1Simplifyingadisjunctiveattributeset... ....................59 3.2Examplesofpartiallls..............................62 3.3Exampleofanordermodication.........................63 3.4Tradingwithconrmations............................67 3.5Elementsofasimpleorderandtheirdefaultvalues...............68 3.6Elementsofcombinatorialorders.........................69 3.7Elementsofamodicationrequest........................69 4.1Thearchitectureofthetradingsystem.. ....................71 4.2Maintypesofmessagesfromauserinterface...................71 4.3Maindatastructuresinthematcherengine...................72 4.4Exampleofindexandnonindexorders......................72 4.5Top-levelloopofthematcherengine.......................73 4.6Additionandmodicationofanorder......................74 4.7Searchforindexordersthatmatchagivenorder.................81 4.8Ordermodicationsthatleadtonewmatches..................82 iv

PAGE 7

4.9Indexingtreewithseventeenorders ........................82 4.10Nodeofanindexingtree..............................83 4.11Standardsetsofvalues...............................83 4.12Addingorderstoanindexingtree.........................84 4.13Updatingthesummarydataafteradditionofanorder.............85 4.14Deletionofanorder................................85 4.15Updatingthesummarydataafterdeletionofanorder.............86 5.1Notationfortheordersandnodesofanindexingtree..............94 5.2Retrievalofmatchingleaves............................95 5.3Retrievalofmatchingorders............................96 5.4Constructionofthebestpossibleitem......................97 5.5Retrievalofmatchingmonotonicnodes......................97 5.6Retrievalofmatchingorders............................98 v

PAGE 8

ExchangesforComplexCommodities: TowardaGeneral-PurposeSystemforOn-LineTrading JohnHershberger ABSTRACT Themoderneconomyincludesavarietyofmarkets,andtheInternethasopenedopportunitiesforecienton-linetrading.Researchershavedevelopedalgorithmsforvarious auctions,whichhavebecomeapopularmeansforon-linesales.Theyhavealsodesigned algorithmsforexchange-basedmarkets,similartothetraditionalstockexchange,which supportfast-pacedtradingofrigidlystandardizedsecurities.Incontrast,therehasbeen littleworkonexchangesforcomplexnonstandardcommodities,suchasusedcarsor collectiblestamps. Weproposeaformalmodelfortradingofcomplexgoods,andpresentanautomated exchangeforalimitedversionofthismodel.Theexchangeallowsthetraderstodescribe commoditiesbymultipleattributes;forexample,acarbuyermayspecifyamodel,options, color,andotherdesirableproperties.Furthermore,atradermayenterconstraintsonthe acceptableitemsratherthanaspecicitem;forexample,abuyermaylookforanycar thatsatisescertainconstraints,ratherthanforoneparticularvehicle. Wepresentanextensiveempiricalevaluationoftheimplementedexchange,using articialdata,andthengiveresultsfortworeal-worldmarkets,usedcarsandcommercial paper.Theexperimentsshowthatthesystemsupportsmarketswithupto260,000orders, andgeneratesonehundredtoonethousandtradespersecond. vi

PAGE 9

Chapter1 Introduction 1.1Motivation Economistsdene market as\anarrangementwhichpermitsnumerousbuyersandsellers ofrelatedcommoditiestocarryonextensivebusinesstransactionsonaregular,organized basis" [ Trenton,1964 ] .Themoderneconomyincludesawidevarietyofmarkets,from carstosoftwaretoocespace. Thesupplychainbetweenamanufacturerandcustomermayincludeseveralmiddlemen.Forinstance,customersusuallybuycarsthroughdealerships,whichinturnacquire carsfrommanufacturers;thesaleofusedcarsmayalsoinvolvedealers,whoserveas middlemeninthesecondarymarket.Thisproblemexistsnotonlyinbroker-to-consumer transactions,butalsoinbroker-to-brokermarkets,wheremanytransactionsareslowand requireeithersalespeopleonbothsidesorintermediarybrokers.Themostcertainsign ofineciencyinthemoderneconomyisthearmyofsalespeopleandbrokers,whomake theirlivingbyactingasmiddlemen. Inaddition,mostitemsareboughtandsoldnotonlyfromthemanufacturer,but alsoonasecondarymarket,thatis,theymaybeboughtandre-soldmultipletimes.For example,phonecompaniesoftenre-sellunusedphoneminutes,andairlinesre-sellunused seats.Liquidityisessential,sincethecommoditymaybelostifitisnotsoldbysome predeterminedtime.Forexample,unsoldseatsinanairplanebecomeuselessoncethe airplaneisotheground.Theseresalesincreasethecostofgoods,sincetheyinclude commissionsforthemiddlemen.Toimprovetheeciencyoftheeconomy,amoreecient 1

PAGE 10

secondarymarketisnecessary.Thismarketwouldnotrequirehighlypaidbrokersand middlemen,asignicantinvestmentoftimeandeort,oraconsiderableriskoftrading atasub-optimalprice.TherecentgrowthoftheInternethasopenedopportunitiesfor reducingthenumberofmiddlemen [ Klein,1997;Turban,1997;Wrigley,1997 ] ,andmany companieshaveexperimentedwithdirectsalesovertheweb.Middlemenarealsousing theInternettoincreasethevolumeoftheirsalesandreduceexpenses.Furthermore, manycompaniesspecializeinthedevelopmentofelectronicmarketplaces,whichinclude bulletinboards,auctions,andexchanges. Electronicbulletinboardsaresimilartotraditionalnewspaperclassieds.These boardsvaryfromnewsgrouppostingstoon-linesalecatalogs,andtheyhelpbuyersand sellersndeachother;however,theyoftenrequireausertoinvestsignicanteortinto searchingamongmultipleads.Forthisreason,manybuyerspreferon-lineauctions,such aseBay(www.ebay.com). Auctionshavetheirownproblems,whichincludesignicantcomputationalcosts, transactiondelays,andasymmetrybetweenbuyersandsellers.Atraditionalauction requiresabuyertobidonaspecicitem.Ithelpssellerstoobtainthehighestprice, butlimitsbuyers'exibility.A reverseauction requiresasellertobidonacustomer's order;thus,itbenetsbuyers,andrestrictsthesellers'exibility.Furthermore,auctions limittheliquidity,thatis,theymaycausesignicanttransactiondelays.Forexample,if asellerpostsanitemoneBay,shecansellitinthreeormoredays,dependingonthe selecteddurationoftheauction,butnotsooner.Thus,auctionsarenotappropriatefor fastsales,whichareessentialinmanymarkets. Anexchange-basedmarketdoesnothavetheseproblems:itensuressymmetrybetweenbuyersandsellers,andsupportsfast-pacedtrading.Examplesofliquidmarkets includethetraditionalstockandcommodityexchanges,suchastheNewYorkStockExchangeandChicagoMercantileExchange,aswellascurrencyandbondexchanges.For 2

PAGE 11

instance,atradercanbuyorsellanypublicstockinseconds,atthebestavailableprice. Althoughstockshavelongservedasanexampleofanecientmarket,tradinginother industrieshasnotreachedthiseciency. Themainlimitationoftraditionalexchangesisrigidstandardizationoftradable items.Forinstance,theNewYorkStockExchangeallowstradingofabout3,100securities,andthebuyerorsellerhastoindicateaspecicitem,suchasIBMstock.Formost goodsandservices,however,thedescriptionismuchmorecomplex.Forinstance,acar buyermayneedtospecifyamake,model,options,color,andotherdesirablefeatures. Furthermore,sheusuallyhasacertainexibilityandmayacceptanycarthatsatises herconstraints,ratherthanlookingforonespecicvehicle.Forexample,shemaybe willingtogetanyredMustangwithairconditioning. Buildinganexchangeforsuchcomplexcommoditiesisamajoropenproblem.An eectivetradingsystemshouldsatisfythefollowingrequirements: Allowcomplexconstraintsinspecicationsofbuyandsellorders Supportfast-pacedtradingforlargemarkets,withmillionsoforders Includeoptimizationtechniquesthatmaximizethetraders'satisfaction Ensurethe\fairness"ofthemarket,accordingtonancialindustrystandards Allowausertoselectpreferredtradesamongmatchesforherorder 1.2Example Wegiveanexampleofanexchangefortradingnewandusedcars.Tosimplifythis example,weassumethatatradercandescribeacarbyfourattributes:model,color, year,andmileage.Forinstance,asellermayoeraredMustang,madein1999,with 35,000miles. 3

PAGE 12

Red Mustang, made in 2001, 0 miles, $18,500 Fill: Red Mustang, made after 1999, Any color Mustang, Sell: made in 2001, 0 miles, more than $18,000 less than $19,000 at most 20,000 miles, Buy:Figure1.1:Matchingordersandtheresultingtrade.Whenthesystemndsamatch betweentwoorders,itgeneratesall,whichisatradethatsatisesbothparties. $18,000 Fill: Mustang Sell:Sell: Mustang $17,000 $18,000 Buy: $19,000 Mustang MustangFigure1.2:Choosingthematchwiththebestprice. Theexchangeallowsplacingbuyandsellorders,analogoustotheordersinastock market.Aprospectivebuyercanplacea buyorder, whichincludesadescriptionofthe desiredvehicleandamaximalacceptableprice.Forinstance,shemayindicatethatshe wantsaredMustang,madeafter1999,withatmost20,000miles,andsheiswillingto pay$19,000.Similarly,asellercanplacea sellorder; forinstance,amanufacturermay oerabrand-newMustangofanycolorfor$18,000. Theexchangesystemsearchesformatchesbetweenbuyandsellorders,andgeneratescorresponding lls, thatis,transactionsthatsatisfybothbuyersandsellers.Inthe previousexample,itwilldeterminethatabrand-newredMustangfor$18,500satises boththebuyerandtheseller(Figure1.1). Ifthesystemndsseveralmatchesforanorder,itchoosesthematchwiththebest price.Forexample,thebuyorderinFigure1.2willtradewiththecheaperofthetwo sellorders. 4

PAGE 13

Completely filledPartially filled removedreduced Mustang Fill: 2 cars Mustang Mustang 2 cars Sell: 2 cars Mustang Buy: 4 cars Sell:Figure1.3:Exampleofordersizes.Whenthesystemndsamatch,itcompletelylls thesmallerorderandreducesthesizeofthelargerorder. Thesystemallowsausertotradeseveralidenticalitemsbyspecifyingasizeforan order.Forexample,adealercanplaceanordertosellfourMustangs;then,thesystem canmatchitwithasmallerbuyorder(Figure1.3)andlaterndamatchfortheremaining cars.Inaddition,theusercanspecifyaminimalacceptablesizeofatransaction.For instance,thedealermayplaceanordertosellfourMustangs,andindicatethatshewants totradeatleasttwocars. Ausercanspecifythatsheiswillingtotradeanyofseveralitems.Forexample,she canplaceanordertobuyeitheraMustangorCamaro.Ifauserdescribesasetofitems, shecanindicatethatthepricedependsonanitem.Forinstance,shemayoer$18,500 foraMustangand$17,500foraCamaro;furthermore,shemayoeranextra$500ifa carisred,andsubtract$1foreverytenmilesonitsodometer.Ausercanalsospecify herpreferencesforchoosingamongpotentialtrades;forexample,shemayindicatethat aredMustangisbetterthanawhiteMustang,andthataMustangfor$19,000isbetter thanaCamarofor$18,000. 1.3Previouswork Economistsandcomputerscientistshavelongrealizedtheimportanceofauctionsand exchanges,andstudiedavarietyoftradingmodels.Therelatedcomputerscienceresearch hasbeenfocusedoneectiveauctionsystems [ Bichler,2000b;BichlerandWerthner, 5

PAGE 14

2000;Ronen,2001;RonenandSaberi,2002 ] ,optimalmatchinginvariousauctions [ Ygge andAkkermans,1997;MondererandTennenholtz,2000;Kastner etal. ,2002 ] ,bidding strategies [ TesauroandDas,2001;HeandLeung,2001 ] ,andgeneral-purposesystems forauctionsandexchanges.IthasledtosuccessfulInternetauctions,suchaseBay (www.ebay.com)andYahooAuctions(auctions.yahoo.com).Recently,researchershave developedseveralecientsystemsfor combinatorialauctions, whichallowbuyingand sellingsetsofcommoditiesratherthanindividualitems.Theyhaveconsiderednotonly auctionswithcompletelyspeciedcommodities,butalsomarketsthatallowtheuserto negotiatedesirablefeaturesofmerchandise. 1.3.1Combinatorialauctions Atraditionalcombinatorialauctionallowsbiddingonasetoffullyspecieditems.For example,abuyermaybidonaredMustangandblackCorvetteforatotalpriceof $40,000;inthiscase,shewillgetbothcarstogetherornothing.Anadvancedauction mayallowdisjunctions;forinstance,abuyermayspecifythatshewantseitherared MustangandblackCorvetteor,alternatively,twosilver bmw s.Ontheotherhand, standardcombinatorialauctionsdonotallowincompletelyspecieditems,suchasa Mustangofanycolor. Rothkopf etal. [1998]gaveadetailedanalysisofcombinatorialauctionsanddescribedsemanticsofcombinatorialbidsthatallowedfastmatching.Nisandiscussed alternativesemanticsforcombinatorialbids,formalizedtheproblemofsearchingforoptimalandnear-optimalmatches,andproposedalinear-programmingsolution [ Nisan,2000; LaviandNisan,2000 ] .ZurelandNisan[2001]developedasystemforndingnear-optimal matches,basedonacombinationofapproximatelinearprogrammingwithoptimization heuristics.Itcouldquicklyclearanauctionwith1,000itemsand10,000bids,andits 6

PAGE 15

averageapproximationerrorwaslessthan1%.HuandShi[2002]laterrenedRothkopf's analysis,helpingtoimproveoptimalmatchingincombinatorialauctions. Sandholm[1999]developedseveralecientalgorithmsforone-sellercombinatorial auctions,andshowedthattheyscaledtoamarketwithabout1,000bids.Sandholm andhiscolleagueslaterimprovedtheoriginalalgorithmsandimplementedasystemthat processedseveralthousandbids [ Sandholm,2000a;SandholmandSuri,2000;Sandholm etal. ,2001a;Sandholm,2002;SandholmandSuri,2003 ] .Theydevelopedamechanism fordeterminingatrader'spreferencesandconvertingthemintoacompactrepresentation ofcombinatorialbids [ ConenandSandholm,2001 ] .Theyalsodescribedseveralspecial casesofbidprocessingthatallowedpolynomialsolutions,provedtheNP-completenessof moregeneralcases,andtestedvariousheuristicsforNP-completecases [ Sandholm etal. 2001b ] Sakurai etal. [2000]developedanalgorithmforndingnear-optimalmatchesincombinatorialauctionsbasedonasynergyofiterative-deepeningA*withlimited-discrepancy search.Itprocessedauctionswithupto5,000bids,anditsapproximationerrorwasunder5%.HoosandBoutilier[2000]appliedstochasticlocalsearchtondingnear-optimal matches;theirsystemcouldclearauctionswith500itemsand10,000bids.Akcoglu et al. [2000]representedacombinatorialauctionasagraph;itsnodeswerebids,anditsedges wereconictsbetweenbids.Thisrepresentationledtothedevelopmentofalinear-time approximationalgorithmforclearingtheauction. Fujishimaproposedanapproachforenhancingstandardauctionrules,analyzed trade-osbetweenoptimalityandrunningtime,andpresentedtworelatedalgorithms [ Fujishima etal. ,1999a;Fujishima etal. ,1999b ] .Therstalgorithmensuredoptimalmatchingandscaledtoabout1,000bids,whereasthesecondfoundnear-optimalmatchesfora marketwith10,000bids. 7

PAGE 16

Leyton-Brown etal. [2000]investigatedcombinatorialauctionsthatallowedbidderstospecifyanumberofitems;forinstance,abuyercouldbidontenidenticalcars. Theydescribedabranch-and-boundsearchalgorithmforndingoptimalmatches,which couldquicklyprocessmarketswithfteenitemtypesand2,500bids.Theylateranalyzedtheempiricalhardnessofoptimizingcombinatorialauctions,whichcanleadto moreconsistentcombinatorialauctionbenchmarks,andimprovedcombinatorialauction algorithms [ Leyton-Brown etal. ,2002 ] Tennenholtz[2002]developedpolynomial-timealgorithmsforndingoptimalmatches inseveraltypesofrestrictedcombinatorialauctions. Lehmann etal. [1999]investigatedheuristicalgorithmsforcombinatorialauctions andidentiedcasesthatallowed truthfulbidding, whichmeantthatusersdidnotbenetfromprovidingincorrectinformationabouttheirintendedmaximalbids.Gonenand Lehmann[2000,2001]studiedbranch-and-boundheuristicsforprocessingcombinatorial bidsandintegratedthemwithlinearprogramming.Mu'alemandNisan[2002]alsoinvestigatedtruthful-biddingcombinatorialauctions,describedconditionsforensuringtruthful bidding,andproposedapproximationalgorithmsforclearingtheauctionsthatsatised theseconditions. Xia etal. [2003]investigatedmultipletechniquesofpricingbundlesofgoodsand marketclearing,whileensuringthetruthfulnessofallbidders.Theyalsostudiedvarious methodsofdeterminingindividualitemprices,whichisusefulforevaluatingcombinatorialauctions.Theyconcludedthatpopularpricingmechanismsaretoorestrictivein combinatorialauctions,andtheyfallshortinguaranteeingtruthfulbids,whichlowers theoptimalityoftheauction. Yokoo etal. [2001a,2001b]consideredaproblemof false-namebids, thatis,manipulationofpricesbycreatingctitioususersandsubmittingbidswithoutintentiontobuy; theyproposedauctionrulesthatdiscouragedsuchbids.SuzukiandYokoo[2002]studied 8

PAGE 17

anothersecurityproblemincombinatorialauctions;theyinvestigatedtechniquesforclearinganauctionwithoutrevealingthecontentofbidstotheauctioneer.Theydescribed adistributeddynamic-programmingalgorithmthatfoundmatcheswithoutrevealingthe bidstotheauctionparticipantsortoanycentral\auctioneer"system;however,itscomplexitywasexponentialinthenumberofitems. Andersson etal. [2000]comparedthemaintechniquesforcombinatorialauctions andproposedaninteger-programmingrepresentationthatallowedricherbidsemantics. Wurman etal. [2001]analyzedavarietyofpreviouslydevelopedauctionsandidentied themaincomponentsofanautomatedauction,includingbidsemantics,clearingmechanisms,rulesforplacingandcancelingbids,andpoliciesforhidinginformationfrom otherusers.Theyproposedastandardizedformatfordescribingthecomponentsofeach specicauction. Researchershavealsoinvestigatedtheapplicationofauctionalgorithmstononnancialsettings,suchasschedulingproblems [ Wellman etal. ,2001 ] ,managementofresources inwide-areanetworks [ Chen etal. ,2001 ] ,andco-ordinationofservicesperformedbydifferentcompanies [ Preist etal. ,2001 ] Thereadermayndadetailedsurveyofcombinatorialauctionsinthereviewarticle bydeVriesandVohra[2001].Althoughthedevelopedsystemscanecientlyprocess severalthousandbids,theirrunningtimeissuper-linearinthenumberofbids,andthey donotscaletolargermarkets. 1.3.2Advancedsemantics Severalresearchershavestudiedtechniquesforspecifyingthedependencyofanitemprice onthenumberandqualityofitems.Theyhavealsoinvestigatedtechniquesforprocessing \exible"bids,speciedbyhardandsoftconstraints.Moore etal. [1990]gaveadecisiontheoreticapproachtoinformationretrieval,inwhichthebestavailablerecordinaleis 9

PAGE 18

retrievedbasedonuserprefereces.Theprimarydrawbackoftheirmethodisthatsome userpreferencesarenotrepresentableaccordingtotheirrestrictions.Cagno etal. [2001] studiedtheprobabilityofwinningincompetitivebiddingwithmulti-attributedecision makingtechniques.Uncertaintystemmedfromtheevaluationcriteriaofthesellerand thebiddingprolesofthecompetingbidders.Theydescribedatechniquethataccounts forthisuncertaintyandattemptstomaximizetheprobabilityofawinningbid,basedon currentknowledgeofthesellerandcompetitors. Che[1993]analyzedauctionsthatallowednegotiatingnotonlythepricebutalso thequalityofacommodity.Abidintheseauctionswasafunctionthatspeciedadesired trade-obetweenpriceandquality.CrippsandIreland[1994]consideredasimilarsetting andsuggestedseveralstrategiesforbiddingonpriceandquality. SandholmandSuri[2001b]describedamechanismforimposingnonpriceconstraints incombinatorialauctions,suchasbudgetconstraintsandlimitonthenumberofwinners;theyshowedthattheseconstraintssometimesincreasedtheauctioncomplexity, andsometimesreducedthecomplexity.Theyhavealsostudiedcombinatorialauctions thatallowedbulkdiscounts [ SandholmandSuri,2001a ] ;thatis,theyenabledabidder tospecifyadependencybetweenitempriceandordersize.Lehmann etal. [2001]also consideredthedependencyofpriceonordersize,showedthatthecorrespondingproblem ofndingbestmatcheswas np -hard,anddevelopedagreedyapproximationalgorithm. Bichlerdiscussedamarketthatwouldallownegotiationsonanyattributesofa commodity [ BichlerandKaukal,1999;Bichler etal. ,1999;Bichler,2000a ] ;forinstance,a carbuyercouldsetaxedpriceandnegotiatetheoptionsandserviceplan.Heanalyzed severalalternativeversionsofthismodel,andconcludedthatitwouldgreatlyincrease theeconomicutilityofauctions;however,hepointedoutthedicultyofimplementing itanddidnotproposeanycomputationalsolution. 10

PAGE 19

Jonesextendedthesemanticsofcombinatorialauctionsandallowedbuyerstouse complexconstraints [ Jones,2000;JonesandKoehler,2000;JonesandKoehler,2002 ] ;for instance,acarbuyercouldbidonavehiclethatwaslessthanthree-yearsold,oronthe fastestavailablevehicle.Theysuggestedanadvancedsemanticsfortheseconstraints, whichallowedcompactdescriptionofcomplexbids;however,theydidnotallowcomplexconstraintsinsellorders.Theyimplementedanalgorithmthatfoundnear-optimal matches,butitscaledonlytoonethousandbids. Tewari etal. [2003]devisedalocation-basedbrokeringschemeallowingforgeographicallynearbybidderstogainpreferenceoverthosebiddingfromafar.Theirsystemwas usefulformarketsinwhichfastdeliveryisessential,suchasrestaurantsand\impulse shopping"fromconsumers. BoutilierandHoos[2001]developedageneralpropositionallanguageforspecifying bidsincombinatorialauctions,whichallowedacompactrepresentationofmostbids.ConenandSandholm[2002]describedasystemthathelpedtheparticipantsofcombinatorial auctionstospecifytheirbids;itelicitedthepreferencesofanauctionparticipantandused themtodeneappropriatebids.Burmeister etal. [2002]designeda\package-oriented" approachtobiddinginmulti-attributeauctions.Apackageconsistedofacombination ofmultipleattributes,whichthebuyerassignsavaluetoasawhole,ratherthanto eachattributeseparately.However,inthisapproachtheindividualattributeevaluations becometransparenttotheseller. Thisinitialworkleavesmanyopenproblems,whichincludetheuseofcomplex constraintswithgeneralpreferencefunctions,symmetrictreatmentofbuyandsellorders, anddesignofecientmatchingalgorithmsforadvancedsemantics. 11

PAGE 20

1.3.3Exchanges Economistshaveextensivelystudiedtraditionalstockexchanges;forexample,seethe historicalreviewbyBernstein[1993]andthetextbookbyHull[1999].Theyhavefocused onexchangedynamicsandrelatedmathematics,ratherthanonecientalgorithms [ Cason andFriedman,1996;CasonandFriedman,1999;Bapna etal. ,2000 ] .Severalcomputer scientistshavealsostudiedtradingdynamicsandproposedalgorithmsforndingthe marketequilibrium [ ReiterandSimon,1992;ChengandWellman,1998;Anderssonand Ygge,1998 ] Successfulon-lineexchangesincludeelectroniccommunicationnetworks,suchas redi (www.redibook.com)andIsland(www.island.com).Inadditiontothesecurities exchanges,exchangesforothergoodsandserviceshavebeendeveloped.Forinstance, GreenOnline (www.greenonline.com)allowstraderstoexchangegoodsandservices withinavarietyofenvironmentalmarkets.Theseenvironmentalexchangesarespecialized auctionsinwhichpublic,private,andnon-protbuyersandsellerstradeenvironmental pollutioncredits,assetsassociatedwithregulatoryosets,andothergoodsandservices. KeeverandAlcorn[2000]givesabriefoverviewoftheevolutionof GreenOnline and environmentalexchanges. Contreras etal. [2001]builtasystemtosimulatethepowerexchangemarketofa deregulatedelectricenergyindustry.Biddingproposalsandinteractionbetweensupplier andconsumerwassimulated.Thesystemcouldbeusedtoevaluatehowtheselection ofwinningbidsdependsontheauctionmodelusedintheexchange.RichterandSheble[1998]developedasystemcomposedofcompaniesbuyingandsellingpowerina regionalexchange.Geneticalgorithmsencodedthebiddingstrategiesusedbytraders, andthebiddingstrategiesadaptedasthetraders'behaviorchanged.Thesystemwas usefulforevaluatingwhetherornotabiddingstrategywillbesuccessfulinapractical electricityexchange;however,thesystem'suseinothermarketshasnotbeendetermined. 12

PAGE 21

Thedirectorsoflargestockandcommodityexchangesarealsoconsideringelectronicmeansoftrading.Forexample,theChicagoMercantileExchangehasdeployedthe Globexsystem,whichsupportstradingaroundtheclock.WeinhardtandGomber[1999] developedaprototypemulti-agentsystemforautomatingsingleauctionswithinanoexchangebondmarket.Theagentswidenedthesearchspaceofpotentialtraders,acceleratedthetradingprocess,andhelpedreducetheneedforintermediarybrokers. Someauctionresearchershaveinvestigatedtherelatedtheoreticalissues;theyhave viewedexchangesasavarietyofauctionmarkets,called continuousdoubleauctions. In particular,Wurman etal. [1998a]proposedatheoryofexchangemarketsandimplementedageneral-purposesystemforauctionsandexchanges,whichprocessedtraditional fullyspeciedorders.SandholmandSuri[2000]developedanexchangeforcombinatorial orders,butitcouldnotsupportmarketswithmorethan1,000orders.Blum etal. [2002] exploredmethodsforimprovingliquidityofstandardizedexchanges.Kalagnanam et al. [2000]investigatedtechniquesforplacingorderswithcomplexconstraintsandidentifyingmatchesbetweenthem.Theydevelopednetwork-owalgorithmsforndingoptimal matchesinsimplecases,andshowedthatmorecomplexcaseswere np -complete.The complexityoftheiralgorithmswassuper-linearinthenumberoforders,andtheresulting systemdidnotscalebeyondafewthousandorders. Therelatedopenproblemsincludedevelopmentofscalablesystemsforlargecombinatorialmarkets,aswellassupportforexibleorderswithcomplexconstraints. 1.3.4General-purposesystems Computerscientistshavedevelopedseveralsystemsforauctionsandexchanges,which varyfromspecializedmarketstogeneral-purposetoolsforbuildingnewmarkets.The readermayndasurveyofmostsystemsinthereviewarticlesbyGuttman etal. [1998a, 1998b],Maes etal. [1999],andHuhnsandVidal[1999]. 13

PAGE 22

KumarandFeldman[1998]builtanInternet-basedsystemthatsupportedseveral standardauctions,includingopen-cryauctions,single-roundsealed-bidauctions,and multiple-roundauctions.Chavezandhiscolleaguesdesignedanon-lineagent-basedauction;theybuiltintelligentagentsthatnegotiatedonbehalfofbuyersandsellers [ Chavez andMaes,1996;Chavez etal. ,1997 ] .VetterandPitsch[1999]constructedamore exibleagent-basedsystemthatsupportedseveraltypesofauctions.Preist[1999a; 1999b]developedasimilardistributedsystemforexchangemarkets.Bichlerdesigned anelectronicbrokerageservicethathelpedbuyersandsellerstondeachotherandto negotiatethroughauctionmechanisms [ Bichler etal. ,1998;BichlerandKaukal,1999; BichlerandSegev,1999 ] .Bichlerlaterdevelopedanadvanceddecisionanalysisengine capableofincorporatingmanyattributesintobidselection [ Bichler etal. ,2001 ] .The systemwasabletomakeproperdecisionswithhundredsofbids,andonlyrequiredthe usertoinitiallyrankasubsetofthebidsondesirability. Benyoucef etal. [2001]consideredaproblemofsimultaneousnegotiationsforinterdependentgoodsinmultiplemarkets,andappliedaworkowmanagementsystemto modelthenegotiationprocess.Theirsystemhelpedausertopurchaseacombinatorial packageofgoodsinnoncombinatorialmarkets.Boyan etal. [2001]alsobuiltasystemfor simultaneousbiddinginmultipleauctions;theyappliedbeamsearchwithsimpleheuristicstotheproblemofbuyingcomplementarygoodsindierentauctions.Babaioand Nisan[2001]studiedtheproblemofintegratingmultipleauctionsacrossasupplychain, andproposedamechanismforsharinginformationamongsuchauctions.Piccinelli et al. [2001]designedadistributednegotiationsystemallowingserviceproviderstosubcontractaspectsofitsservicetootherproviders,anddeterminethepricetopayeach. Serviceroleswerenegotiatedwithinareverse-combinatorial-auction,inwhichpotential subcontractorsbidoncombinationsofservicerolesoftheoriginalserviceprovider. 14

PAGE 23

Dumas etal. [2002]presentedaformalmodelofnegotiatingagentbehavior,consistingofnumerousmodulesandaknowledgebase.Themodelhelpedinthedevelopment ofagentsabletocarryoutsimultaneousnegotiations;however,communicationbetween agentswaslimitedtosimplemessages,anditdidnotallowtransmittingtradingrules. WurmanandWellmanbuiltageneral-purposesystem,calledtheMichiganInternetAuctionBot,thatcouldrunavarietyofdierentauctions [ Wellman,1993;Wellman andWurman,1998;Wurman etal. ,1998b;WurmanandWellman,1999 ] ;however,they restrictedtheuserstosimplefullyspeciedbids.Theirsystemincludedschedulerand auctioneerprocedures,relateddatabases,andadvancedinterfaces.Hu etal. [1999]createdagentsforbiddingintheMichiganAuctionBot;theyusedregressionandlearning techniquestopredictthebehaviorofotherbidders.Later,Hu etal. [2000]designedthree typesofagentsandshowedthattheirrelativeperformancedependedonthestrategiesof otherauctionparticipants. Rahwan etal. [2002]createdtradingagentsthatwouldeachindividuallynegotiate withothertraders,andacoordinatingagenttodirectanyfurtheraction.Inthissystem,agentscouldbeintroducedorremoveddynamically;however,thetradingagents hadnoknowledgeofeachother'sprogress.HuandWellman[2001]developedanagent thatlearnedthebehaviorofitscompetitorsandadjusteditsstrategyaccordingly.Wurman[2001]consideredaproblemofbuildinggeneral-purposeagentsthatsimultaneously bidinmultipleauctions. Cli[1998]designedagentsthatutilizedgeneticalgorithmsinordertooptimize theirbiddingstrategies.Thegeneticalgorithmsautomatedthesettingofalearningrate, whichwasdenedastherateatwhichthesystemadjustsitsoutputtowardsometarget output.Helatershowedthatageneticalgorithmcouldalsooptimizetheparticular marketmechanismunderwhichthetraderagentsoperate [ Cli,2002 ] .Samplemarket mechanismsincludethecontinuousdoubleauction,Dutchauction,andEnglishauction. 15

PAGE 24

Thegeneticalgorithmwasabletoevolvetraditionalmarketmechanismsintonewhybrid mechanisms,whichhadnoreal-worldrepresentation;thus,theywereonlysuitedfor articialtraders. Parkesbuiltafastsystemforcombinatorialauctions,butitworkedonlyformarkets withuptoonehundredusers [ Parkes,1999;ParkesandUngar,2000 ] .Sandholmcreated amorepowerfulauctionserver,congurableforavarietyofmarkets,andshowedits abilitytoprocessseveralthousandbids [ Sandholm,2000a;Sandholm,2000b;Sandholm andSuri,2000 ] Maamar[2002]investigatedtheabilitiesrequiredforasoftwareagenttoperformadequatelyinanauctionsetting.Hefoundthatagent-basede-commercesystemsrequired humaninteractionatmultiplestagesofthetradingprocess,concludingthatfurtherresearchisneededbeforefullyautomatede-commercesupportbecomesrealistic. Allthesesystemshavethesamelimitationascommercialon-lineexchanges;they requirefullyspeciedbidsanddonotsupporttheuseofconstraints. 1.3.5Industrialsystems Severalcompanieshavereleasedsoftwareproductsusefulinthee-commerceindustry. Thesesystemscantypicallybeusedtoprovidee-Sourcingsolutionsforbusinessesaround theworld. e-Sourcing referstotheprocessbywhichacompanydeterminestheoptimal distributor(s)fromwhichtobuyitssupplyofaneededcommodity,withoptimality basedonbuyerpreferences.Thee-Sourcingprocessusuallyinvolvesorderplanning, RFQgeneration,RFQevaluation,negotiation,settlement,andorderexecution.With thecreationandevaluationofanRFQ(Request-for-Quote)comestheneedforadecision supportandauctionsystemtodeterminewhichbidthebuyershouldpurchasefrom.An optimalsourcingmechanismwillresultinlowertotalacquisitioncostsforthebuyer. 16

PAGE 25

ibm ResearchhasdevelopedtheMultidimensionalAnalysisPlatform,or map ,to providedecisionsupportfore-Sourcing. map consistsoftoolstoelicitbuyerpreferences formulti-attributebidevaluationusingdecisionanalysistechniques,abidevaluation enginethatdeterminestheoptimalsetofbidsabuyershouldaccept,andavisualization tooltocomparemultiplebidsacrossmultipleattributes.Inaddition,thesystemmaybe linkedtoanexistingauctionplatformtocarryoutcomplexauctionsforpracticalbusiness trading. TheEmptorisSourcingPlatformfromEmptorisandtheProtOptimizationSuite fromRaptaree-Sourcingsystemsthatprovidecommercialbidanalysisviaintegerprogrammingandconstraintprogramming.Theseproductsanalyzebidsfrommultiplesuppliers,andthenselectanoptimalsetofbids,basedonuserpreferences.Theseproducts arewell-suitedforsimpleobjectives,suchasminimizingthetotalcostforthebuyer. However,thesesystemsdonothandletheoptimizationofmultipleattributeswell,which isvitalinthetradingofcomplexcommodities.Moreover,thesesystemsalsodonot giveusersathoroughexplanationofresults,andtheydonotallowuserstoreadilylook throughtheavailablebidsthemselves. Anotherapproachtobid-analysismaybefoundinFrictionlessCommerce'sEnterpriseSoftwareandPerfectCommerce'sPerfectApplicationSuite.Thesesystemscarry outcomplexdecisionmakingbydecomposingcomplexdecisionsintosmaller,simpler piecesthatcanlaterberecombinedintothelargeraggregatedecision.Thesesystems relyontheusertoassignrelativeweightstodierentattributevaluesfoundinapotentialbid.Theseweightsmaythenbeaddedtoyieldanumericoverallvalueforabid. Thesystemthensortsthebidsbasedonthetheiroverallvalueandtheuserselectsthe winningbids.Themajordrawbackwiththisapproachisthatitreliesheavilyonthe appropriatesettingofweightsbytheuser,whichisoftenhardtoguarantee.Theuser 17

PAGE 26

normallyhaslittlehelpinassigningrelativeweights,andwillencounterdicultywhen thenumberofattributesgrowsintothedozens. CaliforniaSoftwareCompany,Ltd.releasedtheeBizMarketServersoftware,which includesenginesforbothauctionsandexchanges.TheeBizAuctionEnginesupports severalpopularauctiontypes,suchasDutch,English,andSealedBid.Thesoftwarecan beusedtoprovideanauctionplatformforbusinesstrading.TheeBizExchangeEngine providesanexchangearchitecturethatallowsforperiodicclearingandcontinuousclearing exchanges.Theexchangecanreturntoatraderthebestmatchingordersinthesystem, andtraderscanthencommencenegotiationandorderexecution.TheeBizMarketServer softwarealsooerse-SourcingsolutionsviaitsRFQEngine.Businessesmayinvestigate potentialsuppliersbasedonspeciedcriteria,andthesystemcandeterminetheoptimal setofsuppliersforthebuyer. TripleHopTechnologiesdevelopedtheShopMatchersoftware,whichusesarticial intelligencemethodstolearnthebuyingbehaviorofapotentialcustomer.ShopMatcher learnsacustomer'sshoppingpatternswithrepeatedtransactionswiththeconsumer.It thenadaptsitselftomeetthedemandsoftheconsumerbymakingproductrecommendationsthataremostapttoleadtoatransaction.Thisenhancesthetradingexperience forboththebuyerandseller,allowingtheconsumertoquicklyndwhatsheislooking for,whileincreasingtheseller'schancesofcompletingatransaction.Forcompanieswith alargenumberofonlinecustomers,thistechnologycouldleadtoincreasedrevenue. 1.3.6Contributions Thereviewofpreviousworkhasshownthattechniquesfortradingcomplexcommoditiesarestilllimited.Researchershaveinvestigatedseveralauctionmodels,aswellas exchangesforstandardizedsecurities,buttheyhavenotappliedtheexchangemodelto complexgoods.Themainopenproblemsare(1)designofanautomatedexchangefor 18

PAGE 27

complexsecurities,(2)analysisofrelatedtradingrules,and(3)developmentofarigoroustheoryofcomplexexchanges.Theworkreportedhereisasteptowardaddressing theseproblems. ArecentprojectattheUniversityofSouthFloridahasbeenaimedatdeveloping anelectronicexchangeforcomplexgoods.Johnson[2001]hasdenedrelatedtrading semanticsanddevelopedanexchangesystemthatsupportsamarketwith300,000orders.Hu[2002]hasextendedordersemanticsanddevelopedindexingstructuresforfast identicationofmatchesbetweenbuyandsellorders.Gong[2002]hasdevelopedalgorithmsforfastidenticationofmostpreferablematches,whichmaximizethesatisfaction ofmarketparticipants. 19

PAGE 28

Chapter2 GeneralExchangeModel Wedescribeageneralmodeloftradingcomplexcommodities,usinganexamplecar market.Weformalizetheconceptofbuyandsellorders,consideratradingenvironment thatallowshardandsoftconstraintsintheorderspecication,anddiscussmethodsfor representingcombinationsofpurchasesandsales.InChapters3and4,wepresentan automatedexchangesupportingalimitedversionofthisgeneralmodel. 2.1Orders Webeginbydeningbuyandsellorders,whichincludedescriptionsofcommodities,price andsizespecications,andtraderspreferencesamongacceptabletransactions.Wethen stateconditionsofamatchbetweenabuyorderandsellorder. 2.1.1Buyersandsellers Whenabuyerlooksforacertainitem,sheusuallyhassomeexibility;thatis,sheis willingtobuyanyofseveralacceptableitems.Forexample,supposethatabuyeris lookingforasportscar;then,shemaybewillingtobuyoneofseveralmodels,suchas aCorvette,Camaro,orViper.Foreachofthesemodels,thebuyerhastodeterminethe maximalacceptableprice.Inaddition,abuyerusuallyhaspreferencesamongacceptable items;forinstance,thebuyermaypreferCorvettestoothermodels,andshemayprefer blackcarstoredones.Thepreferencesmaydependontheprice,features,orother factors,suchasservicequalityordeliverydate. 20

PAGE 29

Similarly,whenadealersellsavehicleshehastodecideonaminimalacceptable price.Forinstance,asellermaybesellingaCamarofornolessthan$15,000anda Corvettefornolessthan$20,000.Iftheselleroersmultipleitems,shemayprefersome salestoothers.Forexample,asellermayprefertoselltheCorvettefor$20,000,rather thantheCamarofor$15,000.Ifthebuyercametothesellertopurchaseasportscar, thenthesellerwouldtrytoselltheCorvettebeforeoeringtheCamaro. Ifabuyer'sconstraintsmatchaseller'sconstraints,thentheymay trade; thatis, thebuyermaypurchaseanitemfromtheseller.Ifabuyerndsseveralacceptableitems, possiblyprovidedbydierentsellers,shewillbuythebestavailableitem,wherethe notionof\best"dependsonhersubjectivepreferences.Likewise,asellermaybeableto choosethemostattractivedealamongseveraloers. Weusetheterm buyorder torefertoabuyer'ssetofconstraints,particularly requirementsandpreferences.Forexample,abuyer'swishtopurchaseasportscarcan beexpressedasan order forasportscar,andherpricelimitsandpreferenceswillbe apartofthisorder.Whenabuyerannouncesherdesiretotrade,wesaythatshehas placedanorder. Similarly,a sellorder isaseller'ssetofconstraints,deningtheoeredmerchandise. Forexample,asellermayplaceanordertosellaCamaroorCorvette,andherordermay alsoincludepricelimitsandpreferences.Ifabuyandsellordermatch,theymayresult inatradebetweenthecorrespondingparties. 2.1.2Denitionofanorder Aspecicmarketincludesacertainsetofitemsthatcanpotentiallybeboughtandsold; wedenoteitby M ,whichstandsfor marketset .Thissetmaybeverylargeoreven innite;inthecarmarket,itincludesallvehiclesthathaveeverbeenmade,aswellas thecarsthatcanbemadeinthefuture.Thechoiceofamarketsetlimitstheobjects 21

PAGE 30

thatmaybetraded,butitdoesnotguaranteethatalloftheobjectswillbetrade.For instance,ifwerestrict M tocars,themarketwillnotallowtradingofbicyclesorgolf carts.Ontheotherhand,ifthemarketincludesanitemsuchasaStarWarspodracer, itmayneverbetraded. Whenacustomermakesapurchaseorsale,sheneedstospecifyasetofacceptable items,denoted I ,whichstandsfor itemset; itmustbeasubsetof M ,thatis, I M Forexample,ifabuyershopsforabrand-newsportscar,thenherset I includesallnew sportsvehicles. Inaddition,acustomershouldspecifyalimitontheacceptableprice,whichmay dependonspecicitemsin I .Forinstance,abuyermaybewillingtopay$17,000forared Mustang,butonly$16,000forablackMustang,andevenlessforaCamaro.Formally, apricelimitisareal-valuedfunctiondenedontheset I ,whosevaluesarenonnegative; foreachitem i 2 I ,itdenesacertainlimit, Price ( i ).Ifacustomerisbuyinganitem, then Price ( i )isthemaximalacceptableprice.Foraseller,ontheotherhand,itisthe minimalacceptableprice.Tosummarize,abuyorsellordermustincludetwoelements (seeFigure2.1a): asetofitems, I M ,and apricefunction, Price : I R, whereRisthesetofnonnegativereal-valuedprices. Thepricesinconsumermarketsareusuallyindollarsorothercurrencies;however, tradersinsomespecializedmarketsmayusedierentpricemeasures.Forexample,mortgagebrokersoftenviewtheinterestrateasthepriceofamortgage.Thepropertiesof suchpricemeasuresmaydierfromthoseofdollarprices.Inparticular,thepricemay notbeadditive;forinstance,ifacustomertakesa8%loananda6%loan,theoverall interestisnot14%. 22

PAGE 31

IsIbPricebPriceb Prices Mustang red Ib (b) (a) Buy order Market set PricePrice Sell order Market set $20,000Figure2.1:Anexampleofabuyorder(a)andamatch(b).Thehorizontalplane representsthemarketset M ,andtheverticalaxisispriceR.Thebuyerisinterested inacertainset Ibofcars,withdierentpricelimits;inparticular,shewouldbuyared Mustangfor$20,000.Herordermatchesthesellordershownontheright. Weallowsuchpricemeasuresanddonotrequiretheuseofdollarprices.Theonly requirementisthatapriceincreasealwaysbenetsaseller,andapricedecreasealways benetsabuyer.Inotherwords,thebuyerisinterestedinndingthelowestavailable priceforagivenitem,whereasthesellertriestogetthemaximumpossibleprice.For instance,bankcustomerslookforlow-interestloans,whereasbankerstrytogethigh interests. Wesaythatabuyorder matches asellorderifthebuyer'sconstraintsareconsistent withtheseller'sconstraints,thusallowingamutuallyacceptabletrade(Figure2.1b).For example,ifabuyeriswillingtopay$20,000foraredCorvette,andasellerisreadyto sellaredCorvettefor$19,000,thentheirordersmatch. 23

PAGE 32

Formally,let( Ib;Priceb)beabuyorderand( Is;Prices)beasellorder.Theseorders matchifsomeitem i satisesbothbuyerandseller,atamutuallyacceptableprice: thereexists i 2 Ib\ Issuchthat Priceb( i ) Prices( i ) : 2.1.3Qualityfunction Buyersandsellersmayhavepreferencesamongacceptabletrades,whichdependona specicitem i anditsprice p .Forinstance,abuyermaypreferaredMustangfor$20,000 toablackCorvettefor$22,000. Wedenethesepreferencesasareal-valuedfunction Qual ( i;p ),whichassignsa numericqualitytoeachpair.Thelargervaluescorrespondto\better"items;thatis,if Qual ( i1;p1) > Qual ( i2;p2),thenacustomerwouldratherpay p1for i1than p2for i2.For example,abuyer'squalityfunctionwouldsatisfythefollowinginequality: Qual (red-Mustang; $25,000) > Qual (black-Chevrolet; $20,000) : Eachcustomermayuseherownqualityfunction;furthermore,shemayspecify dierentfunctionsfordierentorders.Notethatwedenequalityasa totallyordered function,whichisasimplication.Inreallife,customerssometimesreasonintermsof partiallyorderedfunctions.Forinstance,abuyermaybelievethata$25,000Mustangis betterthana$20,000Corvette,butshemaybeundecidedbetweena$25,000Mustang andan$18,000Corvette. Alsonotethatbuyerspreferlowerprices,whereassellerstrytogetasmuchmoney aspossible,whichmeansthatallqualityfunctionsmustbemonotoniconprice. Buymonotonicity :If Qualbisaqualityfunctionforabuyorder,and p1 p2,then, foreveryitem i Qualb( i;p1) Qualb( i;p2). 24

PAGE 33

Sellmonotonicity :If Qualsisaqualityfunctionforasellorder,and p1 p2,then, foreveryitem i Quals( i;p1) Quals( i;p2). Wedonotrequireausertospecifyaqualityfunctionforeachorder;bydefault, qualityisdenedthroughprice.Thisdefaultqualityisafunctionofatransactionprice anditsdierencefromtheuserspricelimit.Forexample,buyingaToyotaEchofor $11,000isbetterthanbuyingitfor$12,000;asanotherexample,ifauserhasspecieda $12,000pricelimitforanEchoanda$19,000limitforaMustang,thenbuyingaMustang for$11,000isbetterthanbuyinganEchofor$11,000. Toformalizethisrule,wedenotetheuserspricefunctionby Price ,andthepriceof anactualpurchaseorsaleofanitem i by p .Thedefaultqualityfunctionmustsatisfy thefollowingconditionsforeveryitem i andprice p : Forbuyorders:If Price1( i ) Price2( i ),then Qual1( i;p ) Qual2( i;p ). Forsellorders:If Price1( i ) Price2( i ),then Qual1( i;p ) Qual2( i;p ). Naturally,thelargerthegapbetweenthepricelimitandactualprice,thebetterthedeal; thatis,themoretheusersaves,themoreshelikesthetransaction.Notethatiftheprice limitisaconstantthenthequalityissimplybasedonprices,thatis,acheapermatchis betterforabuyer,andamoreexpensivematchispreferableforaseller. Wehaveconsideredtwodefaultfunctions,andausercanchooseeitherofthem. Therstfunctionisthedierencebetweenthepricelimitandactualprice: Forbuyorders: Qualb( i;p )= Price ( i ) )Tj/F13 1 Tf1.0037 0 TD(p Forsellorders: Quals( i;p )= p )Tj/F14 1 Tf1.0037 0 TD[(Price ( i ). Thisdefaultistypicalfornancialandwholesalemarkets;intuitively,thequalityofa transactiondependsonauserssavings.Forexample,supposethatacardealerwantsto purchaseeithertenMustangsfor$19,000eachortenEchoesfor$12,000each.Suppose 25

PAGE 34

furtherthatshendsMustangsfor$17,500andEchoesfor$11,000.IfshebuysMustangs, shesaves($19 ; 000 )Tj/F16 1 Tf0.9636 0 TD0.002 Tc($17 ; 500) 10=$15 ; 000.Ontheotherhand,ifsheacquiresEchoes, hersavingsareonly($12 ; 000 )Tj/F16 1 Tf1.0338 0 TD0.002 Tc($11 ; 000) 10=$10 ; 000.Thus,thersttransactionis moreattractive. Theotherdefaultfunctionistheratioofthepricedierencetothepricelimit: Forbuyorders: Qualb( i;p )=Price ( i ) )Tj/F12 1 Tf1.325 0 TD(p Price ( i ). Forsellorders: Quals( i;p )=p )Tj/F12 1 Tf1.3099 0 TD[(Price ( i ) Price ( i ). Thisdefaultistraditionalforconsumermarkets;itshowsauserspercentagesavings. Forinstance,ifacustomeriswillingtopay$19,000foraMustang,andshegetsan opportunitytobuyitfor$17,500,thenthetransactionqualityis$19 ; 000 )Tj/F11 1 Tf1.3099 0 TD-0.004 Tc($17 ; 500 $19 ; 000=0 : 08. Ifsheisalsowillingtopay$12,000foranEchoandndsthatitisavailablefor$11,000, thequalityofbuyingitis$12 ; 000 )Tj/F11 1 Tf1.3099 0 TD-0.004 Tc($11 ; 000 $12 ; 000=0 : 09,whichispreferabletotheMustang. 2.1.4Ordersizes Ifauserwantstobuyorsellseveralidenticalitems,shemayincludetheirnumberin theorderspecication;forexample,abuyercanplaceanordertobuytwosportscars, andasellercanannounceasaleofonethousandCorvettes.Weassumethattheorder sizeisanaturalnumber,thatis,themarketparticipantsbuyandsellwholeitems. Thisassumptionissomewhatrestrictive,sinceitenforcesdiscretizationofcontinuous commodities,suchascopperororangejuice. Theusermayspecifynotonlytheoverallordersize,butalsotheminimalacceptable size.Forinstance,supposethatawholesaleagentforChevroletneedstosellonethousand cars.Furthermore,shehasnotimeforindividualsales,andworkswithdealershipsthat arebuyingatleasttencarsatonce.Shemaythenspecifythattheoverallsizeofhersell orderisonethousand,andtheminimalacceptablesizeisten.Iftheminimalsizeequals 26

PAGE 35

theoverallsize,wesaythattheorderis all-or-none .Forexample,theagentmayoer tencarsandspecifythatherminimalsizeisalsoten;then,shewillselleithernothingor tencarsatonce. Inaddition,theusercanindicatethatatransactionsizemustbedivisiblebya certainnumber,calleda sizestep .Forexample,stocktradersoftenbuyandsellstocksin blocksofhundred.Asanotherexample,awholesaleagentmayspecifythatsheisselling carsinblocksoftwenty;inthiscase,shewouldbewillingtoselltwentyorfortycars,but notthirty. Tosummarize,anordermayincludesixelements: Itemset, I Pricefunction, Price : I R Qualityfunction, Qual : I R R Ordersize, Max Minimalacceptablesize, Min Sizestep, Step Theitemset,pricelimit,andsizespecicationarehardconstraintsthatdetermine whetherabuyordermatchesasellorder,whereasthequalityfunctionservesasboth hardandsoftconstraints.Rejectionofanegativequalityisahardconstraint,whereas choiceoflargevaluesamongpositive-qualitytransactionsisasoftconstraint. Todenethematchingconditions,wedenotetheitemsetofabuyorderby Ib,itspricefunctionby Priceb,itsqualityfunctionby Qualb,anditssizeparametersby Maxb, Minb,and Stepb.Similarly,wedenotetheparametersofasellorderby Is; Prices; Quals; Maxs; Mins,and Steps.Thetwoordersmatchiftheysatisfythefollowingconstraints. 27

PAGE 36

Sell:Sell: $12,000 10 Echoes, Sell: 10 Echoes, at least 2, $11,500 at least 5, 10 Echoes, $11,000Figure2.2:Exampleofabulkdiscount.Ifadealerisoeringalowerpriceforbulk purchases,shehastoplaceseveralorderswithdierentpricesandminimalsizes. Thereisanitem i 2 Ib\ Is,suchthat Prices( i ) Priceb( i ). Thereisaprice p ,suchthat Prices( i ) p Priceb( i ),and Qualb( i;p ) 0and Quals( i;p ) 0 Thereisamutuallyacceptablesizevalue size ,suchthat Minb size Maxb, Mins size Maxs,and size isdivisibleby Stepband StepsThepriceandqualityfunctionsinthismodeldonotdependonatransactionsize, whichisasimplication,becausesellerssometimesoerdiscountsforbulkorders.For example,acardealermaygiveadiscounttoacustomerwhopurchasestwocarsatonce, andanevenlargerdiscounttoabuyerofvecars.Insuchcases,asellercanplaceseveral orderswithdierentpricelimitsandminimalsizes,asillustratedinFigure2.2.Ifaseller wantstocompleteonlyoneoftheseorders,shecanusethedisjunctive-ordermechanism describedinSection2.3.1. 2.1.5Marketattributes Theset M ofallpossibleitemsmaybeverylarge,whichmeansthatwecannotexplicitly representallitems.Forexample,weprobablycannotmakeacatalogofallfeasiblecars, 28

PAGE 37

sinceitwouldincludeaseparateentryforeachpossiblecombinationofmodels,colors, features,andotherattributesthatdescribeaspecicvehicle.Toavoidthisproblem, wedeneaset M byalistofattributesandpossiblevaluesofeachattribute.Asa simpliedexample,wemaydeneausedcarbyfourattributes: Model,Color,Year, and Mileage. Then,auserdescribesaspeciccarbysubstitutingvaluesfortheseattributes; forexample,asellermayoeraredMustang,madein1998,with30,000miles. Formally,everyattributeisasetofvalues;forinstance,the Model setmayinclude allcarmodels, Color mayincludeallvisiblewavelengths, Year mayincludetheinteger valuesfrom1896to2001,and Mileage mayincluderealvaluesfrom0to500,000.The marketset M isa Cartesianproduct oftheseattributesets;inthisexample, M = Model Color Year Mileage .Ifthemarketincludes n attributes,theneachitemisan n -tuple; inthecarexample,itisaquadruplethatspeciesthemodel,color,year,andmileage. TheCartesian-productrepresentationisasimplication,basedontheassumption thatallitemsinthemarkethavethesameattributes.Somemarketsdonotsatisfythis assumption;forexample,ifwetradechariotsandStarWarspod-racersonthesame market,wemayneedtwodierentsetsofattributes.Wefurtherlimitthemodelby assumingthateveryattributesethasoneofthreetypes: Asetofexplicitlylistedvalues,suchascarmodels Anintervalofintegernumbers,suchasyear Anintervalofrealvalues,suchasmileage Thevalueofacommoditymaymonotonicallydependonsomeofitsattributes.For example,thequalityofacardecreaseswithanincreaseinmileage.Ifacustomeriswilling tobuyacertaincarwith20,000miles,shewillagreetoacceptanidenticalvehiclewith 10,000milesforthesameprice.Thatis,abuyerwillalwaysacceptsmallermileageifit doesnotaectotheraspectsofthetransaction. 29

PAGE 38

Whenamarketattributehasthisproperty,wesaythatitis monotonicallydecreasing .Toformalizethisconcept,supposethatamarkethas n attributes,andweconsider the k thattribute.Wedenoteattributevaluesofagivenitemby i1;:::;ik;:::;in,and atransactionpriceby p .The k thattributeismonotonicallydecreasingifallpriceand qualityfunctionssatisfythefollowingconstraints: Pricemonotonicity :If Price isapricefunctionforabuyorsellorder,and ik i0 k, then,foreverytwoitems( i1;:::;ik )Tj/F11 1 Tf0.8281 0 TD(1;ik;ik +1;:::;in)and ( i1;:::;ik )Tj/F11 1 Tf0.8281 0 TD(1;i0 k;ik +1;:::;in),wehave Price ( i1;:::;ik;:::;in) Price ( i1;:::;i0 k;:::;in). Buymonotonicity :If Qualbisaqualityfunctionforabuyorder,and ik i0 k,then, foreverytwoitems( i1;:::;ik )Tj/F11 1 Tf0.8281 0 TD(1;ik;ik +1;:::;in)and( i1;:::;ik )Tj/F11 1 Tf0.8281 0 TD(1;i0 k;ik +1;:::;in), andeveryprice p ,wehave Qualb( i1;:::;ik;:::;in;p ) Qualb( i1;:::;i0 k;:::;in;p ). Sellmonotonicity :If Qualsisaqualityfunctionforasellorder,and ik i0 k,then,for everytwoitems( i1;:::;ik )Tj/F11 1 Tf0.8281 0 TD(1;ik;ik +1;:::;in)and( i1;:::;ik )Tj/F11 1 Tf0.8281 0 TD(1;i0 k;ik +1;:::;in),and everyprice p ,wehave Quals( i1;:::;ik;:::;in;p ) Quals( i1;:::;i0 k;:::;in;p ). Similarly,ifthequalityofcommoditiesgrowswithanincreaseinanattributevalue, wesaythattheattributeis monotonicallyincreasing .Forexample,thequalityofacar increaseswiththeyearofmaking. Notethatmonotonicattributesarenumeric,andwecannotapplythisnotiontoan unorderedsetofvalues,suchascarmodels.Alsonotethatwedonotconsiderpartially orderedattributesets,whichisasimplication,becausesomeattributesmaybe\partially monotonic."Forexample,Camry lx (adeluxemodel)isdenitelybetterthanCamry ce (abasicmodel),whereasthechoicebetweenCamry ce andSienna ce dependson aspeciccustomer.Inaddition,observethatamonotonicattributeisageneralization ofprice,thatis,itmaybesubjectfornegotiation,withtheotherattributesxed.For example,theshippingservicemaynegotiateadeliverydate. 30

PAGE 39

Theoretically,wecanviewthepriceasoneofthemonotonicattributes;however, itsuseintheimplementedsystemisdierentfromtheotherattributes. 2.2Orderexecution Weintroducethenotionofa ll ,whichisaspecictransactionbetweenbuyersand sellers.Werstconsideratradebetweenonebuyerandoneseller,andthendenells fortransactionsthatinvolvemultiplebuyersandsellers.Weusethisnotiontodene conditionsofanacceptablemulti-ordertransaction. 2.2.1Fills Whenabuyordermatchesasellorder,thecorrespondingpartiescancompleteatrade, whichinvolvesthedeliveryofappropriateitemstothebuyerforanappropriateprice.We usetheterm fill torefertothetradeditemsandtheirprice.Forexample,supposethat abuyerhasplacedanorderfortwosportscars,andasellerissellingthreeredMustangs. Ifthepricesoftheseordersmatch,thebuyermaypurchasetworedMustangsfromthe seller;inthiscase,wesaythattworedMustangsisallforherorder.Formally,all consistsofthreeparts:aspecicitem i ,itsprice p ,andthenumberofpurchaseditems, denoted size If( Ib, Priceb, Qualb, Maxb, Minb, Stepb)isabuyorder,and( Is, Prices, Quals, Maxs, Mins, Steps)isamatchingsellorder,thenall( i p size )mustsatisfythefollowing conditions: i 2 Ib\ Is Prices( i ) p Priceb( i ) Qualb( i;p ) 0and Quals( i;p ) 0 max( Minb; Mins) size min( Maxb; Maxs) size isdivisibleby Stepband Steps31

PAGE 40

Notethatallconsistsofaspecicitem,price,andsize;unlikeanorder,itcannot includeasetofitemsorarangeofsizes.Furthermore,allitemsinallhavethesame price;forinstance,all(red-Mustang,$18,000,2)meansthatabuyerhaspurchasedtwo redMustangsfor$18,000each.Ifshehadboughtthesecarsfordierentprices,wewould representthemastwodierentllsforthesameorder. Ifbothbuyerandsellerspecifyasetofitems,theresultingllcancontainanyitem i 2 Ib\ Is.Similarly,wemayhavesomefreedominselectingthepriceandsizeofthe ll;theheuristicsformakingthesechoicesdependonaspecicimplementation. Itemchoice :If Ib\ Isincludesseveralitems,wemaychooseanitemtomaximize eitherthebuyersqualityorthesellersquality.Amorecomplexheuristicmaysearch foranitemthatmaximizestheoverallsatisfactionofthebuyerandseller. Pricechoice :Thedefaultstrategyistosplitthepricedierencebetweenabuyer andseller,whichmeansthat p =Priceb( i )+ Prices( i ) 2.Anotherstandardoptionisto favoreitherthebuyerortheseller;thatis,wemayalwaysuse p = Priceb( i )or, alternatively,wemayalwaysuse p = Prices( i ). Sizechoice :Weassumethatbuyersandsellersareinterestedintradingatthe maximalsize,orasclosetothemaximumaspossible;thus,thellhasthelargest possiblesize.Thisdefaultisthesameasinnancialmarkets. InFigure2.3,wegiveanalgorithmthatndsthemaximalllsizefortwomatching orders.The gcd functiondeterminesthegreatestcommondivisorof Stepband StepsusingEuclid'salgorithm.Themainprocedurendstheleastcommonmultipleof Stepband Steps,denoted step ,whichequalsStepb Steps gcd ( Stepb;Steps).Then,itcomputesthegreatest size,divisibleby step ,thatisbetweenmax( Minb; Mins)andmin( Maxb; Maxs).Ifnoll sizesatisestheseconstraints,thealgorithmreturnszero,whichmeansthatthesize specicationofthebuyorderdoesnotmatchthatofthesellorder. 32

PAGE 41

fill-price ( Priceb; Prices;i ) Thealgorithminputsthepricefunctionsofabuyandsellorder,andanitem i thatmatchesboth orders. If Priceb( i ) Prices( i ),thenreturnPriceb( i )+ Prices( i ) 2; else,return none (noacceptableprice) fill-size ( Maxb; Minb; Stepb; Maxs; Mins; Steps) Thealgorithminputsthesizespecicationofabuyorder, Maxb; Minb;and Stepb, andthesizespecicationofamatchingsellorder, Maxs; Mins,and Steps. Findtheleastcommonmultipleof Stepband Steps: step =Stepb Steps gcd ( Stepb;Steps)Findthemaximalacceptablesize,divisibleby step : size = bmin ( Maxb;Maxs) stepc Verifythatitisnotsmallerthantheminimalacceptablesizes: If size Minband size Mins,thenreturn size Else,return0(noacceptablesize) gcd ( Stepb; Steps) small =min( Stepb; Steps) large =max( Stepb; Steps) Repeatwhile small 6 =0: rem = large mod small large = small small = rem Return large Figure2.3:Computingtheprice( fill-price )andsize( fill-size )ofallfortwomatchingorders. Aftergettingall,thetradermaykeeptheinitialorder,reduceitssize,orremove theorder;thedefaultoptionisthesizereduction.Forexample,ifasellerhasordered asaleofthreecarsandgottenatwo-carll,thesizeofherorderbecomesone.Ifthe reducedsizeiszero,weremovetheorderfromthemarket.Ifthesizeremainspositive butdropsbelowtheminimalacceptablesize Min ,theorderisalsoremoved.Theprocess ofgeneratingallandthenreducingthebuyandsellorderiscalledthe execution of theseorders.InFigure2.4,weillustratefourdierentscenariosoforderexecution. 33

PAGE 42

Buy: 3 cars Sell: 3 cars Buy:Sell: 3 cars 1 car Buy: 3 cars 4 cars, Sell: at least 2 removed removedreducedremovedremoved Buy: 1 car the minimal size) is smaller than (the reduced size removed Fill: 3 cars Fill: 3 cars Fill: 3 carsFigure2.4:Examplesoforderexecution. Sell: $11,000 Buy: $11,000 Sell: 2 Echoes, $11,000 at least 3, 6 Echoes, 2 Echoes, Fill: 2 Echoes, $11,000 Fill: 2 Echoes, $11,000 (a) (b) Sell: $11,000 Buy: $11,000 Sell: 3 Echoes, $11,000 6 Echoes, Fill: 1 Echoes, $11,000 Fill: 3 Echoes, $11,000 1 Echo, step 2,Figure2.5:Examplesofmulti-ordertransactions. 2.2.2Multi-lls Ifauserspeciesaminimalordersize,shemayindicatethatshewillacceptatrade withmultiplematchingordersiftheir total sizeisnosmallerthanherminimalsize. Forexample,thebuyorderinFigure2.5(a)doesnotmatcheitherofthesellorders; however,iftheuserallowstradeswithmultiplematchingorders,wecangeneratethe transactionshowninFigure2.5(a).Iftheuserspeciesthesizestep,thenthetotalsize ofamulti-ordertransactionmustbedivisiblebythisstep(Figure2.5b). Toformalizethisconcept,supposethatabuyerhasplacedanorder ( Ib; Priceb; Qualb; Maxb; Minb; Stepb),andsheiswillingtotradewithmultiplesellorders. Supposefurtherthatsellershaveplaced k orders,denotedasfollows: 34

PAGE 43

( I1; Price1; Qual1; Max1; Min1; Step1) ( I2; Price2; Qual2; Max2; Min2; Step2) ... ( Ik; Pricek; Qualk; Maxk; Mink; Stepk) Then,thebuyordermatchesthese k sellordersiftheysatisfythefollowingconditions. Forevery j 2 [1 ::: k ],thereisanitem ij2 Ib\ Ij,suchthat Pricej( ij) Priceb( ij) Forevery j 2 [1 ::: k ],thereisaprice pj,suchthat Pricej( ij) pj Priceb( ij) Qualb( ij;pj) 0and Qualj( ij;pj) 0 Thereareacceptablesizes, size1; size2;:::; sizek,suchthat Forevery j 2 [1 ::: k ], Minj sizej Maxj Forevery j 2 [1 ::: k ], sizejisdivisibleby Stepj Minb size1+ size2+ ::: + sizek Maxb size1+ size2+ ::: + sizekisdivisibleby StepbSimilarly,wecandeneamatchbetweenasellorderandmultiplebuyorders.In addition,wecanallowtransactionsthatinvolvemultiplebuyordersandmultiplesell orders,asshowninFigure2.6.Wewilldenetheconditionsforsuchtransactionsin Section2.2.3. Werefertotheresultofamulti-ordertransactionasa multi-ll ,whichisasetof severalllsforagivenorder.Sinceamulti-llcanincludebothpurchasesandsales,we denotethepurchasesizesbypositiveintegers,andthesalesizesbynegativeintegers.For instance,theordersinFigure2.6getthefollowingmulti-lls: 35

PAGE 44

Sell: $11,000 Buy:Sell: $11,000 at least 2, 2 Echoes, at least 2, 2 Echoes, Buy: $11,000 1 Echo, $11,000 at least 3, 3 Echoes, Fill: $11,000 Fill: $11,000 Fill: $11,000 2 Echoes, 1 Echo,1 Echo,Figure2.6:Exampleofatransactionthatinvolvesmultiplebuyandsellorders. Buy1:(Echo,$11,000,1) Sell2:(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1),(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc(1) Buy3:(Echo,$11,000,1),(Echo,$11,000,2) Sell4:(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc(2) Asanotherexample,themulti-ll(Camry,$20,000,1),(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD[(2)meansthata traderhasboughtaCamryfor$20,000andsoldtwoEchoesfor$11,000each. Wesaythattwomulti-llshavethesameitemsetiftheyincludethesamecommodities,notnecessarilyatthesameprice.Forexample,themulti-ll(Echo,$11,000, 1),(Echo,$12,000,1)hasthesameitemsetas(Echo,$11,000,2);inthisexample,both multi-llsrepresentthepurchaseoftwoEchoes.Asanotherexample,(Camry,$20,000, 2),(Echo,$11,000,1),(Echo,$12,000, )Tj/F16 1 Tf0.7729 0 TD-0.002 Tc[(2)includesthesameitemsetas(Camry,$20,000, 3),(Camry,$21,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1),(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD-0.001 Tc[(1);bothmulti-llsrepresentapurchaseoftwo CamriesandsaleofanEcho.Finally,wedenethe emptymulti-ll ,denoted ; ,asthe emptysetoflls. 2.2.3Equivalenceofmulti-lls Wenextobservethatdierentmulti-llsmaybeequivalentfromatraderspointofview. Forinstance,buyingtwoEchoesfor$10,000eachandimmediatelysellingoneofthemfor thesamepriceisequivalenttobuyingonecar;thatis,themulti-ll(Echo,$10,000,2), (Echo,$10,000, )Tj/F16 1 Tf0.7729 0 TD-0.001 Tc[(1)isequivalentto(Echo,$10,000,1).Asanotherexample,iftwolls 36

PAGE 45

includethesamesetofitemsandthesametotalprice,mosttraderswouldconsiderthem identical;thus,(Echo,$10,000,1),(Tercel,$12,000,1)isequivalentto(Echo,$11,000,1), (Tercel,$11,000,1).Ifamulti-ll M-Fill1isequivalentto M-Fill2,wewrite\ M-Fill1 M-Fill2." Anexactdenitionofequivalencemayvaryacrossmarkets.Forexample,ifthe priceisindollars,buyingtwoidenticalitemsforprices p1and p2isequivalenttobuying eachitemforp1+ p2 2.Ontheotherhand,ifweconsiderthesaleofmortgagesandview theinterestrateasaprice,thisaveragingrulemaynotworkbecauseofnonlineargrowth ofcompoundinterests. Toformalizetheconceptofequivalence,werstdenethe unionofmulti-lls ,which isthesetofalltransactionscontainedinthesemulti-lls.Forexample,theunionof(Echo, $10,000,1)and(Echo,$10,000,1),(Tercel,$12,000,1)isathree-elementmulti-ll(Echo, $10,000,1),(Echo,$10,000,1),(Tercel,$12,000,1).Thisdenitionisdierentfrom thestandardunionofsetssinceamulti-llmayincludemultipleidenticalelements.We denotethemulti-llunionby\+"todistinguishitfromthesetunion: ( i11;p11; size11) ;:::; ( i1m;p1m; size1m)+( i21;p21; size21) ;:::; ( i2k;p2k; size2k) =( i11;p11; size11) ;:::; ( i1m;p1m; size1m) ; ( i21;p21; size21) ;:::; ( i2k;p2k; size2k). Amulti-llequivalenceisdenedforaspecicmarket,anditmaybedierentfor dierentmarkets.Formally,itisarelationbetweenmulti-llsthatsatisesthefollowing properties: Standardpropertiesofequivalence: M-Fill M-Fill (reexivity) If M-Fill1 M-Fill2,then M-Fill2 M-Fill1(symmetry). If M-Fill1 M-Fill2and M-Fill2 M-Fill3,then M-Fill1 M-Fill3(transitivity). 37

PAGE 46

Atransactionthatinvolveszeroitemsisequivalenttotheemptymulti-ll: ( i;p; 0) ; Buyingorsellingidenticalitemsseparately,atthesameprice,isequivalenttobuying orsellingthemtogether: ( i;p; size1) ; ( i;p; size2) ( i;p; size1+ size2). Theunionoperationpreservestheequivalence: If M-Fill1 M-Fill2,then M-Fill1+ M-Fill3 M-Fill2+ M-Fill3. Theseconditionsaretherequiredpropertiesofthemulti-llequivalenceinallmarkets;inaspecicmarket,theequivalencemayhaveadditionalproperties.Forexample,( i;p; 1) ; ( i;p; 1)isalwaysequivalentto( i;p; 2).Ontheotherhand,( i;p1; 1) ; ( i;p2; 1) maybeequivalentto( i;p1+ p2 2; 2)insomemarkets,suchascartrading,butnotinother markets,suchasmortgagesales. Weusetheconceptofequivalencetodeneconditionsforamulti-ordertransaction, suchasthetradeinFigure2.6.Specically,wecanexecuteatransactionthatinvolves k orders,denoted Order1; Order2;:::; Orderk,ifthereexistmulti-lls M-Fill1; M-Fill2;:::; M-Fillk, suchthat Forevery j 2 [1 :::k ] ; M-Filljmatches Orderj M-Fill1+ M-Fill2+ ::: + M-Fillk; Forexample,wecanselectthefollowingmulti-llsforordersinFigure2.6: (Echo,$11,000,1)matches Buy1 (Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1),(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD[(1)matches Sell2 (Echo,$11,000,1),(Echo,$11,000,2)matches Buy3item(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc(2) matches Sell438

PAGE 47

Fill: $12,000 Fill: $10,000 1 Echo, 1 Echo, 2 Echoes, at least 2, Buy: $11,000 $10,000 1 Echo, Sell: $12,000 1 Echo, Sell:Figure2.7:Exampleofpriceaveraging. Theunionofthesemulti-llsisequivalenttotheemptymulti-ll: (Echo,$11,000,1)+(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1),(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc(1) +(Echo,$11,000,1),(Echo,$11,000,2)+(Echo,$11,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc(2) ; 2.2.4Priceaveraging Atradermaysometimesacceptamulti-llevenifitdoesnotsatisfytheconditionsofa multi-ll.Forexample,considerthetransactioninFigure2.7.Thepriceofthesecond lldoesnotmatchthebuyorder,buttheoverallpriceofthetwollsisacceptable. Thebuyerpays$22,000fortwocars;thus,theiraveragepricematchesthebuyersprice limit.Whenplacinganorder,thetraderhastospecifywhethershewillacceptsuchprice averaging. Sincethepricemaynotbeindollars,wecannotdirectlycomputethetotalpriceof amulti-ll.Forexample,ifthepriceofamortgageistheinterestrate,theoverallinterest ofamulti-llisnotthesumofitselementsrates.Toallowpriceaveraging,wedenea payment foramulti-ll.Intuitively,itrepresentsadollaramountdeliveredbyabuyeror receivedbyaseller,andtheunitsofpaymentmaydierfrompriceunits.Forexample, whenahomebuyernegotiatesamortgage,shemayuseinterestasapricemeasure;after receivingthemortgage,shewillrepayitindollars.Formally,apaymentisareal-valued function Pay onmulti-llsthathasthefollowingproperties: 39

PAGE 48

Ifatraderdoesnotbuyorsellanyitems,thepaymentiszero: Pay ( ; )=0. Thepaymentisproportionaltothenumberofitems: Pay (( i;p; size ))= size Pay (( i;p; 1)). Thepaymentformultiplellsequalsthesumofrespectivepayments: Pay (( i1;p1; size1) ;:::; ( ik;pk; sizek)) = Pay (( i1;p1; size1))+ ::: + Pay (( ik;pk; sizek)). Equivalentmulti-llsincurthesamepayment: If M-Fill1 M-Fill2,then Pay ( M-Fill1)= Pay ( M-Fill2). Abuyerspaymentismonotonicallyincreasingonprice: If p1 p2,then Pay (( i;p1; 1)) Pay (( i;p2; 1)). Sinceapaymentismonotoniconprice,bothbuyersandsellerswanttoreducetheir payments.Forbuyers,thisreductionmeanspayinglessmoney;forsellers,itmeans gettingmoremoney,whichisrepresentedbyasmallernegativevalue.Forexample,acar sellerwouldrathergetthe )Tj/F16 1 Tf0.7729 0 TD[($12,000paymentthanthe )Tj/F16 1 Tf0.7729 0 TD[($11,000payment,whichmeans thatshepreferssellinghervehiclefor$12,000ratherthanfor$11,000.Abuyer'spayment maybenegative,whichmeansthatasellerpaysthebuyerforacceptinganundesirable item.Forexample,ifthesellerwantstodisposeofabrokencar,shemaypay$100for pullingitaway;inthiscase,thebuyerspaymentis )Tj/F16 1 Tf0.7729 0 TD0.002 Tc($100. Notethatapaymentdependsnotonlyonpricebutalsoonspecicitems;thatis, Pay (( i1;p; 1))maybedierentfrom Pay (( i2;p; 1)).Forexample,thepaymentfora6% fteen-yearmortgageisdierentfromthepaymentfora6%thirty-yearmortgage.Also notethatthetotalpaymentofalltransactionparticipantsiszero.Forexample,consider thetradeinFigure2.7.Thebuyer'spaymentis$22,000,therstselle'rspaymentis 40

PAGE 49

)Tj/F16 1 Tf0.7729 0 TD[($10,000,andthesecondseller'spaymentis )Tj/F16 1 Tf0.7729 0 TD[($12,000;thus,theoverallpaymentis $22,000-$10,000-$12,000=0. Wecandecomposethepaymentforamulti-llintothepaymentsforitselements: Pay (( i1;p1; size1) ;:::; ( ik;pk; sizek))= size1 Pay (( i1;p1; 1))+ ::: + sizek Pay (( ik;pk; 1)). Tosimplifythisnotation,wewillusuallywrite Pay ( i;p )insteadof Pay (( i;p; 1)). Ausercanalsodeneaqualityfunctionformulti-lls.Formally,itisareal-valued function Qualmonmulti-llsthatsatisesthefollowingconstraints: Iftheuserdoesnottradeanyitems,thequalityiszero: Qualm( ; )=0. Thequalityfunctionisconsistentwiththequalityofsimplells: If size > 0,then Qualm(( i;p; size ))= Qualb( i;p ). If size < 0,then Qualm(( i;p; size ))= Quals( i;p ). Equivalentllshavethesamequality: If M-Fill1 M-Fill2,then Qualm( M-Fill1)= Qualm( M-Fill2). Themulti-llunionpreservesrelativequalityofmulti-lls: If Qualm( M-Fill1) Qualm( M-Fill2),then Qualm( M-Fill1+ M-Fill3) Qualm( M-Fill2+ M-Fill3). Recallthatthequalityofsimplellsismonotoniconprice(Section2.1.3),whichimplies thatthemulti-llqualityisalsomonotoniconprice: If size > 0and p1 p2,then Qualm(( i;p1; size )) Qualm(( i;p2; size )). If size < 0and p1 p2,then Qualm(( i;p1; size )) Qualm(( i;p2; size )). 41

PAGE 50

Iftheuserdoesnotprovideamulti-llqualityfunction,wedeneitastheweighted meanqualityofamulti-llselements.Ifthemulti-llincludespurchases ( i1;p1; size1) ;:::; ( ij;pj; sizej)andsales( ij +1;pj +1; )Tj/F14 1 Tf0.7729 0 TD0.001 Tc(sizej +1) ;:::; ( ik;pk; )Tj/F14 1 Tf0.7729 0 TD0.001 Tc(sizek),thedefaultqualityis: Qualm(( i1;p1; size1) ;:::; ( ij;pj; sizej) ; ( ij +1;pj +1; )Tj/F14 1 Tf0.7729 0 TD0.001 Tc(sizej +1) ;:::; ( ik;pk; )Tj/F14 1 Tf0.7729 0 TD0.001 Tc(sizek)) =size1 Qualb( i1;p1)+ ::: + sizej Qualb( ij;pj)+ sizej +1+ Quals( ij +1;pj +1)+ ::: + sizek Quals( ik;pk) size1+ ::: + sizej+ sizej +1+ ::: + sizek. Nowsupposethatatraderhasplacedanorder( I ; Price ; Qualm; Max ; Min ; Step ), andthatsheacceptspriceaveraging.Then,amulti-ll( i1;p1; size1) ;:::; ( ik;pk; sizek)is acceptableifitsatisesthefollowingconditions. i1;:::;ik2 I size1 Pay ( i1;p1)+ ::: + sizek Pay ( ik;pk) size1 Pay ( i1; Price ( i1))+ ::: + sizek Pay ( ik; Price ( ik)) Qualm(( i1;p1; size1) ;:::; ( ik;pk; sizek)) 0 Min size1+ ::: + sizek Max size1+ ::: + sizekisdivisibleby Step 2.2.5Fairtrading Fairnessrulesarebasedonthestandardsofthenancialindustry:theusersmustgetthe bestavailablepriceforagivenquality,thebestpricemustbeselectedamongcompeting orders,andthesystemmustpreferearlierorderswhenthepriceisequal. Formally,fairtradingmustsatisfythefollowingconstraints: Whenanordergetsall,thereisnobetterllonthemarket,accordingtothe order'spreferencefunction. Whenanordergetsall,thereisnoequallygoodllonthemarketwithanolder order. 42

PAGE 51

Notethattheseconditionsdonotguaranteeoptimization;forexample,themaximum surplus ,whichisdenedasthedierencebetweentherespectivebuyerandseller pricelimits,isnotguaranteed. Amoregeneralconceptoffairnessisbasedonthe\boys-and-girls"condition.Specifically,eachorder\wants"otherorders,andtheordersareprioritized.Inthiscondition, fairtradingmustensurethatwhen A matches B and C matches D ,itisnotthecasethat ( A wants D morethan B )and( D wants A morethan C ). 2.3Combinatorialorders Acombinatorialorderisacollectionofseveralorderswithconstraintsontheirexecution. Asimpleexampleisa spread ,oftenusedinfuturestrading,whichconsistsofabuyorder andsellorderthatmustbeexecutedatthesametime;forinstance,atradermayplace anordertobuygoldfuturesandsimultaneouslysellsilverfutures. Combinatorialauctionsallowlargercombinationsofbids;forexample,atradercan orderasimultaneouspurchaseofasportutilityvehicle,trailer,boat,andtwobicycles. Someauctionsalsosupportmutuallyexclusivebids;forinstance,ausercanindicatethat sheneedseitheraboatortwobicycles. Wedescribecombinatorialordersintheproposedexchangemodel,whichinclude mutuallyexclusiveorders,simultaneoustransactions,andchainsofconsecutivetrades. 2.3.1Disjunctiveorders A disjunctive-order mechanismisfortraderswhowanttoexecuteoneofseveralalternativetransactions.Forexample,ifthebuyerwantstoselloneofherthreecars,shecan placetheorderinFigure2.8(a).Asanotherexample,ifabuyerhasatrailer,shecan eitherbuyanoldsportutilityvehicle( suv )forpullingitorsellthetrailer(Figure2.8b). Wehavetoguaranteethatatraderdoesnotgetllsfortwodierentelementsofadis43

PAGE 52

Sell:Sell: $15,000 (a)(b) Buy: 1 Mustang, $18,000 $11,000 1 Tercel 1 Camry, 1 SUV, $2,000 1 Trailer, Sell: Sell: $3,000 oror Sell: 1 Camry, $20,000 Buy: 1 Camry, $18,000 size 100, at least 10, step 5 (d) or (c) $11,000 at least 2, Sell: $15,000 1 Camry, Sell: or 2 TercelsFigure2.8:Examplesofdisjunctiveorders. junctiveorder.Forexample,ifabuyerplacestheorderinFigure2.8(a),shewillsellat mostoneofhercars. Ifatraderspeciesasizeforsomeelementsofadisjunctiveorder,theseelements mustbeall-or-noneorders;thatis,theirminimalsizesmustbethesameastheoverall sizes.Forexample,abuyermayplaceanordertosellaCamryortwoTercels,asshown inFigure2.8(c). Adisjunctiveorderasawholecanalsohaveasize,whichisequivalenttoplacing severalidenticalorders.Forexample,supposethatabuyerhasspeciedsizeveforthe orderinFigure2.8(a).Then,shewillsellvecars,andeachcarwillbeaMustang,Tercel, orCamry.Asanotherexample,ifshespeciessizevefortheorderinFigure2.8(b),she willcompletevetransactions,andeachtransactionwillbeeitherapurchaseofasport utilityvehicleorasaleofatrailer;forinstance,shemayendupbuyingtwosportutility vehiclesandsellingthreetrailers. Inaddition,adisjunctiveordercanhaveaminimalsizeandsizestep.Forexample, supposethatadealerisbuyingCamriesfor$18,000andresellingthemfor$20,000,and sheisinterestedinbulktransactionsthatinvolveatleasttencars.Shemayplacethe orderinFigure2.8(d);itsminimalsizeisten,anditsstepisve.Iftheminimalsize 44

PAGE 53

ofadisjunctiveorderisthesameasthemaximalsize,itisanall-or-noneorder.Inthis case,itmaybeanelementofanotherdisjunctiveorder;itmayalsobeanelementofa conjunctiveorder,describedinSection2.3.2. Ifatraderusesqualityfunctionsinadisjunctiveorder,shemustspecifyafunction foreveryelementofadisjunction.Ifthetraderdoesnotspecifyqualityfunctions,weuse thesamedefaultasforsimpleorders.Weutilizequalityfunctionsnotonlyforselecting thebestllforeachelementofadisjunction,butalsoforselectingamongllsfordierent elements.Forexample,supposethatatraderhasplacedthedisjunctioninFigure2.8(b), andthatshehasspeciedaqualityfunction Qualbforthebuyelementand Qualsforthe sellelement.SupposefurtherthatshehasfoundanoldExplorerfor$2,500,andthatshe cansellthetrailerfor$2,200.If Qualb(Explorer,$2,500) > Quals(Trailer,$2,200),the traderprefersthepurchaseoftheExplorertothesaleofthetrailer. Tosummarize,adisjunctiveorderconsistsofveparts: Setofall-or-noneorders, Order1; Order2;:::; Orderk Optionalpermissionforpriceaveraging Overallordersize, Max Minimalacceptablesize, Min Sizestep, Step Amulti-ll M-Fill matchesadisjunctiveorderifwecandecomposeitintommulti-lls, denoted Sub-Fill1, Sub-Fill2;:::; Sub-Fillm,thatmatchelementsofthedisjunctionand satisfythefollowingconstraints. Min m Max ,and m isdivisibleby Step Everymulti-ll Sub-Filljmatchessomeelementofthedisjunction;thatis, forevery j 2 [1 ::m ],thereis l 2 [1 ::k ]suchthat Sub-Filljmatches Orderl. 45

PAGE 54

Iftheorderdoesnotallowpriceaveraging,then M-Fill Sub-Fill1+ Sub-Fill2+ ::: + Sub-Fillm. Iftheorderallowspriceaveraging,then M-Fill includesthesameitemsas Sub-Fill1+ Sub-Fill2+ ::: + Sub-Fillm, and Pay ( M-Fill )= Pay ( Sub-Fill1+ Sub-Fill2+ ::: + Sub-Fillm). Forexample,supposethatatraderhasplacedthedisjunctiveorderinFigure2.8(c), andspeciedthatitsoverallsizeissixanditsminimalacceptablesizeisthree.Then, themulti-ll(Camry,$16,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(2),(Tercel,$11,500, )Tj/F16 1 Tf0.7729 0 TD-0.001 Tc[(2)matchestheordersincewecan decomposethismulti-llintothreeparts: (Camry,$16,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1)+(Camry,$16,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1)+(Tercel,$11,500, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc(2). Therstandsecondpartsmatchtheleftelementofthedisjunction,andthethirdpart matchestherightelement.Aftercompletingthistransaction,wereducethesizeofthe disjunctiveorder,asshowninFigure2.9. 2.3.2Conjunctiveorders Atraderplacesa conjunctiveorder ifsheneedstocompleteseveraltransactionstogether. Forexample,ifacustomerwantstosellheroldTercelandbuyanewEcho,shemay placetheorderinFigure2.10(a).Asanotherexample,ifatraderplanstobuyasport utilityvehicle,trailer,andboat,shemayplacetheorderinFigure2.10(b). Wehavetoguaranteethatthetradergetsallforallelementsofaconjunctionat thesametime.Forexample,theconjunctioninFigure2.10(a)cansimultaneouslytrade withtwosimpleorders(Figure2.11a).Asamorecomplexexample,itcanbeapartofa transactionthatinvolvesseveralconjunctiveorders(seeFigures2.11band2.11c). Adisjunctiveordermaybeanelementofaconjunction.Forexample,ifacustomer wantstobuyatrailer,boat,andoneofseveralalternativevehicles,shecanplacetheorder 46

PAGE 55

Fill: 2 Camries, Buy: $17,000 $12,000 Buy: 2 Tercels, 2 Camries, $16,000 Fill: 2 Tercels, $11,500 removed removedreduced $11,000 at least 2, Sell: $15,000 1 Camry, Sell: or 2 Tercels, size 6, at least 3 $11,000 at least 2, Sell: $15,000 1 Camry, Sell: or 2 Tercels, size 3, at least 3Figure2.9:Exampleofatransactionthatinvolvesadisjunctiveorder. $9,000 and $30,000 and Sell:Buy: 1 Tercel, Buy:Buy: 1 Echo, $12,000 1 Sequoia, 1 Trailer, $2,000 Buy: 1 Boat, $3,000 (a) (b)Figure2.10:Examplesofconjunctiveorders. inFigure2.12(a).Furthermore,aconjunctiveordermaybeanelementofadisjunction, andatradermaynestseveralconjunctionsanddisjunctions(Figure2.12b). Ifatraderspeciessizesforsomeelementsofaconjunctiveorder,theseelements mustbeall-or-none.Forexample,acustomermayplaceanordertosellanoldTercel andbuytwonewEchoes(Figure2.13a).Asanotherexample,shemaysellaTerceland buytwonewcars,whereeachnewcariseitheranEchooraCivic(Figure2.13b). Aconjunctiveorderasawholemayhaveasize,whichisequivalenttoplacingseveral identicalorders;inaddition,itmayhaveaminimalsizeandsizestep.Forinstance,ifa 47

PAGE 56

$9,000 Sell:Buy: 1 Tercel,1 Echo, $12,000 and Buy: 1 Tercel, $10,000 Sell: 1 Echo, $11,000 Fill: 1 Tercel, $9,500 1 Echo, Fill: $11,500 Sell: 1 Echo, $11,000 $30,000 Buy: 1 Sequoia, (a) Buy: 1 Tercel, Sell: 1 Echo, $11,000 Buy: Sell: $9,000$12,000 1 Tercel, $10,000 1 Echo, Fill: 1 Tercel, $9,500 Fill: 1 Echo, $11,500 andand (b) $9,000 Sell:Buy: 1 Tercel,1 Echo, $12,000 and Buy: 1 Tercel, $10,000 Fill: 1 Tercel, $9,500 Fill: 1 Echo, $11,500 $29,000 1 Sequoia, Buy: 1 Boat, $3,000 and and Fill: 1 Boat, $2,500 $29,500 1 Sequoia, Fill: 1 Boat, $2,000 Sell:Sell: (c)Figure2.11:Exampletransactionsthatinvolveconjunctiveorders. traderplacestheorderinFigure2.14(a),shemaycompletetwo,four,orsixconjunctive transactions;eachtransactionwillinvolvesellingaTercelandbuyinganEcho.Ifthe minimalsizeofaconjunctiveorderisthesameastheoverallsize,thenitisanall-or-none order,anditcanbeanelementofadisjunctionoranotherconjunction. Whenatraderplacesaconjunctiveorder,sheisusuallyinterestedinthepriceof theoveralltransactionratherthanthepricesofitselements.Forexample,supposethata customerissellingheroldTercelandbuyinganEcho,andsheiswillingtospend$3,000 forthistransaction.ShemayselltheTercelfor$9,000andbuyanEchofor$12,000; alternatively,shemaysellheroldcarfor$8,000andbuyanewonefor$11,000. Weallowtwomechanismsforspecifyingapricelimitfortheoveralltransaction. First,atradercansetapaymentlimitforaconjunctiveorder,alongwithpricelimitsfor itselements.Forinstance,shemayplacetheordershowninFigure2.14(b);inthiscase, shewantstogetatleast$5,000forheroldTercelandpayatmost$15,000foranew 48

PAGE 57

$30,000 Buy: 1 Sequoia, $27,000 Buy: 1 Explorer, 1 Trailer, $2,000 Buy: $30,000 Buy: 1 Sequoia, $27,000 Buy: 1 Explorer, 1 Trailer, $2,000 Buy: Buy: or and and or $500 1 Tent, $25,000 1 Sienna, Buy: $26,000 Buy: or and Buy: 1 Xterra,1 Boat, $3,000 (a) (b)Figure2.12:Examplesofnesteddisjunctionsandconjunctions. $9,000 1 Tercel, Sell: at least 2, $12,000 Buy: and 2 Echoes, Sell: 1 Tercel, $9,000 size 2, at lease 2 and Buy: 1 Civic, $12,000 or 1 Echo, Buy: $12,000 (b) (a)Figure2.13:Examplesofsizespecicationsinconjunctiveorders. Echo,andhertotalcashspendingmustbeatmost$3,000.Thus,sheiswillingtosell herTercelfor$5,000andbuyanEchofor$8,000,andsheisalsowillingtosellhercarfor $12,000andbuyanewonefor$15,000.Iftheoverallconjunctiveorderhasasize,then thepricelimitisforsize1.Forexample,ifabuyerspeciesasizeoftenforaconjunctive orderandtradesallten,thentheoverallpaymentwillby$80,000,not$8,000.Recallthat theunitsofpaymentmaydierfromprice(Section2.2.3);forexample,mortgagebrokers mayexpressthepriceasaninterestrate,andtheoverallpaymentforaconjunctiveorder asadollaramount. 49

PAGE 58

$9,000 Sell:Buy: 1 Tercel,1 Echo, $12,000 $5,000 Sell:Buy: 1 Tercel,1 Echo, $15,000 andand size 6, at least 2, step 2payment limit: $3,000 (a)(b)Figure2.14:Conjunctiveorderswithasizespecication(a)andpaymentlimit(b). Second,atradercanspecifyapricelimitforeachelementofaconjunction,and indicatethatshewillacceptanymulti-llthatleadstothesametotalpayment,evenif thepricesofindividualelementsdonotsatisfythepricelimits.Thisoptionissimilar topriceaveragingforsimpleorders,describedinSection2.2.4.Forexample,suppose thatatraderusesthisoptionfortheorderinFigure2.12(a).IfshegetsaSequoiawith atrailerandboat,thetotalpaymentmustbeatmost$30 ; 000+$2 ; 000+$3 ; 000= $35 ; 000.IfshegetsanExplorerinsteadofaSequoia,thetotalpaymentmustbeatmost $27 ; 000+$2 ; 000+$3 ; 000=$32 ; 000. Inaddition,atradercanspecifyamulti-llqualityfunctionforaconjunctiveorder. Forinstance,supposethatatraderhasplacedtheorderinFigure2.13(a),andsheprefers SequoiatoExplorer.Then,herqualityfunctionmustsatisfythefollowingconstraint: Qualm((Explorer,$27,000,1),(Trailer,$2,000,1),(Boat,$3,000,1)) < Qualm((Sequoia,$30,000,1),(Trailer,$2,000,1),(Boat,$3,000,1)). Atradercanalsospecifyqualityfunctionsforelementsofaconjunction,butwedonotuse themforselectingthebestll;theironlyuseistorejectmatcheswithnegativequality. Tosummarize,aconjunctiveorderconsistsofsevenparts: Setofall-or-noneorders, Order1; Order2;:::; Orderk Overallpaymentlimit, Pay-Max Multi-llqualityfunction, Qualm Optionalpermissionforpriceaveraging 50

PAGE 59

Overallordersize, Max Minimalacceptablesize, Min Sizestep, Step Wenextdeneamulti-llthatmatchesaconjunctiveorder.Werstconsidera conjunctionofsizeoneandthengeneralizethedenitiontolargersizes.Amulti-ll M-Fill matchesaconjunctiveorderofsizeoneifitcanbedecomposedintomulti-llsfor theelementsoftheconjunction,denoted Sub-Fill1; Sub-Fill2;:::; Sub-Fillk,thatsatisfy thefollowingconditions. Forevery j 2 [1 ::k ] ; Sub-Filljmatches Orderj Iftheorderdoesnotallowpriceaveraging,then M-Fill Sub-Fill1+ Sub-Fill2+ ::: + Sub-Fillk. Iftheorderallowspriceaveraging,then M-Fill includesthesameitemsas Sub-Fill1+ Sub-Fill2+ ::: + Sub-Fillk, and Pay ( M-Fill )= Pay ( Sub-Fill1+ Sub-Fill2+ ::: + Sub-Fillk). Pay ( M-Fill ) Pay-Max Qualm( M-Fill ) 0 Forexample,themulti-ll(Tercel,$9,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1),(Echo,$12,000,1),(Civic,$12,000,1) matchestheconjunctiveorderinFigure2.13(b).Toshowthematch,wedecomposeit intotwoparts: (Tercel; $9 ; 000 ; )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1)+(Echo; $12 ; 000 ; 1) ; (Civic; $12 ; 000 ; 1). Therstpartmatchesthesellelementoftheconjunction,andthesecondpartmatches thedisjunctivebuy. Ifaconjunctiveorderincludesasizespecication,thenamulti-ll M-Fillsmatches theorderifitcanbedecomposedintomulti-lls M-Fill1; M-Fill2;:::; M-Fill size that satisfythefollowingconditions. 51

PAGE 60

Buy: 1 Trailer $2,000 Sell: Buy: 1 Sequoia, $30,000 keep Sell: $8,000 1 Rio, 2 Tercels, $9,000 keep cancelFigure2.15:Exampleofachainorder.ThetraderrstsellstwoTercelsandaRio,then purchasesaSequoia,andnallyacquiresatrailer. Min size Max size isdivisibleby Step Forevery l 2 [1 :: size ] ; M-Filllmatchestheconjunctiveorder Iftheorderdoesnotallowpriceaveraging,then M-Fills M-Fill1+ M-Fill2+ ::: + M-Fill size Iftheorderallowspriceaveraging,then M-Fillsincludesthesameitemsas M-Fill1+ M-Fill2+ ::: + M-Fill size and Pay ( M-Fills)= Pay ( M-Fill1+ M-Fill2+ ::: + M-Fill size ). Forinstance,theconjunctiveorderinFigure2.14(a)matchesthemulti-ll(Tercel, $9,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(2),(Echo,$12,000,2),whichcanbedecomposedintotwoparts: (Tercel,$9,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1),(Echo,$12,000,1)+(Tercel,$9,000, )Tj/F16 1 Tf0.7729 0 TD0.002 Tc[(1),(Echo,$12,000,1). 2.3.3Chainorders The chain-order mechanismallowsexecutionofseveraltransactionsinasequence.To illustrateit,supposethatabuyerplanstoselltwoTercelsandaRio,andtopurchasea Sequoia.Becauseofbudgetaryconstraints,shewantstosellallthreecarsbeforebuyinga newone.SupposefurtherthatabuyerwishestoacquireatrailerafterbuyingaSequoia. InFigure2.15,weshowthesequenceofabuyerstransactions,whichformachainorder. 52

PAGE 61

$9,000 1 Tercel, Sell: cancelcancelcancel keep or Sell: or Sell: Buy: Buy: Buy: Buy: $9,000 1 Tercel, Sell: 1 Rio, $8,000 $20,000 1 Camry, $15,000 1 Corolla, 1 Sequoia, $30,000 and 1 Trailer, $2,000 $3,000 1 Boat,Figure2.16:Chainorderwithtwosimpleorders,twodisjunctions,andaconjunction. Formally,achainorderisadirectedacyclicgraph;itsnodesareorders,andedges aretemporalconstraints.Ifthegraphincludesanedgefrom order1to order2,wecan execute order2onlyafterwehavecompletelylled order1.Forinstance,wecannot executeabuyer'sbuyordersbeforeshesellsherRioandbothTercels. Theelementsofachainordermaybecombinatorialorders;thatis,thechainmay includedisjunctiveorders,conjunctiveorders,andevenotherchains.Wedonotimpose anyrestrictionsontheelementsofachain;inparticular,theymaynotbeall-or-none. InFigure2.16,weshowachainthatincludestwosimpleorders,twodisjunctions,anda conjunction. Ifatradercancelsanelementofachainwithoutgettingall,shemaywantto executethefollowingorders;alternatively,shemaywanttocancelthem.Foreachedge inthechain,thetraderhastospecifywhetherthecancellationoftheearlierordercauses thecancellationofthelaterone;inFigure2.15,weshowsuchspecications.Inthis example,ifabuyercancelseithersale,sheisstillinterestedinbuyingaSequoia.Onthe otherhand,ifshecancelsthepurchaseofaSequoia,shewillnotbuyatrailer.Asanother example,theremovaloftheleftmostdisjunctioninFigure2.16willcausethecancellation ofallbuyorders. 53

PAGE 62

Sell: Sell: Buy:Buy: 2 Tercels 1 Rio 1 Sequoia 1 TrailerFigure2.17:Activeandinactiveelementsofachainorder.Thickboxesmarkactive orders,whichcanleadtoimmediatetrades. Whenplacingachainorder,atradermayspecifyitssize,whichisequivalentto placingseveralidenticalorders.Forexample,ifabuyerspeciesthatthesizeofherorder inFigure2.15istwo,shemayendupsellingfourTercelsandtwoRios,andbuyingtwo Sequoiasandtwotrailers.Ontheotherhand,achaincannothaveaminimalsizeorsize step. Tosummarize,achainorderconsistsofthefollowingparts: Setoforders Temporalconstraintsthatformadirectedacyclicgraph \Keep"or\cancel"specicationforeachconstraint Overallordersize Sincetheexecutionofachainincludesseveralsteps,itcannotbeanall-or-noneorder; hence,itcannotbeanelementofadisjunctiveorconjunctiveorder. Intuitively,someelementsofachainare inactive ;thatis,theycannotleadtoa trade.Anelementbecomes active aftertheexecutionofallprecedingelements.We illustratethisconceptinFigure2.17,wherethickboxesmarkactiveorders.Theuseof chainordersisaspecialcaseofactivatinganorderuponcertainconditions.Wehave consideredthreetypesofactivationconditionsintheimplementedsystem:completion oftheprecedingordersinachain,reachingapre-settime,andarequestfromtheuser. Arelatedproblemistodevelopamoregeneralactivationmechanism,whichweplanto addressinfutureresearch. 54

PAGE 63

Chapter3 OrderRepresentation Wehavebuiltanexchangesystemforaspecialcaseoftheautomatedtradingproblem. Wedescribethesemanticsofordersintheimplementedexchange,andthenexplainits functionalityandoverallarchitecture. 3.1Itemsets Werstdescribetherepresentationofitemsetsandpricesintheimplementedsystem, anddiscusstherelatedlimitations.Therepresentationislessgeneralthantheformal modelinChapter2.Inparticular,itlimitspossibleitemsetsanddoesnotallowtheuse ofpriceandqualityfunctions. 3.1.1Buyitemsets Abuyermayspecifyaset I ofmultipleitems,butpossiblesetsarelimitedbytherepresentation.Abuyerhastogiveasetofacceptablevaluesforeachattribute,whichis calledan attributeset .Thus,ifthemarketincludes n attributes,thebuy-orderdescriptioncontains n attributesets,andtheset I isaCartesianproductoftheseattributesets. Forexample,abuyermayindicatethatshewantsaMustangorCorvette,theacceptable colorsarered,silver,andblack,thecarshouldbemadein1998orlater,anditshould havenomorethan30,000miles. Togiveaformaldenition,supposethatthesetofallpossiblevaluesfortherst attributeis M1,thesetofallvaluesforthesecondattributeis M2,andsoon,which 55

PAGE 64

meansthatthemarketsetofallpossibleitemsis M = M1 M2 ::: Mn.Thebuyerhas tospecifyaset I1ofvaluesfortherstattribute,where I1 M1,asetofvaluesforthe secondattribute, I2 M2,andsoon.Theresultingitemset I istheCartesianproduct ofthespeciedsets: I = I1 I2 ::: In: Forinstance,thebuyerhasspeciedthefollowingitemsetintheautomobileexample: I = fMustang;Corvettegfred;silver;blackgf 1998 ; 1999 ;::: g [0 ::: 30,000] : Notethatanitemsetintheimplementedmatcher must beaCartesianproductofattributesets.Forexample,abuyercannotdescribeanitemsetthatincludesredMustangs andblackCorvettes,butnoblackMustangs. 3.1.2Sellitemsets Asellorderhastoincludeaspecicitem,ratherthanasetofacceptableitems.For example,asellercanorderthesaleofaredMustangmadein1998,whichhas10,000 miles;however,shecannotoerasetofvariousMustangsmadebetween1990and2000. Ifsheissellingmultipledierentcars,sheneedstoplacemultipleorders. Thislimitationisbasedontheassumptionthatsellersusuallyoerspecicitems; however,somereal-worldmarketsdonotsatisfythisassumption.Inparticular,itcreates problemsfortradingofservices,suchaspackagedeliveryorcarpetcleaning.Forinstance, amaidservicemayoertocleananycarpets,ratherthanaspeciccarpetinaspecic building. Todescribeanitem,thesellerhastoprovideavalueforeachattribute;forexample,thesellermaydenethemodelasMustang,thecolorasred,andsoon.Ifthe 56

PAGE 65

marketincludes n attributes,thenthedenitionofasellitemisasequenceof n values, ( i1;i2;:::;in),where i1isthevalueoftherstattribute, i2isforthesecondattribute, andsoon.Forexample,thesellerwoulddenehercaras(Mustang;red; 1998 ; 10,000). 3.1.3Cartesianproducts Whenatraderplacesanorder,shehastospecifyasetofacceptablevaluesforeach marketattribute,whichiscalledan attributeset .Thus,ifamarketincludes n attributes, theorderdescriptioncontains n attributesets.Forexample,abuyermayindicatethat sheispurchasinganEchoorTercel,theacceptablecolorsarewhite,silver,andgold,the carshouldbemadeafter1998,anditshouldhaveatmost30,000miles. Togiveaformaldenition,supposethatthesetofallpossiblevaluesfortherst attributeis M1,thesetofallvaluesforthesecondattributeis M2,andsoon,whichmeans thatthemarketsetis M = M1 M2 ::: Mn.Thetraderhastospecifyaset I1 M1ofvaluesfortherstattribute,aset I2 M 2ofvaluesforthesecondattribute,andso on.Theresultingset I ofacceptableitemsistheCartesianproductoftheattributesets: I = I1 I2 ::: In. Forinstance,abuyermayspecifythefollowingitemset: I = fEcho;Tercelgfwhite;silver;goldg [1999 ::: 2001] [0 ::: 30 ; 000]. 3.1.4Unionsandlters Atradercandeneanitemset I astheunionofseveralCartesianproducts.Forexample, ifshewantstobuyeitherausedCamryoranewEcho,shecanspecifythefollowingset: I = fCamrygfwhite;silver;goldg [1995 ::: 2001] [0 ::: 30 ; 000] [fEchogfwhite;silver;goldgf 2001 g [0 ::: 200]. Furthermore,thetradercanindicatethatshewantstoavoidcertainitems;forinstance, asuperstitioususermaywanttoavoidblackcarswith13milesontheodometer.Inthis 57

PAGE 66

case,theuserhastoprovidea lterfunction thatprunesundesirableitems.Formally,it isaBooleanfunctionontheset I thatgives false forunwanteditems.Weimplement itbyanarbitraryC++procedurethatinputsanitemdescriptionandreturns true or false .Tosummarize,therepresentationofanitemsetconsistsoftwoparts: AunionofCartesianproducts, I = I11 I12 ::: I1n[ I21 I22 ::: I2n[ ::: [ Ik1 Ik2 ::: Ikn Alterfunction, Filter : I !f true ; false g implementedbyaC++procedure. Wedonotimposerestrictionsonlterfunctions;however,ifalterprunestoomany items,thesystemmaymisssomematches.Toavoidthisproblem,ausershouldchoose Cartesianproductsthattightlyboundthesetofacceptableitems. 3.1.5Attributesets Abuyermayusespecicvaluesorranges;forexample,shemayspecifyadesiredyearas 2001orasarangefrom1998to2001.Notethatrangesworkonlyfornumericattributes, suchasyearandmileage. Thespecicationofamarketmayincludecertain standardsets ofvalues,suchas \allsportscars"or\allAmericancars",andthebuyermayusetheminherorders.For example,shemayplaceanorderforanyAmericancar. Moreover,thebuyermayuseunionsandintersectionsinherspecicationofattributesets.Forinstance,supposethatabuyerisinterestedinMustangs,Corvettes,and Europeansportscars;supposefurtherthatwehavedenedastandardsetthatincludes allEuropeancars,andanotherstandardsetthatcomprisesallsportscars.Then,the buyercanrepresentthedesiredsetofmodelsasfollows: fMustang;Corvetteg[ (European-cars\Sports-cars) : 58

PAGE 67

reduce set ( attributevalues a1;a2;:::;an) Thealgorithminputsadisjunctiveattributesetof n values. Return a1[ a2[ ::: [ an Figure3.1:Simplifyingadisjunctiveattributeset.Thealgorithmreturnstheunionof theattributevalues. Asimplicationmechanismwithinthesystemreducesthecomplexityofdisjunctive attributesets,thusimprovingeciency.Forexample,theattributeset\1{5or4{8" simpliesto"1{8."Thismechanismislocatedoutsidethematchermodule,intheuser interface,wegivethealgorithminFigure3.1. Formally,anattributesetmaybe: Aspecicvalue,suchasMustangor2001 Arangeofvalues,suchas1998{2001 Astandardsetofvalues,suchasallEuropeancars Anintersectionofseveralattributesets Aunionofseveralsets 3.2Price,quality,andsize Wenowexplaintherepresentationofpricefunctions,qualityfunctions,andordersizes. 3.2.1Price Ifapricefunctionisaconstant,atraderspeciesitbyanumericvalue,calleda price threshold .IfanitemsetistheunionofseveralCartesianproducts,thetradercan specifyaseparatethresholdforeachproduct.Forinstance,ifabuyersitemsetisthe 59

PAGE 68

unionofusedCamriesandnewEchoes,shecanindicatethatsheispaying$15,000for aCamryand$12,000foranEcho.IfseveralCartesianproductsoverlap,andthetrader hasdeneddierentthresholdsfortheseproducts,thenweusethetightestthresholdfor theirintersection;thatis,weusethelowestthresholdforbuyorders,andthehighest thresholdforsellorders. WespecifyapricefunctionbyanarbitraryC++procedurethatinputsanitemand outputsthecorrespondingpricelimit.Notethatatradercanspecifydierentfunctions fordierentorders.Ifanorderincludesbothathresholdandpricefunction,thesystem usesthetighterofthetwo.Forexample,ifabuyer'sthresholdforbuyinganEchois $12,000,andherpricefunctionreturns$12,500foraspecicvehicle,thentheresulting pricelimitis$12,000.Pricethresholdshelptopruneunacceptableitems,whereasC++ pricefunctionsallowmoreaccurateevaluationoftheremainingitems.Ifthemarket includesmonotonicattributes,thepricefunctionsmustsatisfythemonotonicitycondition inSection2.1.5.Notethatifthepricedependson\additionaldata,"thendierentorders withidenticalitemsetsmayhaveunequalpricelimits,requiringalternativepricefunctions andimpactingtheeciency. 3.2.2Quality TherepresentationofaqualityfunctionisalsoanarbitraryC++procedure;itinputsan itemdescriptionandprice,andoutputsanumericqualityvalue.Thesystemincludesseveralstandardfunctions,andatradercanselectamongthemandadjustthecorresponding parameters.Thesystemallowsspecifyingdierentqualityfunctionsfordierentorders. Ifauserdoesnotprovideanyqualityfunction,thesystemusesadefaultqualitymeasure denedthroughthepricefunction(Section2.1.3).Allqualityfunctionsmustbemonotoniconprice(Section2.1.3);furthermore,ifsomeattributesaremonotonic,thequality functionsmustalsosatisfythemonotonicityconditionofSection2.1.5. 60

PAGE 69

3.2.3Size Theimplementedsizespecicationisthesameasinthegeneralmodel;itincludesthe overallsize,minimalacceptablesize,andsizestep.Atradercanspecifywhetherthe systemshouldpreservetheminimalsizeinthecaseofapartialll;ifnot,thesystem removestheminimalsizeafterapartialll(seeFigure3.2).Thetradercanalsoindicate whethersheacceptsmulti-llsandallowspriceaveraging. 3.3Cancellationsandinactiveorders Wedescribethreemechanismsforremovinganorderfromthemarket:immediatecancellation,expirationtime,andtemporaryinactivation. 3.3.1Cancellation Ifatraderplacesanorderanddoesnotgetall,shecanlatercancelit.Ifatraderhas placedacombinatorialorder,shecancanceltheentireorderorsomeofitselements.If shedeletesanelementofadisjunctiveorconjunctiveorder,theotherelementsremain onmarket.Ontheotherhand,acancellationofachain-orderelementmaycausethe deletionofotherelementsifthechainincludes\cancel"constraints.Forinstance,the removalofthemiddleelementinFigure2.15causesthecancellationoftherightmost element. 3.3.2Expirationtime Whenplacinganorder,atradercanspecifyits expirationtime withone-secondprecision. Ifthesystemdoesnotndamatchbythespeciedtime,itcancelstheorder.Atrader canalsoplacean\immediate-or-cancel"order,whichisremovedifthereisnoimmediate match.Whenplacingacombinatorialorder,atradercanspecifyanexpirationtimefor 61

PAGE 70

Buy: 6 cars, at least 3 3 cars Sell: Buy: 3 cars, at least 3 Fill: 3 cars reducedremoved (a) Buy: 6 cars, at least 3 3 cars Sell: Fill: 3 cars reducedremoved (b) 3 cars Buy:Figure3.2:Examplesofpartiallls.Ifatraderspeciesaminimalsize,sheindicates whetherthesystemshouldpreserveitafterapartialll(a),orremoveitaftertherst ll(b). thewholeorder,aswellasdierenttimesforitselements.Theexpirationofthewhole orderleadstotheremovalofallitselements,whereastheexpirationofindividualelements doesnotaecttheotherelements. 3.3.3Inactiveorder Wecanmarksomeordersas inactive ,whichmeansthattheycannotleadtoatrade.We haveintroducedthismechanismforeciency;itallowstemporaryremovalofanorder fromthetradingprocesswithoutdeletingitfromtheindexingstructure.Inparticular,we useittodelaytradingwithinactiveelementsofachain.Wealsoenableuserstoinactivate theirordersbyhand,andtospecifyinactivationandreactivationtimes.Thesystemallows inactivationofcombinatorialorders,butitdoesnotsupportselectiveinactivationoftheir elements. 62

PAGE 71

CHANGE-ORDER( old-order ) Return new-order 20 Echoes, $11,500 Sell: $12,000 10 Echoes, Buy: Fill Sell: 10 Echoes, $11,500 Sell: $12,000 10 Echoes, modified (a)(b) size If[ old-order ]>10, then return "no change" new-order := old-order price [ new-order ]:=$12,000Figure3.3:Exampleofanordermodication.Ifthesizeoftheorderdropstoten,the systemshouldincreaseitsprice(a).Themodicationrequestincludesaprocedurethat checksthesizeandadjuststheprice(b). 3.4Modications Atradercanmodifyherorderwithoutremovingitfromthemarket.Forexample,ifa buyerhasplacedanordertobuyagoldToyotaEchofor$11,500andhasnotgottena ll,shecanincreasethepriceto$12,000.Asanotherexample,shecanchangetheitem descriptionfrom\goldEcho"to\anyEchoorTercel."Atradercanalsodeneconditions thattriggeramodication.Forinstance,supposethatasellerissellingtwentyEchoes for$11,500each.Shecanindicatethat,ifshegetsapartialllofatleasttencars,then herpriceincreasesto$12,000(Figure3.3a). WespecifyamodicationrequestbyaC++procedurethatinputsanorderand returnsitsmodiedversion;ifanorderrequiresnomodication,theprocedurereturnsthe \nochange"signal.Forexample,ifasellerwantstoincreaseherorderpriceafteritssize dropstoten,shecanusetheprocedureinFigure3.3(b).Thesystemincludesstandard modicationfunctions,andausercanselectamongthemandadjusttheappropriate parameters. 63

PAGE 72

Ausercanspecifyanactivationandexpirationtimeforamodicationrequest. Whenitbecomesactive,thesysteminvokesthecorrespondingprocedure.Ifitreturns \nochange,"thesystemre-invokesitafteranychangetotheorder,whichmaybecaused byapartialllorbyanothermodication.Ifatraderchangeshermind,shecanmanually removeanoldrequest.Thesystemcancelsarequestinthefollowingcases: Theprocessingoftherequesthasresultedinamodication Therequesthasexpired Thecorrespondingorderhasbeenremovedfromthemarket Theuserhasmanuallyremovedtherequest Atradercanalsoplacean\immediate-or-cancel"request;ifitdoesnotresultinan immediatemodication,thesystemdoesnotre-invokeitlater. 3.5Fairnessheuristics Ifthesystemidentiesmultiplematchesbetweenbuyandsellorders,itmayneedto chooseamongthembeforegeneratinglls.Forexample,ifabuyordermatchestwo dierentsellorders,thesystemhastoselectbetweenthetwo,andtheusersusually expecta\fair"choice.WehaveusedhelpfromMichaelFoster,aprofessionaltrader workingforPowerLoomCorporation,toidentifystandardfairnessexpectations. First,ifthesystemhasfoundseveralmatchesforthesametrade,itshouldprefer thebest-pricematch.Forinstance,ifabuyerislookingforasportscarandthematcher hasfoundtwodierentorderstosellsportscars,thenithastomatchthebuyer'sbuy orderwiththecheapersell. Second,ifseveraluserscompeteforthesametrade,thesystemshouldgivepriority totheuserwhooersabetterprice.Forinstance,supposethat Seller1and Seller2are 64

PAGE 73

bothsellingaCorvette,and Seller1'spriceisbetter.Then,thesystemshouldll Seller1's orderbefore Seller2'sorder.Althoughtradersoftenviewthisrequirementasdierent fromtherstone,bothimposethesameconstraintsonthematchingprocess. Third,ifseveraltradersoerthesameprice,thesystemshouldexecutetheirorders onarst-comerst-servebasis.Thus,if Seller1and Seller2oerMustangsforthesame price,and Seller1hasmadeheroerbefore Seller2,then Seller1'ssellordershouldget priority.Professionaltradersconsiderthis\chronological"fairnessalmostasimportant aspricefairness.Whenasellermakesalow-priceoerinavolatilemarket,sheassumes ariskandexpectstoberewardedwithpriorityoverothersellerswhofollowherlead. 3.6Conrmations Whenplacinganorder,atradercanprovidenotonlyadescriptionusedinautomated matching,butalsoadditionalinformationforhumantraders;forinstance,acardealer canpostapictureofavehicle.Thesystemenablestraderstobrowsethroughpotential matchesandchoosethemostdesirabletrade. Whenauserplacesanorder,shecanindicatetheneedfor conrmation .Inthis case,whenthesystemndsmatches,itdisplaystheirdescriptions;iftheuserconrms someofthematches,thesystemexecutesthecorrespondingtrades.Forexample,abuyer canplaceanordertobuyasilverCorvetteandrequireconrmation;then,shecanbrowse throughmatchingCorvettesandhandpickthebestmatch. Whenthesystemndsamatchbetweenabuyandsellorder,itcheckstheneed forconrmation.Ifneitherorderrequiresconrmation,itimmediatelyexecutesthe trade.Ifoneoftheordersneedsconrmation,thesystemnotiesthecorresponding userandexecutesthetradeupongettingherapproval(Figure3.4a).Ifbothorders requireconrmation,itnotiesbothsidesandcompletesthetradeonlyaftergetting bothapprovals(Figure3.4b).Forexample,ifabuyerrequestsconrmationforher 65

PAGE 74

Corvetteorder,andasellersellsaCorvettethatalsoneedsconrmation,thenthesystem willcompletethetransactiononlyaftergettingapprovalsfromboththebuyerandseller. Ifthesystemndsamulti-ordertrade,itmayneedmorethantwoconrmations. Atradercanconrmseveraldierentmatchesforherorder,whichallowsthesystem toexecuteanyofthem.Forinstance,abuyermayconrmseveralCorvettes,andthen shewillgetoneofthem. Whenthesystemasksusersforconrmation,itdoes not removethematchingorders fromthetradingprocess,anditcanndothermatchesforthem.Ifauserdelaysher conrmation,shemaymissatrade,andthenthesystemnotiesherthatthetradeis nolongeravailable(Figure3.4c).Forinstance,whenthebuyerconrmsthepurchaseof aspecicCorvette,shemayndoutthatsomeoneelsehasboughtitbeforeher.The systemtriestollorderswithoutconrmationbeforesendingrequestsforconrmation. Thisstrategyimprovesthespeedofthetradingprocessandreducesthenumberof\late" conrmations. 3.7Useractions Tosummarize,atradercanperformsixmainoperations:placeanorder,cancelanold order,activateorinactivateanorder,placeamodicationrequest,cancelanoldrequest, andconrmatrade.Theimplementedsystemdoesnotsupportchangestomodication requests;ifauserneedstochangeheroldrequest,sheshouldcancelitandplaceanewone. WelistthemainelementsofasimpleorderinFigure3.5,theelementsofacombinatorial orderinFigure3.6,andtheelementsofamodicationrequestinFigure3.7.Ifauser doesnotspecifysomeoftheelements,thesystemusesthecorrespondingdefaultvalues. 66

PAGE 75

Buy order: with confirmation Sell order: without confirmation Match Fill Match is no longer available Sell order: without confirmation Match Buy order: with confirmation Fill Match Buy order: with confirmation Sell order: with confirmation Fill New buy order: without confirmationConfirmationRejection(b) (a) (c)ConfirmationNotification NotificationNotificationConfirmationConfirmationNotificationFigure3.4:Tradingwithconrmations.Ifoneofthematchingordersneedsconrmation, thesystemnotiesthecorrespondingtraderandwaitsforherapproval(a).Ifbothorders needconrmation,thesystemwaitsforapprovalfrombothtraders(b).Ifitndsan alternativematchbeforegettinganapproval,itexecutesthecorrespondingtradeand laterrejectstheconrmation(c). 67

PAGE 76

ItemSet UnionofCartesianproducts(nodefault) Filterfunction(bydefault,nolter) Price PricethresholdforeachCartesianproduct (bydefault, forsellordersand+ 1 forbuyorders) Pricefunction(bydefault,equaltothethreshold) Qualityfunction(bydefault,basedonthepricefunction) Additionaldata Dataforprice,quality,andlterfunctions(bydefault,nodata) Informationforhumantraders(bydefault,noinformation) Size Overallordersize(bydefault,one) Minimalacceptablesize(bydefault,one) Sizestep(bydefault,one) Activationandexpiration Activeorinactivestatus(bydefault,active) Inactivationtime(bydefault,never) Reactivationtime(bydefault,never) Expirationtime(bydefault,never) Options Acceptanceofmulti-lls(bydefault,accept) Acceptanceofpriceaveraging(bydefault,accept) Conrmationrequest(bydefault,noconrmation) Figure3.5:Elementsofasimpleorderandtheirdefaultvalues.Whenatraderplacesan order,shehastospecifyanitemset,andshemayoptionallyspecifytheotherelements. 68

PAGE 77

Disjunctiveorder: Setofall-or-noneorders(nodefault) Size(thesameasinasimpleorder) Activationandexpiration(thesameasinasimpleorder) Acceptanceofpriceaveraging(bydefault,accept) Conjunctiveorder: Setofall-or-noneorders(nodefault) Overallpaymentlimit(bydefault,+ 1 ) Multi-llqualityfunction(bydefault,nofunction) Size(thesameasinasimpleorder) Activationandexpiration(thesameasinasimpleorder) Acceptanceofpriceaveraging(bydefault,accept) Chainorder: Setoforders(nodefault) Orderingconstraints(nodefault) \Keep"or\cancel"specicationforeachconstraint(bydefault,\keep") Overallordersize(bydefault,one) Figure3.6:Elementsofcombinatorialorders. Referencetoaspecicorder(nodefault) Modicationfunctionthatinputsanorderandreturnseitheramodiedorderor \nochange"signal(nodefault) Activationtime(bydefault,immediate) Expirationtime(bydefault,never) Figure3.7:Elementsofamodicationrequest. 69

PAGE 78

Chapter4 IndexingStructure Wedescribedatastructuresandalgorithmsforfastidenticationofmatchesbetweenbuy andsellorders.Werstexplaintheoverallarchitectureandthenpresentthemechanism forfastretrievalofmatchingorders.Werefertotheordersthatarecurrentlyinthe systemas pendingorders 4.1Architecture Thesystemconsistsofacentralmatcherandmultipleuserinterfaces,whichrunon separatemachinesandcommunicateoverthenetworkusinganasynchronousmessaging protocol.Weoutlinethedistributedarchitectureandexplainthemainfunctionsofthe matcher. 4.1.1Top-levelcontrol Wedescribeahigh-levellogicthatcontrolsanindexingtree.Wediscussdierentstrategiesforamatchinground,andcontinuousversusperiodicclearing.Boththetotal throughputofthesystem,anditsresponsetime,dependonthematchingstrategychosen. Weconsiderseveraltrade-osbetweenmaximizingthethroughputandminimizingthe responsetime.Wealsoconsiderthefairnessofeachstrategy. 70

PAGE 79

Matcher engine User interface User interface User interface orders fillsfills ordersfills ordersFigure4.1:Thearchitectureofthetradingsystem. Placinganorder Cancelinganorder Activatingorinactivatinganorder Placingamodicationrequest Cancelingamodicationrequest Conrmingatrade Figure4.2:Maintypesofmessagesfromauserinterface. 4.1.2Userinterfaces Thetradersentertheirordersthroughinterfacemachines,whichsendtheorderstothe matcherengine(Figure4.1).Thecentralengineservesasatradingpit;itndsmatches amongorders,generateslls,andsendsthemtothecorrespondinginterfaces.InFigure4.2,welistthemaintypesofmessagesfrominterfaces,whichcorrespondtotheuser actionssupportedbythesystem(Sections3.3{3.7). 71

PAGE 80

Market description Pending orders Trees with orders indexnonindex orders List ofFigure4.3:Maindatastructuresinthematcherengine. sell: red Mustang, made in 1999, 30,000 miles sell: white Camry, made in 1998, 42,000 miles sell: red Echo, made in 1995, 65,000 miles buy: green Saturn, made in 1997, 58,000 miles Trees with index orders buy: any red car, made after 2000 sell: any sports car, made in 2001 buy: any green Mustang, at most 5,000 miles sell: any Echo, made in 1995 Pending orders Market description Attribute 1: Model Attribute 3: Year Attribute 2: Color Attribute 4: Mileage List of nonindex ordersFigure4.4:Exampleofindexandnonindexorders. 4.1.3Matcherengine Thematchermaintainsadescriptionofmarketattributes,acollectionofpendingorders, andaqueueofscheduledfutureevents(Figure4.3).Itincludesacentralstructurefor indexingofpendingorders,implementedbytwotrees(Section4.2).Thisstructureallows indexingoforderswithfullyspecieditems;forexample,itcanincludeanordertosella redMustangmadein1999,butitcannotcontainanordertobuyanyredcarmadeafter 1999.Ifwecanputanorderintotheindexingstructure,wecallitan indexorder .Ifan orderincludesasetofitems,ratherthanafullyspecieditem,thematcheraddsittoan unorderedlistof nonindexorders .InFigure4.4,wegiveanexampleoffourindexorders andfournonindexorders. Theindexingstructureallowsfastretrievalofindexordersthatmatchagivenorder. Ontheotherhand,thesystemdoes not identifymatchesbetweentwononindexorders. Forexample,iftheordersareasshowninFigure4.4,andatraderplacesanordertobuy 72

PAGE 81

No Yes Stop trading? Stop the matcher Process every new order in the queue of incoming orders (see Figure 4.6) Start the matcher For every pending nonindex order, search for matching index orders (see Figure 4.7)Figure4.5:Top-levelloopofthematcherengine. acarmadeafter1997,thenthesystemwillndtwomatches:\sellredMustangmadein 1999"and\sellwhiteCamrymadein1998." 4.1.4Matchingcycle InFigure4.5,weshowthemaincycleofthematcher,whichalternatesbetweenparsing newmessagesandsearchingformatches.Whenitreceivesamessagewithaneworder, itimmediatelysearchesformatchingindexorders(Figure4.6a).Iftherearenomatches, andtheneworderisanindexorder,thenthesystemaddsittotheindexingstructure. Similarly,ifthematcherllsonlypartofanewindexorder,itstorestheremainingpartin theindexingstructure.Ifthesystemgetsanonindexorderanddoesnotndacomplete ll,itaddstheunlledparttothelistofnonindexorders. Forexample,supposethatasellerplacesanordertosellaredMustang,madein 1999,with30,000miles.Thesystemimmediatelylooksformatchingindexorders;ifit doesnotndamatch,itaddstheordertotheindexingstructure.Ifabuyerlaterplaces 73

PAGE 82

Add it to the indexing structure Add it to the list of nonindex orders Delete the order Process the modified order (see Figure 4.6a) Delete the old order old order Update the completely filled? Is the order structure? in the indexing Change position new matches? Can it lead to Search for new matches (see Figure 4.7) (b) Modifying an order Search for index orders that match the new order completely filled? order? Is it an index Yes YesNo No Is the new order (see Figure 4.7) (a) Processing a new order No Yes No Yes No YesFigure4.6:Additionandmodicationofanorder. abuyorderforasportscar,thesystemidentiesthematchwithaseller'sorder,and informsabuyerandsellerthattheyhaveexchangedaMustang. Whenthesystemgetsacancellationmessage,itremovesthespeciedorderfromthe market.Whenitreceivesamodicationmessage,itmakesthecorrespondingchangesto thespeciedorder(Figure4.6b).Ifthechangescanpotentiallyleadtonewmatches,the systemimmediatelysearchesforindexordersthatmatchthemodiedorder;inFigure4.8, welistallmodicationsthatcanresultinnewmatches.Forexample,ifasellerhasplaced anordertosellaMustangfor$18,000,andshelaterreducesitspriceto$17,500,then thesystemimmediatelylooksfornewmatches.Ontheotherhand,ifsheincreasesthe priceto$18,500,thesystemdoesnotsearchformatches. Afterprocessingallmessages,thesystemtriestollpendingnonindexorders,which includenotonlythenewarrivals,butalsotheoldunlledorders.Foreachnonindex 74

PAGE 83

order,itidentiesmatchingindexorders,asshowninFigure4.7.Forexample,consider themarketinFigure4.4,andsupposethatasellerplacesanordertosellagreenMustang, madein2001,withzeromiles.Sincethemarkethasnomatchingindexorders,thesystem addsthisnewordertotheindexingstructure.Afterprocessingallmessages,ittriesto llthenonindexorders,anddeterminesthatasellersorderisamatchfortheoldorder tobuyanygreenMustang. Inadditiontothematchingcycledescribedabove,thesystemmayperiodically searchfornewmatchesforanunmatchedorder.Forasmall-scalemarket,wecanusethe matchingconditiondirectly:foreachneworder,searchalloldordersforamatch,and selectthebestmatch.Thecomplexityofprocessinganorderislinearinthenumberof pendingorders,whichistooslowforlargemarkets. 4.1.5Matchingfrequency Thematcherkeepstrackofthe\age"ofeachorder,andusesittoavoidrepetitivesearch formatchesamongthesameindexorders.Ifithasalreadytriedtondmatchesforsome order,thematchingprocesswillinvolvesearchonlyamongnewindexorders. Ifanonindexorderhasbeenonmarketforalongtime,thesystemmatchesitless frequentlythanrecentorders.Wehaveimplementedamechanismthatdeterminesthe intervalsbetweensearchesformatchingindexorders;bydefault,thesystemincreasesthe lengthofanintervalbetweenconsecutivesearchesinproportiontoanorderage.Ifitdoes notndamatchforanewnonindexorder,itrepeatsthesearchonthenextmatching cycle,thenaftertwocycles,thenafterfourcycles,andsoon;thatis,theintervalsbetween searchesincreaseasthepowersoftwo. 75

PAGE 84

4.2Indexingtrees Wehaveimplementedanindexingstructurefororderswithfullyspecieditems,which donotincluderanges,standardsets,conjunctions,ordisjunctions.Thestructureconsists oftwoidenticaltrees:oneisforbuyorders,andtheotherisforsellorders. Conceputally,thesetreearetries,inwhichthedescriptionofspecicordersservesas stringsofequallength.Thesetriesdierfromtraditionaltriesinthatdierentattributes havedierentsetsofvalues.InFigure4.9,weshowanindexingtreeforsellorders;its heightisequaltothenumberofmarketattributes,andeachlevelcorrespondstoone oftheattributes.Therootnodeencodestherstattribute,anditschildrenrepresent dierentvaluesofthisattribute;inFigure4.9,eachchildoftherootcorrespondstosome carmodel.Thenodesatthesecondleveldividetheordersbythesecondattribute,and eachnodeatthethirdlevelcorrespondstospecicvaluesofthersttwoattributes.In general,anodeatlevel i dividesordersbythevaluesofthe i thattribute,andeachnode atthe( i +1)stlevelcorrespondstoallorderswithaspecicvalueoftherst i attributes. Ifsomeitemsarenotcurrentlyonsale,thetreedoesnotincludethecorrespondingnodes; forinstance,ifnobodyissellinganEcho,theroothasnochildforEcho. Everynonleafnodeincludesared-blacktreethatallowsfastretrievalofitschildren withspecicvalues.Forexample,therootinFigure4.9includesared-blacktreethat indexesitschildrenbymodelvalues,asshowninFigure4.10.Aleafoftheindexingtree includesorderswithidenticalitems,whichmayhavedierentpricesandsizes.Eachleaf includesared-blacktreethatindexesthecorrespondingordersbyprice. 4.2.1Multipleselltrees Thesystemusesmultipleselltrees,wheretherecentordersareinthersttree,lessrecent ordersareinthesecondtree,andsoon.Thisstrategyisfasterthantheuseoftimes byaconstantfactor,sincewedonotneedtolookupoldnodesandorders.Weplan 76

PAGE 85

onaddressingvariationsofthisstrategy,aswellasthepotentialproblemsthesechanges couldhaveonmarketfairness,aspartoffutureresearch. 4.2.2Standardsets Ifamarketincludesstandardsetsofvalues,suchas\allsportscars"and\allAmerican cars,"traderscanusetheminspecifyingtheirorders(Section3.1).Wedenestandard setsseparatelyforeachattribute;forinstance,thesetofAmericancarsbelongstothe \model"attribute.Notethatastandardsetmaybeaunionofranges,ratherthanan explicitlistofvalues.Forexample,thesetofcollectablecarscouldincludeallcarsmade beforetheyear1976. Foreveryattribute,thesystemmaintainsacentraltableofstandardsets,which consistsoftwoparts(Figure4.11a).Therstpartincludesasortedlistofvaluesfor everystandardset;itallowsdeterminingwhetheragivenvaluebelongstoaspecicset, bythebinarysearchinthecorrespondinglist.Thesecondpartincludesallvaluesthat belongtoatleastoneset;foreachvalue,westoreasortedlistofsetsthatincludeit. Everynodeofanindexingtreealsoincludesatableofstandardsets;forexample, therootnodeinFigure4.9includesatableofsetsfortherstattribute(Figure4.11b), andevery\color"nodeincludesaseparatetableofthesecond-attributesets.Everysetin thetableincludesalistofpointerstoitselementsinthered-blacktree;forinstance,the \American-cars"setpointstothe\Corvette"and\Mustang"nodes.Ifthecurrenttree doesnotcontainelementsofsomesets,wedonotaddthesesetstothetable;forexample, ifthemarketdoesnotincludeanyorderstosellEuropeancars,thenthe\European-cars" setisnotinthetable. Wehaveimplementedthetableofsetsbyared-blacktree,whichallowsfastaddition anddeletionofsets,aswellasfastretrievalofallvaluesinagivenset.Forinstance, 77

PAGE 86

ifabuyerlooksforAmericancars,thesystemretrievestheappropriatechildrenofthe \model"nodebyndingthe\American-cars"setandfollowingitspointers. 4.2.3Summarydata Thenodesofanindexingtreeincludesummarydatathathelptondmatchingorders. Everynodecontainsthefollowingdataabouttheordersinthecorrespondingsubtree: Thetotalnumberofordersandthetotaloftheirsizes Theminimalandmaximalprice Theminimalandmaximalvalueforeachnumericattribute Thetimeofthelatestadditionormodicationofanorder Forexample,considernode2inFigure4.9;thesubtreerootedinthisnodeincludesnine orders.Ifthenewestoftheseorderswasplacedat2pm,thesummarydatainnode2is asfollows: Numberoforders:9 Years:1998 ...2001 Totalsize:14 Mileages:0...45,000 Prices:$13,000 ...21,000 Latestaddition:2pm Wealsostorethetimethattheoldestorderwasaddedtothesubtree;thisisdone forthefairnessheuristic,toensurethatearlierordersgetpreferenceovernewerorders. 4.3Basictreeoperations Whenauserplaces,removes,ormodiesanindexorder,thesystemhastoupdatethe indexingtree.Werstdescribeadditionanddeletionalgorithms,andthenexplainthe modicationprocedure. 78

PAGE 87

4.3.1Addinganeworder Whenauserplacesanindexorder,thesystemaddsittothecorrespondingleaf;for example,ifasellerplacesanordertosellablackCamry,madein1999,with35,000 miles,thesystemaddsittonode16inFigure4.12.Iftheleafisnotinthetree,the matcheraddstheappropriatenewbranch;forexample,ifaselleroerstosellawhite Mustang,itaddsthedashedbranchinFigure4.12. Afteraddinganeworderthesystemmodiesthesummarydataoftheancestor nodes.Notethateverysummaryvalueistheminimum,maximum,orsumoftheorder values.InFigure4.13,wegivethealgorithmsforupdatingthenumberoforders,total size,andminimalprice;theupdateoftheothervaluesissimilar.Thesealgorithms performonepassfromtheleaftotheroot,andtheirrunningtimeisproportionaltothe heightofthetree;thus,ifthemarketincludes n attributes,thetimeisO( n ). 4.3.2Deletinganorder Whenthematcherllsanindexorder,oratradercancelsheroldorder,thesystem removestheorderfromthecorrespondingleaf.Iftheleafdoesnotincludeotherorders, thesystemdeletesitfromtheindexingtree;forexample,ifthematcherllsorderFin Figure4.9,itremovesnode18.Ifthedeletednodeistheonlyleafinsomesubtree,the systemremovesthissubtree;forinstance,thedeletionoforderJleadstotheremovalof nodes7,13,and20.Weshowaprocedureforremovinganorderandthecorresponding subtreeinFigure4.14. Afterdeletinganorder,thesystemupdatesthesummarydataintheancestornodes. InFigure4.15,wegiveproceduresforupdatingthenumberoforders,totalsize,and minimalprice;themodicationoftheotherdataissimilar.Theupdatetimedependson thenumber n ofmarketattributes,andonthenumberofchildrenoftheancestornodes, 79

PAGE 88

c1;c2;:::;cn.Ifasummaryvalueisthesumoftheordervalues,theupdatetimeisO( n ); ifitistheminimumormaximumofordervalues,thetimeisO( c1+ c2+ ::: + cn). 4.3.3Modifyinganorder Ifatraderchangestheordersize,expirationtime,oradditionaldata,thechangedoes notaectthestructureoftheindexingtree;however,thesystemneedstoupdatethe summarydataoftheancestornodes.Ifatradermodiesthepriceofanorder,thesystem changesthepositionoftheorderinthered-blacktreeoftheleaf,andpropagatestheprice changetothesummarydata. Finally,ifatraderchangestheitemspecication,thesystemtreatsitasthedeletion ofanoldorderandadditionofanewone.Forexample,supposethatasellerhasplaced anordertosellablackCamry,andtheindexingtreeisasshowninFigure4.12.Ifaseller hasenteredawrongcolor,andshelaterchangesittowhite,thenthesystemremovesthe orderfromtheleftmostleafinFigure4.12andaddsittotherightmostleaf. 80

PAGE 89

Delete the index order the index orders with matching items Completely filled the index order? Completely filled the given order? Delete the given order Yes Yes index order No available Yes Does the price of the selected order match the given price limit? No has not yet been considered, among Select the highest-quality order, that Find index orders with matching items reduce the size of both orders Generate a fill and No NoFigure4.7:Searchforindexordersthatmatchagivenorder. 81

PAGE 90

Changingtheitemsetoradditionaldata Increasingthepricethresholdofabuyorder,ordecreasingthethresholdofasell order Changingthepricefunctionorqualityfunction Increasingtheoverallordersizeorreducingtheminimalacceptablesize Changingthesizestepinsuchawaythatthenewstepisnotamultipleoftheold step Activatinganinactiveorder Allowingmulti-llsorpriceaveraging Addingnewelementstoadisjunctiveorder,ordeletingsomeelementsfromaconjunctiveorder Figure4.8:Ordermodicationsthatleadtonewmatches. Mileage Mileage Mileage Mileage Mileage Mileage Year Color Color Model Year Year Year Year Color Black Camry, made in 1999, B Gold Corvette,Red Corvette, made in 2000, Blue Mustang, made in 2000, Blue Mustang, made in 2000, made in 1998, Red Camry, made in 2001, 0 miles Red Camry, made in 1998, Red Camry, made in 1998, 16171819202223 D CE H G N M P $14.5K $14K A $14K $13K $13.5K$14K F $20K I $30K J $15K $36K L $35K K $37K Q $20K O $19K $20.5K 35,000 miles40,000 miles45,000 miles25,000 miles 21,000 miles 19,000 miles 48,000 miles $21K $19.5K 21 0 101215 14 13 11 678 3 2 Red Black Corvette Camry 1999 1998 2001 1998 35,00040,000 45,000 Mustang 2000 2000 21,000 25,000 19,000 48,000 4 9 Red Gold Blue 5 1Figure4.9:Indexingtreewithseventeenorders. 82

PAGE 91

Color... ...Color Model......234 Color... ...Mustang Camry Corvette 1Figure4.10:Nodeofanindexingtree.Wearrangetheattributevaluesinared-black tree,andeachvaluepointstothecorrespondingchildintheindexingtree. Color Color Color American: Japanese: Sports: Corvette, Mustang, ... Camry, Echo, ... Corvette, Mustang, ... indexing by attribute value Camry: Corvette: Mustang: Japanese, ... American, Sports, ... American, Sports, ... ... ... Standard stes ... (a) Central table of standard stes.(b) Standard stes in a node of the indexing tree. Model Standard stes American: Japanese: Sports: CamryMustang Corvette 1 Attribute values Indexing by set ...Figure4.11:Standardsetsofvalues.Themarketincludesacentraltableofsets(a),and everynodeintheindexingtreeincludesatableofsetsfortherespectiveattribute(b). 83

PAGE 92

Mileage Mileage Model Red Camry, made in 2001, 0 miles Red Camry, made in 1998, Red Camry, made in 1998, 171819 D CE FH G $14K$20K $20.5K I $21K $14K S 35,000 miles made in 1999, White Camry, (b) Indexing tree with new orders. $13.5K $14K $13K Black Camry, made in 1999, B $14.5K 16 A $14K R $15K 0 Mileage 35,000 10 6 Year 2 Mileage Color Year 45,000 miles 40,000 miles 35,000 miles 35,000 40,000 45,000 1112 Black Red White 1 Corvette Camry Mustang Year 5 1998 2001 1999 1999 (a) Two new orders. ColorYearMileagePriceSize R 35,0002 15,000 S Camry199914,000 35,000 1 Black White 1999 Camry ModelFigure4.12:Addingorderstoanindexingtree.Weshownewordersbydashedovals.If thetreedoesnotincludetheleafforaneworder,thesystemaddstheproperbranch. 84

PAGE 93

add count ( new-size leaf ) Thealgorithminputstheleafwiththenewlyaddedorder. node := leaf Repeatwhile node 6 = nil : num-orders [ node ]:= num-orders [ node ]+1 node := parent [ node ] add size ( new-size leaf ) Thealgorithminputsthesizeofanewlyaddedorder andthecorrespondingleafoftheindexingtree. node := leaf Repeatwhile node 6 = nil : total-size [ node ]:= total-size [ node ]+ new-size node := parent [ node ] add price ( new-price leaf ) Thealgorithminputsthepriceofanewlyaddedorder andthecorrespondingleafoftheindexingtree. node := leaf Repeatwhile node 6 = nil and min-price [ node ] > new-price : min-price [ node ]:= new-price node := parent [ node ] Figure4.13:Updatingthesummarydataafteradditionofanorder.Weshowtheupdate oftheordernumber( add count ),totalsize( add size )andminimalprice( add price ). del order ( order leaf ) Thealgorithminputsanoldorderandthecorrespondingleaf. Remove order from leaf If leaf includesotherorders,thenterminate node := leaf Repeatwhile parent [ node ] 6 = nil and node hasnochildren: ancestor := parent [ node ] delete node node := ancestor Figure4.14:Deletionofanorder.Ifithasbeentheonlyorderinsomesubtreeofthe indexingtree,thesystemremovesthissubtree. 85

PAGE 94

del count ( leaf ) Thealgorithminputstheleafwithadeletedorder. node := leaf Repeatwhile node 6 = nil : num-orders [ node ]:= num-orders [ node ] )Tj/F6 1 Tf1.111 0 TD(1 node := parent [ node ] del size ( old-size leaf ) Thealgorithminputsthesizeofadeletedorder, alongwiththeleaffromwhichtheorderisdeleted. node := leaf Repeatwhile node 6 = nil : total-size [ node ]:= total-size [ node ] )Tj/F5 1 Tf1.111 0 TD-0.003 Tc[(old-size node := parent [ node ] del price ( old-price leaf ) Thealgorithminputsthepriceofadeletedorder, alongwiththeleaffromwhichtheorderisdeleted. If min-price [ leaf ] < old-price ,thenterminate Updatetheminimalpriceoftheleaf: min-price [ leaf ]:=+ 1 Forevery order intheleaf: If min-price [ leaf ] > price [ order ], then min-price [ leaf ]:= price [ order ] Updatetheminimalpriceofitsancestors: node := leaf Repeatwhile min-price [ node ] > old-price and parent [ node ] 6 = nil and min-price [ parent [ node ]]= old-price : node := parent [ node ] min-price [ node ]:=+ 1 Forevery child of node : If min-price [ node ] > min-price [ child ], then min-price [ node ]:= min-price [ child ] Figure4.15:Updatingthesummarydataafterdeletionofanorder.Weshowtheupdate oftheordernumber( del-count ),totalsize( del-size ),andminimalprice( del-price ). 86

PAGE 95

Chapter5 SearchforMatches Wedescribeadditionaldatausedbythesysteminthesearchformatches,anddescribe twodierentsearchstrategies.Wethendiscusstherelatedfairnessheuristics,andgive thetrade-osinvolvedbetweenminimizingprocessingtime,whileensuringfairness. 5.1Additionalsearchinformation Eachordermaintainsadditionaldatausedforsimplifyingthematchingprocess.This informationincludes: Timeofplacement :thetimethattheorderwasinitiallyaddedtothetree Timeoflastmodication :thetimethattheorderwaslastmodied Timeoflastsearch :thetimethattheorderwaslastsearchedforamatch Wedescribetwoalgorithmsthatidentifymatchesforagivenorder;therstalgorithmisbasedondepth-rstsearchinanindexingtree,andthesecondisbest-rst search.InFigure5.1,wepresentthenotationfortheorderandnodestructuresusedby thealgorithms.Wegivethedepth-rstalgorithminFigures5.2and5.3,andthebest-rst algorithminFigures5.4{5.6. 5.2Depth-rstsearch Thedepth-rstalgorithmconsistsoftwosteps;itrstndstheleavesofanindexingtree thatmatchagivenorder(Figure5.2),andthenselectsthebestmatchingordersinthese leaves(Figure5.3). 87

PAGE 96

5.2.1Depth-rstsearchstrategies Thedepth-rstsearchusedtoretrievematchingordersmaybeimplementedusingalternativeschemeslistedbelow,eachwithitsowninherentadvantagesanddrawbacks. Exhaustivesearch :Wemayuse dfs tondallleavesthatmatchagivenorder,and thenselectmatchesamongthem. Nodelimit :Weimposealimitonthenumberofexploredleaves;thisstrategydoes notimprovethespeedofndingamatch,butitlimitsthetimeofanunsuccessful search.Moreover,itlimitsthetimeofasuccessfulsearchthatwouldreturntoo manynodes. Clustersearch :Wemaybeginbyexploringthesubtreesthatincludemoreorders, sincetheyarelikelytohavemorematches.Avariationofthisstrategyistosearch foralargetotalvolumeofmatcheswithinaspace. Monotonicity :Werstexplorethebranchesthatarelikelytohavebestmatches. Thistechniqueworksiftheuserdoesnotspecifypriceandqualityfunctionsthat accountformonotonicity.Forexample,iflookingforaninexpensivecarmadeafter 1970,webeginwithcarsmadein1970.Notethatthisstrategyisoppositeto fairness,sinceitlooksfortheworstmodelthatwouldsatisfytheuser'sconditions. 5.2.2Matchingleaves ThealgorithminFigure5.2retrievesthematchingleavesforagivenitemset,represented byaunionofCartesianproductsandalterfunction. The product-leaves subroutinendsthematchingleavesforoneCartesianproductusingdepth-rstsearchintheindexingtree.Itidentiesallchildrenoftherootthat 88

PAGE 97

matchtherstelementoftheCartesianproduct,andthenrecursivelyprocessestherespectivesubtrees.Forexample,supposethatabuyerislookingforaCamryorMustang madeafter2000,withanycolorandmileage,andthetreeofsellordersisasshownin Figure4.9.Thesubroutinedeterminesthatnodes2and4matchthemodel,andthen processesthetworespectivesubtrees.Itidentiesthreematchingnodesforthesecond attribute,threenodesforthethirdattribute,andnallyfourmatchingleaves;weshow thesenodesbythickboxes. Ifthesystemalreadytriedtondmatchesforagivenorderduringtheprevious executionofthemainloop,itskipsthesubtreesthathavenotbeenmodiedsincethe previoussearch.IftheorderincludesaunionofseveralCartesianproducts,thesystem callsthe product-leaves subroutineforeachproduct.Iftheorderincludesalter function,thesystemusesittopruneinappropriateleaves. Ifanordermatchesalargenumberofleaves,theretrievalmaytakeconsiderable time.Topreventthisproblem,wecanimposealimitonthenumberofretrievedleaves; forinstance,ifweallowatmostthreeleaves,andabuyerplacesanorderforanyCamry, thenthesystemretrievesthethreeleftmostleavesinFigure4.9.Weusethislimitto controlthetrade-obetweenspeedandqualityofmatches;asmalllimitensuresthe eciencybutreducesthechancesofndingthebestmatch. 5.2.3Bestmatches Afterthesystemidentiesmatchingleaves,itselectsthebestmatchingordersinthese leaves,accordingtothequalityfunctionofthegivenorder.InFigure5.3,wegivean algorithmthatidentiesthehighest-qualitymatchesandcompletestherespectivetrades. Itarrangestheleavesinapriorityqueuebythequalityofthebestunprocessedmatchin aleaf.Ateachstep,thealgorithmprocessesthebestavailablematch;itterminatesafter itllsthegivenorderorrunsoutofmatches. 89

PAGE 98

Forexample,considerthetreeinFigure4.9,andsupposethatabuyerplacesan orderforfourCamriesorMustangsmadeafter2000.Wesupposefurtherthatsheusesthe defaultqualitymeasure,whichdependsonlyonprice.ThesystemrstretrievesorderA withprice$16,000andsize2,thenorderBwithprice$16,500,andnallyorderOwith price$19,000;weshowtheseordersbythickcircles. Ifthepriceandqualityfunctionsdonotuseanyextradata,thenthesortedorderon pricecorrespondstothesortedorderonquality,aslongasqualityismonotoniconprice; uponreachingthepriceandqualitylimits,wehaveexhuastedallmatches.Ontheother hand,iftheydouseadditionalinformation,thentheorderingmaydier.Inthiscase, thedefaultstrategymayresultinselectingsuboptimalmatches,ormissingmatches.An alternativemethodistoconsiderallordersintheselectedcells,andexplicitlysortthem onquality,butitisslower.Weplanondevelopingthisalgorithminfutureresearch. Weapplythematchingtesteachtimeasellorderisprocessed.Notethatanorder maynotmatchbecauseofasizerequirementorlterfunction.Ifthelterdoesnotuse extraanydata,wecanapplyitoncetoaleaf.Ifitusesextradata,however,wemust applyittoeveryorderintheleaf.Ifanordermatches,weapplythealgorithmgivenin Figure2.3todeterminethematchingsizeofthell. 5.3Best-rstsearch Ifsomeattributesaremonotonic,wecanusebest-rstsearchtondoptimalmatches, whichisusuallyfasterthandepth-rstsearch.Thebest-rstalgorithmusesanode's summarydatatoestimatethequalityofmatchesinthenode'ssubtree;ateachstep,it processesthenodewiththehighestqualityestimate. 90

PAGE 99

5.3.1Qualityestimates Wecancomputeaqualityestimateforanodeonlyifallbranchinginthenode'ssubtree isonmonotonicattributes;anodewiththispropertyiscalled monotonic .Forexample, node6inFigure4.9ismonotonic;thebranchinginitssubtreeisonyearandmileage, whicharemonotonicattributes.Ontheotherhand,node2isnotmonotonicbecauseits subtreeincludesbranchingoncolor. InFigure5.4,wegiveaprocedurethatinputsamonotonicnodeandconstructsthe bestpossibleitemthatmaybepresentinthenode'ssubtree,basedonthesummarydata. Toestimatethenode'squality,thesystemcomputesthequalityofthisitemtradedatthe bestpossiblepricefromthesummarydata.Forexample,considernode6inFigure4.9; allordersinitssubtreeincluderedCamries,andthesummarydatashowthatthebest yearis2003,thebestmileageis5,000,andthebestpriceis$13,000.Thus,thesystem computesthequalityestimateas Qual (Camry;red; 2003 ; 5,000 ; $13,000). 5.3.2Searchsteps Thebest-rstalgorithmconsistsoftwosteps,similartothestepsofthedepth-rst algorithm.First,itndsallsmallest-depthmonotonicnodesthatmatchagivenorder (Figure5.5);forexample,ifabuyerislookingforaCamryorMustangmadeafter 2000,andthetreeofsellordersisasshowninFigure4.9,thenthealgorithmretrieves nodes5,6,and9.Second,itndsthebestmatchingordersinthesubtreesoftheselected nodes(Figure5.6).Itarrangesthenodesintoapriorityqueuebytheirqualityestimates; ateachstep,itprocessesthehighest-qualitynode.Ifthisnodeisaleaf,thealgorithm identiesthebest-pricematchingorderintheleafandcompletestherespectivetrade.If thenodeisnotaleaf,thealgorithmidentiesitschildrenthatmatchthegivenorder, andaddsthemtothepriorityqueue.Thealgorithmterminateswhenitllsthegiven orderorrunsoutofmatches. 91

PAGE 100

5.4Fairnessheuristics Weconsidermultiplefairnessmethods,withthedierencesearchtechniquesusingdierentheuristicsasfollows: Depth-rstsearch :Wecanusethedepthrstsearchwithheuristicsthatguide towardabettermatch.Theheuristicsarethesameasinthebest-rstsearch. Beamsearch :Beamsearchisavarietyofthebest-rstsearch,wherewelimitthe numberofthebestcandidates.Wecontrolthetrade-obetweeneciencyand fairnessbycontrollingthebreadthlimit. Best-pricesearch :Iftheuserspeciesqualitybutnopartialqualityfunction,we mayusebest-pricesearchasaheuristic.Thatis,wecanndthebest-pricesearch andhopethatitmaximizesthequalityfunction. 5.5Trade-os Whenimplementingthesearch,weneedtoconsidertrade-osbetweenprocessingspeed andnear-fairnessguarantees.Thefairnessdenitionisrelatedtothequalityfunction. Thesystemmustalwayssatisfyhardconstraints,denedbytheitemdescription,lters, pricefunctions,andquality.Ontheotherhand,thequalityorderingisnotahard constraint,andwemaynotguaranteendingthebestmatchorensuringaperfectfairness. Weconsiderthreeapproaches. Disregardqualitypreferencesandtimepriorities,andguaranteeonlyhardconstraints.Ifweusethisstrategy,weoptimizeforthespeedofmarketclearing.The marketisnot\completelyunfair"sinceweselectmatchesatrandomanddonot favorspecicusers. 92

PAGE 101

Guaranteefairness,thatis,ensurethatthe\boys-and-girls"conditionisneverviolated(subsection2.2.5);thisapproachinvolvestwoseparateproblems.First,when searchingforamatchforabuyorder,weneedtondthebestmatch,accordingto thequalityfunction.Second,whenabuyorderndsasellorder,weneedtoensure thattherearenobetterbuysthatcouldmatchwiththesamesell. Weconsiderheuristicsthatdonotguaranteefairnessbutleadtonear-fairchoice, andatthesametimetakelesstimethatthefullguarantee.Weconsiderseveral dierentheuristics,whichleadtodierenttrade-os.Werstconsidertheapproach withnofairness,thencompletefairness,andthendiscussseveraltrade-os.Thenofairnessapproachisbasedonthedepth-rstsearch,thecompletefairnessapproach isbasedonthebest-rstsearch,andnear-fairnessisdepth-rstsearchwithfairness heuristics. 93

PAGE 102

Elementsoftheorderstructure: Price [ order ]pricefunction Qual [ order ]qualityfunction Filter [ order ]lterfunction Max [ order ]overallordersize Min [ order ]minimalacceptablesize Step [ order ]sizestep Place-Time [ order ]timeofplacingtheorder Search-Time [ order ]timeofthelastsearchformatches Elementsoftheindexing-treenodestructure: Min-Price [ node ]minimalpriceofordersinthenode'ssubtree Max-Price [ node ]maximalpriceofordersinthenode'ssubtree Depth [ node ]depthofthenodeintheindexingtree Product-Num [ node ]numberofthematchingCartesianproductinagivenitemset Quality [ node ]foranonleafnode,thequalityestimate; foraleaf,thequalityofthebest-priceunprocessedorder Additionalelementsoftheleaf-nodestructure: Item [ node ]itemintheleaf'sorders Current-Order [ node ]best-priceunprocessedorderintheleaf Figure5.1:Notationfortheordersandnodesofanindexingtree.Notethattheleaf-node structureincludestheveelementsofthenodestructureandtwoadditionalelements. WeusethisnotationinthepseudocodeinFigures5.2{5.6. 94

PAGE 103

matching-leaves ( order ; root ) Thealgorithminputsanorderandtherootofanindexingtree. Wedenotetheorder'sitemsetby I 11 ::: I 1n[ ::: [ I k1 ::: I kn. Initializeanemptysetofmatchingleaves,denoted leaves For l from1to k call product-leaves ( I l1 ::: I ln; Filter [ order ] ; Search-Time [ order ] ; root ; leaves ) Return leaves product-leaves ( I l1 ::: I ln; Filter ; Search-Time ; node ; leaves ) ThesubroutineinputsaCartesianproduct I l1 ::: I ln,alterfunction,theprevious-searchtime, anodeoftheindexingtree,andasetofleaves.Itndsthematchingleavesinthenode'ssubtree, andaddsthemtothesetofleaves. If Search-Time islargerthan node 'stimeofthelastorderaddition,thenterminate If node isaleafand Filter ( Item [ node ])= true ,thenadd node to leaves If node isnotaleaf: Identifyallchildrenof node thatmatch IDepth [ node ]+1Foreachmatching child call product-leaves ( I l1 ::: I ln; Filter ; Search-Time ; child ; leaves ) Figure5.2:Retrievalofmatchingleaves.Thealgorithmidentiestheleavesofanindexing treethatmatchtheitemsetofagivenorder.The product-leaves subroutineuses depth-rstsearchtoretrievethematchingleavesforoneCartesianproduct. 95

PAGE 104

leaf-matches ( order leaves ) Thealgorithminputsanorderandmatchingleavesofanindexingtree. Initializeanemptypriorityqueueofmatchingleaves,denoted queue whichprioritizestheleavesbythequalityofthebest-priceunprocessedorder Foreach leaf in leaves : Set Current-Order [ leaf ]totherstorderamong leaf 'sorders,sortedbyprice Call leaf-priority ( order ; leaf ; queue ) While Max [ order ] Min [ order ]and queue isnonempty: Set leaf tothehighest-priorityleafin queue ,andremoveitfrom queue match := Current-Order [ leaf ] Set Current-Order [ leaf ]tothenextorderamong leaf 'sorders,sortedbyprice Call trade ( order ; match ) Call leaf-priority ( order ; leaf ; queue ) If Max [ order ] < Min [ order ],thenremove order fromthemarket Else,set Search-Time [ order ]tothecurrenttime leaf-priority ( order ; leaf ; queue ) Thesubroutineinputsthegivenorder,amatchingleaf,andthepriorityqueueofleaves.Ifthe order'spricematchesthepriceoftheleaf'sbest-priceunprocessedorder,thentheleafisaddedto thequeue. match := Current-Order [ leaf ] If match = none ,thenterminate (nounprocessedordersin leaf ) If order isabuyorder,then price := fill-price ( Price [ order ] ; Price [ match ] ; Item [ leaf ]) Else, price := fill-price ( Price [ match ] ; Price [ order ] ; Item [ leaf ]) If price = none ,thenterminate (noorderswithacceptableprice) Quality [ leaf ]:= Qual [ order ]( Item [ leaf ] ; price ) Add leaf to queue ,prioritizedby Quality trade ( order ; match ) Thesubroutineinputsthegivenorderandthehighest-qualityorderwithmatchingitemandprice. Ifthesizesofthesetwoordersmatch,thesubroutinecompletesthetradebetweenthem. If Search-Time [ order ] > Place-Time [ match ],thenterminate size := fill-size ( Max [ order ] ; Min [ order ] ; Step [ order ] ; Max [ match ] ; Min [ match ] ; Step [ match ]) If size = none ,thenterminate Completethetradebetween order and match Max [ order ]:= Max [ order ] )Tj/F5 1 Tf0.99 0 TD-0.001 Tc(size Max [ match ]:= Max [ match ] )Tj/F5 1 Tf0.99 0 TD-0.001 Tc(size If Max [ match ] < Min [ match ],thenremove match fromthemarket Figure5.3:Retrievalofmatchingorders.Thealgorithmndsthehighest-qualitymatches foragivenorderandcompletesthecorrespondingtrades.The leaf-priority subroutine addsagivenleaftothepriorityqueue,arrangedbythequalityofaleaf'sbest-price unprocessedmatch.The trade subroutinecompletesthetradebetweenthegivenorder andthebestavailablematch. 96

PAGE 105

best-item ( node ) Thealgorithminputsamonotonicnodeofanindexingtree. For m from1to Depth [ node ]: Set imtothe m th-attributevalueonthepathfromtherootto node For m from Depth [ node ]+1to n : Set imtothebestvalueofthe m thattributein node 'ssummarydata Return( i1;:::;in) Figure5.4:Constructionofthebestpossibleitem.Thealgorithminputsamonotonic nodeandgeneratesthebestitemthatmaybepresentinthesubtreerootedatthenode. matching-nodes ( order ; root ) Thealgorithminputsanorderandtherootofanindexingtree. Wedenotetheorder'sitemsetby I 11 ::: I 1n[ ::: [ I k1 ::: I kn. Initializeanemptysetofmatchingmonotonicnodes,denoted nodes For l from1to k ,call product-nodes ( I l1 ::: I ln; Search-Time [ order ] ; root ; nodes ) Return nodes product-nodes ( I l1 ::: I ln; Search-Time ; node ; nodes ) ThesubroutineinputsaCartesianproduct I l1 ::: I ln,theprevious-searchtime,anodeofthe indexingtree,andasetofmonotonicnodes.Itndsthematchingmonotonicnodesinthesubtree rootedatthegivennode,andaddsthemtothesetofmonotonicnodes. If Search-Time islargerthan node 'stimeofthelastorderaddition,thenterminate If node ismonotonic: Product-Num [ node ]:= l Add node to nodes If node isnotmonotonic: Identifyallchildrenof node thatmatch I lDepth [ node ]+1Foreachmatching child ,call product-nodes ( I l1 ::: I ln; Search-Time ; child ; nodes ) Figure5.5:Retrievalofmatchingmonotonicnodes.Thealgorithmidentiesthesmallestdepthmonotonicnodesthatmatchtheitemsetofagivenorder.The product-nodes subroutineusesdepth-rstsearchtoretrievethematchingmonotonicnodesforoneCartesianproduct. 97

PAGE 106

node-matches ( order nodes ) Thealgorithminputsanorderandmatchingmonotonicnodesofanindexingtree. Initializeanemptypriorityqueueofmatchingnodes,denoted queue whichprioritizesthenodesbytheirqualityestimates Foreach node in nodes ,call node-priority ( order ; node ; queue ) While Max [ order ] Min [ order ]and queue isnonempty: Set node tothehighest-prioritynodein queue ,andremoveitfrom queue If node isaleaf: match := Current-Order [ node ] Set Current-Order [ node ]tothenextorderamong node 'sorders,sortedbyprice Call trade ( order ; match ) Call leaf-priority ( order ; node ; queue ) If node isnotaleaf: l := Product-Num [ node ] Identifyallchildrenof node thatmatch I lDepth [ node ]+1Foreachmatching child : If child isaleafand Filter ( Item [ child ])= true : Set Current-Order [ child ]totherstorderamong child 'sorders,sortedbyprice Call leaf-priority ( order child queue ) If child isnotaleaf: Product-Num [ child ]:= l Call node-priority ( order child queue ) If Max [ order ] < Min [ order ],thenremove order fromthemarket Else,set Search-Time [ order ]tothecurrenttime node-priority ( order ; node ; queue ) Thesubroutineinputsthegivenorder,amatchingmonotonicnode,andthepriorityqueueofnodes. Iftheordermayhavematchesinthenode'ssubtree,thenthenodeisaddedtothepriorityqueue. i := best-item ( node ) If order isabuyorder,then price := fill-price ( Price [ order ] ; Min-Price [ node ] ;i ) Else, price := fill-price ( Max-Price [ node ] ; Price [ order ] ;i ) If price = none ,thenterminate Quality [ node ]:= Qual [ order ]( i; price ) Add node to queue ,prioritizedby Quality Figure5.6:Retrievalofmatchingorders.Thealgorithmndsthebestmatchesfora givenorderandcompletesthecorrespondingtrades.The node-priority subroutine addsanonleafnodetothepriorityqueue,arrangedbyqualityestimates.Thealgorithm alsousesfourothersubroutines: fill-price (Figure2.3), leaf-priority (Figure5.3), trade (Figure5.3),and best-item (Figure5.4). 98

PAGE 107

Chapter6 ConcludingRemarks Althoughresearchershavelongrealizedtheimportanceofexchangemarkets,theyhave notappliedtheexchangemodeltotradingcomplexcommodities.Thereportedworkisa steptowardthedevelopmentofautomatedcomplex-commodityexchanges,basedonthe formalmodelproposedbyJohnson[2001],Hu[2002],andGong[2002]. Wehavedenedpriceandqualityfunctions,whichallowtraderstospecifyprice constraintsandpreferenceamongpotentialtrades,anddevelopedalgorithmsforfast identicationofhighest-qualitymatchesbetweenbuyandsellorders.Thesealgorithms helptomaximizethesatisfactionoftradersandenforce\fair"choicesamongavailable matches,whichareconsistentwithnancial-industryrulesoffairtrading. Theimplementedsystemsupportsmarketswithupto300,000orders,anditprocesseshundredsofneworderspersecond.Itsspeedisclosetothespeedoftheearlier versionsofthesystem,whichdidnotusepriceandqualityfunctions,anddidnotguaranteendingbestmatches. Onthenegativeside,thesystemdoesnotallowforbulkdiscounts,bartertrading, ormatchesbetweentwononindexorders.Theseconceptsarecommonlyfoundintoday's markets,andweplantoaddressthemaspartoffutureresearch.Inaddition,weare currentlyworkingonadistributedversionoftheexchange,whichwillimprovescalability; itwillincludeacentralmatcherandmultiplepreprocessingmodules,whoserolesare similartothatofstockbrokersonWallStreet. 99

PAGE 108

References [ Akcoglu etal. ,2002 ] KarhanAkcoglu,JamesAspnes,BhaskarDasGupta,andMingYangKao.Opportunitycostalgorithmsforcombinatorialauctions.InErricosJohn Kontoghiorghes,Ber cRustem,andStavrosSiokos,editors, AppliedOptimization: ComputationalMethodsinDecision-Making,EconomicsandFinance .KluwerAcademicPublishers,Boston,MA,2002.Toappear. [ AnderssonandYgge,1998 ] ArneAnderssonandFredrikYgge.Managinglargescale computationalmarkets.In ProceedingsoftheThirty-FirstH awaiiInternationalConferenceonSystemSciences ,volume vii ,pages4{13,1998. [ Andersson etal. ,2000 ] ArneAndersson,MattiasTenhunen,andFredrikYgge.Integer programmingforcombinatorialauctionwinnerdetermination.In Proceedingsofthe FourthInternationalConferenceonMulti-AgentSystems ,pages39{46,2000. [ BabaioandNisan,2001 ] MosheBabaioandNoamNisan.Concurrentauctionsacross thesupplychain.In ProceedingsoftheThird acm ConferenceonElectronicCommerce pages1{10,2001. [ Bapna etal. ,2000 ] RaviBapna,PauloGoes,andAlokGupta.Atheoreticalandempiricalinvestigationofmulti-itemon-lineauctions. InformationTechnologyandManagement ,1(1):1{23,2000. [ Benyoucef etal. ,2001 ] MoradBenyoucef,SaritaBassil,andRudolfK.Keller.Workowmodelingofcombinednegotiationsine-commerce.In ProceedingsoftheFourth InternationalConferenceonElectronicCommerceResearch ,pages348{359,2001. [ Bernstein,1993 ] PeterL.Bernstein. CapitalIdeas:TheImprobableOriginsofModern WallStreet .TheFreePress,NewYork,NY,1993. [ BichlerandKaukal,1999 ] MartinBichlerandMarionKaukal.Designandimplementationofabrokerageserviceforelectronicprocurement.In ProceedingsoftheTenth InternationalWorkshoponDatabaseandExpertSystemsApplications ,pages618{622, 1999. [ BichlerandSegev,1999 ] MartinBichlerandArieSegev.Abrokerageframeworkfor Internetcommerce. DistributedandParallelDatabases ,7(2):133{148,1999. 100

PAGE 109

[ BichlerandWerthner,2000 ] MartinBichlerandHannesWerthner.Aclassication frameworkofmultidimensional,multi-unitprocurementnegotiations.In Proceedingsof the11thInternationalWorkshoponDatabaseandExpertSystemsApplications ,pages 1003{1009,2000. [ Bichler etal. ,1998 ] MartinBichler,ArieSegev,andCarrieBeam.Anelectronicbroker forbusiness-to-businesselectroniccommerceontheInternet. InternationalJournalof CooperativeInformationSystems ,7(4):315{329,1998. [ Bichler etal. ,1999 ] MartinBichler,MarionKaukal,andArieSegev.Multi-attribute auctionsforelectronicprocurement.In ProceedingsoftheFirst iac Workshopon InternetBasedNegotiationTechnologies ,1999. [ Bichler etal. ,2001 ] MartinBichler,JuhnyoungLee,HoSooLee,andJen-YaoChung. Absolute:Anintelligentdecisionmakingframeworkfore-sourcing.In Proceedingsof theThirdInternationalWorkshoponAdvancedIssuesofE-CommerceandWeb-based InformationSystems ,pages195{201,2001. [ Bichler,2000a ] MartinBichler.Anexperimentalanalysisofmulti-attributeauctions. DecisionSupportSystems ,29(3):249{268,2000. [ Bichler,2000b ] MartinBichler.Aroadmaptoauction-basednegotiationprotocolsfor electroniccommerce.In ProceedingsoftheThirty-ThirdH awaiiInternationalConferenceonSystemSciences ,2000. [ Blum etal. ,2002 ] AvrimBlum,TuomasW.Sandholm,andMartinZinkevich.Online algorithmsformarketclearing.In ProceedingsoftheThirteenthAnnual acm siam SymposiumonDiscreteAlgorithms ,2002. [ BoutilierandHoos,2001 ] CraigBoutilierandHolgerH.Hoos.Biddinglanguagesfor combinatorialauctions.In Proceedingsofthe SeventeenthInternationalJointConferenceonArticialIntelligence ,pages1211{1217,2001. [ Boyan etal. ,2001 ] JustinBoyan,AmyGreenwald,R.MikeKirby,andJonReiter.Biddingalgorithmsforsimultaneousauctions.In ProceedingsoftheThird acm Conference onElectronicCommerce ,pages115{124,2001. [ Burmeister etal. ,2002 ] BirgitBurmeister,TobiasIhde,ThomasKittsteiner,Benny Moldovanu,andJorgNikutta.Apracticalapproachtomulti-attributeauctions.In Proceedingsofthe13thInternati onalWorkshoponDatabaseandExpertSystemsApplications ,pages573{577,2002. [ Cagno etal. ,2001 ] EnricoCagno,FrancoCaron,andAlessandroPerego.Multi-criteria assessmentoftheprobabilityofwinninginthecompetitivebiddingprocess. InternationalJournalofProjectManagement ,19:313{324,2001. [ CasonandFriedman,1996 ] TimothyN.CasonandDanielFriedman.Priceformation indoubleauctionmarkets. JournalofEconomicDynamicsandControl ,20:1307{1337, 1996. 101

PAGE 110

[ CasonandFriedman,1999 ] TimothyN.CasonandDanielFriedman.Priceformation andexchangeinthinmarkets:Alaboratorycomparisonofinstitutions.InPeterHowitt, ElisabettadeAntoni,andAxelLeijonhufvud,editors, Money,MarketsandMethod: EssaysinHonourofRobertW.Clower ,pages155{179.EdwardElgar,Cheltenham, UnitedKingdom,1999. [ ChavezandMaes,1996 ] AnthonyChavezandPattieMaes.Kasbah:Anagentmarketplaceforbuyingandsellinggoods.In ProceedingsoftheFirstInternati onalConference onthePracticalApplicationofIntelligentAgentsandMulti-AgentTechnology ,pages 75{90,1996. [ Chavez etal. ,1997 ] AnthonyChavez,DanielDreilinger,RobertGuttman,andPattie Maes.Areal-lifeexperimentincreatinganagentmarketplace.In Proceedingsofthe SecondInternationalConferenceonthePracticalApplicationofIntelligentAgentsand Multi-AgentTechnology ,pages159{178,1997. [ Che,1993 ] Yeon-KooChe.Designcompetitionthroughmultidimensionalauctions. rand JournalofEconomics ,24(4):668{680,1993. [ Chen etal. ,2001 ] ChunmingChen,MuthucumaruMaheswaran,andMichelToulouse. Onbidselectionheuristicsforreal-timeauctioningforwide-areanetworkresourcemanagement.In ProceedingsoftheInternati onalConferenceonParallelandDistributed ProcessingTechniquesandApplications ,2001. [ ChengandWellman,1998 ] JohnChengandMichaelWellman.The walras algorithm: Aconvergentdistributedimplementationofgeneralequilibriumoutcomes. ComputationalEconomics ,12(1):1{24,1998. [ Cli,1998 ] DaveCli.Geneticoptimizationofadaptivetradingagentsfordoubleauctionmarkets.In Proceedingsofthe ieee / iafe / informs 1998ConferenceonComputationalIntelligenceforFinancialEngineering ,pages252{258,1998. [ Cli,2002 ] DaveCli.Evolutionofmarketmechanismthroughacontinuousspaceof auction-types.In ProceedingsoftheThird acm ConferenceonElectronicCommerce pages206{209,2002. [ ConenandSandholm,2001 ] WolframConenandTuomasW.Sandholm.Minimalpreferenceelicitationincombinatorialauctions.In Proceedingsofthe SeventeenthInternationalJointConferenceonArticialIntelligence,WorkshoponEconomicAgents, Models,andMechanisms ,pages71{80,2001. [ ConenandSandholm,2002 ] WolframConenandTuomasW.Sandholm.Partialrevelation vcg mechanismforcombinatorialauctions.In ProceedingsoftheEighteenth NationalConferenceonArticialIntelligence ,2002. 102

PAGE 111

[ Contreras etal. ,2001 ] JavierContreras,ArturoLosi,andMarioRusso.A java / matlab simulatorforpowerexchangemarkets.In Proceedingsofthe 22nd ieee PowerEngineeringSocietyInternationalConferenceonPowerIndustryComputerApplications. InnovativeComputingforPower-ElectricEnergyMeetstheMarket ,pages106{111, 2001. [ CrippsandIreland,1994 ] MartinCrippsandNormanIreland.Thedesignofauctionsandtenderswithqualitythresholds:Thesymmetriccase. EconomicJournal 104(423):316{326,1994. [ deVriesandVohra,2002 ] SvendeVriesandRakeshV.Vohra.Combinatorialauctions: Asurvey. informs JournalofComputing ,2002.Toappear. [ Dumas etal. ,2002 ] MarlonDumas,GuidoGovernatori,ArthurHofstede,andPhillipa Oaks.Aformalapproachtonegotiatingagentsdevelopment. ElectronicCommerce ResearchandApplications ,1:193{207,2002. [ Fujishima etal. ,1999a ] YuzoFujishima,KevinLeyton-Brown,andYoavShoham. Speedingupascending-bidauctions.In ProceedingsoftheSixteenthInternati onalJoint ConferenceonArticialIntelligence ,pages554{563,1999. [ Fujishima etal. ,1999b ] YuzoFujishima,KevinLeyton-Brown,andYoavShoham.Tamingthecomputationalcomplexityofcombinatorialauctions:Optimalandapproximate approaches.In ProceedingsoftheSixteenthInternati onalJointConferenceonArticial Intelligence ,volume1,pages548{553,1999. [ GonenandLehmann,2000 ] RicaGonenandDanielLehmann.Optimalsolutionsfor multi-unitcombinatorialauctions:Branchandboundheuristics.In Proceedingsofthe Second acm ConferenceonElectronicCommerce ,pages13{20,2000. [ GonenandLehmann,2001 ] RicaGonenandDanielLehmann.Linearprogramming helpssolvinglargemulti-unitcombinatorialauctions.In ProceedingsoftheElectronic MarketDesignWorkshop ,2001. [ Gong,2002 ] JianliGong.Exchangesforcomplexcommodities:Searchforoptimal matches.Master'sthesis,DepartmentofComputerScienceandEngineering,UniversityofSouthFlorida,2002. [ Guttman etal. ,1998a ] RobertH.Guttman,AlexandrosG.Moukas,andPattieMaes. Agent-mediatedelectroniccommerce:Asurvey. KnowledgeEngineeringReview 13(2):147{159,1998. [ Guttman etal. ,1998b ] RobertH.Guttman,AlexandrosG.Moukas,andPattieMaes. Agentsasmediatorsinelectroniccommerce. InternationalJournalofElectronicMarkets ,8(1):22{27,1998. [ HeandLeung,2001 ] MinghuaHeandHo-FangLeung.Anagent-biddingstrategybased onfuzzylogicinacontinuousdoubleauction.In Proceedingsofthe 2001 ieee InternationalConferenceonMachineLearningandCybernetics ,pages583{588,2001. 103

PAGE 112

[ HoosandBoutilier,2000 ] HolgerH.HoosandCraigBoutilier.Solvingcombinatorial auctionsusingstochasticlocalsearch.In Proceedingsofthe SeventeenthNationalConferenceonArticialIntelligence ,pages22{29,2000. [ HuandShi,2002 ] Shan-LiHuandChun-YiShi.Thecomputationalcomplexityofdynamicprogrammingalgorithmforcombinatorialauctions.In Proceedingsofthe 2002 InternationalConferenceonMachineLearningandCybernetics ,pages266{268,2002. [ HuandWellman,2001 ] JunlingHuandMichaelP.Wellman.Learningaboutother agentsinadynamicmultiagentsystem. JournalofCognitiveSystemsResearch ,1:67{ 79,2001. [ Hu etal. ,1999 ] JunlingHu,DanielReeves,andHock-ShanWong.Agentsparticipating inInternetauctions.In Proceeingsofthe aaai WorkshoponArticialIntelligencefor ElectronicCommerce ,1999. [ Hu etal. ,2000 ] JunlingHu,DanielReeves,andHock-ShanWong.Personalizedbidding agentsforonlineauctions.In ProceedingsoftheFifthInternati onalConferenceonthe PracticalApplicationofIntelligentAgentsandMulti-Agents ,pages167{184,2000. [ Hu,2002 ] JennyYingHu.Exchangesforcomplexcommodities:Representationand indexingoforders.Master'sthesis,DepartmentofComputerScienceandEngineering, UniversityofSouthFlorida,2002. [ HuhnsandVidal,1999 ] MichaelN.HuhnsandJoseM.Vidal.Onlineauctions. Internet Computing ,3:103{105,1999. [ Hull,1999 ] JohnC.Hull. Options,Futures,andOtherDerivatives .PrenticeHall,Upper SaddleRiver,NJ,fourthedition,1999. [ Johnson,2001 ] JoshuaMarcJohnson.Exchangesforcomplexcommodities:Theory andexperiments.Master'sthesis,DepartmentofComputerScienceandEngineering, UniversityofSouthFlorida,2001. [ JonesandKoehler,2000 ] JoniL.JonesandGaryJ.Koehler.Multiplecriteriacombinatorialauction:A b2b allocationmechanismforsubstitutegoods.In Proceedingsof theAmericasConferenceonInformationSystems ,2000. [ JonesandKoehler,2002 ] JoniL.JonesandGaryJ.Koehler.Combinatorialauctions usingrule-basedbids. DecisionSupportSystems ,34:59{74,2002. [ Jones,2000 ] JoniL.Jones. IncompletelySpeciedCombinatorialAuction:AnAlternativeAllocationMechanismforBusiness-to-BusinessNegotiations .PhDthesis,WarringtonCollegeofBusiness,UniversityofFlorida,2000. [ Kalagnanam etal. ,2000 ] JayantR.Kalagnanam,AndrewJ.Davenport,andHoS.Lee. Computationalaspectsofclearingcontinuouscalldoubleauctionswithassignment constraintsandindivisibledemand.TechnicalReport rc 21660(97613), ibm ,2000. 104

PAGE 113

[ Kastner etal. ,2002 ] RyanKastner,ChristinaHsieh,MiodragPotkonjak,andMajid Sarrafzadeh.Onthesensitivityofincrementalalgorithmsforcombinatorialauctions. In ProceedingsoftheFourth ieee InternationalWorkshoponAdvancedIssuesofECommerceandWeb-basedInformationSystems ,pages81{88,2002. [ KeeverandAlcorn,2000 ] DavidKeeverandWalterAlcorn.Developmentandgrowthof internetenvironmentalexchangeservices.In Proceedingsofthe 2000 ieee Engineering ManagementSociety ,pages308{312,2000. [ Klein,1997 ] StefanKlein.Introductiontoelectronicauctions. InternationalJournalof ElectronicMarkets ,7(4):3{6,1997. [ KumarandFeldman,1998 ] ManojKumarandStuartI.Feldman.Internetauctions.In ProceedingsoftheThird usenix WorkshoporElectronicCommerce ,pages49{60,1998. [ LaviandNisan,2000 ] RanLaviandNoamNisan.Competitiveanalysisofincentive compatibleon-lineauctions.In ProceedingsoftheSecond acm ConferenceonElectronic Commerce ,pages233{241,2000. [ Lehmann etal. ,1999 ] DanielLehmann,LiadanItaO'Callaghan,andYoavShoham. Truthrevelationinrapid,approximatelyecientcombinatorialauctions.In ProceedingsoftheFirst acm ConferenceonElectronicCommerce ,pages96{102,1999. [ Lehmann etal. ,2001 ] BennyLehmann,DanielLehmann,andNoamNisan.Combinatorialauctionswithdecreasingmarginalutilities.In ProceedingsoftheThird acm ConferenceonElectronicCommerce ,pages18{28,2001. [ Leyton-Brown etal. ,2000 ] KevinLeyton-Brown,YoavShoham,andMosheTennenholtz.Analgorithmformulti-unitcombinatorialauctions.In Proceedingsofthe SeventeenthNationalConferenceonArticialIntelligence ,pages56{61,2000. [ Leyton-Brown etal. ,2002 ] KevinLeyton-Brown,EugeneNudelman,andYoavShoham. Learningtheempiricalhardnessofoptimizationproblems:Thecaseofthecombinatorialauctions,2002.Unpublishedmanuscript. [ Maamar,2002 ] ZakariaMaamar.Associationofuserswithsoftwareagentsinecommerce. ElectronicCommerceResearchandApplications ,1:104{112,2002. [ Maes etal. ,1999 ] PattieMaes,RobertH.Guttman,andAlexandrosG.Moukas.Agents thatbuyandsell:Transformingcommerceasweknowit. Communicationsofthe acm 42(3):81{91,1999. [ MondererandTennenholtz,2000 ] DovMondererandMosheTennenholtz.Optimalauctionsrevisited. ArticialIntelligence ,120:29{42,2000. [ Moore etal. ,1990 ] JamesMoore,WilliamRichmond,andAndrewWhinston.Optimal decisionprocessesandalgorithms. JournalofEconomicDynamicsandControl ,14:375{ 417,1990. 105

PAGE 114

[ Mu'alemandNisan,2002 ] AhuvaMu'alemandNoamNisan.Truthfulapproximation mechanismsforrestrictedcombinatorialauctions.In ProceedingsoftheEighteenth NationalConferenceonArticialIntelligence ,2002. [ Nisan,2000 ] NoamNisan.Biddingandallocationincombinatorialauctions.In ProceedingsoftheSecond acm ConferenceonElectronicCommerce ,pages1{12,2000. [ ParkesandUngar,2000 ] DavidC.ParkesandLyleH.Ungar.Iterativecombinatorial auctions:Theoryandpractice.In Proceedingsofthe SeventeenthNationalConference onArticialIntelligence ,pages74{81,2000. [ Parkes,1999 ] DavidC.Parkes. i Bundle:Anecientascendingpricebundleauction. In ProceedingsoftheFirst acm ConferenceonElectronicCommerce ,pages148{157, 1999. [ Piccinelli etal. ,2001 ] GiacomoPiccinelli,ChrisPriest,andClaudioBartolini.E-service composition:Supportingdynamicdenitionofprocess-orientednegotiation.In Proceedingsofthe12thInternati onalWorkshoponDatabaseandExpertSystemsApplications ,pages727{731,2001. [ Preist etal. ,2001 ] ChrisPreist,AndrewByde,ClaudioBartolini,andGiacomoPiccinelli.Towardsagent-basedservicecompositionthroughnegotiationinmultipleauctions.TechnicalReport hpl -2001-71,HewlettPackard,2001. [ Preist,1999a ] ChrisPreist.Commoditytradingusinganagent-basediterateddouble auction.In ProceedingsoftheThirdAnnualConferenceonAut onomousAgents ,pages 131{138,1999. [ Preist,1999b ] ChrisPreist.Economicagentsforautomatedtrading.InAlexL.G. HayzeldenandJohnBigham,editors, SoftwareAgentsforFutureCommunicationSystems ,pages207{220.Springer-Verlag,Berlin,Germany,1999. [ Rahwan etal. ,2002 ] IyadRahwan,RyszardKowalczyk,andHaHaiPham.Intelligentagentsforautomatedone-to-manye-commercenegotiation.In Proceedingsof theTwenty-FifthAustralianConferenceonComputerScience ,pages197{204,2002. [ ReiterandSimon,1992 ] StanleyReiterandCarlSimon.Decentralizeddynamicprocessesforndingequilibrium. JournalofEconomicTheory ,56(2):400{425,1992. [ RichterandSheble,1998 ] CharlesW.RichterandGeraldB.Sheble.Geneticalgorithm evolutionofutilitybiddingstrategiesforthecompetitivemarketplace. ieee TransactionsonPowerSystems ,13:256{261,1998. [ RonenandSaberi,2002 ] AmirRonenandAminSaberi.Onthehardnessofoptimalauctions.In Proceedingsofthe43rdAnnual ieee SymposiumonFoundationsofComputer Science ,pages396{405,2002. [ Ronen,2001 ] AmirRonen.Onapproximatingoptimalauctions.In Proceedingsofthe Third acm ConferenceonElectronicCommerce ,pages11{17,2001. 106

PAGE 115

[ Rothkopf etal. ,1998 ] MichaelH.Rothkopf,AleksandarPeke c,andRonaldM. Harstad.Computationallymanageablecombinatorialauctions. ManagementScience 44(8):1131{1147,1998. [ Sakurai etal. ,2000 ] YukoSakurai,MakotoYokoo,andKojiKamei.Anecientapproximatealgorithmforwinnerdeterminationincombinatorialauctions.In Proceedingsof theSecond acm ConferenceonElectronicCommerce ,pages30{37,2000. [ SandholmandSuri,2000 ] TuomasW.SandholmandSubhashSuri.Improvedalgorithmsforoptimalwinnerdeterminationincombinatorialauctionsandgeneralizations. In Proceedingsofthe SeventeenthNationalConferenceonArticialIntelligence ,pages 90{97,2000. [ SandholmandSuri,2001a ] TuomasW.SandholmandSubhashSuri.Marketclearability.In Proceedingsofthe SeventeenthInternationalJointConferenceonArticial Intelligence ,pages1145{1151,2001. [ SandholmandSuri,2001b ] TuomasW.SandholmandSubhashSuri.Sideconstraints andnon-priceattributesinmarkets.In ProceedingsoftheInternati onalJointConferenceonArticialIntelligece,WorkshoponDistributedConstraintReasoning ,2001. [ SandholmandSuri,2003 ] TuomasSandholmandSubhashSuri. bob :Improvedwinner determinationincombinatorialauctionsandgeneralizations. ArticialIntelligence 145:33{58,2003. [ Sandholm etal. ,2001a ] TuomasW.Sandholm,SubhashSuri,AndrewGilpin,andDavid Levine. cabob :Afastoptimalalgorithmforcombinatorialauctions.In Proceedingsof theSeventeenthInternationalJointConferenceonArticialIntelligence ,pages1102{ 1108,2001. [ Sandholm etal. ,2001b ] TuomasW.Sandholm,SubhashSuri,AndrewGilpin,andDavid Levine.Winnerdeterminationincombinatorialauctiongeneralizations.In Proceedings oftheInternationalConferenceonAutonomousAgents,WorkshoponAgent-Based Approachesto b2b ,pages35{41,2001. [ Sandholm,1999 ] TuomasW.Sandholm.Analgorithmforoptimalwinnerdetermination incombinatorialauctions.In ProceedingsoftheSixteenthInternati onalJointConferenceonArticialIntelligence ,volume1,pages542{547,1999. [ Sandholm,2000a ] TuomasW.Sandholm.Approachestowinnerdeterminationincombinatorialauctions. DecisionSupportSystems ,28(1{2):165{176,2000. [ Sandholm,2000b ] TuomasW.Sandholm.eMediator:Anextgenerationelectroniccommerceserver.In ProceedingsoftheFourthInternati onalConferenceonAutonomous Agents ,pages341{348,2000. [ Sandholm,2002 ] TuomasSandholm.Algorithmforoptimalwinnerdeterminationin combinatorialauctions. ArticialIntelligence ,135:1{54,2002. 107

PAGE 116

[ SuzukiandYokoo,2002 ] KoutarouSuzukiandMakotoYokoo.Securecombinatorial auctionsbydynamicprogrammingwithpolynomialsecretsharing.In Proceedingsof theSixthInternationalFinancialCryptographyConference ,2002. [ Tennenholtz,2002 ] MosheTennenholtz.Tractablecombinatorialauctionsandbmatching. ArticialIntelligence ,140:231{243,2002. [ TesauroandDas,2001 ] GeraldTesauroandRajarshiDas.High-performancebidding agentsforthecontinuousdoubleauction.In ProceedingsoftheThird acm Conference onElectronicCommerce ,pages206{209,2001. [ Tewari etal. ,2003 ] GauravTewari,JimYoull,andPattieMaes.Personalizedlocationbasedbrokeringusinganagent-basedintermediaryarchitecture. DecisionSupportSystems ,34:127{137,2003. [ Trenton,1964 ] RudolfW.Trenton. BasicEconomics .MeredithPublishingCompany, NewYork,NY,1964. [ Turban,1997 ] EfraimTurban.AuctionsandbiddingontheInternet:Anassessment. InternationalJournalofElectronicMarkets ,7(4):7{11,1997. [ VetterandPitsch,1999 ] MichaelVetterandStefanPitsch.Anagent-basedmarketsupportingmultipleauctionprotocols.In ProceedingsoftheWorkshoponA gentsfor ElectronicCommerceandManagingtheInternet-EnabledSupplyChain ,1999. [ WeinhardtandGomber,1999 ] ChristofWeinhardtandPeterGomber.Agent-mediated o-exchangetrading.In Proceedingsofthe 32ndAnnualHawaiiInternationalConferenceonSystemSciences ,pages1{6,1999. [ WellmanandWurman,1998 ] MichaelP.WellmanandPeterR.Wurman.Realtime issuesforInternetauctions.In ProceedingsoftheFirst ieee WorkshoponDependable andReal-TimeE-CommerceSystems ,1998. [ Wellman etal. ,2001 ] MichaelP.Wellman,WilliamE.Walsh,PeterR.Wurman,and JereyK.MacKie-Mason.Auctionprotocolsfordecentralizedscheduling. Gamesand EconomicBehavior ,35:271{303,2001. [ Wellman,1993 ] MichaelP.Wellman.Amarket-orientedprogrammingenvironmentand itsapplicationtodistributedmulticommodityowproblems. JournalofArticial IntelligenceResearch ,1:1{23,1993. [ Wrigley,1997 ] CliveD.Wrigley.Designcriteriaforelectronicmarketservers. InternationalJournalofElectronicMarkets ,7(4):12{16,1997. [ WurmanandWellman,1999 ] PeterR.WurmanandMichaelP.Wellman.ControlarchitectureforaexibleInternetauctionserver.In ProceedingsoftheFirst iac Workshop onInternetBasedNegotiationTechnologies ,1999. 108

PAGE 117

[ Wurman etal. ,1998a ] PeterR.Wurman,WilliamE.Walsh,andMichaelP.Wellman. Flexibledoubleauctionsforelectroniccommerce:Theoryandimplementation. DecisionSupportSystems ,24(1):17{27,1998. [ Wurman etal. ,1998b ] PeterR.Wurman,MichaelP.Wellman,andWilliamE.Walsh. TheMichiganInternetAuctionBot:Acongurableauctionserverforhumanandsoftwareagents.In ProceedingsoftheSecondInternati onalConferenceonAutonomous Agents ,pages301{308,1998. [ Wurman etal. ,2001 ] PeterR.Wurman,MichaelP.Wellman,andWilliamE.Walsh.A parametrizationoftheauctiondesignspace. GamesandEconomicBehavior ,35(1{ 2):304{338,2001. [ Wurman,2001 ] PeterR.Wurman.Towardexibletradingagents.In Proceedingsof the aaai SpringSymposiumonGameTheoreticandDecisionTheoreticAgents ,pages 134{140,2001. [ Xia etal. ,2003 ] MuXia,GaryJ.Koehler,andAndrewB.Whinston.Pricingcombinatorialauctions. EuropeanJournalofOperationalResearch ,2003.Toappear. [ YggeandAkkermans,1997 ] FredrikYggeandHansAkkermans.Dualityinmulticommoditymarketcomputations.In ProceedingsoftheThirdAustralianWorkshop onDistributedArticialIntelligence ,pages65{78,1997. [ Yokoo etal. ,2001a ] MakotoYokoo,YukoSakurai,andShigeoMatsubara.Bundledesign inrobustcombinatorialauctionprotocolagainstfalse-namebids.In Proceedingsofthe SeventeenthInternationalJointConferenceonArticialIntelligence ,pages1095{1101, 2001. [ Yokoo etal. ,2001b ] MakotoYokoo,YukoSakurai,andShigeoMatsubara.Robustcombinatorialauctionprotocolagainstfalse-namebids. ArticialIntelligence ,130(2):167{ 181,2001. [ ZurelandNisan,2001 ] EdoZurelandNoamNisan.Anecientapproximateallocation algorithmforcombinatorialauctions.In ProceedingsoftheThird acm Conferenceon ElectronicCommerce ,pages125{136,2001. 109


xml version 1.0 encoding UTF-8 standalone no
record xmlns http:www.loc.govMARC21slim xmlns:xsi http:www.w3.org2001XMLSchema-instance xsi:schemaLocation http:www.loc.govstandardsmarcxmlschemaMARC21slim.xsd
leader nam Ka
controlfield tag 001 001437716
003 fts
006 m||||e|||d||||||||
007 cr mnu|||uuuuu
008 031105s2003 flua sbm s000|0 eng d
datafield ind1 8 ind2 024
subfield code a E14-SFE0000127
035
(OCoLC)53404382
9
AJM1697
b SE
SFE0000127
040
FHM
c FHM
090
TK7885
1 100
Hershberger, John,
d 1980-
0 245
Exchanges for complex commodities
h [electronic resource] :
toward a general-purpose system for on-line trading /
by John Hershberger.
260
[Tampa, Fla.] :
University of South Florida,
2003.
502
Thesis (M.S.C.S.)--University of South Florida, 2003.
504
Includes bibliographical references.
516
Text (Electronic thesis) in PDF format.
538
System requirements: World Wide Web browser and PDF reader.
Mode of access: World Wide Web.
500
Title from PDF of title page.
Document formatted into pages; contains 117 pages.
520
ABSTRACT: The modern economy includes a variety of markets, and the Internet has opened opportunities for efficient on-line trading. Researchers have developed algorithms for various auctions, which have become a popular means for on-line sales. They have also designed algorithms for exchange-based markets, similar to the traditional stock exchange, which support fast-paced trading of rigidly standardized securities. In contrast, there has been little work on exchanges for complex nonstandard commodities, such as used cars or collectible stamps. We propose a formal model for trading of complex goods, and present an automated exchange for a limited version of this model. The exchange allows the traders to describe commodities by multiple attributes; for example, a car buyer may specify a model, options, color, and other desirable properties. Furthermore, a trader may enter constraints on the acceptable items rather than a specific item; for example, a buyer may look for any car that satisfies certain constraints, rather than for one particular vehicle. We present an extensive empirical evaluation of the implemented exchange, using artificial data, and then give results for two real-world markets, used cars and commercial paper. The experiments show that the system supports markets with up to 260,000 orders, and generates one hundred to one thousand trades per second.
590
Adviser: Fink, Eugene
653
multi-attribute commodities.
complex auctions.
e-commerce.
electronic trading.
exchange markets.
690
Dissertations, Academic
z USF
x Computer Science
Masters.
773
t USF Electronic Theses and Dissertations.
4 856
u http://digital.lib.usf.edu/?e14.127