韩寒博客上面,没有主题的文章都是以日记标题,今天本来是有点东西写在博客里面的,比如一个学生的提问是不是能代表一个个体,比如国外东西比国内的便宜是不是因为供需关系所致(这些天看了不少铅笔经济研究社的东西)等等,但是在看了最优化的题目之后,就什么想法也没有了。
日子还是很平淡,却也不乏洗点缀,比如居然自己收到束二手话,比如光棍节还有人送甜的。
也就这样吧,MMD,这周都不知道该编什么,似乎有些烦恼。
韩寒博客上面,没有主题的文章都是以日记标题,今天本来是有点东西写在博客里面的,比如一个学生的提问是不是能代表一个个体,比如国外东西比国内的便宜是不是因为供需关系所致(这些天看了不少铅笔经济研究社的东西)等等,但是在看了最优化的题目之后,就什么想法也没有了。
日子还是很平淡,却也不乏洗点缀,比如居然自己收到束二手话,比如光棍节还有人送甜的。
也就这样吧,MMD,这周都不知道该编什么,似乎有些烦恼。
自己看gReader也有蛮长时间了,对这一工具抱有相当的好感,认为这是获取资讯和提升阅读体验的绝佳途径,微博之类的消息,传达的只是观点,很少有深度的思考。当然,相对于读书而言,gReader里面的咨询和博客也算是快餐文化,也不比故作清高什么的。我喜欢看里面的博客,不过看到最多的还是rtmeme和cnbeta的资讯。平时最多的贡献就是在向身边其他人推荐一下这个工具,或者是把自己的订阅列表导出来,发给同学,方便他们使用。自己在使用的过程中,也逐渐学会了诸如rss全文显示,利用feed43订阅动态页面之类的技巧。下面这两条是自己最近才开始使用,也让自己略微方便一下的小技巧。
1.一直在用手机看Google reader的,但是Google reader里面没有和鲜果一样,提供一个手机阅读的标签,筛选掉一些平时不会再手机上看的条目。今天给一些图片很少,更新不是很频繁,内容较好的条目加上了mobile分类,然后在手机上打开这个分类后将地址存为书签。然后ucweb有一个快速拨号的页面,将这个书签添加上去,也算是达到了想要的效果.确实方便了自己阅读,改善了体验。
2.如果只是阅读,加加星标,可能还不够。因为星标没法进行区别,这时候标签就有用了,要做一个区分的是,标签tag是针对每一篇文章,而分类category是最对一个feed。加标签是一个区别内容的好办法,而写笔记这是终极应用了,Google reader里面的笔记共享按钮是默认勾选的,实际上,我以为笔记更多是给自己看的,今天找了个user script将那个按钮默认不选,贴在下面。
// ==UserScript==
// @name Note in Reader not shared
// @namespace http://www.google.com
// @description Change default behavior for the bookmarklet "Note in Reader"
// @include http://www.google.com/reader/link-frame
// ==/UserScript==
document.getElementById("share").checked=false
今天花了点时间,将这个程序完成了,里面还有一些小错误,代码写的还是有点乱,明天再整理了
update:
今天又花了点时间,将程序里面的错误找出来了一些,现在这个程序应该大体是可用的,那么就这样了
min1=0.00001;(update:如果用nan的话,效果更好,将这些数忽略掉)
%b 约束条件 列向量(update 应该是行向量)
function [JI opt]=simplex2(C,CB,b,A,BL)
%purpose 验算手工单纯形
%define variables
%C 目标函数变量系数 行向量
%CB 辨识初始基 行向量
%b 约束条件 列向量
%A 约束系数矩阵 矩阵
%delta 检验数 行向量
%JBL 基变量序号
%BL 基向量位置-----------换一个结构变成一个逻辑向量
%FBL 非基变量位置
%JI 解
%opt 目标值
%MAX1 提供一个极大值
%MIN1 提供一个极小值
format rat;
max1=100000;
min1=0.00001;
delta=C-CB*A;%计算检验数
[YS GS]=size(A);%非基变量是哪些
disp('显示第一个表')
disp(C);
disp(A);
disp(delta);
temp12=length(BL);
s='基变量有X';
ss='';
for iij=1:temp12
ss=strcat(ss,[s num2str(BL(iij)) ' ']);
end
disp(ss);
%BL;%这里应该把基变量记载下来
kk=1;
for iii=1:GS %区别基变量和非基变量
if all(BL~=iii)
FBL(kk)=iii;
kk=kk+1;
end
end
while (1)%这里就该是一个无限循环,不需要跳出条件,跳出在下面的return里面实现
if max(delta)<=0
if all(CB<1.04e-14) if ?]); ? num2str(BL(iij)) ss="" iij="1:temp12" for ; s="基变量有X" CB(temp17)="0;" temp17="CB==max1;">0;%找出检验数为正的项,这一段程序有问题,得不到我想要的东西
temp1=A(:,deltaj);%找出检验数为正项对应的向量
temp2=max(temp1);%找出检验数为正项对应的向量的每一列当中最大项
if any(temp2<0)
disp('无界解');
JI=0;
opt=0;
return;
else
[deltak,k]=max(delta);
aik1=A(:,k);%储存A
%temp3=A(:,k)<0;
% temp5=A(:,k);
% A(:,k)(temp3)=max1;%将负数转化为正数,以便下一步最小值判断不要出错
% A(:,k)
%用下面这个循环实现这个功能
temp3=size(A(:,k));
for iii=1:temp3
if A(iii,k)<0
A(iii,k)=min1;
end
end
[theta,l]=min(b'./A(:,k));%l就是序号
A(:,k)=aik1;
%迭代运算
CB(l)=C(k);%换基 这边就有问题了,替换时候原来的变量没有保留
BL(l)=k;%保留下面需要的变量 下面这段有问题,是我的思路没想清晰的原因
tempbl=b(l);%保留b(l)以供下面计算
tempA=A(l,:);%保留A(l,:)供下面计算
b(l)=b(l)/A(l,k);
tempALK=A(l,k);%保留A(l,k)
A(l,:)=A(l,:)/A(l,k);
for ii=1:length(A(:,1))
if ii~=l
b(ii)=b(ii)-A(ii,k)*tempbl/tempALK;
A(ii,:)=A(ii,:)-A(ii,k)*tempA/tempALK;
end
end
end
end
input('enter键显示下一个单纯形表');
delta=C-CB*A;
disp(C);
disp(A);
disp(delta);
ss='';
for iij=1:temp12
ss=strcat(ss,[s num2str(BL(iij))]);%显示基变量
end
disp(ss);
end