Changeset 1238 for cpp/frams


Ignore:
Timestamp:
05/08/23 02:09:13 (20 months ago)
Author:
Maciej Komosinski
Message:

Cosmetic

Location:
cpp/frams/genetics
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • cpp/frams/genetics/f4/f4_conv.h

    r1236 r1238  
    55// Copyright (C) 1999,2000  Adam Rotaru-Varga (adam_rotaru@yahoo.com), GNU LGPL
    66// Copyright (C) since 2001 Maciej Komosinski
    7 // 2018, Grzegorz Latosinski, added support for new API for neuron types and development checkpoints
     7// 2018, Grzegorz Latosinski, added development checkpoints and support for new API for neuron types
    88
    99#ifndef _F4_CONV_H_
  • cpp/frams/genetics/f4/f4_oper.cpp

    r1236 r1238  
    1818// TODO add support for properties of (any class of) neurons - not just sigmoid/force/intertia (':' syntax) for N
    1919// TODO add mapping genotype character ranges for neural [connections]
    20 // TODO change the default branching plane (to match f1) so they do not grow perfectly vertical (cheating vertpos) so easily? (so they require Rr or other modifiers) - verify if and how f4 is different from f1
    21 // TODO for some genotypes, #defining/undefining F4_SIMPLIFY_MODIFIERS produces significantly different phenotypes (e.g. length of some Joint changes from 1.25 to 1.499, coordinates of Parts change, friction of some part changes from 1.28 to 0.32). Comparing f4_Node trees, the simplification works as intended, there are no huge changes apart from removing contradicting modifiers like 'R' and 'r' or 'L' and 'l', and dispersing the modifiers (changed order). There is no reason for such a significant influence of this. A hypothesis is that something may be wrong with calculating the influence of individual modifiers, e.g. some strong nonlinearity is introduced where it should not be, or some compensation between modifiers that should not influence each other (like L and R), or some modifier f4_Nodes are skipped/ignored when applying? Investigate. Example genotype: /*4*/,i<qlM,C<X>N:*#1>>,r<MRF<Xcm>N:Gpart>#5#1#2MLL#1>#1>>>>#5ML#2L#1>>>Lf,r<#1>rM<CqmLlCfqiFLqXFfl><F,<<XI>iN:|[-1:4.346]><XF><<XrRQ>N:G#3>>QiXFMR>fXM#2MfcR>R#3>>X
     20// TODO for some genotypes, #defining/undefining F4_SIMPLIFY_MODIFIERS produces significantly different phenotypes (e.g. length of some Joint changes from 1.25 to 1.499, coordinates of Parts change, friction of some part changes from 1.28 to 0.32). Comparing f4_Node trees, the simplification works as intended, there are no huge changes apart from removing contradicting modifiers like 'R' and 'r' or 'L' and 'l', and dispersing the modifiers (changed order). There is no reason for such a significant influence of this. A hypothesis is that something may be wrong with calculating the influence of individual modifiers, e.g. some strong nonlinearity is introduced where it should not be, or some compensation between modifiers that should not influence each other (like L and R), or some modifier f4_Nodes are skipped/ignored when applying? Investigate. Example genotype that displays this issue: /*4*/,i<qlM,C<X>N:*#1>>,r<MRF<Xcm>N:Gpart>#5#1#2MLL#1>#1>>>>#5ML#2L#1>>>Lf,r<#1>rM<CqmLlCfqiFLqXFfl><F,<<XI>iN:|[-1:4.346]><XF><<XrRQ>N:G#3>>QiXFMR>fXM#2MfcR>R#3>>X
     21// TODO The f0 genotypes for /*4*/<<RX>X>X> and RX(X,X) are identical, but if you replace R with Q or C, there are small differences - check why and perhaps unify?
    2222
    2323
  • cpp/frams/genetics/genman.cpp

    r988 r1238  
    476476{
    477477        char buf[50];
    478         int len = strlen(g);
     478        int len = int(strlen(g));
    479479        int chars = 0, lines = 0;
    480480        bool shortened = false;
    481481        uint32_t *styletab = new uint32_t[len];
    482482        getFullStyle(g, styletab);
    483         string html = "\n<div style=\"background:white;padding:0.2em;font-family:arial,helvetica,sans-serif;font-size:90%\">";
     483        string html = "<style>"
     484                "span.geno{background:white; padding:0.2em; font-family:arial,helvetica,sans-serif}"
     485                "</style>\n\n";
     486        html += "<span class=\"geno\">";
    484487        uint32_t prevstyle, prevcolor, style = 0, color = 0;
    485488        for (int i = 0; i < len; i++)
     
    516519        html += "</u></b></i></font>";
    517520        if (shortened) html += " [etc...]";
    518         html += "</div>\n";
     521        html += "</span>\n";
    519522        return html;
    520523}
     
    533536{
    534537        char buf[50];
    535         int len = strlen(g);
     538        int len = int(strlen(g));
    536539        int chars = 0, lines = 0; //currently not used
    537540        uint32_t *styletab = new uint32_t[len];
Note: See TracChangeset for help on using the changeset viewer.