Rev | Line | |
---|
[1540] | 1 | #!/usr/bin/awk -f |
---|
| 2 | #* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * |
---|
| 3 | #* * |
---|
| 4 | #* This file is part of the test engine for MIPLIB2010 * |
---|
| 5 | #* * |
---|
| 6 | #* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * |
---|
[1555] | 7 | # $Id: parse_cbc.awk,v 1.1 2010/12/09 22:22:28 bzfheinz Exp $ |
---|
[1540] | 8 | |
---|
| 9 | # set all solver specific data: |
---|
| 10 | # solver ["?"] |
---|
| 11 | # solverversion ["?"] |
---|
| 12 | # lps ["none"] |
---|
| 13 | # lpsversion ["-"] |
---|
| 14 | # bbnodes [0] |
---|
| 15 | # db [-infty] |
---|
| 16 | # pb [+infty] |
---|
| 17 | # aborted [1] |
---|
| 18 | # timeout [0] |
---|
| 19 | |
---|
| 20 | # The solver name |
---|
| 21 | BEGIN { |
---|
| 22 | solver = "CBC"; |
---|
| 23 | gap = 0; |
---|
| 24 | } |
---|
| 25 | |
---|
| 26 | # The solver version |
---|
| 27 | /^Version:/ { |
---|
| 28 | version = $2; |
---|
| 29 | } |
---|
| 30 | |
---|
| 31 | /^Revision Number:/ { |
---|
| 32 | revision = $3; |
---|
| 33 | solverversion = version "-" revision |
---|
| 34 | } |
---|
| 35 | |
---|
| 36 | # The results |
---|
| 37 | /^Result/ { |
---|
| 38 | if ($3 == "Optimal"){ |
---|
| 39 | if ($7 == "gap"){ |
---|
| 40 | gap = 1; |
---|
| 41 | }else{ |
---|
| 42 | gap = 0 |
---|
| 43 | } |
---|
| 44 | aborted = 0; |
---|
| 45 | timeout = 0; |
---|
| 46 | } |
---|
| 47 | if ($5 == "infeasible"){ |
---|
| 48 | pb = +infty; |
---|
| 49 | db = +infty; |
---|
| 50 | aborted = 0; |
---|
| 51 | timeout = 0; |
---|
| 52 | }else if ($5 == "unbounded"){ |
---|
| 53 | pb = -infty; |
---|
| 54 | db = -infty; |
---|
| 55 | aborted = 0; |
---|
| 56 | timeout = 0; |
---|
| 57 | }else if ($3 == "Stopped"){ |
---|
| 58 | if ($5 == "time"){ |
---|
| 59 | timeout = 1; |
---|
| 60 | aborted = 0; |
---|
| 61 | } |
---|
| 62 | }else if ($3 == "Difficulties"){ |
---|
| 63 | aborted = 1 |
---|
| 64 | } |
---|
| 65 | } |
---|
| 66 | |
---|
| 67 | /^Objective value:/ { |
---|
| 68 | pb = $3; |
---|
| 69 | if (!gap){ |
---|
| 70 | db = pb; |
---|
| 71 | } |
---|
| 72 | } |
---|
| 73 | |
---|
| 74 | /^Lower bound:/ { |
---|
| 75 | db = $3; |
---|
| 76 | } |
---|
| 77 | |
---|
| 78 | /^Enumerated nodes:/ { |
---|
| 79 | bbnodes = $3 |
---|
| 80 | } |
---|
| 81 | |
---|
[1555] | 82 | /errors on input/ { |
---|
| 83 | read_error = 1; |
---|
| 84 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.