Menu

help with CBNet::Create

Help
zzJanezz
2004-10-06
2013-04-16
  • zzJanezz

    zzJanezz - 2004-10-06

    Can anyone enlighten me , what is wrong with the following CBNet:Create ? Thank you very much .

    // ===========================//
    PNL_USING

    int main()
    {
       const int nnodes = 101;
       const int numberOfNodeTypes = 101;
       
        int i;
       
        CGraph *pGraph = CGraph::Create(0, NULL, NULL, NULL);
        pGraph->AddNodes(101);
        pGraph->AddEdge(0,100,1);
        pGraph->AddEdge(5,19,1);
        pGraph->AddEdge(5,47,1);
        pGraph->AddEdge(7,31,1);
        pGraph->AddEdge(7,52,1);
        pGraph->AddEdge(7,97,1);
        pGraph->AddEdge(7,100,1);
        pGraph->AddEdge(8,84,1);
        pGraph->AddEdge(15,100,1);
        pGraph->AddEdge(16,80,1);
        pGraph->AddEdge(19,45,1);
        pGraph->AddEdge(19,68,1);
        pGraph->AddEdge(19,80,1);
        pGraph->AddEdge(19,99,1);
        pGraph->AddEdge(21,7,1);
        pGraph->AddEdge(21,100,1);
        pGraph->AddEdge(24,99,1);
        pGraph->AddEdge(26,63,1);
        pGraph->AddEdge(26,83,1);
        pGraph->AddEdge(27,66,1);
        pGraph->AddEdge(28,34,1);
    pGraph->AddEdge(28,84,1);
    pGraph->AddEdge(29,12,1);
    pGraph->AddEdge(29,18,1);
    pGraph->AddEdge(29,27,1);
    pGraph->AddEdge(29,45,1);
    pGraph->AddEdge(29,47,1);
    pGraph->AddEdge(29,66,1);
    pGraph->AddEdge(29,95,1);
    pGraph->AddEdge(29,99,1);
    pGraph->AddEdge(29,100,1);
    pGraph->AddEdge(31,0,1);
    pGraph->AddEdge(31,38,1);
    pGraph->AddEdge(31,41,1);
    pGraph->AddEdge(31,100,1);
    pGraph->AddEdge(33,72,1);
    pGraph->AddEdge(36,5,1);
    pGraph->AddEdge(36,53,1);
    pGraph->AddEdge(36,78,1);
    pGraph->AddEdge(36,88,1);
    pGraph->AddEdge(38,100,1);
    pGraph->AddEdge(39,2,1);
    pGraph->AddEdge(39,55,1);
    pGraph->AddEdge(40,99,1);
    pGraph->AddEdge(41,71,1);
    pGraph->AddEdge(41,100,1);
    pGraph->AddEdge(43,39,1);
    pGraph->AddEdge(43,56,1);
    pGraph->AddEdge(44,28,1);
    pGraph->AddEdge(51,23,1);
    pGraph->AddEdge(52,89,1);
    pGraph->AddEdge(52,100,1);
    pGraph->AddEdge(56,100,1);
    pGraph->AddEdge(59,17,1);
    pGraph->AddEdge(59,23,1);
    pGraph->AddEdge(59,28,1);
    pGraph->AddEdge(60,12,1);
    pGraph->AddEdge(60,47,1);
    pGraph->AddEdge(61,34,1);
    pGraph->AddEdge(69,21,1);
    pGraph->AddEdge(71,37,1);
    pGraph->AddEdge(71,100,1);
    pGraph->AddEdge(75,12,1);
    pGraph->AddEdge(75,37,1);
    pGraph->AddEdge(75,47,1);
    pGraph->AddEdge(75,66,1);
    pGraph->AddEdge(76,12,1);
    pGraph->AddEdge(79,12,1);
    pGraph->AddEdge(79,27,1);
    pGraph->AddEdge(82,18,1);
    pGraph->AddEdge(82,53,1);
    pGraph->AddEdge(82,99,1);
    pGraph->AddEdge(82,100,1);
    pGraph->AddEdge(85,66,1);
    pGraph->AddEdge(89,15,1);
    pGraph->AddEdge(89,43,1);
    pGraph->AddEdge(89,100,1);
    pGraph->AddEdge(94,72,1);
    pGraph->AddEdge(95,99,1);
    pGraph->AddEdge(95,100,1);
    pGraph->AddEdge(96,17,1);
    pGraph->AddEdge(97,100,1);
    pGraph->AddEdge(98,18,1);

        CNodeType *nodeTypes = new CNodeType [101];

          for (i=0; i<nnodes;i++)
          { nodeTypes[i].SetType(1,2);
          }
         
       
        int *nodeAssociation = new int[nnodes];
       
        for ( i = 0; i < nnodes; i++ )
        {
        nodeAssociation[i] = i;
        }
        std::cout<<"1"<<std::endl;
        CBNet *pBNet = CBNet::Create( nnodes, numberOfNodeTypes, nodeTypes,
        nodeAssociation, pGraph );

    }

     
    • Olga N. Abrosimova

      You graph is not topologically sorted. For example, node 21 have child with number 7.

       

Log in to post a comment.