|
Posted by Tyrone Slothrop on 12/16/06 16:19
On 16 Dec 2006 06:27:15 -0800, crescent_au@yahoo.com wrote:
>Thanks for your reply!
NP
>Just wondering if you can give me an example algorithm of the matrix.
>I'm a bit confused about what you were saying about "leg" in the three
>dimensional matrix.
Draw yourself a picture to understand how a leg would work, starting
with one at the top and branching out from there. The number of legs
is based upon the quantity of members allowed on the first level
beneath each member. Usually this is three or four. Populating the
matrix is based upon the rules assigned to the matrix. Generally,
when the first level under a member is full, the next level is
populated all based upon when they are added, and then the next level.
The first level, for example, would have the members, the second 27
and the third 81. At the same time, members in any of these levels
may be adding their own members, filling out their levels. However,
to maintain integrity of the matrix, each new member must stay within
the leg assigned to them when added (which is why the matrix tends not
to be symetrical).
Think of the logic involved in adding the members. Let's say a member
on the 4th level adds a new member. His first opening is on his third
level, therefore the new member will be on the seventh level. The
first position available on his third level is the 5th, so (assuming
three per leg), the new member would be in the 2nd leg. Relative to
the referring member, the new members position would be level 3,
second leg, second position.
The really fun part (sarcasm here) is when members drop out and you
have to fill the positions from below. Members have to move over and
then up based upon positions and legs. For example using the member
added above, if two members above them in that leg drop out, then they
would go up to the next level. At the same time, anyone below them
would change postions as well.
We ran our rollup script daily, starting from the top looking for open
positions. When one is found, then you have to calculate who to move,
move them, and then go to the next row. This is where assigning level
numbers relative to the entire matrix come in handy.
The real key here is to visualize the relationships. The calcualtions
will follow.
>The system I am planning to develop for someone includes the main MLM
>system, which is linked with small sub-systems such as accounting, etc.
>How long do you think it'll take to complete this kind of system? It's
>not just creating the backend and the coding but also creating the
>front-end interface. If I am to work on this project on my own, I'm
>thinking maybe 5 or 6 months. I don't even know if I am under- or
>over-estimating. :) What do you think? How long did it take you? I
>understand it is far more than web development. It is in fact an online
>software development.
The 100 or so lines of code for the rollup script took me a week,
which I finally solved is a semi dream state in the middle of the
night. I got up immediately and wrote the code. Like I said before,
I still do not completely understand what I did. All I know is that
it is reliable.
Up to six months is a reasonable amount of time to design the code
behind the site.
>You may email me if you like.
Will do.
>Cheers
>Ben
>
>
>Tyrone Slothrop wrote:
>> On 14 Dec 2006 18:42:13 -0800, crescent_au@yahoo.com wrote:
>>
>> >Hi all,
>> >
>> >I'm doing some research online on creating php-based multi-level
>> >marketing (MLM) system. It seems like a complicated system to build as
>> >I need to create one from scratch. I'd like to know if there are
>> >open-source CMS tools or MLM tools available that helps me to customize
>> >or even upgrade to the kind of system I'd like to have.
>> >
>> >I'd like to know how should I start building one from scratch- just the
>> >logics or algorithms that I should be familiar with.
>> >
>> >I'd also like to know what do we mean by re-cycling matrix and forced
>> >matrix. I've seen these mentioned in some websites of software
>> >developers who build MLM systems.
>> >
>> >I have created PHP-based dynamic websites but I haven't done any work
>> >with building this sort of systems. So I'd just like to hear from
>> >people who are familiar with system developement and hopefully push me
>> >in the right direction.
>> >
>> >If you know of some relevant websites or tutorials, please post them
>> >too.
>> >
>> >Cheers!
>> >Ben
>>
>> I have coded a couple of these sites and I can assure you that it will
>> be a challenge. The specs that were required by the client were
>> completely different than any existing system, including a couple
>> features that noone had coded successfully before. I managed to do it
>> but, to this day, I do not understand why it works.
>>
>> I will give you a hint or two to make it easier. Every matrix has
>> levels and positions. They can be multi dimensional, that is to say,
>> they exist in three dimensions like a pyramid. However, unlike a
>> pyramid, they start at the top and work down and definately not
>> symetrically. One of the systems I designed actually branched out in
>> three more dimensions -- once a member filled his matrix, a new matrix
>> was created.
>>
>> Consider that you need to be able to define each member's position in
>> three dimensions. The three dimensions are level, position in that
>> level and the leg. The level is the level of the member relative to
>> the top level. The position is the order in which the member was
>> added. The leg is the complex relationship between members working
>> towards the top of the pyramid, based on who referred whom.
>>
>> A forced matrix (I believe) is where, when a member drops out, other
>> members move over and up to fill the positions within their own leg
>> based upon the order they were added to the matrix. I repeat since
>> this is very important: within their leg.
>>
>> Because the code is technically owned by my client, I cannot share it
>> with you. However, if you get stuck feel free to ask me questions.
>> Just post a message to this group with the subject:
>> Attn: Tyrone Slothrop
>> (not my real name ;-) )
Navigation:
[Reply to this message]
|