10.7 The JSON Format¶
MOSEK provides the possibility to read/write problems in valid JSON format. The official JSON website http://www.json.org provides plenty of information along with the format definition.
10.7.1 jtask format¶
It stores a problem instance. The jtask format contains the same information as a native MOSEK task task format, that is a very close representation of the internal data storage in the task object.
You can read and write jtask files specifying the extension .jtask. When the parameter MSK_IPAR_WRITE_JSON_INDENTATION
is set the jtask file will be indented to slightly improve readability.
10.7.2 jsol format¶
It stores a problem solution. The jsol format contains all solutions and information items.
10.7.3 A jtask example¶
{
"$schema":"http://mosek.com/json/schema#",
"Task/name":"Markowitz portfolio with market impact",
"Task/INFO":{"numvar":7,"numcon":1,"numcone":0,"numbarvar":0,"numanz":6,"numsymmat":0,"numafe":13,"numfnz":12,"numacc":4,"numdjc":0,"numdom":3,"mosekver":[10,0,0,3]},
"Task/data":{
"var":{
"name":["1.0","x[0]","x[1]","x[2]","t[0]","t[1]","t[2]"],
"bk":["fx","lo","lo","lo","fr","fr","fr"],
"bl":[1,0.0,0.0,0.0,-1e+30,-1e+30,-1e+30],
"bu":[1,1e+30,1e+30,1e+30,1e+30,1e+30,1e+30],
"type":["cont","cont","cont","cont","cont","cont","cont"]
},
"con":{
"name":["budget[]"],
"bk":["fx"],
"bl":[1],
"bu":[1]
},
"objective":{
"sense":"max",
"name":"obj",
"c":{
"subj":[1,2,3],
"val":[0.1073,0.0737,0.0627]
},
"cfix":0.0
},
"A":{
"subi":[0,0,0,0,0,0],
"subj":[1,2,3,4,5,6],
"val":[1,1,1,0.01,0.01,0.01]
},
"AFE":{
"numafe":13,
"F":{
"subi":[1,1,1,2,2,3,4,6,7,9,10,12],
"subj":[1,2,3,2,3,3,4,1,5,2,6,3],
"val":[0.166673333200005,0.0232190712557243,0.0012599496030238,0.102863378954911,-0.00222873156550421,0.0338148677744977,1,1,1,1,1,1]
},
"g":{
"subi":[0,5,8,11],
"val":[0.035,1,1,1]
}
},
"domains":{
"type":[["r",0],
["quad",4],
["ppow",3,[0.6666666666666666,0.33333333333333337]]]
},
"ACC":{
"name":["risk[]","tz[0]","tz[1]","tz[2]"],
"domain":[1,2,2,2],
"afeidx":[[0,1,2,3],
[4,5,6],
[7,8,9],
[10,11,12]]
}
},
"Task/solutions":{
"interior":{
"prosta":"unknown",
"solsta":"unknown",
"skx":["fix","supbas","supbas","supbas","supbas","supbas","supbas"],
"skc":["fix"],
"xx":[1,0.10331580274282556,0.11673185566457132,0.7724326587076371,0.033208600335718846,0.03988270849469869,0.6788769587942524],
"xc":[1],
"slx":[0.0,-5.585840467641202e-10,-8.945844685006369e-10,-7.815248786428623e-11,0.0,0.0,0.0],
"sux":[0.0,0.0,0.0,0.0,0.0,0.0,0.0],
"snx":[0.0,0.0,0.0,0.0,0.0,0.0,0.0],
"slc":[0.0],
"suc":[-0.046725814048521205],
"y":[0.046725814048521205],
"doty":[[-0.6062603164682975,0.3620818321879349,0.17817754087278295,0.4524390346223723],
[-4.6725842015519993e-4,-7.708781121860897e-6,2.24800624747081e-4],
[-4.6725842015519993e-4,-9.268264309496919e-6,2.390390600079771e-4],
[-4.6725842015519993e-4,-1.5854982159992136e-4,6.159249331148646e-4]]
}
},
"Task/parameters":{
"iparam":{
"LICENSE_DEBUG":"ON",
"MIO_SEED":422
},
"dparam":{
"MIO_MAX_TIME":100
},
"sparam":{
}
}
}