求助:用 Python 安排监考--让科技来拯救一下手搓党 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
d5d
V2EX    Python

求助:用 Python 安排监考--让科技来拯救一下手搓党

  •  
  •   d5d 322 天前 2758 次点击
    这是一个创建于 322 天前的主题,其中的信息可能已经有所发展或是发生改变。
    故事是这样的。

    科技都发展到人工智能时代,半路出家干教务,还是在用手工排监考。常常叹息我们跟科技隔着一个世纪。

    想用 python 来安排监考。这应该是多约束条件下的找最优解的安排,企图用 AI 来写,一直没成功,特来求助。
    需求:根据监考员表中的个性要求进行考场安排,考场安排中监考人员数量根据烤肠设置表中数量进行安排。

    求大佬不吝赐码.

    目前手动解决方法:(有时需要 2 次才能排出监考表)
    1.先根据场次限制,制作出所有老师的监考次数。
    2.根据特殊要求先安排必监考科目和考场和不监考科目和考场的老师,逐个复制粘贴到监考表。
    单科目一个人不能重复出现。还需要考虑到能一天安排安排的就别分散安排。
    3.统计老师名单中所有老师在各科中出现的次数以及总的监考场次。然后手动逐一调整。

    相关文件我发 qq 文档了。
    https://docs.qq.com/sheet/DUXBwcVRkTGpUakRW?nlc=1&tab=000001

    1.监考员有很多个性化的要需求,数据如下
    sheet1
    2.考试科目
    sheet2
    3.考场设置(考场和科目对应的数字是本场考试安排的监考人数)
    sheet3
    12 条回复    2024-11-29 13:43:12 +08:00
    struggle001
        1
    struggle001  
       321 天前
    excel 就能解决吧?我的同事不是搞编程的,给他老婆用 excel 给学生安排考试的座位等等。
    struggle001
        2
    struggle001  
       321 天前
    看懂了 应该能写 但是懒得写
    TimG
        3
    TimG  
       321 天前 via Android
    看起来像复杂的背包问题?我脑容量不够解这类,交给有能力的 v 友。
    juventusryp
        6
    juventusryp  
       321 天前
    和排课、排班同属一个问题,ortools 可以解决,目前使用它解决一个比较复杂的排课项目,借助 ai ,基本完成了,ortools 还是挺好用的

    你的需求可以使用 ortools 先解决排监考的问题,然后再利用 pandas 等库写入 excel 即可
    d5d
        7
    d5d  
    OP
       321 天前
    @struggle001 手动可以解决。但是有时候需要推倒重来。主要是想解放一下自己。

    @Jakarta 果然得善用搜索,谢谢提供思路。

    @juventusryp 谢谢大神指点,这就去学习一番。看看我能不能解决,想解放自己。推倒重排监考经常遇到,最近一天搞定考场和监考都很麻烦。高中的六选三大走班排课不是一般的个人能解决的。目前讯飞给解决的,以前是极客。
    d5d
        8
    d5d  
    OP
       321 天前
    @dayeye2006199 谢谢,撒花。
    lpe234
        9
    lpe234  
       321 天前   1
    尝试写了一个,还有两组约束没加

    https://gist.github.com/lpe234/9823825093e7cfe22e34973dd6936439

    ![考场安排]( )

    ![监考员安排]( )
    z3wood
        10
    z3wood  
       321 天前   1
    你这就是找线性约束可行解的问题,用 gpt 帮忙用 pulp 库写了下,https://paste.org.cn/RdCXUhycAe
    struggle001
        11
    struggle001  
       321 天前
    @lpe234 好人啊
    beneo
        12
    beneo  
       319 天前
    @d5d 讯飞怎么收费的呢?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2485 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 15:36 PVG 23:36 LAX 08:36 JFK 11:36
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86