Subject: [Tools-implementation] Automatic schedule builder

From: Robert Sparks <[email-masked]>
Date: Wed, 10 Jun 2020 15:34:46 -0500

Dashcare believes the automatic schedule builder is complete.

My initial skim of the results indicates we should accept it (I have not 
yet read the code, but I expect no problems given Sasha's contributions 
in the past).

To test the concept, Sasha provided a management command that creates a 
dummy meeting (IETF999) that is essentially IETF106 with all the session 
requests augmented to reflect the things the secretariat keeps in their 
head. (Examples - saag always meets thursday morning, treat dispatch as 
an area meeting, etc).

A run of the automatic scheduler looks like this:

(env) unescapeable:automatic-scheduler-2 rjsparks$ time ietf/manage.py 
schedule_generator --meeting 999
WARNING: session tram (pk 28108) has no attendees set, assuming any room 
fits
WARNING: session mtgvenue (pk 28115) has no attendees set, assuming any 
room fits
WARNING: session cellar (pk 28132) has no attendees set, assuming any 
room fits
WARNING: session curdle (pk 28134) has no attendees set, assuming any 
room fits
WARNING: session bfcpbis (pk 28151) has no attendees set, assuming any 
room fits
WARNING: session secevent (pk 28163) has no attendees set, assuming any 
room fits
WARNING: session kitten (pk 28167) has no attendees set, assuming any 
room fits
WARNING: session clue (pk 28168) has no attendees set, assuming any room 
fits
WARNING: session payload (pk 28169) has no attendees set, assuming any 
room fits
WARNING: session softwire (pk 28181) has no attendees set, assuming any 
room fits
WARNING: session uta (pk 28187) has no attendees set, assuming any room fits
WARNING: session nfsv4 (pk 28190) has no attendees set, assuming any 
room fits
WARNING: session sipcore (pk 28203) has no attendees set, assuming any 
room fits
WARNING: session mmusic (pk 28208) has no attendees set, assuming any 
room fits
WARNING: session tictoc (pk 28210) has no attendees set, assuming any 
room fits
WARNING: session i2nsf (pk 28221) has no attendees set, assuming any 
room fits
Initial schedule completed with 21 violations, total cost 714000
Optimisation completed with 21 violations, total cost 300000
Remaining violations:
pearg: group conflict with quic
dispatch: scheduled in unavailable timerange wednesday-morning
dispatch: area meeting overlaps with other area meeting: rtgwg
dispatch: area meeting overlaps with other area meeting: saag
txauth: group conflict with quic
dprive: scheduled in unavailable timerange thursday-afternoon-late
pim: missing adjacency with mboned, adjacents are: oauth
secdispatch: group conflict with httpbis
rtgwg: area meeting overlaps with other area meeting: dispatch
rtgwg: area meeting overlaps with other area meeting: saag
mboned: missing adjacency with pim, adjacents are: rtgwg
saag: scheduled in unavailable timerange wednesday-morning
saag: area meeting overlaps with other area meeting: rtgwg
saag: area meeting overlaps with other area meeting: dispatch
quic: scheduled in unavailable timerange friday-morning
quic: has time relation subsequent-days but difference is 4
detnet: scheduled in unavailable timerange monday-morning
quic: group conflict with txauth
quic: has time relation subsequent-days but difference is 4
No timeslot with sufficient duration available for detnet, requested 
2:30:00, trimmed to 2:00:00
No timeslot with sufficient duration available for teas, requested 
2:30:00, trimmed to 2:00:00
Scheduled saved as Auto-GOSDDWBWPW

real    9m55.833s
user    9m45.463s
sys    0m5.609s

I've attached what the resulting agenda page looks like if that schedule 
were made official.

Before I ask the secretariat to look at this, I would like your 
opinions. Is the result of this scheduling run useful as a starting 
point for building a real final agenda? Please look through the result 
for conflicts that surprise you.

RjS

---

From: Robert Sparks <[email-masked]>
Date: Wed, 10 Jun 2020 16:00:43 -0500

