當前位置:首頁 » 操作系統 » 最優經濟演算法

最優經濟演算法

發布時間: 2023-01-25 21:06:24

A. 已親測:最優化演算法的核心思想與程序例子

蒙特卡洛: 大量隨機抽樣下的比對,最後結果就是在當前抽樣數量下篩選出的一定是最想要的那個結果。舉例:假如籃子里有1000個蘋果(你定的測試集),讓你 每次閉著眼睛找一個最大的,可以不限制挑選次數;於是,你可以閉著眼隨機拿了一個,然後再隨機拿一個與第一個比,留下大的;再隨機拿一個,與前次留下的比較,又 可以留下大的;循環往復這樣:拿的次數越多,挑出最大蘋果的可能性也就越大!但除非你把1000個蘋果都挑一遍,否則你無法肯定最終挑出來的就是最大的一個。如果有 10000個蘋果的話,繼續如此說不定就能找到更大的!

模擬退火 :「漸漸」清楚自己的目標是什麼!並不斷朝「越發」明確的目標邁進,「越來越」不被誘惑干擾。舉例:為了找出地球上最高的山,一隻兔子在開始並沒有 合適的策略,它隨機地跳了很長時間!在這期間,它可能走向高處,也可能踏入平地或溝壑。但是,隨著時間的流逝,它「漸漸清醒」! 並「直直地」朝著最高的方向跳去, 最後就到達了珠穆朗瑪峰。

粒子群 :信息的社會共享,以一個團隊的形式來搜索!團隊里成員信息共享,共同進步;避免一個人工作時出現目光短淺,沒有全局意識。舉例:就像下圍棋,只 專注於一個角落的戰斗不一定能獲取最終的勝利,只有放眼全局,把所有己方的棋子都盤活,相互間彼此幫助,才能獲得最後勝利。

蟻群 :和粒子群演算法有些相似,都是靠團隊的力量共同去找目標!蟻群演算法中特殊的是它的"信息素"揮發! 這個效果是其他演算法中沒有的!

以上所有的最優化演算法都很難做到極高的精度,這是必然的: 一是 因為全局搜索已經耗費了大量的時間和資源,再過分強調精度有些不經濟; 二是 因為全局搜索得到的最值可以理解為一精確最值的一個准確范圍!即進入這個范圍再進行精確的搜索一定可以找到精確最值;但是,全局最優的核心是隨機/概率,當進入一個准確范圍時,這個范圍肯定是很小的,如果之後精確搜索還用全局搜索的概率參數(此時來說波動范圍太大了),很可能又會跳出這個好不容易找到的精確區域!

因此: 全局最優演算法與局部最優演算法是要相結合的 !全局最優演算法負責劃定最值所在的一個精確的、較小的范圍內,即告訴局部最優演算法在這個范圍內繼續找一定可以找到精確解;局部最優演算法按照較小的步長、較高的精度繼續搜索精確最值。

常用全局最優演算法:蒙特卡洛(MC)、模擬退火(SA)、粒子群(PSO)、蟻群(AG);

常用局部最優演算法:梯度下降法、牛頓法、阻尼牛頓法、共軛梯度法;

推薦搭配1:蒙特卡洛

推薦搭配2:粒子群 + 梯度下降

推薦搭配3:蟻群 + 梯度下降 + 重檢機制

以上提到演算法的 「程序 + 詳細使用說明」 參考以下地址:

優化演算法

B. 經濟最優單目標遺傳優化演算法怎麼實現

我給你一個標准遺傳演算法程序供你參考:
該程序是遺傳演算法優化BP神經網路函數極值尋優:
%% 該代碼為基於神經網路遺傳演算法的系統極值尋優
%% 清空環境變數
clc
clear

%% 初始化遺傳演算法參數
%初始化參數
maxgen=100; %進化代數,即迭代次數
sizepop=20; %種群規模
pcross=[0.4]; %交叉概率選擇,0和1之間
pmutation=[0.2]; %變異概率選擇,0和1之間

lenchrom=[1 1]; %每個變數的字串長度,如果是浮點變數,則長度都為1
bound=[-5 5;-5 5]; %數據范圍

indivials=struct('fitness',zeros(1,sizepop), 'chrom',[]); %將種群信息定義為一個結構體
avgfitness=[]; %每一代種群的平均適應度
bestfitness=[]; %每一代種群的最佳適應度
bestchrom=[]; %適應度最好的染色體

%% 初始化種群計算適應度值
% 初始化種群
for i=1:sizepop
%隨機產生一個種群
indivials.chrom(i,:)=Code(lenchrom,bound);
x=indivials.chrom(i,:);
%計算適應度
indivials.fitness(i)=fun(x); %染色體的適應度
end
%找最好的染色體
[bestfitness bestindex]=min(indivials.fitness);
bestchrom=indivials.chrom(bestindex,:); %最好的染色體
avgfitness=sum(indivials.fitness)/sizepop; %染色體的平均適應度
% 記錄每一代進化中最好的適應度和平均適應度
trace=[avgfitness bestfitness];

%% 迭代尋優
% 進化開始
for i=1:maxgen
i
% 選擇
indivials=Select(indivials,sizepop);
avgfitness=sum(indivials.fitness)/sizepop;
%交叉
indivials.chrom=Cross(pcross,lenchrom,indivials.chrom,sizepop,bound);
% 變異
indivials.chrom=Mutation(pmutation,lenchrom,indivials.chrom,sizepop,[i maxgen],bound);

