1 Star 0 Fork 0

张志阳/brainjs-DQN

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
storage.js 1.77 KB
一键复制 编辑 原始数据 按行查看 历史
张志阳 提交于 2024-11-16 13:29 +08:00 . 初始化项目
/**
* 模型存储类
* 负责AI模型的保存和加载
*/
class ModelStorage {
/**
* 初始化存储系统
*/
constructor() {
this.storageKey = 'gameAIModel'; // localStorage的键名前缀
}
/**
* 保存AI模型
* @param {GameAI} ai - AI实例
* @param {string} type - 保存类型('latest'或'best')
* @returns {Promise<boolean>} 保存是否成功
*/
async saveModel(ai, type = 'latest') {
try {
// 准备要保存的数据
const aiData = {
network: ai.network.toJSON(),
epsilon: ai.epsilon,
bestScore: ai.bestScore,
trainingCount: ai.trainingCount
};
// 保存到localStorage
localStorage.setItem(`${this.storageKey}_${type}`, JSON.stringify(aiData));
console.log(`模型已保存: ${type}`);
return true;
} catch (error) {
console.error('保存模型失败:', error);
throw error;
}
}
/**
* 加载AI模型
* @param {string} type - 加载类型('latest'或'best')
* @returns {Promise<Object>} 加载的模型数据
*/
async loadModel(type = 'latest') {
try {
// 从localStorage读取数据
const data = localStorage.getItem(`${this.storageKey}_${type}`);
if (!data) {
throw new Error('没有找到保存的模型');
}
// 解析并返回数据
const aiData = JSON.parse(data);
console.log(`模型已加载: ${type}`);
return aiData;
} catch (error) {
console.error('加载模型失败:', error);
throw error;
}
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/zhang-zhiyang/brainjs-dqn.git
git@gitee.com:zhang-zhiyang/brainjs-dqn.git
zhang-zhiyang
brainjs-dqn
brainjs-DQN
master

搜索帮助