It would also be useful to have you look over 
https://trac.tools.ietf.org/tools/ietfdb/wiki/MeetingConstraints

On 6/10/20 3:34 PM, Robert Sparks wrote:
> My initial skim of the results indicates we should accept it (I have 
> not yet read the code, but I expect no problems given Sasha's 
> contributions in the past).
>
> To test the concept, Sasha provided a management command that creates 
> a dummy meeting (IETF999) that is essentially IETF106 with all the 
> session requests augmented to reflect the things the secretariat keeps 
> in their head. (Examples - saag always meets thursday morning, treat 
> dispatch as an area meeting, etc).
>
> WARNING: session tram (pk 28108) has no attendees set, assuming any 
> room fits
> WARNING: session mtgvenue (pk 28115) has no attendees set, assuming 
> any room fits
> WARNING: session secevent (pk 28163) has no attendees set, assuming 
> any room fits
> WARNING: session clue (pk 28168) has no attendees set, assuming any 
> room fits
> WARNING: session softwire (pk 28181) has no attendees set, assuming 
> any room fits
> I've attached what the resulting agenda page looks like if that 
> schedule were made official.
>

---

From: Glen <[email-masked]>
Date: Wed, 10 Jun 2020 14:42:22 -0700

Hi Robert -

I've reviewed, but my lack of familiarity/involvement with the
previous process/requirements means I have nothing I can contribute at
this stage.

Did not want you to think I was ignoring, so sending this NOP just to
acknowledge.

Glen

On Wed, Jun 10, 2020 at 2:00 PM Robert Sparks <[email-masked]> wrote:
>
> It would also be useful to have you look over https://trac.tools.ietf.org/tools/ietfdb/wiki/MeetingConstraints
>
> My initial skim of the results indicates we should accept it (I have not yet read the code, but I expect no problems given Sasha's contributions in the past).
>
> To test the concept, Sasha provided a management command that creates a dummy meeting (IETF999) that is essentially IETF106 with all the session requests augmented to reflect the things the secretariat keeps in their head. (Examples - saag always meets thursday morning, treat dispatch as an area meeting, etc).
>
> (env) unescapeable:automatic-scheduler-2 rjsparks$ time ietf/manage.py schedule_generator --meeting 999
> WARNING: session tram (pk 28108) has no attendees set, assuming any room fits
> WARNING: session mtgvenue (pk 28115) has no attendees set, assuming any room fits
> WARNING: session cellar (pk 28132) has no attendees set, assuming any room fits
> WARNING: session curdle (pk 28134) has no attendees set, assuming any room fits
> WARNING: session bfcpbis (pk 28151) has no attendees set, assuming any room fits
> WARNING: session secevent (pk 28163) has no attendees set, assuming any room fits
> WARNING: session kitten (pk 28167) has no attendees set, assuming any room fits
> WARNING: session clue (pk 28168) has no attendees set, assuming any room fits
> WARNING: session payload (pk 28169) has no attendees set, assuming any room fits
> WARNING: session softwire (pk 28181) has no attendees set, assuming any room fits
> WARNING: session nfsv4 (pk 28190) has no attendees set, assuming any room fits
> WARNING: session sipcore (pk 28203) has no attendees set, assuming any room fits
> WARNING: session mmusic (pk 28208) has no attendees set, assuming any room fits
> WARNING: session tictoc (pk 28210) has no attendees set, assuming any room fits
> WARNING: session i2nsf (pk 28221) has no attendees set, assuming any room fits
> No timeslot with sufficient duration available for detnet, requested 2:30:00, trimmed to 2:00:00
> No timeslot with sufficient duration available for teas, requested 2:30:00, trimmed to 2:00:00
> I've attached what the resulting agenda page looks like if that schedule were made official.
>
> Before I ask the secretariat to look at this, I would like your opinions. Is the result of this scheduling run useful as a starting point for building a real final agenda? Please look through the result for conflicts that surprise you.
>
> RjS
>
>
> --
> Tools-implementation mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/tools-implementation