• Best Counter Graphs

    From inversed@21:1/5 to All on Mon Aug 22 07:07:09 2022
    I was thinking about visually representing warrior relationships and came up with the idea of "best counter graph": a graph with each warrior pointing to the opponent that beats it with the highest score. Link to the images on Reddit:
    https://www.reddit.com/r/corewar/comments/wuui2l/best_counter_graphs/

    I've also included smaller versions that exclude the warriors with indegree 0 (not the best counter to any other warrior). The loops are marked in red. No graph for 94nop for now - I don't have the exact scores (yet).

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Metcalf@21:1/5 to inversed on Mon Aug 29 13:22:13 2022
    On Mon, 22 Aug 2022 07:07:09 -0700, inversed wrote:

    I was thinking about visually representing warrior relationships and
    came up with the idea of "best counter graph": a graph with each warrior pointing to the opponent that beats it with the highest score. Link to
    the images on Reddit: https://www.reddit.com/r/corewar/comments/wuui2l/best_counter_graphs/

    I've also included smaller versions that exclude the warriors with
    indegree 0 (not the best counter to any other warrior). The loops are
    marked in red. No graph for 94nop for now - I don't have the exact
    scores (yet).

    Thanks, the charts are really interesting to look through. I tried to
    print them, but I need a bigger printer!

    I wonder if 88 and 94 would result in separate trees / loops. It'd also
    be interesting to know which warriors some of the prolific best counters
    were optimized against.

    John

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Zul Nadzri@21:1/5 to inversed on Wed Aug 31 18:20:39 2022
    On Monday, 22 August 2022 at 22:07:10 UTC+8, inversed wrote:
    I was thinking about visually representing warrior relationships and came up with the idea of "best counter graph": a graph with each warrior pointing to the opponent that beats it with the highest score. Link to the images on Reddit:
    https://www.reddit.com/r/corewar/comments/wuui2l/best_counter_graphs/

    I've also included smaller versions that exclude the warriors with indegree 0 (not the best counter to any other warrior). The loops are marked in red. No graph for 94nop for now - I don't have the exact scores (yet).
    Interesting counter strategy summary. Thanks.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From inversed@21:1/5 to John Metcalf on Sat Sep 3 02:12:09 2022
    On Monday, August 29, 2022 at 4:22:14 PM UTC+3, John Metcalf wrote:
    I wonder if 88 and 94 would result in separate trees / loops.

    I'm calculating the exact 94nop scores now (1014 warriors from Koenigstuhl, ~80% completion). 88 is next, should take around a week. Before I do 88, I'd like to clarify one thing. Was the core really filled with dat $0, $0, which is illegal under 88
    rules?

    It'd also be interesting to know which warriors some of the prolific
    best counters were optimized against.

    Funny that you ask this, because you are the author of the majority of said prolific best counters for tiny! I only have two (Serval, Double Shock). I generally optimize against either the zero-diagonal Nash equilibrium or the top-X battle royale, X
    roughly in the 60 - 120 range. Which means that most of the warriors best countered by Serval and Double Shock were not in the optimization set. Which I suppose is a good thing, indicating good design rather than overfitting.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Metcalf@21:1/5 to inversed on Sun Sep 4 18:26:56 2022
    On Sat, 03 Sep 2022 02:12:09 -0700, inversed wrote:

    On Monday, August 29, 2022 at 4:22:14 PM UTC+3, John Metcalf wrote:
    I wonder if 88 and 94 would result in separate trees / loops.

    I'm calculating the exact 94nop scores now (1014 warriors from
    Koenigstuhl, ~80% completion). 88 is next, should take around a week.
    Before I do 88, I'd like to clarify one thing. Was the core really
    filled with dat $0, $0, which is illegal under 88 rules?

    Core is initialised to DAT $0, $0 which is illegal under 88 (but not
    illegal under the older 86 standard).

    It'd also be interesting to know which warriors some of the prolific
    best counters were optimized against.

    Funny that you ask this, because you are the author of the majority of
    said prolific best counters for tiny! I only have two (Serval, Double
    Shock). I generally optimize against either the zero-diagonal Nash equilibrium or the top-X battle royale, X roughly in the 60 - 120 range. Which means that most of the warriors best countered by Serval and
    Double Shock were not in the optimization set. Which I suppose is a good thing, indicating good design rather than overfitting.

    My most prolific best counters (Interlocking and Stingray) are unlikely
    to have been optimized against any they counter, apart from White Noise, Evolving Threat and Digital Swarm.

    My benchmark varies depending what I'm optimizing. I normally run a few
    tests against the Koenigstuhl top 100, then optimize against anything I consistently lose to.

    It's interesting to see how effective bestwar4.red still is, despite
    being ~20 years old.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)