Hi
user
Admin Login:
Username:
Password:
Name:
Solving an NP-Hard Problem for Fun and Profit
--client
pyohio
--show
pyohio_2018
--room cartoon2 14226 --force
Next: 11 Reproducible Environments for Reproducible Results
show more...
Marks
Author(s):
Raymond Chandler III
Location
Cartoon 2
Date
jul Sun 29
Days Raw Files
Start
16:15
First Raw Start
16:00
Duration
0:30:0
Offset
0:14:24
End
16:45
Last Raw End
16:47
Chapters
00:00
0:15:26
Total cuts_time
28 min.
https://pyohio.org/2018/schedule/presentation/24/
raw-playlist
raw-mp4-playlist
encoded-files-playlist
host
archive
tweet
mp4
svg
png
assets
release.pdf
Solving_an_NPHard_Problem_for_Fun_and_Profit.json
logs
Admin:
episode
episode list
cut list
raw files day
marks day
marks day
image_files
State:
---------
borked
edit
encode
push to queue
post
richard
review 1
email
review 2
make public
tweet
to-miror
conf
done
Locked:
clear this to unlock
Locked by:
user/process that locked.
Start:
initially scheduled time from master, adjusted to match reality
Duration:
length in hh:mm:ss
Name:
Video Title (shows in video search results)
Emails:
email(s) of the presenter(s)
Released:
has someone authorised pubication
Unknown
Yes
No
Normalise:
Channelcopy:
m=mono, 01=copy left to right, 10=right to left, 00=ignore.
Thumbnail:
filename.png
Description:
markdown
Last year I was given a task by the publishers of the CATAN board game. They wanted a tournament management tool that could help them organize, run, seat, and rank players in their world championships and several local qualifying events around the world. Most of the application was straightforward but they also had a very specific seating problem, and after doing some investigation I learned that their specific requirements made the task an NP-hard problem. The problem is this: Given some number of players. Generate a number of tables where each table has 4 or 3 seats. Then from round to round seat players in such a way so that A) no player plays in the same seating position they previously sat in, and B) no player plays against someone they played against previously. Players should be seated as fairly as possible from round to round, and where there is a perfect solution the algorithm should arrive at it, and when there isn't it should arrive at the "fairest" solution possible. It should be able to handle any arbitrarily large number of players, and should run in seconds. In this talk, I'm going to talk a bit more about this specific problem and how I solved it using Python. I will walk you through my different attempts and thought processes while attempting to develop a good solution. You will walk away with a process and framework to solve your own difficult problems and develop a scientific mindset that can help lead you to new discoveries. Finally, I will present how the algorithm works, and make suggestions to how it can be applied to solve other similar types of problems. I proudly present to you: The Gamer's Algorithm. P.S. The algorithm will be used for the first time in the wild at the CATAN World Championships at Origin Games Fair and the U.S. National Championships at Gencon in 2018.
Comment:
production notes
2018-07-29/16_00_36.ts
Apply:
16:00:36 - 16:15:10 ( 00:14:34 )
S:
16:00:36 -
E:
16:30:36
D:
00:30:00
(
End:
874.0)
show more...
vlc ~/Videos/veyepar/pyohio/pyohio_2018/dv/cartoon2/2018-07-29/16_00_36.ts :start-time=00.0 --audio-desync=0
Raw File
Cut List
16:00:36
seconds: 0.0
Wall: 16:00:36
Duration
00:30:00
16:30:36
seconds: 874.0
Wall: 16:15:10
Comments:
mp4
mp4.m3u
dv.m3u
Split:
Sequence:
:
delete
2018-07-29/16_00_36.ts
Apply:
16:15:10 - 16:30:36 ( 00:15:26 )
S:
16:00:36 -
E:
16:30:36
D:
00:30:00
(
Start:
874.0)
show more...
vlc ~/Videos/veyepar/pyohio/pyohio_2018/dv/cartoon2/2018-07-29/16_00_36.ts :start-time=0874.0 --audio-desync=0
Raw File
Cut List
16:00:36
seconds: 874.0
Wall: 16:15:10
Duration
00:30:00
16:30:36
seconds: 0.0
Wall: 16:00:36
Comments:
mp4
mp4.m3u
dv.m3u
Split:
Sequence:
:
delete
2018-07-29/16_30_36.ts
Apply:
16:30:36 - 16:44:08 ( 00:13:32 )
S:
16:30:36 -
E:
16:47:06
D:
00:16:30
(
End:
812.0)
show more...
vlc ~/Videos/veyepar/pyohio/pyohio_2018/dv/cartoon2/2018-07-29/16_30_36.ts :start-time=00.0 --audio-desync=0
Raw File
Cut List
16:30:36
seconds: 0.0
Wall: 16:30:36
Duration
00:16:30
16:47:06
seconds: 812.0
Wall: 16:44:08
Comments:
mp4
mp4.m3u
dv.m3u
Split:
Sequence:
:
delete
2018-07-29/16_30_36.ts
Apply:
16:44:08 - 16:47:06 ( 00:02:58 )
S:
16:30:36 -
E:
16:47:06
D:
00:16:30
(
Start:
812.0)
show more...
vlc ~/Videos/veyepar/pyohio/pyohio_2018/dv/cartoon2/2018-07-29/16_30_36.ts :start-time=0812.0 --audio-desync=0
Raw File
Cut List
16:30:36
seconds: 812.0
Wall: 16:44:08
Duration
00:16:30
16:47:06
seconds: 0.0
Wall: 16:30:36
Comments:
mp4
mp4.m3u
dv.m3u
Split:
Sequence:
:
delete
Rf filename:
root is .../show/dv/location/, example: 2013-03-13/13:13:30.dv
Sequence:
get this:
check and save to add this
2018-07-29/16_00_36.ts
2018-07-29/16_30_36.ts
Veyepar
Video Eyeball Processor and Review