The graph is defined in the previous message ! ;-)

sage: h=Graph(":I`ASWCaG`WaJC{afP")

You can obtain a string describing a graph by using the
Graph.graph6_string method. Pretty useful !

And this ticket you mentionned is there : 
http://trac.sagemath.org/sage_trac/ticket/6660
;-)

Nathann

This weird thing is a
On Jul 30, 3:55 pm, Robert Bradshaw <rober...@math.washington.edu>
wrote:
> On Jul 30, 2009, at 5:41 AM, Nathann Cohen wrote:
>
>
>
>
>
> > Hello !!
>
> > Trying to write a Linear Program version of the coloring problem, I
> > found a graph ( pure luck, it was a RandomGNP ) for which the
> > functions chromatic_number() and coloring() return a wrong value.
>
> > sage: h=Graph(":I`ASWCaG`WaJC{afP")
> > sage: h.chromatic_number()
> > 4
> > sage: h.coloring()
> > [[6, 8], [9], [0, 4, 7, 3], [1, 2, 5]]
>
> > with my version of the coloring() function I found a coloring using
> > only 3 classes. As a proof, you can type which checks that each class
> > is actually an independent set.
>
> > for c in [[3, 9, 1], [9, 4, 0, 3], [3, 8, 5]]:
> >       print h.subgraph(c).connected_components_number()==len(c)
>
> > This means that there is an error in the two functions named, but
> > which means the all_graph_colorings() function, as all the others use
> > it. I do not know how to fix this function, even though it may be a
> > minor mistake in the code.
>
> Do you have the "bad" graph somewhere? We should file a ticket for  
> this. As for the rest of the email, I'm not really qualified to  
> answer, but it sounds like something that would be good to get in.
>
> > The thing is that the patches and SPKG for LP features in SAGE are
> > currently in review ( cfhttp://trac.sagemath.org/sage_trac/ticket/
> > 6502
> > ), and that I have written several graph functions that I will post on
> > TRAC as soon as LP has become part of Sage, all of them using LP.
> > Among them is a LP version of the coloring function that I wrote to
> > compare its performances against the current one. I tested it with the
> > following code :
>
> > for i in range(20):
> >     g=graphs.RandomGNP(10,.5)
> >     print "Sage's coloring function"
> >     timeit("g.coloring()",number=1)
> >     print "LP formulation"
> >     timeit("coloring(g)",number=1)
>
> > which outputs :
>
> > Sage's coloring function
> > 1 loops, best of 3: 6.31 s per loop
> > LP formulation
> > 1 loops, best of 3: 402 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 33.8 s per loop
> > LP formulation
> > 1 loops, best of 3: 115 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 6.85 s per loop
> > LP formulation
> > 1 loops, best of 3: 38.9 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 25.5 s per loop
> > LP formulation
> > 1 loops, best of 3: 1.33 s per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 27.8 s per loop
> > LP formulation
> > 1 loops, best of 3: 52.3 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 1.08 s per loop
> > LP formulation
> > 1 loops, best of 3: 46.6 ms per loop
>
> > Showing that the LP version is  faster in this case. However, ( please
> > excuse my english if necessary ), the LP has a overhead time which is
> > apparent when coloring smaller graphs. When I change the probability
> > from 0.5 ( previously ) to 0.3, here are the results :
>
> > Sage's coloring function
> > 1 loops, best of 3: 1.21 ms per loop
> > LP formulation
> > 1 loops, best of 3: 5.48 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 1.45 ms per loop
> > LP formulation
> > 1 loops, best of 3: 12.2 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 1.75 ms per loop
> > LP formulation
> > 1 loops, best of 3: 4.85 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 1.14 ms per loop
> > LP formulation
> > 1 loops, best of 3: 4.83 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 2.1 ms per loop
> > LP formulation
> > 1 loops, best of 3: 3.55 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 1.25 ms per loop
> > LP formulation
> > 1 loops, best of 3: 6.32 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 2.15 ms per loop
> > LP formulation
> > 1 loops, best of 3: 10.7 ms per loop
>
> > Sage's coloring function
> > 1 loops, best of 3: 2.07 ms per loop
> > LP formulation
> > 1 loops, best of 3: 4.13 ms per loop
>
> > In the end, if the current coloring() function can be fixed, it may be
> > interesting to keep it for small graphs even if the LP version is
> > available. Besides, I do not know yet how to enumerate in a LP all the
> > solutions of a problem, and so I cannot for the moment say that it
> > could be possible to replace functions like all_graph_colorings() by a
> > LP formulation. This may be a good reason to spend some time on this
> > function if the timeit() on small instances was not so convincing.
>
> > Nathann
>
> > P.S. : Trac ticket ->http://trac.sagemath.org/sage_trac/ticket/6660
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to