<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/207" />

	<title>Real-Time Physics Simulation Forum</title>
	
	<link href="https://pybullet.org/Bullet/phpBB3/index.php" />
	<updated>2006-01-06T17:32:16+00:00</updated>

	<author><name><![CDATA[Real-Time Physics Simulation Forum]]></name></author>
	<id>https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/207</id>

		<entry>
		<author><name><![CDATA[Erwin Coumans]]></name></author>
		<updated>2006-01-06T17:32:16+00:00</updated>

		<published>2006-01-06T17:32:16+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=600#p600</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=600#p600"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=600#p600"><![CDATA[
I appreciate and respect all contributions. Therefore no post have been removed, only split. <br><br>Antonio asked to have the topic split into patent-related posts and pgs-impulse comparison posts. This is what I did. See this post:<br><a href="http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=208" class="postlink">http://www.continuousphysics.com/Bullet ... .php?t=208</a><br><br>I removed 2 lines, because they linked the two together.<br>Those lines where: <br>1) the split request of Antonio, because it had be executed<br>2) a comment from Erin Catto to Jerez that linked the two topics together, which don't make sense anymore after splitting.<br><br>Sorry for the confusion of the split, there were no intension to remove any comments.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=2">Erwin Coumans</a> — Fri Jan 06, 2006 5:32 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Julio Jerez]]></name></author>
		<updated>2006-01-05T12:59:10+00:00</updated>

		<published>2006-01-05T12:59:10+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=598#p598</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=598#p598"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=598#p598"><![CDATA[
My post of this thread had been answered to other post.<br><br>I see that some of the other post had been edited and other had been removed after I replied Leaving just my answer dangling like a complete idiot out of context. <br>This is not the first time this had happens here.<br>I cannot do that except on the very last post.<br><br>Thank you very much.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=64">Julio Jerez</a> — Thu Jan 05, 2006 12:59 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Julio Jerez]]></name></author>
		<updated>2006-01-04T23:27:33+00:00</updated>

		<published>2006-01-04T23:27:33+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=595#p595</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=595#p595"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=595#p595"><![CDATA[
<blockquote class="uncited"><div>as i said i wrote that stuff many years ago however i dont remember of throwing away the factorization. So i guess i was somehow doing the perfect ordering thing you mention whatever it may be. It would be interesting to see if ODE is discarding the factorization at some point in the direct solver. Or if we are lucky and Russ is reading this, he might tell us directly. The mathengine patent is his after all:)</div></blockquote>I do not really care for Gauss Seidle or Pivoting Lemkel/Danzig method although I do question the claims.<br><br>I thought we finish this conversation with the last post but if you insist. <br>I am more than happy to explain to you why the factorization most be throwing out when you remove a row. (I hope you understand my broken English). <br><br>Say you are adding the N active variable from the inactive set and it just happens this new active variable forces another active variable to the inactive set.<br>It just happens that the forced out variable could be anywhere in the array.<br>Since the construction of each row is an n^2 order, and you have a probability of n/2 of the variable to been anywhere on the active set. You end up with <br>n/2 rows of ( n *n ) operation for re-factorizations. <br>the only thing the incremental factorization do is that is reduces the constant in front of the 0(n4) by a significat value.<br>you can probably get a factor of 2 or 3 speed up but never one order of magnitud reduction.<br><br>And since the majority of the non-zero elements of the lower diagonal matrix are by the end of the array. The lower haft of the factorization carry almost full n * n *n  cost statistically. So yes I say with 100% of certainty Baraff implementation of dazing is a precise O(n4) average case<br>This is not a thing that is a matter of a person opinion this is an absolute fact. <br>If ODE or your implementation is not doing it that way then my apologies that is a patent able claim if it works. Or it is just wrong.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=64">Julio Jerez</a> — Wed Jan 04, 2006 11:27 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Antonio Martini]]></name></author>
		<updated>2006-01-04T21:54:48+00:00</updated>

		<published>2006-01-04T21:54:48+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=594#p594</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=594#p594"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=594#p594"><![CDATA[
<blockquote class="uncited"><div><blockquote class="uncited"><div>if in Newton you did the same or similar but nobody know about it that's not public domain knowledge i guess.</div></blockquote>Well I am solving systems that can be as high as 16000 x 16000 you think I am doing magically? The proof is there and the Newton engine has been around long before this claim.</div></blockquote>the fact that you can solve a problem of similar/equal size at the same speed doesn't invalidate the patent claim. You may be reaching similar or even better performances by using a different method not publicly available. It's like concluding for the same cause given the same observed effect. It seems logically fallacious to me.<br>So unless you published the method somewhere it may not be that easy. . However i stress this again, i am not an expert about patents and related legislation. it would be interesting to hear other people opinions.<br><blockquote class="uncited"><div>well the claim is no so, is only apply if you can sort the row in perfect order when row are to be remove the incremental factorization has to be thrown out. And you get the same o(n3) factorization. </div></blockquote>as i said i wrote that stuff many years ago however i dont remember of throwing away the factorization. So i guess i was somehow doing the perfect ordering thing you mention whatever it may be. It would be interesting to see if ODE is discarding the factorization at some point in the direct solver. Or if we are lucky and Russ is reading this, he might tell us directly. The mathengine patent is his after all:)<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=145">Antonio Martini</a> — Wed Jan 04, 2006 9:54 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Julio Jerez]]></name></author>
		<updated>2006-01-04T21:31:12+00:00</updated>

		<published>2006-01-04T21:31:12+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=593#p593</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=593#p593"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=593#p593"><![CDATA[