% 計算適應度
for j=1:sizepop
x=indivials.chrom(j,:); %解碼
indivials.fitness(j)=fun(x);
end

%找到最小和最大適應度的染色體及它們在種群中的位置
[newbestfitness,newbestindex]=min(indivials.fitness);
[worestfitness,worestindex]=max(indivials.fitness);
% 代替上一次進化中最好的染色體
if bestfitness>newbestfitness
bestfitness=newbestfitness;
bestchrom=indivials.chrom(newbestindex,:);
end
indivials.chrom(worestindex,:)=bestchrom;
indivials.fitness(worestindex)=bestfitness;

avgfitness=sum(indivials.fitness)/sizepop;

trace=[trace;avgfitness bestfitness]; %記錄每一代進化中最好的適應度和平均適應度
end
%進化結束

%% 結果分析
[r c]=size(trace);
plot([1:r]',trace(:,2),'r-');
title('適應度曲線','fontsize',12);
xlabel('進化代數','fontsize',12);ylabel('適應度','fontsize',12);
axis([0,100,0,1])
disp('適應度 變數');
x=bestchrom;
% 窗口顯示
disp([bestfitness x]);

C. 訂貨點的計算公式

E=LT*D/365,其中D:Demand 需求

以ERP實施實例加以說明,已知製造企業與庫存有關的信息如下:

①年需求量為30000單位(假設每年360天)

②購買價格每單位100元

③庫存儲存成本是商品買價的30%

④訂貨成本每次60元

⑤公司希望的安全儲備量為750單位

⑥訂貨數量只能按100的倍數(四捨五入)確定

⑦訂貨至到貨的時間為15天

要求:①最優經濟訂貨量②確定再訂貨點③存貨平均佔用資金按照以上的演算法,不難得到

①經濟訂貨量=[(2*年需求量*訂貨成本)/單位儲存成本]^(1/2)

=[(2*30000*60)/(100*30%)]^(1/2)=346.41(單位)

②再訂貨點=平均日需求X訂貨天數+安全儲備量=30000/36O*15+750

(3)最優經濟演算法擴展閱讀;

將訂貨提前期tp標注在物資卡片和帳頁上,每到訂貨點(日)時即檢查實際庫存量qa,計算qp-qa的差。如為+Δq,則按q+Δq訂貨;如為-q,則按q-Δq訂貨。這樣調整訂貨量後,可以防止缺貨或超儲現象的發生。

這種方法的特點是:假定訂貨提前期t、p(即市場供應、裝運條件)是不變的(即t?p是個常量),每次訂貨的批量是相等的,訂貨時間是隨著物資庫存量降到 訂貨點時間的不同而變化的。因此,在生產對物資的消耗速度不均衡的情況下,可以利用在訂貨點派人訂貨來適應物資消費速度的變化,保持物資儲備的合理性。

D. 什麼是帕累托最優演算法

帕累托最優是指資源分配的一種理想狀態,即假定固有的一群人和可分配的資源,從一種分配狀態到另一種狀態的變化中,在沒有使任何人境況變壞的前提下,也不可能再使某些人的處境變好。換句話說,就是不可能再改善某些人的境況,而不使任何其他人受損。
一般來說,達到帕累托最優時,會同時滿足以下3個條件:

交換最優條件

即使再交易,個人也不能從中得到更大的利益。此時對任意兩個消費者,任意兩種商品的邊際替代率是相同的,且兩個消費者的效用同時得到最大化。

生產最優條件

這個經濟體必須在自己的生產可能性邊界上。此時對任意兩個生產不同產品的生產者,需要投入的兩種生產要素的邊際技術替代率是相同的,且兩個生產者的產量同時得到最大化。

產品混合最優條件

經濟體產出產品的組合必須反映消費者的偏好。此時任意兩種商品之間的邊際替代率必須與任何生產者在這兩種商品之間的邊際產品轉換率相同。

如果一個經濟體不是帕累托最優,則存在一些人可以在不使其他人的境況變壞的情況下使自己的境況變好的情形。普遍認為這樣低效的產出的情況是需要避免的,因此帕累托最優是評價一個經濟體和政治方針的非常重要的標准。

從市場的角度來看,一家生產企業,如果能夠做到不損害對手的利益的情況下又為自己爭取到利益,就可以進行帕累托改進,換而言之,如果是雙方交易,這就意味著雙贏的局面。

熱點內容
vue引入ftp 發布:2025-07-10 18:24:07 瀏覽:971
ups蓄電池如何配置 發布:2025-07-10 18:15:31 瀏覽:983
三星手機初始密碼是多少啊 發布:2025-07-10 18:10:49 瀏覽:776
固定伺服器的地址 發布:2025-07-10 17:59:10 瀏覽:53
資料庫堆表 發布:2025-07-10 17:57:17 瀏覽:164
伺服器一般要求配置動態ip地址 發布:2025-07-10 17:46:17 瀏覽:444
主機什麼配置可以玩原神 發布:2025-07-10 17:45:23 瀏覽:744
java學習平台 發布:2025-07-10 17:35:51 瀏覽:800
伺服器的出生點如何造好看 發布:2025-07-10 17:30:50 瀏覽:543
xp系統移動硬碟加密 發布:2025-07-10 17:27:20 瀏覽:888