Main
Research
Results
Email

The recent area of interest in this project is the parsing language of a drafting rules set itself. A draft can be described by a set of rules, and the rules we have currently chosen for a team look something like this:



#
# This is an abstraction of a team rules file
#
rule [bpa|need]
#
# if bpa is chosen, all other rules will be ignored. Only with
# needs based drafting do the rest of the rules count.
#
# needlist is a list of positions to be drafted
#
needlist U V W X Y Z
#
# Cond is a list of conditions for position P
# You can have one condition for each P
#
# conditions within cond:
#
# round N-M restricts drafting to that range of rounds.
#
# high increases draft value of the position by 12 draft positions.
#
# urgent increases draft value of a position by 25 draft positions.
#
# immediate increases the draft value of a position by 1000, so that this
# position is guaranteed to be drafted first.
#
# weight N increases the draft value by N draft positions. If N is negative,
# it decreases the draft value by N. N in floating point is in units of rounds.
#
# max M means no more than M players from this position
#
# tags are an implemented feature by version 20070303. Tags are single
# word tokens like '1-gap' or '2-gap' or 'pass-rush' or 'mobile'.
# Tags are required for selection unless negated. Negative tags are
# specified by the character ! in front of the rest of the word. Negative
# tags such as '!injury', '!legal', or '!mental' can be used to exclude a
# player if he has certain negative traits.
# By making team rules such as:
#
# football examples
#
# cond DE round 1-7 max 1 tag pass-rush
# cond DT round 2-7 max 1 tag 2-gap !injury
# cond QB round 1-3 max 1 tag mobile !mental
#
# baseball examples
#
# cond SS round 1-5 max 1 tag speed
# cond SP round 1-100 max 2 tag control
# cond CF round 1-100 max 1 tag power
#
# basketball examples
#
# cond PF round 1-2 max 1 tag shot-blocking
# cond PG round 1-2 max 1 tag shooter
# cond SF round 1-2 max 1 tag defense
#
# You can make the draft rules a lot more specific. The default.tpl file
# must also include tags if you are to use them in your rules.
#
cond P [round N-M] [high|urgent|immediate|weight N] [max M] [tag tag-text]
#
# exclude: do not draft this player
#
exclude [name]
#
# exception. floating point is in rounds, integers in direct "score".
# if bpa candidate is greater in value than need candidate + score, draft the
# bpa candidate.
#
exception N



This is a simple language where the tokens are single units of parsable text or pairs of parsable text. Is this an adequate draft model? How complex a language do you need to adequately characterize the draft needs of a team? This is something we'd like to discuss with readers and if you have any thoughts on the process, Write us here.

One consequence of moving to an emphasis on language as opposed to statistics is that we will rewrite the project into the language Ruby. Using an interpreter will allow rapid changes to the parsing engine and push the focus to the language of drafting.

Hosted on and sponsored by Sourceforge.
Site design © R.Schirra. Content © grayhaired@users.sourceforge.net. Don't steal.
Designed by Heliophobic. Hosted and sponsored by Sourceforge.