<blockquote class="uncited"><div>if in Newton you did the same or similar but nobody know about it that's not public domain knowledge i guess.</div></blockquote>Well I am solving systems that can be as high as 16000 x 16000 you think I am doing magically? The proof is there and the Newton engine has been around long before this claim.<br><blockquote class="uncited"><div>It looks like that you have misunderstood what im trying to say and im going to try to be clearer here. Im _not_ in favour of patents, however there is a law, if somebody applies for a patent that laws applies if we like it or not. So what im interested it's not if many other people did the same or better in their secret room given that i have no doubts about it. But im more interested to see if it possible to show that at the moment of the application there was sufficient available information (papers/code) in  order t invalidate the "invention"</div></blockquote>Then you am I agree. I just found the claim very disingenuous and I still believe it is public knowledge. <br> <blockquote class="uncited"><div>given that you seems so good at it i would advice you to do also some critical analysis of your writing style;) </div></blockquote>Well you know what they say old dogs do not learn new tricks. I am just happy I can barely communicate. this is why I do not write novels. <img class="smilies" src="https://pybullet.org/Bullet/phpBB3/images/smilies/icon_smile.gif" width="15" height="15" alt=":)" title="Smile"> <br><blockquote class="uncited"><div>wasn't in an incremental LU/cholesky factorization done in O(n^2)? </div></blockquote>well the claim is no so, is only apply if you can sort the row in perfect order when row are to be remove the incremental factorization has to be thrown out. And you get the same o(n3) factorization.<br><br>I think you are right it is about the patent so maybe you am I agree. We were just discussing the details of what makes the patent legitimate. <img class="smilies" src="https://pybullet.org/Bullet/phpBB3/images/smilies/icon_cool.gif" width="15" height="15" alt="8)" title="Cool"><p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=64">Julio Jerez</a> — Wed Jan 04, 2006 9:31 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Antonio Martini]]></name></author>
		<updated>2006-01-04T20:39:15+00:00</updated>

		<published>2006-01-04T20:39:15+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=592#p592</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=592#p592"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=592#p592"><![CDATA[
<blockquote class="uncited"><div>For the record that goes to show you are reading the paper and relating what you read with very little critical analysis.</div></blockquote>given that you seems so good at it i would advice you to do also some critical analysis of your writing style;)<br><blockquote class="uncited"><div>The inner loop of the method solves n x n a linear system by either LU or Colesky factorization. </div></blockquote>wasn't in an incremental LU/cholesky factorization done in O(n^2)?<br><br>no time to read the rest and to be honest im not that interested given that it's a long time that i dont work on that stuff anymore.Among the other things it's offtopic in repect to this thread which is more about patents rather than computational complexity.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=145">Antonio Martini</a> — Wed Jan 04, 2006 8:39 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Julio Jerez]]></name></author>
		<updated>2006-01-04T20:31:08+00:00</updated>

		<published>2006-01-04T20:31:08+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=591#p591</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=591#p591"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=591#p591"><![CDATA[
<blockquote class="uncited"><div>I have implemented the baraff's algorithm many years ago with all the due respect for your language. In a bilateral constraint the forces are in the range -+ infinite.Contact allows for forces in the range 0,+infinite. the boxed LCP for low-high,limits. What you are basically saying is that something which is very  simple is not an invention. </div></blockquote>Well maybe that was your intepretation, I had been working with simplex Convex quadratic programming long before Baraff paper. When I Saw his formulation I implemented and I never used the 0 and infinity limit as matter of fact that infinity mombo-jumpo has hampered ODE for many years into making gratuitous explosion for nto particular reason (so there you go) <blockquote class="uncited"><div>The baraff algorithm is O(n^3). </div></blockquote>For the record that goes to show you are reading the paper and relating what you read with very little critical analysis.<br>Here is the proff the LCP is O(n4) <br>Baraff did not lie but he mislead the people into thinking the method is and O(n3) and he say that is a worse case np complete. Whicj is a way of saying that is can only be expressed as a polynioming of  O (n + n2 + ?n^n) it is truth but it is measleading.<br>In fact the method is presiselly O(n^4) average case and best case O(n3)<br><br>Proof:<br>The inner loop of the method solves n x n a linear system by either LU or Colesky factorization. <br><br>The outer loop solve either a n x n or (n+ 1 * n+1) linear system<br>So the time complexity is a geometric progression of the form<br><br>O = k * 1^3 + K * 2^3 + ?. .k * N ^ 3<br><br>The general turn of that regrasion is (goolgel for it if you like)<br><br>S = K1 * O(N^3) + K2 * O(N * 4) <br><br>The average come for the fact that the clamped variable are solve at last<br>So the lower composed of the regression are zero they are insignificant compare to the largers systems .<br><br>For example say you have a stack with 100 rows, and only 4 at the bottom are contacts<br>That is 4 of those rows are to be clamped.<br><br>The total time is assuming k is const<br><br>96^ 3 + 97^3 + 98^3 +100^3 = <br>if all o fteh point are contacts then the added values is totally marginal <br><br>since the larger part of the row are contacts yes the method is and average o(n4)<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=64">Julio Jerez</a> — Wed Jan 04, 2006 8:31 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Antonio Martini]]></name></author>
		<updated>2006-01-04T20:23:52+00:00</updated>

		<published>2006-01-04T20:23:52+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=590#p590</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=590#p590"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=590#p590"><![CDATA[
