My math knol rating honeymoon is over. Within 10 hours of my last blog entry someone (or would it be two independed readers) rated my two math knols as 1 (the lowest). Now the stats are:
knol --:early| Oct11 | Oct12 |
=============|=======|=======|
m ind -: 5*2 | ditto | ditto |
m nttn : --- |- 4*1 -| ditto |
t sp mp: 2*1 | 3.5*2 | ditto |
M un 2 : --- | ----- |- 1*1 -|
E_H ar : 5*1 | ditto |- 3*2 -|
AoA-mrg: 1*1 | ditto | ditto |
t s-s i: 3*1 |- 4*2 -| ditto |
MN-ec1 : --- |- 5*1 -| ditto |
t-i op : --- |- 5*1 -| ditto |
m tria : 5*1 | ditto | ditto |
AoA pat: 1*1 | ditto | ditto |
Let me compute the average:
(10+4+7+1+6+1+8+5+5+5+1) / (2+1+2+1+2+1+2+1+1+1+1)
= 53/15 = 3.5333...
Three single ratings were for Art of Agreement: (1+1+5)/3 = 2.333... It drags me down :-) Nobody rated dabanese. Thus for mathematics alone the average is: 46/12 = 3.8333... However, I got two 5s for the index of all things :-) Also one 4 for my math notation blog. This leaves 32/9 = 3.555... for actual, meritorious blogs. Ooooph, I got my stat trivia.
Sunday, October 12, 2008
Saturday, October 11, 2008
my knol stats
Stats are my silly fun, I like stats. Let me here start my knol stats, ratings (there is perhaps just one comment, it's from a young student from India, and it's just a social hello, email-like message rather than a comment). I am too tired right now to make an html table. A naive format will do for the time being.
knol - :early| Oct11 |
=============|=======|
m ind -: 5*2 | ditto |
m nttn : --- |- 4*1 -|
t sp mp: 2*1 | 3.5*2 |
E_H ar : 5*1 | ditto |
AoA-mrg: 1*1 | ditto |
t s-s i: 3*1 |- 4*2 -|
MN-ec1 : --- |- 5*1 -|
t-i op : --- |- 5*1 -|
m tri -: 5*1 | ditto |
AoA pat: 1*1 | ditto |
OK, enough of that. (That was in font Arial).
OK, enough of that. (That was in font Courier).
OK, enough of that. (That was in font Georgia).
OK, enough of that. (That was in font Lucida Grande).
OK, enough of that. (That was in font times).
OK, enough of that. (That was in font Trebuchet).
OK, enough of that. (That was in font Verdana).
OK, enough of that. (That was in font Webdings).
knol - :early| Oct11 |
=============|=======|
m ind -: 5*2 | ditto |
m nttn : --- |- 4*1 -|
t sp mp: 2*1 | 3.5*2 |
E_H ar : 5*1 | ditto |
AoA-mrg: 1*1 | ditto |
t s-s i: 3*1 |- 4*2 -|
MN-ec1 : --- |- 5*1 -|
t-i op : --- |- 5*1 -|
m tri -: 5*1 | ditto |
AoA pat: 1*1 | ditto |
OK, enough of that. (That was in font Arial).
OK, enough of that. (That was in font Courier).
OK, enough of that. (That was in font Georgia).
OK, enough of that. (That was in font Lucida Grande).
OK, enough of that. (That was in font times).
OK, enough of that. (That was in font Trebuchet).
OK, enough of that. (That was in font Verdana).
OK, enough of that. (That was in font Webdings).
Thursday, October 2, 2008
Just a blog entry
Any small mistake or negligence in the care of my father by care givers means a dramatic follow up for my father, and a lot of nerves and extra effort by me.
I sleep little these days, and I am often sleepy and unable to work on my projects. Thus I start or restart to work on a project then stop and switch to a new one. Unfortunately, I have stopped again my efforts on baroque numbers. I want to come back to the attractive for me goal of finding a bunch of new baroque numbers, but I already am writing knols on general topology, on euclidean geometry, on art of agreeing, on dabanese. And I'd like to write on many other topics, especially on more mathematical topics: elementary algebraic topology, elementary number theory, combinatorics, on translation lattices, ... Knols possibly will get a larger audience than a blog. Blog can be more of writing for myself mainly. After all, this very entry is sooooooo embarrassingly boring.
In topology, I'd like to present my theory of universal functions; also my cubical polyhedra approach to algebraic topology, and about the geometry of cubical polyhedrons as well. I have outlined the theory of cubical polyhedra back in Poland, in late sixties. Then in 1970, with J.B., when he was my Ph.D. student at UofM in A2, the one and only ever (I wish I had many) we published a series of papers in Italy, and J.B got his degree in a record fast time.
When it comes to number theory, I should stop playing on a kindergarten level, I should learn some advanced tools, analytic or combinatorial (sieves). Elementary games are fun but the advanced ones are so much more!
I got far away from poetry. I am still a bit active on one English language board, and on one Polish board (Poewiki) but it's only inertia, without contributing much of my energy. It's been ages since I've written any poem. I even feel that I am distancing myself from English! Objectively, I do have contact, like this blog, and in general mainly via Internet, a bit from tv, bits and pieces, when I visit my father. Hm, I have more contact with English than with Polish these days. But my contact with native speakers of (American) English is limited, despite one sharing my apt in the past three months or so.
Yes, it's early, only 21:24 but I definitely am sleepy. Let me lie down for a few minutes. Most of the time I am at the care house at this time, but today my father went to bed early. Later, I might to write about my (rather depressing) impressions from the presidential race.
I should check this entry for errors (typos, etc) but I'll stop now. I have this annoying feeling that I use word "but" way too often.
I sleep little these days, and I am often sleepy and unable to work on my projects. Thus I start or restart to work on a project then stop and switch to a new one. Unfortunately, I have stopped again my efforts on baroque numbers. I want to come back to the attractive for me goal of finding a bunch of new baroque numbers, but I already am writing knols on general topology, on euclidean geometry, on art of agreeing, on dabanese. And I'd like to write on many other topics, especially on more mathematical topics: elementary algebraic topology, elementary number theory, combinatorics, on translation lattices, ... Knols possibly will get a larger audience than a blog. Blog can be more of writing for myself mainly. After all, this very entry is sooooooo embarrassingly boring.
In topology, I'd like to present my theory of universal functions; also my cubical polyhedra approach to algebraic topology, and about the geometry of cubical polyhedrons as well. I have outlined the theory of cubical polyhedra back in Poland, in late sixties. Then in 1970, with J.B., when he was my Ph.D. student at UofM in A2, the one and only ever (I wish I had many) we published a series of papers in Italy, and J.B got his degree in a record fast time.
When it comes to number theory, I should stop playing on a kindergarten level, I should learn some advanced tools, analytic or combinatorial (sieves). Elementary games are fun but the advanced ones are so much more!
I got far away from poetry. I am still a bit active on one English language board, and on one Polish board (Poewiki) but it's only inertia, without contributing much of my energy. It's been ages since I've written any poem. I even feel that I am distancing myself from English! Objectively, I do have contact, like this blog, and in general mainly via Internet, a bit from tv, bits and pieces, when I visit my father. Hm, I have more contact with English than with Polish these days. But my contact with native speakers of (American) English is limited, despite one sharing my apt in the past three months or so.
Yes, it's early, only 21:24 but I definitely am sleepy. Let me lie down for a few minutes. Most of the time I am at the care house at this time, but today my father went to bed early. Later, I might to write about my (rather depressing) impressions from the presidential race.
I should check this entry for errors (typos, etc) but I'll stop now. I have this annoying feeling that I use word "but" way too often.
Thursday, September 4, 2008
Simulated annealing (sa) for baroque numbers--a warm up
The idea of applying the simulated annealing method to baroque numbers was with me for a long time. Finally I had invited others on pl.sci.matematyka (on 2007-05-19) to implement it in parallel with me (independently). I wanted to have some company, it'd be interesting. Somehow, after some positive (and negative) feedback, I ended up alone with a first version 2007-July. It was able to repeat the results obtained in 1990-ies. It couldn't do more because I used a 32-bit C++, and I have represented prime powers directly as actual integers, thus limiting them to the range pe <>32 (I even stayed lazily withing pe ≤ 231). Then I barely started to work on a more advanced version 2007-Aug before I already had to stop (for reasons not realated directly to the project). Now, (starting near the end of 2008-August but really this September, I hope) I am trying to psyche myself up for another round. This time I am going to remove the said limitation, and I'd like to actually discover new baroque numbers, not known before.
First let me present here a very naive approach, just for the illustration (I would never actually code it; you may program this way only if you enjoy programming for its own sake). Select a natural number topNum, say topNum := 10000 and an array of primes, say:
P := (2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79}
Your space of "vertices" V consists now of natural numbers n, 1 < 28 =" 22⋅7 is one of them. You want to find baroque numbers, which belong to V. For instance, 28 is one of them; indeed, the sum of divisors of 28 is:
sd(28) = 1+2+4+7+14+28 = 2⋅28
hence brq(28) = 2, which means that 28 is a perfect number.
Now define the penalty function pen(n) as the number of primes p ε P such that there exists natural exponent e for which pe is a divisor of n but not of sd(n). Observe thatg n is baroque if and only if pen(n) = 0. Thus now we may say that our goal is to find many (preferably all) n ε V for which pen(n) = 0.
The algorithm may start with vertex v(0) := 43 (or any other prime from P). Let's assume that the algorithm has already reached vertex v(n). Selecting the next vertex, v(n+1), involves two stages: we select a candidate, then the candidate is accepted with probability prob(n), or rejected. If it is rejected, then we select another candidate, which is going to be accepted as v(n+1), with the same probability prob(n), or rejected, etc., until certain v(n+1) gets finally accepted.
In order to select v(n+1), the algorithm selects randomly a prime p ε P. The product v(n)⋅p is the first candidate for v(n+1). Then it checks condition v(n)⋅p ≤ topNum. If it is satisfied, then it checks penalty: if pen(v(n)⋅p) < pen(n); then v(n+1) := v(n)⋅p is accepted as the next vertex. If the penalty didn't decrease then we still allow a prob(n) := 1/(1 + 10⋅log(1+n)) chance that v(n)⋅p is accepted. If it is rejected, for one reason or another, but p is a divisor of n then v(n+1) := v(n)/n is tried, i.e. the algorithm checks pen(v(n+1)). If v(n+1) := v(n)/n t is accepted then the task of finding the next vertex is accomplished (and algorithm will look for v(n+2)). Otherwise a new prime p ε P is randomly selected and the described candidate process is repeated, etc, until finally a new v(n+1) gets accepted.
The describes algorithm can be discussed, modified, refined but my goal was just to provide an idea how a simulated annealing might work for baroque numbers. Among the shortcomings of the described version is the necessity of representing v(n) actually and directly (naively) as an integer. This either limits the program to a small range of numbers or forces us to use a multi-precision software library--indeed, baroque numbers ten to be huge. In the next posts I'll describe a bit less naive approach.
Remark Above, I have proposed
prob(n) := 1/(1 + 10⋅log(1+n))
One may also try one of the many other possibilities, e.g.
prob(n) := 10/(10 + n1/4)
First let me present here a very naive approach, just for the illustration (I would never actually code it; you may program this way only if you enjoy programming for its own sake). Select a natural number topNum, say topNum := 10000 and an array of primes, say:
hence brq(28) = 2, which means that 28 is a perfect number.
Now define the penalty function pen(n) as the number of primes p ε P such that there exists natural exponent e for which pe is a divisor of n but not of sd(n). Observe thatg n is baroque if and only if pen(n) = 0. Thus now we may say that our goal is to find many (preferably all) n ε V for which pen(n) = 0.
The algorithm may start with vertex v(0) := 43 (or any other prime from P). Let's assume that the algorithm has already reached vertex v(n). Selecting the next vertex, v(n+1), involves two stages: we select a candidate, then the candidate is accepted with probability prob(n), or rejected. If it is rejected, then we select another candidate, which is going to be accepted as v(n+1), with the same probability prob(n), or rejected, etc., until certain v(n+1) gets finally accepted.
In order to select v(n+1), the algorithm selects randomly a prime p ε P. The product v(n)⋅p is the first candidate for v(n+1). Then it checks condition v(n)⋅p ≤ topNum. If it is satisfied, then it checks penalty: if pen(v(n)⋅p) < pen(n); then v(n+1) := v(n)⋅p is accepted as the next vertex. If the penalty didn't decrease then we still allow a prob(n) := 1/(1 + 10⋅log(1+n)) chance that v(n)⋅p is accepted. If it is rejected, for one reason or another, but p is a divisor of n then v(n+1) := v(n)/n is tried, i.e. the algorithm checks pen(v(n+1)). If v(n+1) := v(n)/n t is accepted then the task of finding the next vertex is accomplished (and algorithm will look for v(n+2)). Otherwise a new prime p ε P is randomly selected and the described candidate process is repeated, etc, until finally a new v(n+1) gets accepted.
The describes algorithm can be discussed, modified, refined but my goal was just to provide an idea how a simulated annealing might work for baroque numbers. Among the shortcomings of the described version is the necessity of representing v(n) actually and directly (naively) as an integer. This either limits the program to a small range of numbers or forces us to use a multi-precision software library--indeed, baroque numbers ten to be huge. In the next posts I'll describe a bit less naive approach.
Remark Above, I have proposed
One may also try one of the many other possibilities, e.g.
Simulated annealing algorithm
The goal is to obtain optimal or nearly optimal solutions for a given problem. Thus first of all we need to define a finite set V of vertices, which correspond to the solutions of the problem, and a non-negative real function, called penalty,
pen : V → R,
for which we would like to find a vertex v ε V such that the value pen(v) is minimal or nearly minimal, so that such optimal v will serve as a solution. This abstract statement sounds simple but in applications the vertices may represent complex configurations or situations.
Some pairs of the vertices are connected by directed edges, so that together, the vertices and the edges, they form a directed graf G := (V E), where E is the set of all edges. Edges are just one-way roads which allow us to travel directly from one vertex to another. An edge leading from vertex v to vertex w is also called (in simulated annealing) a move from v to w. Simulated annealing is applied only to connected graphs, meaning that one can reach any vertex from any other via a finite sequence of consecutive edges (moves).
It is up to the designer of the algorithm to define the graph G = (V E) and the penalty function pen : V → R. One may do it well or one may do it poorly. It's an art. The same goes for the selection of other elements of the algorithm.
In addition, we consider also a real parameter T ≥ 0, called temperature, or rather a decreasing sequence of temperatures T(0) ≥ T(1) ≥ ... ≥ 0, which approach (or even attains) the limit value 0.
The algorithm, i.e. the search for the optimal vertex, works as follows: we start a travel over graph G at a high initial temperature T(0) and in an initial vertex v(0). Let's assume that we are already in vertex v(n) at temperature T(n). Now algorithm selects randomly a candidate for a move from vertex v(n). Let v(n+1) be the destination of the candidate move. If the penalty has decreased, pen(v(n+1)) then v(n+1) is accepted. If not then it is accepted with the probability prob(n) which approaches zero together with the temperature. If the candidate is rejected then another candidate v(n+1) is selected, and the same acceptance procedure applies to it; and so on, until a candidate is accepted.
for which we would like to find a vertex v ε V such that the value pen(v) is minimal or nearly minimal, so that such optimal v will serve as a solution. This abstract statement sounds simple but in applications the vertices may represent complex configurations or situations.
Some pairs of the vertices are connected by directed edges, so that together, the vertices and the edges, they form a directed graf G := (V E), where E is the set of all edges. Edges are just one-way roads which allow us to travel directly from one vertex to another. An edge leading from vertex v to vertex w is also called (in simulated annealing) a move from v to w. Simulated annealing is applied only to connected graphs, meaning that one can reach any vertex from any other via a finite sequence of consecutive edges (moves).
It is up to the designer of the algorithm to define the graph G = (V E) and the penalty function pen : V → R. One may do it well or one may do it poorly. It's an art. The same goes for the selection of other elements of the algorithm.
In addition, we consider also a real parameter T ≥ 0, called temperature, or rather a decreasing sequence of temperatures T(0) ≥ T(1) ≥ ... ≥ 0, which approach (or even attains) the limit value 0.
The algorithm, i.e. the search for the optimal vertex, works as follows: we start a travel over graph G at a high initial temperature T(0) and in an initial vertex v(0). Let's assume that we are already in vertex v(n) at temperature T(n). Now algorithm selects randomly a candidate for a move from vertex v(n). Let v(n+1) be the destination of the candidate move. If the penalty has decreased, pen(v(n+1)) then v(n+1) is accepted. If not then it is accepted with the probability prob(n) which approaches zero together with the temperature. If the candidate is rejected then another candidate v(n+1) is selected, and the same acceptance procedure applies to it; and so on, until a candidate is accepted.
Remark 1 In addition to simulated annealing algorithm there are also other optimizing algorithms which serve similar purpose. One of them is the so-called genetic algorithm, which is like simulated annealing but richer: besides moves it has also procreation, where one gets a new vertex out of a pair of two previous ones. This provides more possibilities (while it is harder now to provide a scientific foundation as solid as in the case of simulated annealing).
Remark 2 The algorithm may look just for one solution. Then after finding it, it may stop. Or it may look for many solutions. Then after finding a consecutive solution it restarts itself.
Labels:
algorithm,
computer science,
informatique,
optimization
Sunday, August 31, 2008
Baroque conjectures
Let me address the views (guesses) on the four questions, about the perfect and baroque numbers, listed in the previous post:
- everybody believes that there are infinitely many (even) perfect numbers, because everybody believes that there are infinitely many Mersenne prime numbers p (i.e. prime numbers p such that 2p-1 is a prime too);
- it seems to me that some (many? most?) specialists believe that there are only finitely many baroque numbers which are not perfect; some even think that all baroque non-perfect numbers are already known (no way!). Myself, I believe that there are infinitely many of them but finitely many for each baroqueness coefficient;
- nobody believes that there is any odd perfect number;
- I think that nobody believes that there is any odd baroque number; I don't either but I am not so sure :-).
Saturday, August 30, 2008
Back to baroque numbers?
The classical, standard name for my term baroque numbers is pluperfect or polyperfect
numbers or similar. A natural number n (n = 1 2 ...) is called baroque when the sum sd(n) of all natural divisors of n is divisible by n; let's call
the baroqueness of n. When a baroqueness of a number is two, brq(n) = 2, then it is called perfect. The smallest perfect number, known since the ancient times, is n=6. Indeed, in this case
Questions about the baroque numbers are among the oldest, open (unresolved) problems of the whole mathematics. They are difficult and, today, somewhat isolated from the main developments, hence they are not as popular among the best mathematicians as they used to be in the past, when Euclid, Fermat, Decart, Euler and others were interested in them. Let me list the main open questions:
The Euclid-Euler tandem (:-) proved that an even natural number n is perfect if and only if there exists a (unique) natural number p such that the following two conditions hold:
Another old result (an ancient observation) is that brq(120) = 3, i.e. 120 is a baroque number, and its baroqueness is 3.
numbers or similar. A natural number n (n = 1 2 ...) is called baroque when the sum sd(n) of all natural divisors of n is divisible by n; let's call
brq(n) := sd(n)/n
the baroqueness of n. When a baroqueness of a number is two, brq(n) = 2, then it is called perfect. The smallest perfect number, known since the ancient times, is n=6. Indeed, in this case
sd(n) = 1+2+3+4+6 = 12 = 2*n
Questions about the baroque numbers are among the oldest, open (unresolved) problems of the whole mathematics. They are difficult and, today, somewhat isolated from the main developments, hence they are not as popular among the best mathematicians as they used to be in the past, when Euclid, Fermat, Decart, Euler and others were interested in them. Let me list the main open questions:
- are there infinitely many perfect numbers?
- are there infinitely many baroque numbers?
- does there exist an odd perfect number?
- does there exist an odd baroque number > 1?
The Euclid-Euler tandem (:-) proved that an even natural number n is perfect if and only if there exists a (unique) natural number p such that the following two conditions hold:
- 2p - 1 is prime;
- n = 2p-1*(2p-1)
Another old result (an ancient observation) is that brq(120) = 3, i.e. 120 is a baroque number, and its baroqueness is 3.
Subscribe to:
Posts (Atom)