期刊发表网电话

全国热线
022-83699069

计算机辅助量刑软件的技术实现

作者: 发布时间:2020-01-21 09:37:36 阅读: 48 次

 

1计算机辅助量刑软件的概念与意义

1.1概念

计算机辅助量刑软件(Computer Assistant Penalty Measurement Software, CAPMS),是指一套能以人工智能技术开发的,以刑事法律法规为依据的,能根据用户输入的犯罪事实计算犯罪嫌疑人刑事责任与刑罚的软件。

1.2意义

确定犯罪嫌疑人的刑事责任,并对其判处适当的刑罚,是刑事司法实践的重要部分。这一活动一方面是准确打击犯罪,实现一般预防与特殊预防的必要手段,另一方面也是保护人权,保护无罪的人的不受刑事追诉的手段,对维护法律价值、社会稳定有重要作用。

随着我国社会主义民主法治进程的推进,法律体系的完善,人民群众对刑事司法工作正确性要求的日益增长,我国刑事司法实践中广泛存在的“同案不同判”、“重定罪轻量刑”的不良现象已经引起了社会各界特别是法学界的关注。另一方面,量刑活动的复杂性、情节的多样性,也对法官的量刑工作提出了更高要求。

以更高人民法院2009年出台的《人民法院量刑指导意见(试行)》司法解释为例,该解释以三万字的篇幅对《刑法》规定的350条罪名中的27条常见罪名进行量刑规范化指导,以故意伤害罪的规定为例,该《意见》对故意伤害罪的法定情节的区分达到十三种,酌定情节亦有十种左右,且存在大量对计算的抽象规定,加之刑法本身的规定,要根据犯罪事实,运用该《意见》的规定解决犯罪嫌疑人的刑事责任问题,已经对法官提出了更高要求。

因此,引入计算机辅助量刑软件进行辅助量刑,有重要的意义。

2CAPMS实现方式的选择

目前我国的相关研究主要集中在两个方面,一种是基于专家系统的尝试[浅析电脑量刑的技术实现, 黎其武, 湖北警官学院学报, 2008],一种是基于统计与机器学习的尝试[基于机器学习的计算机辅助量刑初探, 高菲, 华东政法学院硕士学位论文, 2005]

基于专家系统的尝试,即是通过程序内部大量的逻辑判断,模拟刑法专家的决策过程。每当输入一组新的数据,就根据预先定义的法规数据库及执行规则,得出结果,其过程更加类似于函数的输入输出。专家系统的优点是执行过程明确、定义清晰,具有较强的规律性,适用于有较强模式化的问题的解决。缺点是专家系统的一切规则都需要开发者总结、抽象,一旦规则抽象错误,则会导致结果的完全错误。

基于统计与机器学习的实现则是基于大量的现成数据,当输入新的数据时,通过一定的匹配规则,从原有的数据库中提取关于新数据的答案。基于统计与机器学习的实现的优势是可以使用于模式化较弱的问题,而且具有自身的反馈机制,具有一定的纠错能力。而其缺点则是过程较为隐晦,结果不一定有的逻辑说明。

根据上述表述,正如古罗马法谚:“正义不仅应当被实现,而且应当以看得见的方式被实现”,由于量刑的透明化和过程的确定性、准确性是计算机辅助量刑的一个优点。同时,我国作为成文法,刑事法律规范的模式性较强,相对容易整理、抽象出统一的规则。故笔者选择以专家系统的方法实现计算机辅助量刑软件。

3CAPMS的设计及实现

3.1术语表

1)基于专家系统的计算机辅助量刑系统:英文名称JUdgement System by Technological Intelligent Criminallaw Engineering ,简称JUSTICE

2)刑罚指数(Penalty Index):简称PI,是程序内部对刑事责任的量化表示,为区分人身性刑罚与财产性刑罚。分为人身刑罚指数(PersonalPI)与财产刑罚指数(PropertyPI)。关于刑罚指数的说明,可参见JUSTICE自带的《关于刑罚指数的规定与解释》。

3)刑事责任文件:刑事责任文件是JUSTICE定义的以XML格式保存犯罪嫌疑人基本数据和刑事责任信息的文件,文件后缀名为*.crxml。该文件只能从主界面的数罪并罚窗口读入。

3.2开发环境

JUSTICE3.3.0201为止,均使用Win7 + VisualC# 2010开发,并需要.NET FrameWork 4.0支持。

3.3数据库设计

出于易于部署等原因考虑,本程序采用XML格式保存数据,数据内容以表格形式为主。

3.3.1逻辑设计

1)罪名,Accusation(罪名ID, 罪名中文名, 罪名内容, 适用的法定情节);

2)酌定情节列表,DiscretionaryCircumstancesList(情节ID, 罪名中文名, 情节1, 情节2, 情节3, 情节4, 情节5, 情节6, 情节7);

3)法定情节列表, LegalCircumstancesList(情节ID, 罪名中文名, 情节1, 情节2, 情节3, 情节4, 情节5, 情节6, 情节7, 情节8);

4)关键字联想列表,PredictiveKeyword(关键字, 罪名ID1 罪名ID 2 罪名ID 3 罪名ID 4);

3.3.2物理设计

一、罪名(摘要)

ID

罪名

罪名内容

法定情节

234

故意伤害罪

故意伤害他人身体的,处三年以下有期徒刑、拘役或者管制。

犯前款罪,致人重伤的,处三年以上十年以下有期徒刑;致人死亡或者以特别残忍手段致人重伤造成严重残疾的,处十年以上有期徒刑、无期徒刑或者死刑。本法另有规定的,依照规定。

1, 2, 3, 4, 5, 7, 8

二、酌定情节列表(摘要)

ID

情节名

C1

C2

C3

C4

C5

1

认罪态度

非常好

良好

一般

不好

2

赔偿情况

积极主动赔偿

愿意赔偿

一般

不情愿赔偿

不赔偿

三、关键字联想列表(摘要)

关键字

罪名ID1

罪名ID 2

罪名ID 3

罪名ID 4

234

239

233

263

死亡

234

239

233

263

 

3.4架构设计

1)刑事责任类(Criminal Responsibility Class):刑事责任类是JUSTICE最基本的部分,由于JUSTICE的目的在于计算刑罚,因此程序以刑事责任类为核心。逻辑上,程序的工作就是将数据填充入刑事责任类,然后由量刑引擎从刑事责任类读出数据并计算刑事责任的过程。

2JUSTICE基础类(JFC):JUSTICE基础类提供基本数据类型与接口的定义、XML数据的读入与处理、处理用户输入并写入刑事责任类、定义基本异常类型等功能;

3)刑罚引擎模块(Penalty Engine):刑罚引擎根据刑事责任类的数据计算刑期并生成自然语言宣告刑。分为量刑引擎(PMEngine)和数罪并罚引擎(CPEngine)两个模块;

4)特别法定情节模块(Specific Legal Circumstances):特别法定情节类为每一罪名提供一个用户控件和一套基准刑计算的方法,该类以犯罪客体区分模块。

5)通用用户界面模块(Graphic User Interface):该类为所有罪名提供共同的犯罪事实输入界面与量刑结果界面。