Genius官网 https://ii.tudelft.nl/genius/
基于Java1.8开发
下载解压后,双击genius-***.jar打开程序
高分屏需要设置java.exe和javaw.exe的dpi
1基本理论
1.1 基本单词
domin(域) 保存谈判的所有信息,在domin中进行谈判
domin 中可添加 issue
issue (项目) 可理解为商品/问题, 保存有多条 value(价值)
bid(出价) 每个bid保存一组value
preference profile (偏好设定) 每个agent都有偏好,每条issue有[0,1]比例的偏好,对每个value有一个evaluation value值.(只能用鼠标调比例,很恶心.确定一个比例后点选后面的box进行锁定)
UtilitySpace() 直译效用空间(没法翻译),就是上面的偏好比例
Reservation Value(保留值) 实际值,谈判底线,低于Reservation不会accept
time(谈判时间) 时间线t=[0,1] 0表示开始,1表示停止,0.99/0.9989等时间"可能"是最后一个bid.谈判还可以以按照round(轮次)进行.
1.2 negotiation 谈判
三种结果:
ACCEPT (达成谈判)
OFFER (拒绝bid,提出新bid)
EndNegotiation (谈判破裂,walk away)
基本情况:
自己有独有的preference,期望获得最高的eval
opponent(对手)偏好未知,只能通过算法分析对方的偏好(此项目的关键之一),以此生成usermodel,对方可以隐藏偏好
Pareto Optimality (帕累托最优)从一种分配状态到另一种状态的变化中,在没有使任何人境况变坏的前提下,使得至少一个人变得更好.(图示的右上角所有边界点)
2 协议
Stacked Alternating Offers Protocol (SAOP)堆叠式交替报价协议(默认)
提出bid->ACCEPT/OFFER/EndNegotiation
(其他协议暂时无用)
3 创建
Domins处右键new domin.add issue, save change
对应的domin处右键 new preference profile.save change
4 运行
4.1 start->Negotiation/Session 单次
选择protocol, Domain, strategy(写好的策略), preference profile(偏好文件)
deadline 结束方式:round/time
4.2 start->Tournament
一次同时进行多个比赛
4.3 命令行运行
java -cp genius-9.1.11.jar genius.cli.Runner multilateraltournament.xml
multilateraltournament.xml文件编写配置