<blockquote class="uncited"><div>Danzig and Lenkel methods both allowed for up and downs limits. <br>David Baraff was derived to handle specifically contacts, in that case the lower limit is zero and you do not need the code. In his paper he explain how to extend it to handle bilateral constraint. So adding the complement part to check the lower limit is not an invention.</div></blockquote>i was referring to what you wrote:<br><br>"Baraff paper and the Patent match line by line, except that Baraff paper is predate the patent by 6 years."<br><br>and it seems clear in what i replied:<br><br>"they are not the same line by line, the Baraff algorithm doesn't allow for low and hi force limits. Motors and Friction require such force limits in the karma solver(or ODE's direct solver). "<br><br>but now you seem to agree that they don't match line by line anymore. So problem solved;) The Baraff's algorithm with equality constraints added is not the same as the low-high force limits case but is the special case of when low=-inf and high=+inf. both friction and motors in the model employd by ODE and Karma required finite force limits.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=145">Antonio Martini</a> — Wed Jan 04, 2006 8:23 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Antonio Martini]]></name></author>
		<updated>2006-01-04T21:05:53+00:00</updated>

		<published>2006-01-04T19:59:46+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=589#p589</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=589#p589"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=589#p589"><![CDATA[
<blockquote class="uncited"><div> <br>In his paper he explain how to extend it to handle bilateral constraint. So adding the complement part to check the lower limit is not an invention.  <br>It is okay because no one really takes that seriously as the method is a 0(n4) time complexity.</div></blockquote>I have implemented the baraff's algorithm many years ago with all the due respect for your language. In a bilateral constraint the forces are in the range -+ infinite.Contact allows for forces in the range 0,+infinite. the boxed LCP for low-high,limits. What you are basically saying is that something which is very  simple is not an invention. To me that's not necessarily the case, given that slight modification allows to solve a wider range of problems. The baraff algorithm is O(n^3).<br>I agree that each single algorithm we are talking about could have been <br>"invented" by anybody working in the field at the same time o many year before. But inventions are more about who did it first i guess, or better about who did first and made it public, this considered that around there are many simple great original ideas and they still count as invention dont they?:)<br><blockquote class="uncited"><div> <br>About Richard Tongue he is claiming the invention of storing J and JM into and indexed flat array. This is not an invention I had been using that as early as 1999.  And I am not claiming an invention. I do not think anybody is.<br>Did you know that long before ODE realizes this could be done that way there were other engines doing the same publicly. I did it in Newton.<br>Or you also think that My solve is a copy of ODE like the stablishment hint in many circles.<br>In a nut shell this is what he is claim this in three lines of symbolic math:</div></blockquote>if in Newton you did the same or similar but nobody know about it that's not public domain knowledge i guess. It looks like that you have misunderstood what im trying to say and im going to try to be clearer here. Im _not_ in favour of patents, however there is a law, if somebody applies for a patent that laws applies if we like it or not. So what im interested in it's not if many other people did the same or bettter in their secret room given that i have no doubts about it. But im more interested to see if it possible to show that at the moment of the application there was sufficient available information (papers/code) in  order t invalidate the "invention"<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=145">Antonio Martini</a> — Wed Jan 04, 2006 7:59 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Julio Jerez]]></name></author>
		<updated>2006-01-04T20:00:43+00:00</updated>

		<published>2006-01-04T19:58:53+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=588#p588</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=588#p588"/>
		<title type="html"><![CDATA[Projected Gauss Seidel patent and other physics patents]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=588#p588"><![CDATA[
sorry double post<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=64">Julio Jerez</a> — Wed Jan 04, 2006 7:58 pm</p><hr />
]]></content>
	</entry>
	</feed>
