Re: Does anyone have a backup of Rednaxela's updated KD tree?
Gustaf Andersson <[email protected]> Thu, 9 Sep 2021 23:33:29 -0700 (PDT)
| Newsgroups | gmane.comp.java.robocode |
|---|---|
| Message-ID | <[email protected]> |
------=_Part_2264_855486063.1631255609943 Content-Type: multipart/alternative; boundary="----=_Part_2265_2121059790.1631255609943" ------=_Part_2265_2121059790.1631255609943 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi, Thank you for the quick response and help! Best, Gustaf fredag 10 september 2021 kl. 00:03:26 UTC+2 skrev Rednaxela: > Hi Gustaf, > > Back in 2010 I said the same modified zlib license I used for my 2nd gen= =20 > tree works ( see here:=20 > https://robowiki.net/wiki/User_talk:Rednaxela/kD-Tree#3rd_gen_tree_licenc= e=20 > ) and I stand by that, but never got around to adding the notice to the= =20 > code. Just added the notices in the gitlab repo now. That license does=20 > allow commercial use. > > Simplest way to implement saving/loading would be to add "implements=20 > Serializable" to KdNode and use Java serialization, though that wouldn't = be=20 > the most efficient of course. Plenty of other ways to handle saving/loade= d=20 > of course. I personally don't have plans to work on adding such myself=20 > though. Could also be an argument that it's better to not save the tree= =20 > itself, and instead just save the points that went into making the tree.= =20 > This tree was designed for adding points one by one at runtime to have lo= w=20 > overhead, but if you're loading a bunch of existing points at once you ca= n=20 > make a much better balanced tree. If one wanted to adapt this code to mak= e=20 > a better tree from a bulk list of loaded points, the simplest route would= =20 > likely involve modifying KdNode to allow larger nodes to be temporarily= =20 > instantiated, and proceed to run the splitting until getting to nodes tha= t=20 > fit the normal bucket size settings. > > Best Regards, > Alex > > On Thu, Sep 9, 2021 at 1:59 PM Gustaf Andersson <[email protected]>= =20 > wrote: > >> Hi, >> >> Is there any license associated with the 3rd gen kd-tree? I can't seem t= o=20 >> find one. Is it available for commercial use?=20 >> >> It would be useful to save/load the tree to/from a file, would that be= =20 >> possible to implement?=20 >> >> Thanks! >> >> Best, >> Gustaf >> >> s=C3=B6ndag 13 juni 2021 kl. 14:44:38 UTC+2 skrev Rednaxela: >> >>> Hi all! >>> >>> Indeed seems those links are down. Thanks to fnl for forwarding this=20 >>> along to me. >>> >>> The version from Gaussian's source there is just the "2nd gen" version= =20 >>> that is the same version as is directly pasted onto the Robowiki page. = The=20 >>> newer "3rd gen" one was the one behind the broken link. >>> >>> I went into my old backups, found the Mercurial repo, converted it to= =20 >>> git, and re-hosted it: >>> >>> https://gitlab.com/agschultz/robocode-knn-benchmark/-/tree/master/ags/u= tils/dataStructures/trees/thirdGenKD >>> >>> Also updated the Robowiki page accordingly. >>> >>> Best Regards, >>> Rednaxela >>> On Friday, June 11, 2021 at 10:51:33 AM UTC-7 fnl wrote: >>> >>>> You are right that the links are broken :\ >>>> >>>> I found this source file from Rednaxela for a KdTree: >>>> >>>> https://valelab4.ucsf.edu/svn/micromanager2/trunk/plugins/Gaussian/sou= rce/ags/utils/KdTree.java >>>> >>>> I hope this helps? >>>> >>>> fredag den 11. juni 2021 kl. 19.43.24 UTC+2 skrev Matthew Gomes: >>>> >>>>> All of the links on the RoboWiki seem to be broken, and only the code= =20 >>>>> for an older version which does not include the nearest-neighbor iter= ator. >>>>> >>>>> Thanks! >>>>> >>>> --=20 >> You received this message because you are subscribed to the Google Group= s=20 >> "Robocode" group. >> To unsubscribe from this group and stop receiving emails from it, send a= n=20 >> email to [email protected]. >> To view this discussion on the web visit=20 >> https://groups.google.com/d/msgid/robocode/19cace31-8591-4889-a3e2-e9f77= 5fb9fb2n%40googlegroups.com=20 >> <https://groups.google.com/d/msgid/robocode/19cace31-8591-4889-a3e2-e9f7= 75fb9fb2n%40googlegroups.com?utm_medium=3Demail&utm_source=3Dfooter> >> . >> > --=20 You received this message because you are subscribed to the Google Groups "= Robocode" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/= robocode/9513f944-85d4-4393-ab77-75d61514ab59n%40googlegroups.com. ------=_Part_2265_2121059790.1631255609943 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi,<div><br></div><div>Thank you for the quick response and help!<br><br></= div><div><br></div><div>Best,</div><div>Gustaf</div><div class=3D"gmail_quo= te"><div dir=3D"auto" class=3D"gmail_attr">fredag 10 september 2021 kl. 00:= 03:26 UTC+2 skrev Rednaxela:<br/></div><blockquote class=3D"gmail_quote" st= yle=3D"margin: 0 0 0 0.8ex; border-left: 1px solid rgb(204, 204, 204); padd= ing-left: 1ex;"><div dir=3D"ltr">Hi Gustaf,<div><br></div><div>Back in 2010= I said the same modified zlib license I used for my 2nd gen tree works ( s= ee here: <a href=3D"https://robowiki.net/wiki/User_talk:Rednaxela/kD-Tree#3= rd_gen_tree_licence" target=3D"_blank" rel=3D"nofollow" data-saferedirectur= l=3D"https://www.google.com/url?hl=3Dsv&q=3Dhttps://robowiki.net/wiki/U= ser_talk:Rednaxela/kD-Tree%233rd_gen_tree_licence&source=3Dgmail&us= t=3D1631340553987000&usg=3DAFQjCNFCTnybSmHR8K7YhioiO6W6X3du8A">https://= robowiki.net/wiki/User_talk:Rednaxela/kD-Tree#3rd_gen_tree_licence</a> ) an= d I stand by that, but never got around to adding the notice to the code. J= ust added the notices in the gitlab repo now. That license does allow comme= rcial use.</div><div><br></div><div>Simplest way to implement saving/loadin= g would be to add "implements Serializable" to KdNode and use Jav= a serialization, though that wouldn't be the most efficient of course. = Plenty of other ways to handle saving/loaded of course. I personally don= 9;t have plans to work on adding such myself though. Could also be an argum= ent that it's better to not save the tree itself, and instead just save= the points that went into making the tree. This tree was designed for addi= ng points one by one at runtime to have low overhead, but if you're loa= ding a bunch of existing points at once you can make a much better balanced= tree. If one wanted to adapt this code to make a better tree from a bulk l= ist of loaded points, the simplest route would likely involve modifying KdN= ode to allow larger nodes to be temporarily instantiated, and proceed to ru= n the splitting until getting to nodes that fit the normal bucket size sett= ings.</div><div><br></div><div>Best Regards,</div><div>Alex</div></div><br>= <div class=3D"gmail_quote"></div><div class=3D"gmail_quote"><div dir=3D"ltr= " class=3D"gmail_attr">On Thu, Sep 9, 2021 at 1:59 PM Gustaf Andersson <= <a href data-email-masked rel=3D"nofollow">[email protected]</a>> w= rote:<br></div></div><div class=3D"gmail_quote"><blockquote class=3D"gmail_= quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,= 204);padding-left:1ex">Hi,<div><br></div><div>Is there any license associat= ed with the 3rd gen kd-tree? I can't seem to find one. Is it available = for commercial use?=C2=A0</div><div><br></div><div>It would be useful to sa= ve/load the tree to/from a file, would that be possible to implement?=C2=A0= </div><div><br></div><div>Thanks!</div><div><br></div><div>Best,</div><div>= Gustaf<br><br></div><div class=3D"gmail_quote"><div dir=3D"auto" class=3D"g= mail_attr">s=C3=B6ndag 13 juni 2021 kl. 14:44:38 UTC+2 skrev Rednaxela:<br>= </div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;b= order-left:1px solid rgb(204,204,204);padding-left:1ex"><div>Hi all!<div><b= r></div><div>Indeed seems those links are down. Thanks to fnl for forwardin= g this along to me.</div><div><br></div><div>The version from Gaussian'= s source there is just the "2nd gen" version that is the same ver= sion as is directly pasted onto the Robowiki page. The newer "3rd gen&= quot; one was the one behind the broken link.</div><div><br></div><div>I we= nt into my old backups, found the Mercurial repo, converted it to git, and = re-hosted it:</div><div><a href=3D"https://gitlab.com/agschultz/robocode-kn= n-benchmark/-/tree/master/ags/utils/dataStructures/trees/thirdGenKD" rel=3D= "nofollow" target=3D"_blank" data-saferedirecturl=3D"https://www.google.com= /url?hl=3Dsv&q=3Dhttps://gitlab.com/agschultz/robocode-knn-benchmark/-/= tree/master/ags/utils/dataStructures/trees/thirdGenKD&source=3Dgmail&am= p;ust=3D1631340553987000&usg=3DAFQjCNFyB6Vo5GF8dxJLQyTa5GfivS9AhA">http= s://gitlab.com/agschultz/robocode-knn-benchmark/-/tree/master/ags/utils/dat= aStructures/trees/thirdGenKD</a><br></div><div><br></div><div>Also updated = the Robowiki page accordingly.</div><div><br></div><div>Best Regards,</div>= <div>Rednaxela<br></div></div><div class=3D"gmail_quote"><div dir=3D"auto" = class=3D"gmail_attr">On Friday, June 11, 2021 at 10:51:33 AM UTC-7 fnl wrot= e:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0= .8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">You are right= that the links are broken :\<div><br></div><div>I found this source file f= rom Rednaxela for a KdTree:</div><div><a href=3D"https://valelab4.ucsf.edu/= svn/micromanager2/trunk/plugins/Gaussian/source/ags/utils/KdTree.java" rel= =3D"nofollow" target=3D"_blank" data-saferedirecturl=3D"https://www.google.= com/url?hl=3Dsv&q=3Dhttps://valelab4.ucsf.edu/svn/micromanager2/trunk/p= lugins/Gaussian/source/ags/utils/KdTree.java&source=3Dgmail&ust=3D1= 631340553987000&usg=3DAFQjCNFK7oO4WOrPv5eKImPzv0tAuzD_Yw">https://valel= ab4.ucsf.edu/svn/micromanager2/trunk/plugins/Gaussian/source/ags/utils/KdTr= ee.java</a><br><br>I hope this helps?</div><div><br></div><div class=3D"gma= il_quote"><div dir=3D"auto" class=3D"gmail_attr">fredag den 11. juni 2021 k= l. 19.43.24 UTC+2 skrev Matthew Gomes:<br></div><blockquote class=3D"gmail_= quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,= 204);padding-left:1ex"><div>All of the links on the RoboWiki seem to be bro= ken, and only the code for an older version which does not include the near= est-neighbor iterator.</div><div><br></div><div>Thanks!<br></div></blockquo= te></div></blockquote></div></blockquote></div> <p></p></blockquote></div><div class=3D"gmail_quote"><blockquote class=3D"g= mail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204= ,204,204);padding-left:1ex"> -- <br> You received this message because you are subscribed to the Google Groups &= quot;Robocode" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href data-email-masked rel=3D"nofollow">robocode+u...@googlegrou= ps.com</a>.<br> To view this discussion on the web visit <a href=3D"https://groups.google.c= om/d/msgid/robocode/19cace31-8591-4889-a3e2-e9f775fb9fb2n%40googlegroups.co= m?utm_medium=3Demail&utm_source=3Dfooter" target=3D"_blank" rel=3D"nofo= llow" data-saferedirecturl=3D"https://www.google.com/url?hl=3Dsv&q=3Dht= tps://groups.google.com/d/msgid/robocode/19cace31-8591-4889-a3e2-e9f775fb9f= b2n%2540googlegroups.com?utm_medium%3Demail%26utm_source%3Dfooter&sourc= e=3Dgmail&ust=3D1631340553987000&usg=3DAFQjCNFlnPi8aT4DvCvunaH6qW4v= 2RdTfw">https://groups.google.com/d/msgid/robocode/19cace31-8591-4889-a3e2-= e9f775fb9fb2n%40googlegroups.com</a>.<br> </blockquote></div> </blockquote></div> <p></p> -- <br /> You received this message because you are subscribed to the Google Groups &= quot;Robocode" group.<br /> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href=3D"mailto:[email protected]">robocode+u= [email protected]</a>.<br /> To view this discussion on the web visit <a href=3D"https://groups.google.c= om/d/msgid/robocode/9513f944-85d4-4393-ab77-75d61514ab59n%40googlegroups.co= m?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.com/d/msgid= /robocode/9513f944-85d4-4393-ab77-75d61514ab59n%40googlegroups.com</a>.<br = /> ------=_Part_2265_2121059790.1631255609943-- ------=_Part_2264_855486063.1631255609943--