关于本站
人大经济论坛-经管之家:分享大学、考研、论文、会计、留学、数据、经济学、金融学、管理学、统计学、博弈论、统计年鉴、行业分析包括等相关资源。
经管之家是国内活跃的在线教育咨询平台!
经管之家新媒体交易平台
提供"微信号、微博、抖音、快手、头条、小红书、百家号、企鹅号、UC号、一点资讯"等虚拟账号交易,真正实现买卖双方的共赢。【请点击这里访问】
TOP热门关键词
利用PROCCLP求解数独问题.TranslatedFromSASHELP........CLP过程简介:解决CSP(约束满足问题),即由一个变量集合和一个约束集合组成。问题的一个状态是由对一些或全部变量的一个赋值定义的完全赋值:每个变量都参与 ...
免费学术公开课,扫码加入 |
Translated From SAS HELP........
CLP过程简介:
解决CSP(约束满足问题),即由一个变量集合和一个约束集合组成。问题的一个状态是由对一些或全部变量的一个赋值定义的完全赋值:每个变量都参与的赋值。问题的解是满足所有约束的完全赋值,或更进一步,使目标函数最大化。
var 语句:声明变量的定义域:例如:variable <=[lower-bound <, upper-bound>]>
alldiff语句:互不相等条件,约束输入变量必须为互不相等的变量
如:var (X1-X3) A B;alldiff (X1-X3) (A B); 等价于:X1 ne X2,X2 ne X3 ,X3 ne X1 and A ne B
lincon语句:线性约束,例如:lincon 4 * x1 - 3 * x2 = 5;
有如下数独问题(以下代码需在SAS9.3版本或以上方可运行成功)
1.输入数独矩阵:
- data indata;
- input C1-C9;
- datalines;
- . . 5 . . 7 . . 1
- . 7 . . 9 . . 3 .
- . . . 6 . . . . .
- . . 3 . . 1 . . 5
- . 9 . . 8 . . 2 .
- 1 . . 2 . . 4 . .
- . . 2 . . 6 . . 9
- . . . . 4 . . 8 .
- 8 . . 1 . . 5 . .
- ;
- run;
- %macro store_initial_values;
- /* 储存初值到宏变量C_i_j */
- data _null_;
- set indata;
- array C{9};
- do j = 1 to 9;
- i = _N_;
- call symput(compress('C_'||put(i,best.)||'_'||put(j,best.)),
- put(C[j],best.));
- end;
- run;
- %mend store_initial_values;
- %store_initial_values;
- %macro solve;
- proc clp out=outdata;
- /* VAR 语句 声明求解变量X_1_1至X_9_9取值范围为[1,9] */
- /* alldiff语句:约束条件:行约束,每行元素互不相同,如X_1_1:X_1_9的取值互不相同*/
- %do i = 1 %to 9;
- var (X_&i._1-X_&i._9) = [1,9];
- alldiff(X_&i._1-X_&i._9);
- %end;
- /* alldiff语句:约束条件:列约束,每列元素互不相同,如X_1_1:X_9_1的取值互不相同*/
- %do j = 1 %to 9;
- alldiff(
- %do i = 1 %to 9;
- X_&i._&j
- %end;
- );
- %end;
- /* alldiff语句:约束条件:块约束,3X3矩阵元素互不相同,如X_1_1:X_3_3的取值互不相同*/
- %do s = 0 %to 2;
- %do t = 0 %to 2;
- alldiff(
- %do i = 3*&s + 1 %to 3*&s + 3;
- %do j = 3*&t + 1 %to 3*&t + 3;
- X_&i._&j
- %end;
- %end;
- );
- %end;
- %end;
- /* lincon语句:初值约束,已知变量约束如X_1_3=C_1_3=5 */
- /* 如果C_i_j非缺失,则X_i_j = C_i_j*/
- %do i = 1 %to 9;
- %do j = 1 %to 9;
- %if &&C_&i._&j ne . %then %do;
- lincon X_&i._&j = &&C_&i._&j;
- %end;
- %end;
- %end;
- run;
- %put &_ORCLP_;
- %mend solve;
-
- %solve
本帖曾在论坛引起争议,自知理亏,不辩解。日后SASHELP的东西也注明出处。。
「经管之家」APP:经管人学习、答疑、交友,就上经管之家!
免流量费下载资料----在经管之家app可以下载论坛上的所有资源,并且不额外收取下载高峰期的论坛币。
涵盖所有经管领域的优秀内容----覆盖经济、管理、金融投资、计量统计、数据分析、国贸、财会等专业的学习宝库,各类资料应有尽有。
来自五湖四海的经管达人----已经有上千万的经管人来到这里,你可以找到任何学科方向、有共同话题的朋友。
经管之家(原人大经济论坛),跨越高校的围墙,带你走进经管知识的新世界。
扫描下方二维码下载并注册APP
免流量费下载资料----在经管之家app可以下载论坛上的所有资源,并且不额外收取下载高峰期的论坛币。
涵盖所有经管领域的优秀内容----覆盖经济、管理、金融投资、计量统计、数据分析、国贸、财会等专业的学习宝库,各类资料应有尽有。
来自五湖四海的经管达人----已经有上千万的经管人来到这里,你可以找到任何学科方向、有共同话题的朋友。
经管之家(原人大经济论坛),跨越高校的围墙,带你走进经管知识的新世界。
扫描下方二维码下载并注册APP
您可能感兴趣的文章
人气文章
1.凡人大经济论坛-经管之家转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。