{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "market_date": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" }, "prices_yuan_per_mwh": { "type": "object", "properties": { "interval_minutes": { "type": "number", "const": 15 }, "date": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" }, "values": { "minItems": 96, "maxItems": 96, "type": "array", "items": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" } } }, "required": [ "interval_minutes", "date", "values" ], "additionalProperties": false }, "quantities_mwh": { "type": "object", "properties": { "interval_minutes": { "type": "number", "const": 15 }, "date": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" }, "values": { "minItems": 96, "maxItems": 96, "type": "array", "items": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" } } }, "required": [ "interval_minutes", "date", "values" ], "additionalProperties": false }, "daily_energy_mwh": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" }, "expected_revenue_yuan": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" }, "revenue_distribution_yuan": { "type": "object", "properties": { "p10": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" }, "p50": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" }, "p90": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" } }, "required": [ "p10", "p50", "p90" ], "additionalProperties": false }, "position_bounds": { "type": "object", "properties": { "ledger_version": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }, "daily_energy_min_mwh": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" }, "daily_energy_max_mwh": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" } }, "required": [ "ledger_version", "daily_energy_min_mwh", "daily_energy_max_mwh" ], "additionalProperties": false }, "solver": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "version": { "type": "string", "minLength": 1 }, "status": { "type": "string", "enum": [ "OPTIMAL", "INFEASIBLE", "TIME_LIMIT", "ERROR" ] }, "objective_value": { "anyOf": [ { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" }, { "type": "null" } ] }, "wall_time_ms": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 } }, "required": [ "name", "version", "status", "objective_value", "wall_time_ms" ], "additionalProperties": false }, "binding_constraints": { "type": "array", "items": { "type": "string" } }, "skill_version": { "type": "string", "pattern": "^\\d+\\.\\d+\\.\\d+$" } }, "required": [ "market_date", "prices_yuan_per_mwh", "quantities_mwh", "daily_energy_mwh", "expected_revenue_yuan", "revenue_distribution_yuan", "position_bounds", "solver", "binding_constraints", "skill_version" ], "additionalProperties": false, "$id": "https://vpp-ai-platform/contracts/bid_optimization_result.json", "title": "BidOptimizationResult" }